diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index da3bef2..a3d6555 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -4,6 +4,7 @@ void-packages is the backbone of the Void Linux distribution. It contains all th This document describes how you, as a contributor, can help with adding packages, correcting bugs and adding features to void-packages. +<<<<<<< HEAD ## Getting your packages into Void by yourself If you really want to get a package into Void Linux, we recommend you package it yourself. @@ -13,6 +14,41 @@ There's also a [manual for xbps-src](./README.md), which is used to build package files from templates. For this guide, we assume you have basic knowledge about [git](http://git-scm.org), as well as a [GitHub Account](http://github.com). +======= +## Package Requirements + +To be included in the Void repository, software must meet at least one of the following requirements. +Exceptions to the list are possible, and might be accepted, but are extremely unlikely. +If you believe you have an exception, start a PR and make an argument for why that particular piece of software, +while not meeting any of the following requirements, is a good candidate for the Void packages system. + +1. **System**: The software should be installed system-wide, not per-user. + +1. **Compiled**: The software needs to be compiled before being used, even if it is software that is not needed by the whole system. + +1. **Required**: Another package either within the repository or pending inclusion requires the package. + +In particular, new themes are highly unlikely to be accepted. +Simple shell scripts are unlikely to be accepted unless they provide considerable value to a broad user base. +New fonts may be accepted if they provide value beyond aesthetics (e.g. they contain glyphs for a script missing in already packaged fonts). + +Browser forks, including those based on Chromium and Firefox, are generally not accepted. +Such forks require heavy patching, maintenance and hours of build time. + +Software need to be used in version announced by authors as ready to use by the general public - usually called releases. +Betas, arbitrary VCS revisions, templates using tip of development branch taken at build time and releases created by the package maintainer won't be accepted. + +## Creating, updating, and modifying packages in Void by yourself + +If you really want to get a new package or package update into Void Linux, we recommend you contribute it yourself. + +We provide a [comprehensive Manual](./Manual.md) on how to create new packages. +There's also a [manual for xbps-src](./README.md), which is used to build package files from templates. + +For this guide, we assume you have basic knowledge about [git](http://git-scm.org), as well as a [GitHub Account](http://github.com) with [SSH set up](https://docs.github.com/en/authentication/connecting-to-github-with-ssh). + +You should also [set the email](https://docs.github.com/en/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-email-preferences/setting-your-commit-email-address) on your GitHub account and in git so your commits are associated with your GitHub account properly. +>>>>>>> upstream/master To get started, [fork](https://help.github.com/articles/fork-a-repo) the void-linux `void-packages` git repository on GitHub and clone it: @@ -23,9 +59,30 @@ To keep your forked repository up to date, setup the `upstream` remote to pull i $ git remote add upstream https://github.com/void-linux/void-packages.git $ git pull --rebase upstream master +<<<<<<< HEAD ### Creating a new template You can use the helper tool `xnew`, from the [xtools](https://github.com/chneukirchen/xtools) package, to create new templates: +======= +This can also be done with the `github-cli` tool: + + $ gh repo fork void-linux/void-packages + $ gh repo clone /void-packages + +This automatically sets up the `upstream` remote, so `git pull --rebase upstream master` can still be used to keep your fork up-to-date. + +Using the GitHub web editor for making changes is strongly discouraged, because you will need to clone the repo anyways to edit and test your changes. + +using the the `master` branch of your fork for contributing is also strongly discouraged. +It can cause many issues with updating your pull request (also called a PR), and having multiple PRs open at once. +To create a new branch: + + $ git checkout master -b + +### Creating a new template + +You can use the helper tool `xnew`, from the [xtools](https://github.com/leahneukirchen/xtools) package, to create new templates: +>>>>>>> upstream/master $ xnew pkgname subpkg1 subpkg2 ... @@ -33,12 +90,39 @@ Templates must have the name `void-packages/srcpkgs//template`, where ` For deeper insights on the contents of template files, please read the [manual](./Manual.md), and be sure to browse the existing template files in the `srcpkgs` directory of this repository for concrete examples. +<<<<<<< HEAD When you've finished working on the template file, please check it with `xlint` helper from the [xtools](https://github.com/chneukirchen/xtools) package: +======= +### Updating a template + +At minimum, a template update will consist of changing `version` and `checksum`, if there was an upstream version change, and/or `revision`, if a template-specific change (e.g. patch, correction, etc.) is needed. +Other changes to the template may be needed depending on what changes the upstream has made. + +The checksum can be updated automatically with the `xgensum` helper from the [xtools](https://github.com/leahneukirchen/xtools) package: + + $ xgensum -i + +### Committing your changes + +After making your changes, please check that the package builds successfully. From the top level directory of your local copy of the `void-packages` repository, run: + + $ ./xbps-src pkg + +Your package must build successfully for at least x86, but we recommend also trying a cross-build for armv6l* as well, e.g.: + + $ ./xbps-src -a armv6l pkg + +When building for `x86_64*` or `i686`, building with the `-Q` flag or with `XBPS_CHECK_PKGS=yes` set in `etc/conf` (to run the check phase) is strongly encouraged. +Also, new packages and updates will not be accepted unless they have been runtime tested by installing and running the package. + +When you've finished working on the template file, please check it with `xlint` helper from the [xtools](https://github.com/leahneukirchen/xtools) package: +>>>>>>> upstream/master $ xlint template If `xlint` reports any issues, resolve them before committing. +<<<<<<< HEAD ### Committing your changes Once you have made and verified your changes to the package template and/or other files, make one commit per package (including all changes to its sub-packages). Each commit message should have one of the following formats: @@ -71,6 +155,32 @@ Your package must build successfully for at least x86, but we recommend trying t Runtime testing of packages and building with the `-Q` flag or with `XBPS_CHECK_PKGS=yes` set in the environment or `etc/conf` are strongly encouraged. New packages will not be accepted unless they have been runtime tested. +======= +Once you have made and verified your changes to the package template and/or other files, make one commit per package (including all changes to its sub-packages). Each commit message should have one of the following formats: + +* for new packages, use `New package: -` ([example](https://github.com/void-linux/void-packages/commit/8ed8d41c40bf6a82cf006c7e207e05942c15bff8)). + +* for package updates, use `: update to .` ([example](https://github.com/void-linux/void-packages/commit/c92203f1d6f33026ae89f3e4c1012fb6450bbac1)). + +* for template modifications without a version change, use `: ` ([example](https://github.com/void-linux/void-packages/commit/ff39c912d412717d17232de9564f659b037e95b5)). + +* for package removals, use `: remove package` and include the removal reason in the commit body ([example](https://github.com/void-linux/void-packages/commit/4322f923bdf5d4e0eb36738d4f4717d72d0a0ca4)). + +* for changes to any other file, use `: ` ([example](https://github.com/void-linux/void-packages/commit/e00bea014c36a70d60acfa1758514b0c7cb0627d), + [example](https://github.com/void-linux/void-packages/commit/93bf159ce10d8e474da5296e5bc98350d00c6c82), [example](https://github.com/void-linux/void-packages/commit/dc62938c67b66a7ff295eab541dc37b92fb9fb78), [example](https://github.com/void-linux/void-packages/commit/e52317e939d41090562cf8f8131a68772245bdde)) + +If you want to describe your changes in more detail, explain in the commit body (separated from the first line with a blank line) ([example](https://github.com/void-linux/void-packages/commit/f1c45a502086ba1952f23ace9084a870ce437bc6)). + +`xbump`, available in the [xtools](https://github.com/leahneukirchen/xtools) package, can be used to commit a new or updated package: + + $ xbump + +`xrevbump`, also available in the [xtools](https://github.com/leahneukirchen/xtools) package, can be used to commit a template modification for a package: + + $ xrevbump '' + +`xbump` and `xrevbump` will use `git commit` to commit the changes with the appropriate commit message. For more fine-grained control over the commit, specific options can be passed to `git commit` by adding them after the package name. +>>>>>>> upstream/master ### Starting a pull request @@ -123,9 +233,38 @@ Once you have applied all requested changes, the reviewers will merge your reque If the pull request becomes inactive for some days, the reviewers may or may not warn you when they are about to close it. If it stays inactive further, it will be closed. +<<<<<<< HEAD Please abstain from temporarily closing a pull request while revising the templates. Instead, leave a comment on the PR describing what still needs work, or add "[WIP]" to the PR title. Only close your pull request if you're sure you don't want your changes to be included. +======= +Please abstain from temporarily closing a pull request while revising the templates. Instead, leave a comment on the PR describing what still needs work, [mark it as a draft](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/changing-the-stage-of-a-pull-request#converting-a-pull-request-to-a-draft), or add "[WIP]" to the PR title. Only close your pull request if you're sure you don't want your changes to be included. +>>>>>>> upstream/master #### Publishing the package Once the reviewers have merged the pull request, our [build server](http://build.voidlinux.org) is automatically triggered and builds all packages in the pull request for all supported platforms. Upon completion, the packages are available to all Void Linux users. +<<<<<<< HEAD +======= + +## Testing Pull Requests + +While it is the responsibility of the PR creator to test changes before sending it, one person can't test all configuration options, usecases, hardware, etc. +Testing new package submissions and updates is always helpful, and is a great way to get started with contributing. +First, [clone the repository](https://github.com/void-linux/void-packages#quick-start) if you haven't done so already. +Then check out the pull request, either with `github-cli`: + + $ gh pr checkout + +Or with `git`: + +If your local void-packages repository is cloned from your fork, you may need to add the main repository as a remote first: + + $ git remote add upstream https://github.com/void-linux/void-packages.git + +Then fetch and check out the PR (replacing `` with either `origin` or `upstream`): + + $ git fetch pull//head: + $ git checkout + +Then [build and install](https://github.com/void-linux/void-packages#building-packages) the package and test its functionality. +>>>>>>> upstream/master diff --git a/Manual.md b/Manual.md index 8ec7554..a11f4bd 100644 --- a/Manual.md +++ b/Manual.md @@ -6,7 +6,10 @@ packages for XBPS, the `Void Linux` native packaging system. *Table of Contents* * [Introduction](#Introduction) +<<<<<<< HEAD * [Quality Requirements](#quality_requirements) +======= +>>>>>>> upstream/master * [Package build phases](#buildphase) * [Package naming conventions](#namingconventions) * [Libraries](#libs) @@ -62,6 +65,10 @@ packages for XBPS, the `Void Linux` native packaging system. * [kernel-hooks](#triggers_kernel_hooks) * [mimedb](#triggers_mimedb) * [mkdirs](#triggers_mkdirs) +<<<<<<< HEAD +======= + * [openjdk-profile](#triggers_openjdk_profile) +>>>>>>> upstream/master * [pango-modules](#triggers_pango_module) * [pycompile](#triggers_pycompile) * [register-shell](#triggers_register_shell) @@ -123,6 +130,7 @@ If everything went fine after running a binary package named `foo-1.0_1..xbps` will be generated in the local repository `hostdir/binpkgs`. +<<<<<<< HEAD ### Quality Requirements @@ -155,6 +163,8 @@ the general public - usually called releases. Betas, arbitrary VCS revisions, templates using tip of development branch taken at build time and releases created by the package maintainer won't be accepted. +======= +>>>>>>> upstream/master ### Package build phases @@ -427,6 +437,11 @@ in this directory such as `${XBPS_BUILDDIR}/${wrksrc}`. - `XBPS_RUST_TARGET` The target architecture triplet used by `rustc` and `cargo`. +<<<<<<< HEAD +======= +- `XBPS_BUILD_ENVIRONMENT` Enables continuous-integration-specific operations. Set to `void-packages-ci` if in continuous integration. + +>>>>>>> upstream/master ### Available variables @@ -463,7 +478,11 @@ the generated `binary packages` have been modified. - `short_desc` A string with a brief description for this package. Max 72 chars. - `version` A string with the package version. Must not contain dashes or underscore +<<<<<<< HEAD and at least one digit is required. Shell's variable substition usage is not allowed. +======= +and at least one digit is required. Shell's variable substitution usage is not allowed. +>>>>>>> upstream/master Neither `pkgname` or `version` should contain special characters which make it necessary to quote them, so they shouldn't be quoted in the template. @@ -542,6 +561,7 @@ can be specified by prepending a commercial at (@). For tarballs you can find the contents checksum by using the command `tar xf --to-stdout | sha256sum`. +<<<<<<< HEAD - `wrksrc` The directory name where the package sources are extracted, by default set to `${pkgname}-${version}`. If the top level directory of a package's `distfile` is different from the default, `wrksrc` must be set to the top level directory name inside the archive. @@ -549,6 +569,16 @@ set to `${pkgname}-${version}`. If the top level directory of a package's `distf - `create_wrksrc` Enable it to create the `${wrksrc}` directory. Required if a package contains multiple `distfiles`. +======= +- `wrksrc` The directory name where the package sources are extracted, set to `${pkgname}-${version}`. + +- `build_wrksrc` A directory relative to `${wrksrc}` that will be used when building the package. + +- `create_wrksrc` Usually, after extracting, if there're multiple top-level + files and/or directories or when there're no directories at all, top-level files, + and directories will be wrapped inside one more layer of directory. + Set `create_wrksrc` to force this behaviour. +>>>>>>> upstream/master - `build_style` This specifies the `build method` for a package. Read below to know more about the available package `build methods` or effect of leaving this not set. @@ -577,10 +607,15 @@ build methods. Unset by default. `${build_style}` is set to `configure`, `gnu-configure` or `gnu-makefile` build methods. Unset by default. +<<<<<<< HEAD - `make_install_args` The arguments to be passed in to `${make_cmd}` at the `install-destdir` phase if `${build_style}` is set to `configure`, `gnu-configure` or `gnu-makefile` build methods. By default set to `PREFIX=/usr DESTDIR=${DESTDIR}`. +======= +- `make_install_args` The arguments to be passed in to `${make_cmd}` at the `install` +phase if `${build_style}` is set to `configure`, `gnu-configure` or `gnu-makefile` build methods. +>>>>>>> upstream/master - `make_build_target` The build target. If `${build_style}` is set to `configure`, `gnu-configure` or `gnu-makefile`, this is the target passed to `${make_cmd}` in the build phase; @@ -600,6 +635,12 @@ path of the Python wheel produced by the build phase that will be installed; whe `python-pep517` build style will look for a wheel matching the package name and version in the current directory with respect to the install. +<<<<<<< HEAD +======= +- `make_check_pre` The expression in front of `${make_cmd}`. This can be used for wrapper commands +or for setting environment variables for the check command. By default empty. + +>>>>>>> upstream/master - `patch_args` The arguments to be passed in to the `patch(1)` command when applying patches to the package sources during `do_patch()`. Patches are stored in `srcpkgs//patches` and must be in `-p1` format. By default set to `-Np1`. @@ -609,6 +650,14 @@ and `XBPS_MAKEJOBS` will be set to 1. If a package does not work well with `XBPS but still has a mechanism to build in parallel, set `disable_parallel_build` and use `XBPS_ORIG_MAKEJOBS` (which holds the original value of `XBPS_MAKEJOBS`) in the template. +<<<<<<< HEAD +======= +- `disable_parallel_check` If set tests for the package won't be built and run in parallel +and `XBPS_MAKEJOBS` will be set to 1. If a package does not work well with `XBPS_MAKEJOBS` +but still has a mechanism to run checks in parallel, set `disable_parallel_check` and +use `XBPS_ORIG_MAKEJOBS` (which holds the original value of `XBPS_MAKEJOBS`) in the template. + +>>>>>>> upstream/master - `make_check` Sets the cases in which the `check` phase is run. This option has to be accompanied by a comment explaining why the tests fail. Allowed values: @@ -653,7 +702,11 @@ debugging symbols. Files can be given by full path or by filename. - `noshlibprovides` If set, the ELF binaries won't be inspected to collect the provided sonames in shared libraries. +<<<<<<< HEAD - `noverifyrdeps` If set, the ELF binaries and shared libaries won't be inspected to collect +======= +- `noverifyrdeps` If set, the ELF binaries and shared libraries won't be inspected to collect +>>>>>>> upstream/master their reverse dependencies. You need to specify all dependencies in the `depends` when you need to set this. @@ -693,7 +746,11 @@ This appends to the generated file rather than replacing it. - `nopie` Only needs to be set to something to make active, disables building the package with hardening features (PIE, relro, etc). Not necessary for most packages. +<<<<<<< HEAD - `nopie_files` White-space seperated list of ELF binaries that won't be checked +======= +- `nopie_files` White-space separated list of ELF binaries that won't be checked +>>>>>>> upstream/master for PIE. Files must be given by full path. - `reverts` xbps supports a unique feature which allows to downgrade from broken @@ -779,7 +836,11 @@ A special value `noarch` used to be available, but has since been removed. So far, we have listed four types of `depends` variables: `hostmakedepends`, `makedepends`, `checkdepends` and `depends`. These different kinds of variables are necessary because `xbps-src` supports cross compilation and to avoid +<<<<<<< HEAD installing unecessary packages in the build environment. +======= +installing unnecessary packages in the build environment. +>>>>>>> upstream/master During a build process, there are programs that must be _run_ on the host, such as `yacc` or the C compiler. The packages that contain these programs should be @@ -1124,9 +1185,15 @@ Current working directory for functions is set as follows: - For do_fetch, post_fetch: `XBPS_BUILDDIR`. +<<<<<<< HEAD - For do_extract, post_extract: `wrksrc`. - For pre_patch through post_install: `build_wrksrc` +======= +- For do_extract through do_patch: `wrksrc`. + +- For post_patch through post_install: `build_wrksrc` +>>>>>>> upstream/master if it is defined, otherwise `wrksrc`. @@ -1276,8 +1343,13 @@ declaring a virtual name and version in the `${provides}` template variable (e.g specific provider can declare a dependency on the virtual package name with the prefix `virtual?` (e.g., `depends="virtual?vpkg-0.1_1"`). When a package is built by `xbps-src`, providers for any virtual packages will be confirmed to exist and will be built if necessary. A map from virtual +<<<<<<< HEAD packages to their default providers is defined in `etc/default.virtual`. Individual mappings can be overridden by local preferences in `etc/virtual`. Comments in `etc/default.virtual` provide more +======= +packages to their default providers is defined in `etc/defaults.virtual`. Individual mappings can be +overridden by local preferences in `etc/virtual`. Comments in `etc/defaults.virtual` provide more +>>>>>>> upstream/master information on this map. @@ -1406,6 +1478,17 @@ If the service requires directories in parts of the system that are not generall temporary filesystems. Then use the `make_dirs` variable in the template to create those directories when the package is installed. +<<<<<<< HEAD +======= +If the package installs a systemd service file or other unit, leave it in place as a +reference point so long as including it has no negative side effects. + +Examples of when *not* to install systemd units: + +1. When doing so changes runtime behavior of the packaged software. +2. When it is done via a compile time flag that also changes build dependencies. + +>>>>>>> upstream/master ### 32bit packages @@ -1585,12 +1668,20 @@ recursively by the target python version. This differs from `pycompile_module` i path may be specified, Example: `pycompile_dirs="usr/share/foo"`. - `python_version`: this variable expects the supported Python major version. +<<<<<<< HEAD By default it's set to `2`. This variable is needed for multi-language applications (e.g., the application is written in C while the command is written in Python) or just single Python file ones that live in `/usr/bin`. > NOTE: you need to define it *only* for non-Python modules. +======= +In most cases version is inferred from shebang, install path or build style. +Only required for some multi-language +applications (e.g., the application is written in C while the command is +written in Python) or just single Python file ones that live in `/usr/bin`. + +>>>>>>> upstream/master Also, a set of useful variables are defined to use in the templates: | Variable | Value | @@ -1628,6 +1719,10 @@ The following template variables influence how Go packages are built: any go.mod files, `default` to use Go's default behavior, or anything accepted by `go build -mod MODE`. Defaults to `vendor` if there's a vendor directory, otherwise `default`. +<<<<<<< HEAD +======= +- `go_ldflags`: Arguments to pass to the linking steps of go tool. +>>>>>>> upstream/master The following environment variables influence how Go packages are built: @@ -1997,6 +2092,16 @@ During removal it will delete the directory using `rmdir`. To include this trigger use the `make_dirs` variable, as the trigger won't do anything unless it is defined. +<<<<<<< HEAD +======= + +#### openjdk-profile + +The openjdk-profile trigger is responsible for creating an entry in /etc/profile.d that +sets the `JAVA_HOME` environment variable to the currently-selected alternative for +`/usr/bin/java` on installation. This trigger must be manually requested. + +>>>>>>> upstream/master #### pango-modules diff --git a/common/build-helper/cmake-wxWidgets-gtk3.sh b/common/build-helper/cmake-wxWidgets-gtk3.sh index 68bc53d..8d02e31 100644 --- a/common/build-helper/cmake-wxWidgets-gtk3.sh +++ b/common/build-helper/cmake-wxWidgets-gtk3.sh @@ -3,3 +3,7 @@ if [ "$CROSS_BUILD" ]; then else export WX_CONFIG=/usr/bin/wx-config-gtk3 fi +<<<<<<< HEAD +======= +configure_args+=" -DwxWidgets_CONFIG_EXECUTABLE=${WX_CONFIG} " +>>>>>>> upstream/master diff --git a/common/build-helper/python3.sh b/common/build-helper/python3.sh new file mode 100644 index 0000000..4707599 --- /dev/null +++ b/common/build-helper/python3.sh @@ -0,0 +1,16 @@ +# fix building non-pure-python modules on cross +if [ -n "$CROSS_BUILD" ]; then + export PYPREFIX="$XBPS_CROSS_BASE" + export CFLAGS+=" -I${XBPS_CROSS_BASE}/${py3_inc} -I${XBPS_CROSS_BASE}/usr/include" + export LDFLAGS+=" -L${XBPS_CROSS_BASE}/${py3_lib} -L${XBPS_CROSS_BASE}/usr/lib" + export CC="${XBPS_CROSS_TRIPLET}-gcc -pthread $CFLAGS $LDFLAGS" + export LDSHARED="${CC} -shared $LDFLAGS" + export PYTHON_CONFIG="${XBPS_CROSS_BASE}/usr/bin/python3-config" + export PYTHONPATH="${XBPS_CROSS_BASE}/${py3_lib}" + for f in ${XBPS_CROSS_BASE}/${py3_lib}/_sysconfigdata_*; do + [ -f "$f" ] || continue + f=${f##*/} + _PYTHON_SYSCONFIGDATA_NAME=${f%.py} + done + [ -n "$_PYTHON_SYSCONFIGDATA_NAME" ] && export _PYTHON_SYSCONFIGDATA_NAME +fi diff --git a/common/build-style/cargo.sh b/common/build-style/cargo.sh index 53c4897..11af3be 100644 --- a/common/build-style/cargo.sh +++ b/common/build-style/cargo.sh @@ -3,24 +3,42 @@ # do_build() { +<<<<<<< HEAD : ${make_cmd:=cargo} +======= + : ${make_cmd:=cargo auditable} +>>>>>>> upstream/master ${make_cmd} build --release --target ${RUST_TARGET} ${configure_args} } do_check() { +<<<<<<< HEAD : ${make_cmd:=cargo} ${make_cmd} test --release --target ${RUST_TARGET} ${configure_args} \ +======= + : ${make_cmd:=cargo auditable} + + ${make_check_pre} ${make_cmd} test --release --target ${RUST_TARGET} ${configure_args} \ +>>>>>>> upstream/master ${make_check_args} } do_install() { +<<<<<<< HEAD : ${make_cmd:=cargo} : ${make_install_args:=--path .} ${make_cmd} install --target ${RUST_TARGET} --root="${DESTDIR}/usr" \ --locked ${configure_args} ${make_install_args} +======= + : ${make_cmd:=cargo auditable} + : ${make_install_args:=--path .} + + ${make_cmd} install --target ${RUST_TARGET} --root="${DESTDIR}/usr" \ + --offline --locked ${configure_args} ${make_install_args} +>>>>>>> upstream/master rm -f "${DESTDIR}"/usr/.crates.toml rm -f "${DESTDIR}"/usr/.crates2.json diff --git a/common/build-style/cmake.sh b/common/build-style/cmake.sh index 33a556b..96e4e63 100644 --- a/common/build-style/cmake.sh +++ b/common/build-style/cmake.sh @@ -54,6 +54,17 @@ _EOF cmake_args+=" -DCMAKE_INSTALL_PREFIX=/usr" cmake_args+=" -DCMAKE_BUILD_TYPE=None" cmake_args+=" -DCMAKE_INSTALL_LIBDIR=lib${XBPS_TARGET_WORDSIZE}" +<<<<<<< HEAD +======= + cmake_args+=" -DCMAKE_INSTALL_SYSCONFDIR=/etc" + + if [ "$CROSS_BUILD" ]; then + cmake_args+=" -DQT_HOST_PATH=/usr" + # QT_HOST_PATH isn't enough in my system, + # which have binfmts support on and off + cmake_args+=" -DQT_HOST_PATH_CMAKE_DIR=/usr/lib/cmake" + fi +>>>>>>> upstream/master if [[ $build_helper = *"qemu"* ]]; then echo "SET(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-${XBPS_TARGET_QEMU_MACHINE}-static)" \ @@ -116,7 +127,11 @@ do_check() { : ${make_check_target:=test} +<<<<<<< HEAD ${make_cmd} ${make_check_args} ${make_check_target} +======= + ${make_check_pre} ${make_cmd} ${makejobs} ${make_check_args} ${make_check_target} +>>>>>>> upstream/master } do_install() { diff --git a/common/build-style/configure.sh b/common/build-style/configure.sh index 0963fc3..d9c1b8e 100644 --- a/common/build-style/configure.sh +++ b/common/build-style/configure.sh @@ -29,7 +29,11 @@ do_check() { : ${make_cmd:=make} : ${make_check_target:=check} +<<<<<<< HEAD ${make_cmd} ${make_check_args} ${make_check_target} +======= + ${make_check_pre} ${make_cmd} ${makejobs} ${make_check_args} ${make_check_target} +>>>>>>> upstream/master } do_install() { diff --git a/common/build-style/gnu-configure.sh b/common/build-style/gnu-configure.sh index 8121136..47b3e15 100644 --- a/common/build-style/gnu-configure.sh +++ b/common/build-style/gnu-configure.sh @@ -30,7 +30,11 @@ do_check() { : ${make_cmd:=make} : ${make_check_target:=check} +<<<<<<< HEAD ${make_cmd} ${make_check_args} ${make_check_target} +======= + ${make_check_pre} ${make_cmd} ${makejobs} ${make_check_args} ${make_check_target} +>>>>>>> upstream/master } do_install() { diff --git a/common/build-style/gnu-makefile.sh b/common/build-style/gnu-makefile.sh index d7ea148..0be8e9d 100644 --- a/common/build-style/gnu-makefile.sh +++ b/common/build-style/gnu-makefile.sh @@ -9,8 +9,15 @@ do_build() { CC="$CC" CXX="$CXX" LD="$LD" AR="$AR" RANLIB="$RANLIB" \ CPP="$CPP" AS="$AS" OBJCOPY="$OBJCOPY" OBJDUMP="$OBJDUMP" \ CFLAGS="$CFLAGS" CXXFLAGS="$CXXFLAGS" LDFLAGS="$LDFLAGS" \ +<<<<<<< HEAD ${makejobs} ${make_build_args} ${make_build_target} else +======= + PREFIX=/usr prefix=/usr \ + ${makejobs} ${make_build_args} ${make_build_target} + else + export PREFIX=/usr prefix=/usr +>>>>>>> upstream/master ${make_cmd} ${makejobs} ${make_build_args} ${make_build_target} fi } @@ -30,12 +37,20 @@ do_check() { : ${make_cmd:=make} : ${make_check_target:=check} +<<<<<<< HEAD ${make_cmd} ${make_check_args} ${make_check_target} +======= + ${make_check_pre} ${make_cmd} ${makejobs} ${make_check_args} ${make_check_target} +>>>>>>> upstream/master } do_install() { : ${make_cmd:=make} : ${make_install_target:=install} +<<<<<<< HEAD ${make_cmd} STRIP=true PREFIX=/usr DESTDIR=${DESTDIR} ${make_install_args} ${make_install_target} +======= + ${make_cmd} STRIP=true PREFIX=/usr prefix=/usr DESTDIR=${DESTDIR} ${make_install_args} ${make_install_target} +>>>>>>> upstream/master } diff --git a/common/build-style/go.sh b/common/build-style/go.sh index d18116e..86395d4 100644 --- a/common/build-style/go.sh +++ b/common/build-style/go.sh @@ -22,6 +22,16 @@ do_configure() { } do_build() { +<<<<<<< HEAD +======= + # remove -s and -w from go_ldflags, we should let xbps-src strip binaries itself + for wd in $go_ldflags; do + if [ "$wd" == "-s" ] || [ "$wd" == "-w" ]; then + msg_error "$pkgname: remove -s and -w from go_ldflags\n" + fi + done + +>>>>>>> upstream/master go_package=${go_package:-$go_import_path} # Build using Go modules if there's a go.mod file if [ "${go_mod_mode}" != "off" ] && [ -f go.mod ]; then diff --git a/common/build-style/meson.sh b/common/build-style/meson.sh index ab9f2ca..56b8761 100644 --- a/common/build-style/meson.sh +++ b/common/build-style/meson.sh @@ -103,7 +103,11 @@ do_configure() { export AR="gcc-ar" # unbuffered output for continuous logging +<<<<<<< HEAD PYTHONUNBUFFERED=1 ${meson_cmd} \ +======= + PYTHONUNBUFFERED=1 ${meson_cmd} setup \ +>>>>>>> upstream/master --prefix=/usr \ --libdir=/usr/lib${XBPS_TARGET_WORDSIZE} \ --libexecdir=/usr/libexec \ @@ -138,7 +142,11 @@ do_check() { : ${make_check_target:=test} : ${meson_builddir:=build} +<<<<<<< HEAD ${make_cmd} -C ${meson_builddir} ${makejobs} ${make_check_args} ${make_check_target} +======= + ${make_check_pre} ${make_cmd} -C ${meson_builddir} ${makejobs} ${make_check_args} ${make_check_target} +>>>>>>> upstream/master } do_install() { diff --git a/common/build-style/perl-ModuleBuild.sh b/common/build-style/perl-ModuleBuild.sh index a84373b..e42db56 100644 --- a/common/build-style/perl-ModuleBuild.sh +++ b/common/build-style/perl-ModuleBuild.sh @@ -41,7 +41,11 @@ do_check() { if [ ! -x ./Build ]; then msg_error "$pkgver: cannot find ./Build script!\n" fi +<<<<<<< HEAD ./Build test +======= + ${make_check_pre} ./Build test +>>>>>>> upstream/master } do_install() { diff --git a/common/build-style/perl-module.sh b/common/build-style/perl-module.sh index b9a01b1..b4c16d5 100644 --- a/common/build-style/perl-module.sh +++ b/common/build-style/perl-module.sh @@ -79,7 +79,11 @@ do_check() { : ${make_cmd:=make} : ${make_check_target:=test} +<<<<<<< HEAD ${make_cmd} ${make_check_args} ${make_check_target} +======= + ${make_check_pre} ${make_cmd} ${makejobs} ${make_check_args} ${make_check_target} +>>>>>>> upstream/master } do_install() { diff --git a/common/build-style/python-module.sh b/common/build-style/python-module.sh index 15cf757..c84a1b0 100644 --- a/common/build-style/python-module.sh +++ b/common/build-style/python-module.sh @@ -49,7 +49,11 @@ do_check() { fi fi +<<<<<<< HEAD python${pyver} setup.py ${make_check_target:-test} ${make_check_args} +======= + ${make_check_pre} python${pyver} setup.py ${make_check_target:-test} ${make_check_args} +>>>>>>> upstream/master rm build done } diff --git a/common/build-style/python3-module.sh b/common/build-style/python3-module.sh index 093bdae..df62250 100644 --- a/common/build-style/python3-module.sh +++ b/common/build-style/python3-module.sh @@ -3,6 +3,7 @@ # do_build() { +<<<<<<< HEAD if [ -n "$CROSS_BUILD" ]; then PYPREFIX="$XBPS_CROSS_BASE" CFLAGS+=" -I${XBPS_CROSS_BASE}/${py3_inc} -I${XBPS_CROSS_BASE}/usr/include" @@ -27,6 +28,20 @@ do_check() { if python3 -c 'import pytest' >/dev/null 2>&1; then PYTHONPATH="$(cd build/lib* && pwd)" \ python3 -m pytest ${make_check_args} ${make_check_target} +======= + python3 setup.py build ${make_build_args} +} + +do_check() { + local testjobs + if python3 -c 'import pytest' >/dev/null 2>&1; then + if python3 -c 'import xdist' >/dev/null 2>&1; then + testjobs="-n $XBPS_MAKEJOBS" + fi + PYTHONPATH="$(cd build/lib* && pwd)" \ + ${make_check_pre} \ + python3 -m pytest ${testjobs} ${make_check_args} ${make_check_target} +>>>>>>> upstream/master else # Fall back to deprecated setup.py test orchestration without pytest if [ -z "$make_check_target" ]; then @@ -37,11 +52,16 @@ do_check() { fi : ${make_check_target:=test} +<<<<<<< HEAD python3 setup.py ${make_check_target} ${make_check_args} +======= + ${make_check_pre} python3 setup.py ${make_check_target} ${make_check_args} +>>>>>>> upstream/master fi } do_install() { +<<<<<<< HEAD if [ -n "$CROSS_BUILD" ]; then PYPREFIX="$XBPS_CROSS_BASE" CFLAGS+=" -I${XBPS_CROSS_BASE}/${py3_inc} -I${XBPS_CROSS_BASE}/usr/include" @@ -61,4 +81,7 @@ do_install() { else python3 setup.py install --prefix=/usr --root=${DESTDIR} ${make_install_args} fi +======= + python3 setup.py install --prefix=/usr --root=${DESTDIR} ${make_install_args} +>>>>>>> upstream/master } diff --git a/common/build-style/python3-pep517.sh b/common/build-style/python3-pep517.sh index 075f954..c61629e 100644 --- a/common/build-style/python3-pep517.sh +++ b/common/build-style/python3-pep517.sh @@ -3,6 +3,7 @@ # do_build() { +<<<<<<< HEAD # No PEP517 build tool currently supports compiled extensions # Thus, there is no need to accommodate cross compilation here : ${make_build_target:=.} @@ -17,11 +18,28 @@ do_check() { python3 -m pytest ${make_check_args} ${make_check_target} else msg_warn "Unable to determine tests for PEP517 Python templates" +======= + : ${make_build_target:=.} + : ${make_build_args:=--no-isolation --wheel} + python3 -m build ${make_build_args} ${make_build_target} +} + +do_check() { + local testjobs + if python3 -c 'import pytest' >/dev/null 2>&1; then + if python3 -c 'import xdist' >/dev/null 2>&1; then + testjobs="-n $XBPS_MAKEJOBS" + fi + ${make_check_pre} python3 -m pytest ${testjobs} ${make_check_args} ${make_check_target} + else + msg_warn "Unable to determine tests for PEP517 Python templates\n" +>>>>>>> upstream/master return 0 fi } do_install() { +<<<<<<< HEAD # As with do_build, no need to accommodate cross compilation here : ${make_install_target:=${pkgname#python3-}-${version}-*-*-*.whl} @@ -30,4 +48,14 @@ do_install() { TMPDIR=build python3 -m pip install --use-pep517 --prefix /usr \ --root ${DESTDIR} --no-deps --no-build-isolation \ --no-clean ${make_install_args} ${make_install_target} +======= + if [ -z "${make_install_target}" ]; then + # Default wheel name normalizes hyphens to underscores + local wheelbase="${pkgname#python3-}" + make_install_target="dist/${wheelbase//-/_}-${version}-*-*-*.whl" + fi + + python3 -m installer --destdir ${DESTDIR} \ + ${make_install_args} ${make_install_target} +>>>>>>> upstream/master } diff --git a/common/build-style/qmake.sh b/common/build-style/qmake.sh index 25d6225..ab376eb 100644 --- a/common/build-style/qmake.sh +++ b/common/build-style/qmake.sh @@ -1,10 +1,15 @@ # +<<<<<<< HEAD # This helper is for templates using Qt4/Qt5 qmake. +======= +# This helper is for templates using Qt5/Qt6 qmake. +>>>>>>> upstream/master # do_configure() { local qmake local qmake_args if [ -x "/usr/lib/qt5/bin/qmake" ]; then +<<<<<<< HEAD # Qt5 qmake qmake="/usr/lib/qt5/bin/qmake" fi @@ -12,6 +17,10 @@ do_configure() { # Qt4 qmake qmake="/usr/lib/qt/bin/qmake" fi +======= + qmake="/usr/lib/qt5/bin/qmake" + fi +>>>>>>> upstream/master if [ -z "${qmake}" ]; then msg_error "${pkgver}: Could not find qmake - missing in hostmakedepends?\n" fi diff --git a/common/build-style/raku-dist.sh b/common/build-style/raku-dist.sh index 3b1f28d..7e2a201 100644 --- a/common/build-style/raku-dist.sh +++ b/common/build-style/raku-dist.sh @@ -3,7 +3,11 @@ # do_check() { +<<<<<<< HEAD RAKULIB=lib prove -r -e raku t/ +======= + RAKULIB=lib ${make_check_pre} prove -r -e raku t/ +>>>>>>> upstream/master } do_install() { diff --git a/common/build-style/scons.sh b/common/build-style/scons.sh index 17527d7..ecb819f 100644 --- a/common/build-style/scons.sh +++ b/common/build-style/scons.sh @@ -9,18 +9,38 @@ do_build() { CXXFLAGS="$CXXFLAGS" LINKFLAGS="$LDFLAGS" \ cxxflags="$CXXFLAGS" linkflags="$LDFLAGS" \ RANLIB="$RANLIB" ranlib="$RANLIB" \ +<<<<<<< HEAD prefix=/usr destdir=${DESTDIR} DESTDIR=${DESTDIR} \ +======= + prefix=/usr \ + ${scons_use_destdir:+DESTDIR="${DESTDIR}"} \ + ${scons_use_destdir:+destdir="${DESTDIR}"} \ +>>>>>>> upstream/master ${make_build_args} ${make_build_target} } do_install() { : ${make_cmd:=scons} : ${make_install_target:=install} +<<<<<<< HEAD +======= + local _sandbox= + + if [ -z "$scons_use_destdir" ]; then _sandbox=yes ; fi + +>>>>>>> upstream/master ${make_cmd} ${makejobs} CC=$CC CXX=$CXX CCFLAGS="$CFLAGS" \ cc=$CC cxx=$CXX ccflags="$CFLAGS" \ CXXFLAGS="$CXXFLAGS" LINKFLAGS="$LDFLAGS" \ cxxflags="$CXXFLAGS" linkflags="$LDFLAGS" \ RANLIB="$RANLIB" ranlib="$RANLIB" \ +<<<<<<< HEAD prefix=/usr destdir=${DESTDIR} DESTDIR=${DESTDIR} \ +======= + prefix=/usr \ + ${scons_use_destdir:+DESTDIR="${DESTDIR}"} \ + ${scons_use_destdir:+destdir="${DESTDIR}"} \ + ${_sandbox:+--install-sandbox="${DESTDIR}"} \ +>>>>>>> upstream/master ${make_install_args} ${make_install_target} } diff --git a/common/build-style/slashpackage.sh b/common/build-style/slashpackage.sh index 83ad030..aabd354 100644 --- a/common/build-style/slashpackage.sh +++ b/common/build-style/slashpackage.sh @@ -5,7 +5,10 @@ # required variables # # build_style=slashpackage +<<<<<<< HEAD # wrksrc= +======= +>>>>>>> upstream/master # build_wrksrc=${pkgname}-${version} # distfiles= # @@ -15,7 +18,10 @@ # pkgname=daemontools # version=0.76 # revision=1 +<<<<<<< HEAD # wrksrc=admin +======= +>>>>>>> upstream/master # build_wrksrc=${pkgname}-${version} # build_style=slashpackage # short_desc="A collection of tools for managing UNIX services" diff --git a/common/environment/build-style/R-cran.sh b/common/environment/build-style/R-cran.sh index ded6679..212a5c3 100644 --- a/common/environment/build-style/R-cran.sh +++ b/common/environment/build-style/R-cran.sh @@ -1,8 +1,18 @@ makedepends+=" R" depends+=" R" +<<<<<<< HEAD wrksrc="${XBPS_BUILDDIR}/${pkgname#R-cran-}" # default to cran if [ -z "$distfiles" ]; then distfiles="https://cran.r-project.org/src/contrib/${pkgname#R-cran-}_${version//r/-}.tar.gz" +======= +create_wrksrc=required +build_wrksrc="${pkgname#R-cran-}" + +# default to cran +if [ -z "$distfiles" ]; then + distfiles="https://cran.r-project.org/src/contrib/${pkgname#R-cran-}_${version//r/-}.tar.gz + https://cran.r-project.org/src/contrib/Archive/${pkgname#R-cran-}/${pkgname#R-cran-}_${version//r/-}.tar.gz" +>>>>>>> upstream/master fi diff --git a/common/environment/build-style/cargo.sh b/common/environment/build-style/cargo.sh index c7c9863..e95d9b9 100644 --- a/common/environment/build-style/cargo.sh +++ b/common/environment/build-style/cargo.sh @@ -1,5 +1,12 @@ hostmakedepends+=" cargo" +<<<<<<< HEAD +======= +if ! [[ "$pkgname" =~ ^cargo-auditable(-bootstrap)?$ ]]; then + hostmakedepends+=" cargo-auditable" +fi + +>>>>>>> upstream/master if [ "$CROSS_BUILD" ]; then makedepends+=" rust-std" fi diff --git a/common/environment/build-style/go.sh b/common/environment/build-style/go.sh index afa9082..00b4696 100644 --- a/common/environment/build-style/go.sh +++ b/common/environment/build-style/go.sh @@ -43,3 +43,11 @@ case "$XBPS_TARGET_MACHINE" in *-musl) export GOCACHE="${XBPS_HOSTDIR}/gocache-muslc" ;; *) export GOCACHE="${XBPS_HOSTDIR}/gocache-glibc" ;; esac +<<<<<<< HEAD +======= + +case "$XBPS_TARGET_MACHINE" in + # https://go.dev/cl/421935 + i686*) export CGO_CFLAGS="$CGO_CFLAGS -fno-stack-protector" ;; +esac +>>>>>>> upstream/master diff --git a/common/environment/build-style/python3-module.sh b/common/environment/build-style/python3-module.sh index 56471fe..465225e 100644 --- a/common/environment/build-style/python3-module.sh +++ b/common/environment/build-style/python3-module.sh @@ -1,2 +1,6 @@ lib32disabled=yes makedepends+=" python3" +<<<<<<< HEAD +======= +build_helper+=" python3" +>>>>>>> upstream/master diff --git a/common/environment/build-style/python3-pep517.sh b/common/environment/build-style/python3-pep517.sh index 48f0c1b..460dd53 100644 --- a/common/environment/build-style/python3-pep517.sh +++ b/common/environment/build-style/python3-pep517.sh @@ -1,2 +1,8 @@ +<<<<<<< HEAD hostmakedepends+=" python3-pip" lib32disabled=yes +======= +hostmakedepends+=" python3-build python3-installer" +lib32disabled=yes +build_helper+=" python3" +>>>>>>> upstream/master diff --git a/common/environment/build-style/texmf.sh b/common/environment/build-style/texmf.sh index 098b1b6..1ac1534 100644 --- a/common/environment/build-style/texmf.sh +++ b/common/environment/build-style/texmf.sh @@ -2,4 +2,7 @@ hostmakedepends+=" rsync" # python_version isn't needed for everything either python_version=3 +<<<<<<< HEAD create_wrksrc=yes +======= +>>>>>>> upstream/master diff --git a/common/environment/build-style/void-cross.sh b/common/environment/build-style/void-cross.sh index 62ce9ea..023135d 100644 --- a/common/environment/build-style/void-cross.sh +++ b/common/environment/build-style/void-cross.sh @@ -1,6 +1,9 @@ lib32disabled=yes nopie=yes +<<<<<<< HEAD create_wrksrc=yes +======= +>>>>>>> upstream/master nostrip_files+=" libcaf_single.a libgcc.a libgcov.a libgcc_eh.a libgnarl_pic.a libgnarl.a libgnat_pic.a libgnat.a libgmem.a" diff --git a/common/environment/configure/debug-debug-prefix-map.sh b/common/environment/configure/debug-debug-prefix-map.sh index ca30b61..1d6f7a8 100644 --- a/common/environment/configure/debug-debug-prefix-map.sh +++ b/common/environment/configure/debug-debug-prefix-map.sh @@ -1,2 +1,21 @@ +<<<<<<< HEAD CFLAGS="${CFLAGS} -fdebug-prefix-map=$wrksrc=." CXXFLAGS="${CXXFLAGS} -fdebug-prefix-map=$wrksrc=." +======= +local _wrksrc="$wrksrc${build_wrksrc:+/$build_wrksrc}" +case "$build_style" in +cmake) + CFLAGS="${CFLAGS} -fdebug-prefix-map=$_wrksrc/${cmake_builddir:-build}=." + CXXFLAGS="${CXXFLAGS} -fdebug-prefix-map=$_wrksrc/${cmake_builddir:-build}=." + ;; +meson) + CFLAGS="${CFLAGS} -fdebug-prefix-map=$_wrksrc/${meson_builddir:-build}=." + CXXFLAGS="${CXXFLAGS} -fdebug-prefix-map=$_wrksrc/${meson_builddir:-build}=." + ;; +*) + CFLAGS="${CFLAGS} -fdebug-prefix-map=$_wrksrc=." + CXXFLAGS="${CXXFLAGS} -fdebug-prefix-map=$_wrksrc=." +esac + +unset _wrksrc +>>>>>>> upstream/master diff --git a/common/environment/setup/python.sh b/common/environment/setup/python.sh index 43ee4d0..c1597f7 100644 --- a/common/environment/setup/python.sh +++ b/common/environment/setup/python.sh @@ -7,7 +7,11 @@ py2_lib="usr/lib/python${py2_ver}" py2_sitelib="${py2_lib}/site-packages" py2_inc="usr/include/python${py2_ver}" +<<<<<<< HEAD py3_ver="3.10" +======= +py3_ver="3.11" +>>>>>>> upstream/master py3_abiver="" py3_lib="usr/lib/python${py3_ver}" py3_sitelib="${py3_lib}/site-packages" diff --git a/common/environment/setup/sourcepkg.sh b/common/environment/setup/sourcepkg.sh index bc06f74..154c7e6 100644 --- a/common/environment/setup/sourcepkg.sh +++ b/common/environment/setup/sourcepkg.sh @@ -7,17 +7,35 @@ unset -v archs distfiles checksum build_style build_helper nocross broken unset -v configure_script configure_args wrksrc build_wrksrc create_wrksrc unset -v make_build_args make_check_args make_install_args unset -v make_build_target make_check_target make_install_target +<<<<<<< HEAD unset -v make_cmd meson_cmd gem_cmd fetch_cmd +======= +unset -v make_cmd meson_cmd gem_cmd fetch_cmd make_check_pre +>>>>>>> upstream/master unset -v python_version stackage unset -v cmake_builddir meson_builddir unset -v meson_crossfile unset -v gemspec unset -v go_import_path go_package go_mod_mode +<<<<<<< HEAD unset -v patch_args disable_parallel_build keep_libtool_archives make_use_env +======= +unset -v patch_args disable_parallel_build disable_parallel_check +unset -v keep_libtool_archives make_use_env +>>>>>>> upstream/master unset -v reverts subpackages makedepends hostmakedepends checkdepends depends restricted unset -v nopie build_options build_options_default bootstrap repository reverts unset -v CFLAGS CXXFLAGS FFLAGS CPPFLAGS LDFLAGS LD_LIBRARY_PATH unset -v CC CXX CPP GCC LD AR AS RANLIB NM OBJDUMP OBJCOPY STRIP READELF PKG_CONFIG +<<<<<<< HEAD +======= +unset -v CMAKE_GENERATOR +# build-helper python3 +unset -v PYPREFIX LDSHARED PYTHON_CONFIG PYTHONPATH _PYTHON_SYSCONFIGDATA_NAME + +# unset all $build_option_ variables +unset -v "${!build_option_@}" +>>>>>>> upstream/master # hooks/do-extract/00-distfiles unset -v skip_extraction diff --git a/common/environment/setup/vsed.sh b/common/environment/setup/vsed.sh index 5b5bf42..90af841 100644 --- a/common/environment/setup/vsed.sh +++ b/common/environment/setup/vsed.sh @@ -57,8 +57,18 @@ vsed() { newdigest="$($XBPS_DIGEST_CMD "$f")" newdigest="${newdigest%% *}" +<<<<<<< HEAD if [ "$olddigest" = "$newdigest" ]; then msg_warn "$pkgver: vsed: regex \"$rx\" didn't change file \"$f\"\n" +======= + msgfunc=msg_warn + if [ -n "$XBPS_STRICT" ]; then + msgfunc=msg_error + fi + + if [ "$olddigest" = "$newdigest" ]; then + $msgfunc "$pkgver: vsed: regex \"$rx\" didn't change file \"$f\"\n" +>>>>>>> upstream/master fi olddigest="${newdigest}" done diff --git a/common/hooks/do-extract/00-distfiles.sh b/common/hooks/do-extract/00-distfiles.sh index 922f702..ae0a01d 100644 --- a/common/hooks/do-extract/00-distfiles.sh +++ b/common/hooks/do-extract/00-distfiles.sh @@ -3,7 +3,11 @@ hook() { local srcdir="$XBPS_SRCDISTDIR/$pkgname-$version" +<<<<<<< HEAD local f j curfile found extractdir +======= + local f j curfile found extractdir innerdir num_dirs +>>>>>>> upstream/master local TAR_CMD if [ -z "$distfiles" -a -z "$checksum" ]; then @@ -20,10 +24,13 @@ hook() { fi done +<<<<<<< HEAD if [ -n "$create_wrksrc" ]; then mkdir -p "${wrksrc}" || msg_error "$pkgver: failed to create wrksrc.\n" fi +======= +>>>>>>> upstream/master # Disable trap on ERR; the code is smart enough to report errors and abort. trap - ERR @@ -31,6 +38,12 @@ hook() { [ -z "$TAR_CMD" ] && TAR_CMD="$(command -v tar)" [ -z "$TAR_CMD" ] && msg_error "xbps-src: no suitable tar cmd (bsdtar, tar)\n" +<<<<<<< HEAD +======= + extractdir=$(mktemp -d "$XBPS_BUILDDIR/.extractdir-XXXXXXX") || + msg_error "Cannot create temporary dir for do-extract\n" + +>>>>>>> upstream/master msg_normal "$pkgver: extracting distfile(s), please wait...\n" for f in ${distfiles}; do @@ -73,12 +86,15 @@ hook() { *) msg_error "$pkgver: unknown distfile suffix for $curfile.\n";; esac +<<<<<<< HEAD if [ -n "$create_wrksrc" ]; then extractdir="$wrksrc" else extractdir="$XBPS_BUILDDIR" fi +======= +>>>>>>> upstream/master case ${cursufx} in tar|txz|tbz|tlz|tgz|crate) $TAR_CMD -x --no-same-permissions --no-same-owner -f $srcdir/$curfile -C "$extractdir" @@ -128,11 +144,15 @@ hook() { fi ;; txt) +<<<<<<< HEAD if [ "$create_wrksrc" ]; then cp -f $srcdir/$curfile "$extractdir" else msg_error "$pkgname: ${curfile##*.} files can only be extracted when create_wrksrc is set\n" fi +======= + cp -f $srcdir/$curfile "$extractdir" +>>>>>>> upstream/master ;; 7z) if command -v 7z &>/dev/null; then @@ -150,6 +170,7 @@ hook() { fi ;; gem) +<<<<<<< HEAD case "$TAR_CMD" in *bsdtar) $TAR_CMD -xOf $srcdir/$curfile data.tar.gz | \ @@ -160,6 +181,12 @@ hook() { $TAR_CMD -xz -C "$extractdir" --transform="s,^,${wrksrc##*/}/," ;; esac +======= + innerdir="$extractdir/${wrksrc##*/}" + mkdir -p "$innerdir" + $TAR_CMD -xOf $srcdir/$curfile data.tar.gz | + $TAR_CMD -xz -C "$innerdir" -f - +>>>>>>> upstream/master if [ $? -ne 0 ]; then msg_error "$pkgver: extracting $curfile into $XBPS_BUILDDIR.\n" fi @@ -169,4 +196,34 @@ hook() { ;; esac done +<<<<<<< HEAD +======= + + # find "$extractdir" -mindepth 1 -maxdepth 1 -printf '1\n' | wc -l + # However, it requires GNU's find + num_dirs=0 + for f in "$extractdir"/* "$extractdir"/.*; do + if [ -e "$f" ] || [ -L "$f" ]; then + case "$f" in + */. | */..) ;; + *) + innerdir="$f" + num_dirs=$(( num_dirs + 1 )) + ;; + esac + fi + done + rm -rf "$wrksrc" + if [ "$num_dirs" = 1 ] && [ -d "$innerdir" ] && [ -z "$create_wrksrc" ]; then + # rename the subdirectory (top-level of distfiles) to $wrksrc + mv "$innerdir" "$wrksrc" && + rmdir "$extractdir" + elif [ "$num_dirs" -gt 1 ] || [ -n "$create_wrksrc" ]; then + # rename the tmpdir to wrksrc + mv "$extractdir" "$wrksrc" + else + mkdir -p "$wrksrc" + fi || + msg_error "$pkgver: failed to move sources to $wrksrc\n" +>>>>>>> upstream/master } diff --git a/common/hooks/do-fetch/00-distfiles.sh b/common/hooks/do-fetch/00-distfiles.sh index e2bf543..da0ba52 100644 --- a/common/hooks/do-fetch/00-distfiles.sh +++ b/common/hooks/do-fetch/00-distfiles.sh @@ -2,6 +2,7 @@ # the $distfiles variable and then verifies its sha256 checksum comparing # its value with the one stored in the $checksum variable. +<<<<<<< HEAD # Get the checksum for $curfile at index $dfcount get_cksum() { local curfile="$1" dfcount="$2" ckcount cksum i @@ -20,6 +21,8 @@ get_cksum() { echo "$cksum" } +======= +>>>>>>> upstream/master # Return the checksum of the contents of a tarball contents_cksum() { local curfile="$1" cursufx cksum @@ -110,9 +113,13 @@ contents_cksum() { # Verify the checksum for $curfile stored at $distfile and index $dfcount verify_cksum() { +<<<<<<< HEAD local curfile="$1" distfile="$2" dfcount="$3" filesum cksum cksum=$(get_cksum $curfile $dfcount) +======= + local curfile="$1" distfile="$2" cksum="$3" filesum +>>>>>>> upstream/master # If the checksum starts with an commercial at (@) it is the contents checksum if [ "${cksum:0:1}" = "@" ]; then @@ -121,7 +128,11 @@ verify_cksum() { filesum=$(contents_cksum "$curfile") if [ "${cksum}" != "$filesum" ]; then echo +<<<<<<< HEAD msg_red "SHA256 mismatch for '$curfile:'\n@$filesum\n" +======= + msg_red "SHA256 mismatch for '${curfile}:'\n@${filesum}\n" +>>>>>>> upstream/master errors=$((errors + 1)) else msg_normal_append "OK.\n" @@ -131,7 +142,11 @@ verify_cksum() { filesum=$(${XBPS_DIGEST_CMD} "$distfile") if [ "$cksum" != "$filesum" ]; then echo +<<<<<<< HEAD msg_red "SHA256 mismatch for '$curfile:'\n$filesum\n" +======= + msg_red "SHA256 mismatch for '${curfile}:'\n${filesum}\n" +>>>>>>> upstream/master errors=$((errors + 1)) else if [ ! -f "$XBPS_SRCDISTDIR/by_sha256/${cksum}_${curfile}" ]; then @@ -145,6 +160,7 @@ verify_cksum() { # Link an existing cksum $distfile for $curfile at index $dfcount link_cksum() { +<<<<<<< HEAD local curfile="$1" distfile="$2" dfcount="$3" filesum cksum cksum=$(get_cksum $curfile $dfcount) @@ -161,6 +177,22 @@ try_mirrors() { [ -z "$XBPS_DISTFILES_MIRROR" ] && return basefile="${f##*/}" cksum=$(get_cksum $curfile $dfcount) +======= + local curfile="$1" distfile="$2" cksum="$3" + if [ -n "$cksum" -a -f "$XBPS_SRCDISTDIR/by_sha256/${cksum}_${curfile}" ]; then + ln -f "$XBPS_SRCDISTDIR/by_sha256/${cksum}_${curfile}" "$distfile" + msg_normal "$pkgver: using known distfile $curfile.\n" + return 0 + fi + return 1 +} + +try_mirrors() { + local curfile="$1" distfile="$2" cksum="$3" f="$4" + local filesum basefile mirror path scheme good + [ -z "$XBPS_DISTFILES_MIRROR" ] && return 1 + basefile="${f##*/}" +>>>>>>> upstream/master for mirror in $XBPS_DISTFILES_MIRROR; do scheme="file" if [[ $mirror == *://* ]]; then @@ -179,6 +211,7 @@ try_mirrors() { fi if [[ "$mirror" == *voidlinux* ]]; then # For distfiles.voidlinux.* append the subdirectory +<<<<<<< HEAD mirror="$mirror/$subdir" fi msg_normal "$pkgver: fetching distfile '$curfile' from '$mirror'...\n" @@ -194,13 +227,86 @@ try_mirrors() { msg_normal "$pkgver: checksum failed - removing '$curfile'...\n" rm -f ${distfile} done +======= + mirror="$mirror/$pkgname-$version" + fi + msg_normal "$pkgver: fetching distfile '$curfile' from mirror '$mirror'...\n" + $fetch_cmd "$mirror/$curfile" + # If basefile was not found, but a curfile file may exist, try to fetch it + # if [ ! -f "$distfile" -a "$basefile" != "$curfile" ]; then + # msg_normal "$pkgver: fetching distfile '$basefile' from mirror '$mirror'...\n" + # $fetch_cmd "$mirror/$basefile" + # fi + [ ! -f "$distfile" ] && continue + flock -n ${distfile}.part rm -f ${distfile}.part + filesum=$(${XBPS_DIGEST_CMD} "$distfile") + if [ "$cksum" == "$filesum" ]; then + return 0 + fi + msg_normal "$pkgver: checksum failed - removing '$curfile'...\n" + rm -f ${distfile} + done + return 1 +} + +try_urls() { + local curfile="$1" + local good= + for i in ${_file_idxs["$curfile"]}; do + local cksum=${_checksums["$i"]} + local url=${_distfiles["$i"]} + + # If distfile does not exist, download it from the original location. + if [[ "$FTP_RETRIES" && "${url}" =~ ^ftp:// ]]; then + max_retries="$FTP_RETRIES" + else + max_retries=1 + fi + for retry in $(seq 1 1 $max_retries); do + if [ ! -f "$distfile" ]; then + if [ "$retry" == 1 ]; then + msg_normal "$pkgver: fetching distfile '$curfile' from '$url'...\n" + else + msg_normal "$pkgver: fetch attempt $retry of $max_retries...\n" + fi + flock "${distfile}.part" $fetch_cmd "$url" + fi + done + + if [ ! -f "$distfile" ]; then + continue + fi + + # distfile downloaded, verify sha256 hash. + flock -n "${distfile}.part" rm -f "${distfile}.part" + verify_cksum "$curfile" "$distfile" "$cksum" + return 0 + done + return 1 +>>>>>>> upstream/master } hook() { local srcdir="$XBPS_SRCDISTDIR/$pkgname-$version" local dfcount=0 dfgood=0 errors=0 max_retries +<<<<<<< HEAD if [ ! -d "$srcdir" ]; then +======= + local -a _distfiles=($distfiles) + local -a _checksums=($checksum) + local -A _file_idxs + + # Create a map from target file to index in _distfiles/_checksums + for i in ${!_distfiles[@]}; do + f="${_distfiles[$i]}" + curfile="${f#*>}" + curfile="${curfile##*/}" + _file_idxs["$curfile"]+=" $i" + done + + if [[ ! -d "$srcdir" ]]; then +>>>>>>> upstream/master mkdir -p -m775 "$srcdir" chgrp $(id -g) "$srcdir" fi @@ -209,14 +315,21 @@ hook() { # Disable trap on ERR; the code is smart enough to report errors and abort. trap - ERR +<<<<<<< HEAD # Detect bsdtar and GNU tar (in that order of preference) TAR_CMD="$(command -v bsdtar)" if [ -z "$TAR_CMD" ]; then +======= + # Detect bsdtar and GNU tar (in that order of preference) + TAR_CMD="$(command -v bsdtar)" + if [[ -z "$TAR_CMD" ]]; then +>>>>>>> upstream/master TAR_CMD="$(command -v tar)" fi # Detect distfiles with obsolete checksum and purge them from the cache +<<<<<<< HEAD for f in ${distfiles}; do curfile="${f#*>}" curfile="${curfile##*/}" @@ -288,11 +401,71 @@ hook() { flock -n ${distfile}.part rm -f ${distfile}.part verify_cksum $curfile $distfile $dfcount dfcount=$((dfcount + 1)) +======= + for f in ${!_file_idxs[@]}; do + distfile="$srcdir/$f" + for i in ${_file_idxs["$f"]}; do + if [[ -f $distfile ]]; then + cksum=${_checksums["$i"]} + if [[ ${cksum:0:1} = @ ]]; then + cksum=${cksum:1} + filesum=$(contents_cksum "$distfile") + else + filesum=$(${XBPS_DIGEST_CMD} "$distfile") + fi + if [[ $cksum = $filesum ]]; then + dfgood=$((dfgood + 1)) + else + inode=$(stat "$distfile" --printf "%i") + msg_warn "$pkgver: wrong checksum found for ${curfile} - purging\n" + find ${XBPS_SRCDISTDIR} -inum ${inode} -delete -print + fi + fi + dfcount=$((dfcount + 1)) + done + done + + # We're done, if all distfiles were found and had good checksums + [[ $dfcount -eq $dfgood ]] && return + + # Download missing distfiles and verify their checksums + for curfile in ${!_file_idxs[@]}; do + distfile="$srcdir/$curfile" + set -- ${_file_idxs["$curfile"]} + i="$1" + + # If file lock cannot be acquired wait until it's available. + while ! flock -w 1 "${distfile}.part" true; do + msg_warn "$pkgver: ${curfile} is already being downloaded, waiting for 1s ...\n" + done + + if [[ -f "$distfile" ]]; then + continue + fi + + # If distfile does not exist, try to link to it. + if link_cksum "$curfile" "$distfile" "${_checksums[$i]}"; then + continue + fi + + # If distfile does not exist, download it from a mirror location. + if try_mirrors "$curfile" "$distfile" "${_checksums[$i]}" "${_distfiles[$i]}"; then + continue + fi + + if ! try_urls "$curfile"; then + msg_error "$pkgver: failed to fetch '$curfile'.\n" + fi +>>>>>>> upstream/master done unset TAR_CMD +<<<<<<< HEAD if [ $errors -gt 0 ]; then +======= + if [[ $errors -gt 0 ]]; then +>>>>>>> upstream/master msg_error "$pkgver: couldn't verify distfiles, exiting...\n" fi } diff --git a/common/hooks/do-patch/00-patches.sh b/common/hooks/do-patch/00-patches.sh index 9f7e21f..76053a3 100644 --- a/common/hooks/do-patch/00-patches.sh +++ b/common/hooks/do-patch/00-patches.sh @@ -6,6 +6,7 @@ _process_patch() { _args="-Np1" _patch=${i##*/} +<<<<<<< HEAD if [ -f $PATCHESDIR/${_patch}.args ]; then _args=$(<$PATCHESDIR/${_patch}.args) elif [ -n "$patch_args" ]; then @@ -23,6 +24,25 @@ _process_patch() { elif [[ $f =~ .diff$ ]]; then : elif [[ $f =~ .patch$ ]]; then +======= + if [ -f "$PATCHESDIR/${_patch}.args" ]; then + _args=$(<"$PATCHESDIR/${_patch}.args") + elif [ -n "$patch_args" ]; then + _args=$patch_args + fi + cp -f "$i" "$wrksrc" + + # Try to guess if its a compressed patch. + if [[ $i =~ .gz$ ]]; then + gunzip "$wrksrc/${_patch}" + _patch=${_patch%%.gz} + elif [[ $i =~ .bz2$ ]]; then + bunzip2 "$wrksrc/${_patch}" + _patch=${_patch%%.bz2} + elif [[ $i =~ .diff$ ]]; then + : + elif [[ $i =~ .patch$ ]]; then +>>>>>>> upstream/master : else msg_warn "$pkgver: unknown patch type: $i.\n" @@ -31,7 +51,11 @@ _process_patch() { cd "$wrksrc" msg_normal "$pkgver: patching: ${_patch}.\n" +<<<<<<< HEAD patch -s ${_args} -i ${_patch} 2>/dev/null +======= + patch -s ${_args} <"${_patch}" 2>/dev/null +>>>>>>> upstream/master } hook() { @@ -44,11 +68,19 @@ hook() { done < $PATCHESDIR/series else for f in $PATCHESDIR/*; do +<<<<<<< HEAD [ ! -f $f ] && continue if [[ $f =~ ^.*.args$ ]]; then continue fi _process_patch $f +======= + [ ! -f "$f" ] && continue + if [[ $f =~ ^.*.args$ ]]; then + continue + fi + _process_patch "$f" +>>>>>>> upstream/master done fi } diff --git a/common/hooks/post-install/11-pkglint-elf-in-usrshare.sh b/common/hooks/post-install/11-pkglint-elf-in-usrshare.sh index a665f3e..8c766cf 100644 --- a/common/hooks/post-install/11-pkglint-elf-in-usrshare.sh +++ b/common/hooks/post-install/11-pkglint-elf-in-usrshare.sh @@ -24,8 +24,12 @@ hook() { # Find all binaries in /usr/share and add them to the pool while read -r f; do +<<<<<<< HEAD mime="${f##*:}" mime="${mime// /}" +======= + mime="${f##*: }" +>>>>>>> upstream/master file="${f%:*}" file="${file#${PKGDESTDIR}}" case "${mime}" in @@ -37,7 +41,11 @@ hook() { fi ;; esac +<<<<<<< HEAD done < <(find $PKGDESTDIR/usr/share $prune_expr -type f | file --mime-type --files-from -) +======= + done < <(find $PKGDESTDIR/usr/share $prune_expr -type f | file --no-pad --mime-type --files-from -) +>>>>>>> upstream/master # Check passed if no packages in pool if [ -z "$matches" ]; then diff --git a/common/hooks/pre-configure/02-script-wrapper.sh b/common/hooks/pre-configure/02-script-wrapper.sh index 09c7960..2f809f0 100644 --- a/common/hooks/pre-configure/02-script-wrapper.sh +++ b/common/hooks/pre-configure/02-script-wrapper.sh @@ -236,7 +236,11 @@ hook() { generic_wrapper3 libetpan-config generic_wrapper3 giblib-config python_wrapper python-config 2.7 +<<<<<<< HEAD python_wrapper python3-config 3.10 +======= + python_wrapper python3-config 3.11 +>>>>>>> upstream/master apr_apu_wrapper apr-1-config apr_apu_wrapper apu-1-config } diff --git a/common/hooks/pre-pkg/04-generate-runtime-deps.sh b/common/hooks/pre-pkg/04-generate-runtime-deps.sh index c8f8c04..81421f5 100644 --- a/common/hooks/pre-pkg/04-generate-runtime-deps.sh +++ b/common/hooks/pre-pkg/04-generate-runtime-deps.sh @@ -34,15 +34,23 @@ add_rundep() { store_pkgdestdir_rundeps() { if [ -n "$run_depends" ]; then +<<<<<<< HEAD : > ${PKGDESTDIR}/rdeps +======= +>>>>>>> upstream/master for f in ${run_depends}; do _curdep="$(echo "$f" | sed -e 's,\(.*\)?.*,\1,')" if [ -z "$($XBPS_UHELPER_CMD getpkgdepname ${_curdep} 2>/dev/null)" -a \ -z "$($XBPS_UHELPER_CMD getpkgname ${_curdep} 2>/dev/null)" ]; then _curdep="${_curdep}>=0" fi +<<<<<<< HEAD printf -- "${_curdep} " >> ${PKGDESTDIR}/rdeps done +======= + printf -- "${_curdep}\n" + done | sort | xargs > ${PKGDESTDIR}/rdeps +>>>>>>> upstream/master fi } @@ -166,6 +174,10 @@ hook() { sorequires+="${f} " done if [ -n "${sorequires}" ]; then +<<<<<<< HEAD echo "${sorequires}" > ${PKGDESTDIR}/shlib-requires +======= + echo "${sorequires}" | xargs -n1 | sort | xargs > ${PKGDESTDIR}/shlib-requires +>>>>>>> upstream/master fi } diff --git a/common/hooks/pre-pkg/99-pkglint.sh b/common/hooks/pre-pkg/99-pkglint.sh index ea73c96..4b27431 100644 --- a/common/hooks/pre-pkg/99-pkglint.sh +++ b/common/hooks/pre-pkg/99-pkglint.sh @@ -22,7 +22,11 @@ hook() { fi done +<<<<<<< HEAD for f in var/run usr/local; do +======= + for f in var/run usr/local usr/etc; do +>>>>>>> upstream/master if [ -d ${PKGDESTDIR}/${f} ]; then msg_red "${pkgver}: /${f} directory is not allowed, remove it!\n" error=1 @@ -103,11 +107,27 @@ hook() { error=1 fi +<<<<<<< HEAD +======= + if [ -d ${PKGDESTDIR}/usr/usr ]; then + msg_red "${pkgver}: /usr/usr is forbidden, use /usr.\n" + error=1 + fi + +>>>>>>> upstream/master if [ -d ${PKGDESTDIR}/usr/man ]; then msg_red "${pkgver}: /usr/man is forbidden, use /usr/share/man.\n" error=1 fi +<<<<<<< HEAD +======= + if [[ -d ${PKGDESTDIR}/usr/share/man/man ]]; then + msg_red "${pkgver}: /usr/share/man/man is forbidden, use /usr/share/man.\n" + error=1 + fi + +>>>>>>> upstream/master if [ -d ${PKGDESTDIR}/usr/doc ]; then msg_red "${pkgver}: /usr/doc is forbidden. Use /usr/share/doc.\n" error=1 @@ -182,7 +202,11 @@ hook() { if [ -z "$found" ]; then _myshlib="${libname}.so" [ "${_myshlib}" != "${rev}" ] && _myshlib+=".${rev}" +<<<<<<< HEAD msg_warn "${pkgver}: ${_myshlib} not found in common/shlibs!\n" +======= + msg_normal "${pkgver}: ${_myshlib} not found in common/shlibs.\n" +>>>>>>> upstream/master fi; } done diff --git a/common/scripts/lint-commits b/common/scripts/lint-commits index 01c4eda..dd2ce17 100755 --- a/common/scripts/lint-commits +++ b/common/scripts/lint-commits @@ -5,18 +5,30 @@ die() { exit 1 } +<<<<<<< HEAD GIT_CMD=$(command -v chroot-git 2>/dev/null) || GIT_CMD=$(command -v git 2>/dev/null) || +======= +command -v git >/dev/null 2>&1 || +>>>>>>> upstream/master die "neither chroot-git nor git could be found!" rev_parse() { if [ -n "$1" ]; then +<<<<<<< HEAD "$GIT_CMD" rev-parse --verify "$1" +======= + git rev-parse --verify "$1" +>>>>>>> upstream/master else shift while test "$#" != 0 do +<<<<<<< HEAD "$GIT_CMD" rev-parse --verify "$1" 2>/dev/null && return +======= + git rev-parse --verify "$1" 2>/dev/null && return +>>>>>>> upstream/master shift done return 1 @@ -27,14 +39,21 @@ base=$(rev_parse "$1" FETCH_HEAD ORIG_HEAD) || die "base commit not found" tip=$(rev_parse "$2" HEAD) || die "tip commit not found" status=0 +<<<<<<< HEAD for cmt in $("$GIT_CMD" rev-list --abbrev-commit $base..$tip) do "$GIT_CMD" cat-file commit "$cmt" | +======= +for cmt in $(git rev-list --abbrev-commit $base..$tip) +do + git cat-file commit "$cmt" | +>>>>>>> upstream/master awk -vC="$cmt" ' # skip header /^$/ && !msg { msg = 1; next } !msg { next } # 3: long-line-is-banned-except-footnote-like-this-for-url +<<<<<<< HEAD (NF > 2) && (length > 80) { print C ": long line: " $0; exit 1 } !subject { if (length > 50) { print C ": subject is a bit long" } @@ -42,11 +61,24 @@ do # Below check is too noisy? # if (!($0 ~ "^New package:" || $0 ~ ".*: update to")) { # print C ": not new package/update/removal?" +======= + (NF > 2) && (length > 80) { print "::error title=Commit Lint::" C ": long line: " $0; exit 1 } + !subject { + if (length > 50) { print "::warning title=Commit Lint::" C ": subject is a bit long" } + if (!($0 ~ ":" || $0 ~ "^Take over maintainership " || $0 ~ "^Orphan ")) { print "::error title=Commit Lint::" C ": subject does not follow CONTRIBUTING.md guildelines"; exit 1 } + # Below check is too noisy? + # if (!($0 ~ "^New package:" || $0 ~ ".*: update to")) { + # print "::warning title=Commit Lint::" C ": not new package/update/removal?" +>>>>>>> upstream/master # } subject = 1; next } /^$/ { body = 1; next } +<<<<<<< HEAD !body { print C ": second line must be blank"; exit 1 } +======= + !body { print "::error title=Commit Lint::" C ": second line must be blank"; exit 1 } +>>>>>>> upstream/master ' || status=1 done exit $status diff --git a/common/scripts/lint-conflicts b/common/scripts/lint-conflicts new file mode 100755 index 0000000..2917f72 --- /dev/null +++ b/common/scripts/lint-conflicts @@ -0,0 +1,198 @@ +#!/usr/bin/env bash + +# Report packages installing same file and not marked with +# conflicts or replaces. +# Without argument, find conflicts between packages in local +# repository at hostdir/binpkgs and packages indexed in xlocate. +# With single path as argument, read that local repository. +# With -a flag, find conflicts between packages indexed in xlocate. + +if [ "$#" = 0 ]; then + binpkgs="$PWD/hostdir/binpkgs" +elif [ "$1" = -a ]; then + all=1 +elif [ -d "$1" ]; then + binpkgs="$1" +else + echo "Usage:" + echo "$0" + echo " check packages in ./hostdir/binpkgs" + echo "$0 path/to/hostdir/binpkgs" + echo " check packages there" + echo "$0 -a" + echo " check all packages indexed in xlocate" + exit 1 +fi + +declare -A newly_built conflicts_cache providers_cache pairs owners +repositories=("--repository=${binpkgs}" "--repository=${binpkgs}/nonfree") +rv=0 + +template_exists() { + [ -f "srcpkgs/$1/template" ] +} + +partial_check() { + [ -z "$all" ] +} + +providers_of() { + # print the pkgname and packages that `provides` it + local pkgname=$1 + if [ "${providers_cache[$pkgname]}" = '' ]; then + local line provider_pkgver provided_pkgver provider_pkgname provided_pkgname + local -A providers + providers[$pkgname]=$pkgname + while read -r line; do + line=${line%%'('*} + provider_pkgver=${line%': '*} + provided_pkgver=${line#*': '} + provider_pkgname=${provider_pkgver%-*} + provided_pkgname=${provided_pkgver%-*} + # comes from $(xbps-query -s $pkgname), so $pkgname can be substring + if [ "$provided_pkgname" = "$pkgname" ]; then + providers[$provider_pkgname]=$provider_pkgname + fi + done < <(xbps-query "${repositories[@]}" -p provides -R -s "$pkgname") + # leading space ensures ${[]} != '' + providers_cache[$pkgname]=" ${providers[*]}" + fi + echo ${providers_cache[$pkgname]} +} + +conflicts_of() { + # print list of packages that are _marked_ as conflicting with given one + local pkgname=$1 + if [ "${conflicts_cache[$pkgname]}" = '' ]; then + local in_conflict provider + local -A all + while read -r in_conflict; do + in_conflict=${in_conflict%'<'*} + in_conflict=${in_conflict%'>'*} + providers_of "$in_conflict" > /dev/null # executing in same process to fill cache + for provider in $(providers_of "$in_conflict"); do + all[$provider]=$provider + done + done < <(xbps-query "${repositories[@]}" -p conflicts,replaces -R "$pkgname") + # leading space ensures ${[]} != '' + conflicts_cache[$pkgname]=" ${all[*]}" + fi + echo ${conflicts_cache[$pkgname]} +} + +conflict_between() { + # exit successfully if packages are _marked_ as conflicting + conflicts_of "$1" > /dev/null # executing in same process to fill cache + case " $(conflicts_of "$1") " in + *" $2 "*) return 0 + esac + conflicts_of "$2" > /dev/null # executing in same process to fill cache + case " $(conflicts_of "$2") " in + *" $1 "*) return 0 + esac + return 1 +} + +list_newly_built_files() { + # print one line per file in newly built packages + # each line contains pkgname and file path + local pkgver pkgname + while read -r pkgver; do + pkgname=${pkgver%-*} + xbps-query "${repositories[@]}" -i -f "$pkgname" | sed s'/ -> .*//;'" s/^/$pkgname /" + done < <(xbps-query "${repositories[@]}" -i -R -s '' | cut -d' ' -f 2) +} + +list_interesting_files() { + # list files potentially contained in more than one package + # each line contains pkgver/pkgname and file path + if partial_check; then + list_newly_built_files + else + xlocate / | sed s'/ -> .*//' | grep -F -f <(xlocate / | cut -f 2- | sed s'/ -> .*//' | sort | uniq -d) + fi +} + +group_by_file_full() { + # create associative array `owners` mapping file to list of packages + # for packages potentially conflicting with newly built ones + local pkgver file pkgname + while read -r pkgver file; do + pkgname=${pkgver%-*} + if template_exists "$pkgname"; then + owners[$file]+=" $pkgname" + fi + done < <(list_interesting_files) +} + +group_by_file_partial() { + # create associative array `owners` mapping file to list of packages + # for all packages in xlocate + local pkgname file + ## newly built packages + while read -r pkgver; do + pkgname=${pkgver%-*} + newly_built[$pkgname]=$pkgname + done < <(xbps-query "${repositories[@]}" -i -R -s '' | cut -d' ' -f 2) + while read -r pkgname file; do + owners[$file]+=" $pkgname" + done < <(list_newly_built_files) + ## rest of repository + while read -r pkgver file; do + pkgname=${pkgver%-*} + if [ -z "${newly_built[$pkgname]}" ] && template_exists "$pkgname"; then + owners[$file]+=" $pkgname" + fi + done < <(xlocate / | sed s'/ -> .*//' | grep -F -f <(list_newly_built_files | cut -d ' ' -f 2-)) +} + +group_by_pair() { + # find package pairs owning same file and not marked as conflicting + local pkg file a b + while read -r pkg file; do + for a in ${owners[$file]}; do + for b in ${owners[$file]}; do + if ! [ "$a" "<" "$b" ]; then + continue + fi + if partial_check && [ -z "${newly_built[$a]}" ] && [ -z "${newly_built[$b]}" ]; then + continue + fi + if ! conflict_between "$a" "$b"; then + unset pair_files + local -A pair_files + eval "${pairs["$a $b"]}" + pair_files[$file]="$file" + pairs["$a $b"]="${pair_files[@]@A}" + fi + done + done + done < <(list_interesting_files) +} + +print_out() { + local pair file + if [ "${#pairs[@]}" = 0 ]; then + echo 1>&2 "No conflicts found in" "${repositories[@]#*=}" + exit 0 + fi + while read -r pair; do + rv=1 + echo "${pair% *} and ${pair#* } conflict for" + unset pair_files + eval "${pairs[$pair]}" + for file in "${pair_files[@]}"; do + echo " $file" + done | sort + done < <(printf '%s\n' "${!pairs[@]}" | sort) +} + +if partial_check; then + group_by_file_partial +else + group_by_file_full +fi +group_by_pair +print_out + +exit $rv diff --git a/common/scripts/lint-version-change b/common/scripts/lint-version-change index 5e96877..0f3ef88 100755 --- a/common/scripts/lint-version-change +++ b/common/scripts/lint-version-change @@ -13,20 +13,31 @@ if ! [ "$base_rev" ]; then die "usage: $0 TEMPLATE BASE-REVISION [TIP-REVISION]" fi +<<<<<<< HEAD if command -v chroot-git >/dev/null 2>&1; then GIT_CMD=$(command -v chroot-git) elif command -v git >/dev/null 2>&1; then GIT_CMD=$(command -v git) else +======= +if ! command -v git >/dev/null 2>&1; then +>>>>>>> upstream/master die "neither chroot-git nor git could be found" fi scan() { rx="$1" msg="$2" template_path=$template +<<<<<<< HEAD if [ "$tip_rev" ]; then template_path="${tip_rev}:${template}" maybe_git="$GIT_CMD" +======= + maybe_git= + if [ "$tip_rev" ]; then + template_path="${tip_rev}:${template}" + maybe_git="git" +>>>>>>> upstream/master revspec="[^:]*:" fi $maybe_git grep -P -Hn -e "$rx" "$template_path" | @@ -37,7 +48,11 @@ scan() { show_template() { rev="$1" if [ "$rev" ]; then +<<<<<<< HEAD $GIT_CMD cat-file blob "${rev}:${template}" 2>/dev/null +======= + git cat-file blob "${rev}:${template}" 2>/dev/null +>>>>>>> upstream/master else cat "${template}" 2>/dev/null fi @@ -45,7 +60,14 @@ show_template() { show_template_var() { rev="$1" var="$2" +<<<<<<< HEAD show_template "$rev" | grep -Po '^'${var}'=\K.*' +======= + ( + show_template "$rev" + printf '%s\n' "printf '%s\\n' \"\$${var}\"" + ) | bash 2>/dev/null +>>>>>>> upstream/master } revision_reset() { @@ -72,6 +94,31 @@ reverts_on_downgrade() { esac } +<<<<<<< HEAD +======= +check_revert() { + for vr in $reverts; do + xbps-uhelper cmpver "${version}" "${vr%_*}" + case "$?" in + 0 | 1) + scan '^version=' "remove $vr from \$reverts" + status=1 + ;; + esac + done + for vr in $prev_reverts; do + if ! xbps-uhelper cmpver "$version" "${vr%_*}"; then + continue + fi + if [ $revision -gt "${vr##*_}" ]; then + continue + fi + scan '^revision=' "undo a revert with same revision as before" + status=1 + done +} + +>>>>>>> upstream/master version_change() { version="$(show_template_var "$tip_rev" version)" revision="$(show_template_var "$tip_rev" revision)" @@ -83,6 +130,10 @@ version_change() { 1) revision_reset;; -1|255) reverts_on_downgrade;; esac +<<<<<<< HEAD +======= + check_revert +>>>>>>> upstream/master } version_change diff --git a/common/scripts/lint2annotations.awk b/common/scripts/lint2annotations.awk new file mode 100644 index 0000000..5405d69 --- /dev/null +++ b/common/scripts/lint2annotations.awk @@ -0,0 +1,11 @@ +# Converts xlint/etc format lints into GH Actions annotations +# The original line is printed alongside the annotation command +{ + split($0, a, ": ") + split(a[1], b, ":") + msg = substr($0, index($0, ": ") + 2) + if (b[2]) { + line = ",line=" b[2] + } + printf "::error title=Template Lint,file=%s%s::%s\n", b[1], line, msg +} diff --git a/common/shlibs b/common/shlibs index bb2f723..52537d4 100644 --- a/common/shlibs +++ b/common/shlibs @@ -42,6 +42,8 @@ libnss_dns.so.2 glibc-2.32_1 libnss_hesiod.so.2 glibc-2.32_1 libcrypt.so.1 glibc-2.32_1 libBrokenLocale.so.1 glibc-2.32_1 +libSimGearCore.so.2020.3.13 simgear-2020.3.13_1 +libSimGearScene.so.2020.3.13 simgear-2020.3.13_1 libmemusage.so glibc-2.32_1 libSegFault.so glibc-2.32_1 libpcprofile.so glibc-2.32_1 @@ -60,6 +62,8 @@ liblto_plugin.so.0 gcc-4.7.3_1 libgcc_s.so.1 libgcc-4.4.0_1 libgo.so.16 libgo-10.2.0_1 libperl.so.5.34 perl-5.34.0_1 +libgccjit.so.0 libgccjit-10.2.1pre1_1 +libperl.so.5.36 perl-5.36.0_1 libgmp.so.10 gmp-5.0.1_1 libgmpxx.so.4 gmpxx-6.0.0_2 libmpfi.so.0 mpfi-1.5.3_1 @@ -72,6 +76,12 @@ libcxsparse.so.3 SuiteSparse-5.10.1_1 libncurses.so.6 ncurses-libs-6.0_1 ignore libncursesw.so.6 ncurses-libs-5.8_1 ignore libtinfo.so.6 ncurses-libtinfo-libs-6.2_2 +libt3config.so.0 libt3config-1.0.0_1 +libt3highlight.so.2 libt3highlight-0.5.0_1 +libt3key.so.1 libt3key-0.2.10_1 +libt3window.so.0 libt3window-0.4.1_1 +libt3widget.so.2 libt3widget-1.2.2_1 +libtranscript.so.1 libtranscript-0.3.3_1 libnetcdf.so.15 netcdf-4.7.0_1 libformw.so.6 ncurses-libs-5.8_1 ignore libfplll.so.7 fplll-5.4.1_1 @@ -89,6 +99,11 @@ libglib-2.0.so.0 glib-2.72.0_1 libgmodule-2.0.so.0 glib-2.72.0_1 libgio-2.0.so.0 glib-2.72.0_1 libgobject-2.0.so.0 glib-2.72.0_1 +libgthread-2.0.so.0 glib-2.74.0_1 +libglib-2.0.so.0 glib-2.74.0_1 +libgmodule-2.0.so.0 glib-2.74.0_1 +libgio-2.0.so.0 glib-2.74.0_1 +libgobject-2.0.so.0 glib-2.74.0_1 libatk-1.0.so.0 atk-1.26.0_1 libpangocairo-1.0.so.0 pango-1.24.0_1 libpangoft2-1.0.so.0 pango-1.24.0_1 @@ -103,6 +118,7 @@ libgdk_pixbuf-2.0.so.0 gdk-pixbuf-2.22.0_1 libgdk_pixbuf_xlib-2.0.so.0 gdk-pixbuf-xlib-2.30.8_1 libgailutil.so.18 gtk+-2.16.0_1 libfreetype.so.6 freetype-2.3.9_1 +libfreetype.so.6 freetype-2.12.1_1 libfontconfig.so.1 fontconfig-2.6.0_1 libX11-xcb.so.1 libX11-1.2_1 libX11.so.6 libX11-1.2_1 @@ -138,12 +154,14 @@ libnvidia-gtk3.so.346.47 nvidia-gtklibs-346.47_1 ignore libnvidia-glcore.so.390.87 nvidia390-libs-390.87_1 ignore libnvidia-glsi.so.346.72 nvidia-libs-346.72_1 ignore libnvidia-fatbinaryloader.so.390.147 nvidia390-libs-390.147_1 ignore +libnvidia-fatbinaryloader.so.390.154 nvidia390-libs-390.154_1 ignore libnvidia-fatbinaryloader.so.430.40 nvidia-libs-430.40_1 ignore libglapi.so.0 libglapi-7.11_1 libgbm.so.1 libgbm-9.0_1 libOpenGL.so.0 libglvnd-1.3.0_1 libGLX.so.0 libglvnd-1.3.0_1 librsvg-2.so.2 librsvg-2.26.0_1 +librist.so.4 librist-0.2.7_1 libdbus-1.so.3 dbus-libs-1.2.10_1 libdbus-glib-1.so.2 dbus-glib-0.80_1 libxml2.so.2 libxml2-2.7.0_1 @@ -213,6 +231,7 @@ libgirepository-everything-1.0.so libgirepository-1.30_1 libgirepository-1.0.so.1 libgirepository-1.30_1 libudev.so.1 eudev-libudev-1.6_1 libgudev-1.0.so.0 libgudev-230_1 +libumockdev.so.0 libumockdev-0.17.6_1 libext2fs.so.2 e2fsprogs-libs-1.41.5_1 libcom_err.so.2 e2fsprogs-libs-1.41.5_1 libe2p.so.2 e2fsprogs-libs-1.41.5_1 @@ -347,6 +366,8 @@ libMagickWand-6.Q16.so.7 libmagick6-6.9.11.61_1 libMagick++-6.Q16.so.9 libmagick6-6.9.12.1_1 libltdl.so.7 libltdl-2.2.6_1 libpoppler.so.111 libpoppler-21.07.0_1 +libltdl.so.7 libltdl-2.2.6_1 +libpoppler.so.122 libpoppler-22.06.0_1 libpoppler-glib.so.8 poppler-glib-0.18.2_1 libpoppler-cpp.so.0 poppler-cpp-0.18.2_1 libpoppler-qt5.so.1 poppler-qt5-0.31.0_1 @@ -422,6 +443,7 @@ libMAC.so.6 libMAC-5.28_1 libmad.so.0 libmad-0.15.1b_1 libmatroska.so.7 libmatroska-1.6.0_1 libmatrix_client.so.0.7.0 mtxclient-0.7.0_1 +libmatrix_client.so.0.8.2 mtxclient-0.8.2_1 libebml.so.5 libebml-1.4.0_1 libdvdread.so.8 libdvdread-6.1.1_1 libdvdnav.so.4 libdvdnav-4.1.3_1 @@ -470,6 +492,7 @@ libfsimage.so.1.0 xen-libs-4.10.0_1 libxenstat.so.4.14 xen-libs-4.14.0_1 libfam.so.0 gamin-0.1.10_1 libgamin-1.so.0 gamin-0.1.10_1 +libkateprivate.so.22.08.2 libkate-22.08.2_1 libKF5SyntaxHighlighting.so.5 syntax-highlighting-5.29.0_1 libKF5Libkleo.so.5 libkleo-17.12.3_1 libKF5GrantleeTheme.so.5 grantleetheme-17.12.3_1 @@ -542,6 +565,12 @@ libuninum.so.5 libuninum-2.7_1 libunique-3.0.so.0 libunique-2.91.4_1 libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1 libjavascriptcoregtk-4.0.so.18 webkit2gtk-2.6.2_1 +libwebkit2gtk-4.0.so.37 webkit2gtk-2.6.2_1 +libjavascriptcoregtk-4.0.so.18 webkit2gtk-2.6.2_1 +libwebkit2gtk-4.1.so.0 libwebkit2gtk41-2.38.0_1 +libjavascriptcoregtk-4.1.so.0 libwebkit2gtk41-2.38.0_1 +libwebkit2gtk-5.0.so.0 libwebkit2gtk50-2.38.0_1 +libjavascriptcoregtk-5.0.so.0 libwebkit2gtk50-2.38.0_1 libgimp-2.0.so.0 libgimp-2.10.0_1 libgimpwidgets-2.0.so.0 libgimp-2.10.0_1 libgimpui-2.0.so.0 libgimp-2.10.0_1 @@ -651,6 +680,38 @@ libboost_stacktrace_noop.so.1.72.0 libboost_stacktrace_noop1.72-1.72.0_1 libboost_stacktrace_addr2line.so.1.72.0 libboost_stacktrace_addr2line1.72-1.72.0_1 libboost_stacktrace_basic.so.1.72.0 libboost_stacktrace_basic1.72-1.72.0_1 libboost_python27.so.1.72.0 boost-python1.72-1.72.0_1 +libboost_context.so.1.80.0 libboost_context1.80-1.80.0_1 +libboost_coroutine.so.1.80.0 libboost_coroutine1.80-1.80.0_1 +libboost_container.so.1.80.0 libboost_container1.80-1.80.0_1 +libboost_prg_exec_monitor.so.1.80.0 libboost_prg_exec_monitor1.80-1.80.0_1 +libboost_timer.so.1.80.0 libboost_timer1.80-1.80.0_1 +libboost_random.so.1.80.0 libboost_random1.80-1.80.0_1 +libboost_filesystem.so.1.80.0 libboost_filesystem1.80-1.80.0_1 +libboost_unit_test_framework.so.1.80.0 libboost_unit_test_framework1.80-1.80.0_1 +libboost_math_c99.so.1.80.0 libboost_math_c991.80-1.80.0_1 +libboost_math_tr1.so.1.80.0 libboost_math_tr11.80-1.80.0_1 +libboost_nowide.so.1.80.0 libboost_nowide1.80-1.80.0_1 +libboost_json.so.1.80.0 libboost_json1.80-1.80.0_1 +libboost_regex.so.1.80.0 libboost_regex1.80-1.80.0_1 +libboost_serialization.so.1.80.0 libboost_serialization1.80-1.80.0_1 +libboost_chrono.so.1.80.0 libboost_chrono1.80-1.80.0_1 +libboost_wserialization.so.1.80.0 libboost_wserialization1.80-1.80.0_1 +libboost_graph.so.1.80.0 libboost_graph1.80-1.80.0_1 +libboost_log.so.1.80.0 libboost_log1.80-1.80.0_1 +libboost_locale.so.1.80.0 libboost_locale1.80-1.80.0_1 +libboost_program_options.so.1.80.0 libboost_program_options1.80-1.80.0_1 +libboost_iostreams.so.1.80.0 libboost_iostreams1.80-1.80.0_1 +libboost_system.so.1.80.0 libboost_system1.80-1.80.0_1 +libboost_thread.so.1.80.0 libboost_thread1.80-1.80.0_1 +libboost_log_setup.so.1.80.0 libboost_log_setup1.80-1.80.0_1 +libboost_date_time.so.1.80.0 libboost_date_time1.80-1.80.0_1 +libboost_wave.so.1.80.0 libboost_wave1.80-1.80.0_1 +libboost_atomic.so.1.80.0 libboost_atomic1.80-1.80.0_1 +libboost_type_erasure.so.1.80.0 libboost_type_erasure1.80-1.80.0_1 +libboost_fiber.so.1.80.0 libboost_fiber1.80-1.80.0_1 +libboost_stacktrace_noop.so.1.80.0 libboost_stacktrace_noop1.80-1.80.0_1 +libboost_stacktrace_addr2line.so.1.80.0 libboost_stacktrace_addr2line1.80-1.80.0_1 +libboost_stacktrace_basic.so.1.80.0 libboost_stacktrace_basic1.80-1.80.0_1 libboost_python311.so.1.80.0 boost-python3-1.80-1.80.0_6 libexempi.so.8 exempi-2.5.0_1 libatasmart.so.4 libatasmart-0.17_1 @@ -684,6 +745,9 @@ libgtkmm-3.0.so.1 gtkmm-2.99.5_1 libgdkmm-3.0.so.1 gtkmm-2.99.5_1 libgtkmm-4.0.so.0 gtkmm4-4.0.0_1 libgnome-bluetooth.so.13 gnome-bluetooth-3.12.0_1 +libgnome-bluetooth.so.13 gnome-bluetooth1-3.12.0_1 +libgnome-bluetooth-3.0.so.13 gnome-bluetooth-42.1_1 +libgnome-bluetooth-ui-3.0.so.13 gnome-bluetooth-42.1_1 libsasl2.so.3 libsasl-2.1.26_1 liblber-2.4.so.2 libldap-2.4.21_1 libldap-2.4.so.2 libldap-2.4.21_1 @@ -721,6 +785,7 @@ libassuan.so.0 libassuan-2.0.1_1 libgpgme.so.11 libgpgme-1.12.0_2 libgpgmepp.so.6 gpgmepp-1.7.0_3 libqgpgme.so.7 gpgmeqt-1.7.0_3 +libqgpgme.so.15 gpgmeqt-1.18.0_1 libgarcon-1.so.0 garcon-0.1.12_1 libgarcon-gtk2-1.so.0 garcon-0.4.0_1 libgarcon-gtk3-1.so.0 garcon-0.6.1_1 @@ -818,10 +883,12 @@ libchamplain-0.12.so.0 libchamplain-0.12.5_2 libchamplain-gtk-0.12.so.0 libchamplain-0.12.5_2 libvpx.so.5 libvpx5-1.7.0_1 libvpx.so.6 libvpx6-1.8.0_1 +libvpx.so.7 libvpx7-1.11.0_1 libXevie.so.1 libXevie-1.0.2_1 libatspi.so.0 at-spi2-core-1.91.91_1 libatk-bridge-2.0.so.0 at-spi2-atk-2.6.0_1 libvte-2.91.so.0 vte3-0.68.0_1 +libvte-2.91-gtk4.so.0 vte3-gtk4-0.70.0_1 libpipeline.so.1 libpipeline-1.2.0_1 libosp.so.5 opensp-1.5.2_1 libogrove.so.0 openjade-1.3.2_1 @@ -838,6 +905,7 @@ liblua5.2.so.5.2 lua52-5.2.4_2 liblua5.3.so.5.3 lua53-5.3.5_4 liblua5.4.so.5.4 lua54-5.4.0_1 libsurgescript.so.0.5.5 surgescript-0.5.5_1 +libsurgescript.so.0.5.6 surgescript-0.5.6_1 libburn.so.4 libburn-0.7.2_1 libKF5Auth.so.5 kauth-5.26.0_1 libKF5AuthCore.so.5 kauth-5.56.0_1 @@ -870,6 +938,10 @@ libcogl-path.so.20 cogl-1.18.0_1 libp11-kit.so.0 p11-kit-0.7_1 librest-0.7.so.0 rest-0.7_1 librest-extras-0.7.so.0 rest-0.7_1 +librest-0.7.so.0 rest0-0.8.1_1 +librest-1.0.so.0 rest-0.9.1_1 +librest-extras-0.7.so.0 rest0-0.8.1_1 +librest-extras-1.0.so.0 rest-0.9.1_1 libgoa-1.0.so.0 gnome-online-accounts-3.2.0_1 libgoa-backend-1.0.so.1 gnome-online-accounts-3.10.0_1 liboauth.so.0 liboauth-0.9.4_1 @@ -893,6 +965,9 @@ libfm.so.4 libfm-1.2.3_3 libfm-gtk3.so.4 libfm-gtk+3-1.3.1_2 libfm-extra.so.4 libfm-extra-1.2.3_3 libunique-1.0.so.0 libunique1-1.1.6_1 +libfm.so.4 libfm-1.2.3_3 +libfm-gtk3.so.4 libfm-gtk+3-1.3.1_2 +libfm-extra.so.4 libfm-extra-1.2.3_3 libdiscid.so.0 libdiscid-0.2.2_1 librhythmbox-core.so.10 librhythmbox-3.4.1_1 libdmapsharing-3.0.so.2 libdmapsharing-2.9.12_1 @@ -962,6 +1037,7 @@ libIceLocatorDiscovery.so.37 libIce-3.7.5_2 libvdpau.so.1 libvdpau-0.4.1_1 libgsm.so.1 libgsm-1.0.13_13 libcgroup.so.1 libcgroup-0.37.1_1 +libcgroup.so.3 libcgroup-3.0.0_1 libxdg-basedir.so.1 libxdg-basedir-1.1.1_1 libev.so.4 libev-4.04_1 libell.so.0 ell-0.45_1 @@ -969,6 +1045,7 @@ libgvnc-1.0.so.0 gtk-vnc-0.4.4_1 libgtk-vnc-2.0.so.0 gtk-vnc-0.4.4_1 libgvncpulse-1.0.so.0 gtk-vnc-1.2.0_2 libyaml-0.so.2 libyaml-0.7.0_1 +libyaml-0.so.2 libyaml-0.1.4_1 libuchardet.so.0 uchardet-0.0.6_1 libgtksourceviewmm-3.0.so.0 gtksourceviewmm-3.2.0_1 libyajl.so.2 yajl-2.0.1_1 @@ -990,6 +1067,7 @@ libmdbsql.so.0 libmdb-0.5_1 libkmod.so.2 libkmod-5_1 libestr.so.0 libestr-0.1.2_1 libee.so.0 libee-0.3.2_1 +libopendht.so.2 opendht-2.3.1_1 libobt.so.2 libopenbox-3.5.2_1 libobrender.so.32 libopenbox-3.6.1_1 libgssglue.so.1 libgssglue-0.3_1 @@ -1127,6 +1205,11 @@ libgstgl-1.0.so.0 gst-plugins-base1-1.14.0_1 libgnome-desktop-3.so.19 gnome-desktop-3.37.90.1_1 libsecret-1.so.0 libsecret-0.10_1 libgweather-3.so.16 libgweather-3.34.0_1 +libgnome-desktop-4.so.1 gnome-desktop-42.0_1 +libgnome-bg-4.so.1 gnome-desktop-42.0_1 +libgnome-rr-4.so.1 gnome-desktop-42.0_1 +libsecret-1.so.0 libsecret-0.10_1 +libgweather-4.so.0 libgweather-4.0.0_1 libgnomekbd.so.8 libgnomekbd-3.6.0_1 libgnomekbdui.so.8 libgnomekbd-3.6.0_1 libibus-1.0.so.5 ibus-1.4.99.20120917_1 @@ -1155,6 +1238,14 @@ libosinfo-1.0.so.0 libosinfo-0.2.0_1 libspice-client-gtk-3.0.so.5 spice-gtk-0.37_6 libspice-client-glib-2.0.so.8 spice-gtk-0.37_6 libspice-controller.so.0 spice-gtk-0.37_6 +libharfbuzz.so.0 libharfbuzz-5.1.0_1 +libharfbuzz-icu.so.0 libharfbuzz-5.1.0_1 +libharfbuzz-subset.so.0 libharfbuzz-5.1.0_1 +libharfbuzz-gobject.so.0 libharfbuzz-5.1.0_1 +libosinfo-1.0.so.0 libosinfo-0.10.0_2 +libspice-client-gtk-3.0.so.5 spice-gtk-0.41_2 +libspice-client-glib-2.0.so.8 spice-gtk-0.41_2 +libspice-controller.so.0 spice-gtk-0.41_2 libvirt-gconfig-1.0.so.0 libvirt-glib-0.1.2_1 libvirt-gobject-1.0.so.0 libvirt-glib-0.1.2_1 libgsasl.so.7 libgsasl-1.8.0_1 @@ -1191,6 +1282,7 @@ libconfig.so.11 libconfig-1.7.1_1 libopusfile.so.0 opusfile-0.12_2 libopusurl.so.0 opusfile-0.12_2 libopusenc.so.0 libopusenc-0.2_1 +libgranite-7.so.7 granite7-7.0.0_1 libgranite.so.6 granite-6.2.0_1 libprotobuf-vala.so.0 libprotobuf-vala-0.1.0_1 librlog.so.5 librlog-1.4_1 @@ -1198,6 +1290,7 @@ libtinyxml.so.0 tinyxml-2.6.2_1 libtinyxml2.so.9 tinyxml2-9.0.0_1 libbluray.so.2 libbluray-1.0.0_1 libnfs.so.13 libnfs-4.0.0_1 +libnfs.so.14 libnfs-5.0.1_1 libzip.so.5 libzip-1.7.3_2 libluajit-5.1.so.2 LuaJIT-2.0.0_1 libOSMesa.so.8 libOSMesa-9.1_1 @@ -1326,6 +1419,7 @@ libunwind-setjmp.so.0 libunwind-1.5.0_3 libmicrohttpd.so.12 libmicrohttpd-0.9.73_1 libmicrodns.so.1 libmicrodns-0.2.0_1 libgit2.so.1.0 libgit2-1.0.1_3 +libgit2.so.1.5 libgit2-1.5.0_1 libgit2-glib-1.0.so.0 libgit2-glib-0.23.4_1 libagg.so.2 agg-2.5_1 libzzip-0.so.13 zziplib-0.13.62_1 @@ -1418,6 +1512,15 @@ libupnp.so.17 libupnp-1.14.0_1 libixml.so.11 libupnp-1.14.0_1 libupnpp.so.11 libupnpp-0.21.0_1 libgeocode-glib.so.0 geocode-glib-3.10.0_1 +libgpaste-2.so.0 libgpaste-42.1_1 +libgpaste-gtk-3.so.0 libgpaste-42.1_1 +libgpaste-gtk4.so.0 libgpaste-42.1_1 +libthreadutil.so.6 libupnp-1.6.18_1 +libupnp.so.17 libupnp-1.14.0_1 +libixml.so.11 libupnp-1.14.0_1 +libupnpp.so.12 libupnpp-0.22.2_1 +libgeocode-glib.so.0 geocode-glib-libsoup2-3.26.4_1 +libgeocode-glib-2.so.0 geocode-glib-3.26.4_2 libzeitgeist-2.0.so.0 libzeitgeist2-0.9.14_1 libpotrace.so.0 libpotrace-1.11_1 libSDL2-2.0.so.0 SDL2-2.0.0_1 @@ -1437,6 +1540,7 @@ libgfxdr.so.0 libglusterfs-8.3_2 libgfapi.so.0 libglusterfs-8.3_2 libglusterd.so.0 libglusterfs-8.3_2 libsnapper.so.5 libsnapper-0.4.1_1 +libsnapper.so.6 libsnapper-0.10.2_1 libtsm.so.3 libtsm-3_1 libxine.so.2 libxine-1.2.4_1 libjbig2dec.so.0 libjbig2dec-0.11_1 @@ -1492,6 +1596,10 @@ libmuffin-cogl-pango-0.so muffin-4.0.5_1 libmuffin-cogl-path-0.so muffin-4.0.5_1 libmuffin-cogl-0.so muffin-4.0.5_1 libmuffin-clutter-0.so muffin-4.0.5_1 +libmuffin-cogl-pango-0.so.0 muffin-5.4.5_1 +libmuffin-cogl-path-0.so.0 muffin-5.4.5_1 +libmuffin-cogl-0.so.0 muffin-5.4.5_1 +libmuffin-clutter-0.so.0 muffin-5.4.5_1 libcinnamon-desktop.so.4 cinnamon-desktop-2.0.4_1 libcinnamon-control-center.so.1 libcinnamon-control-center-2.4.2_1 libcvc.so.0 cinnamon-desktop-3.2.0_1 @@ -1565,6 +1673,7 @@ libinput.so.10 libinput-1.2.0_1 libuhttpmock-0.0.so.0 uhttpmock-0.2.0_1 libgfbgraph-0.2.so.0 gfbgraph-0.2.2_1 libgtkhex-3.so.0 libgtkhex-3.10.0_1 +libgtkhex-4.so.0 libgtkhex-42.1_1 libgdlmm-3.0.so.2 libgdlmm-3.7.3_1 libdmraid.so.1 dmraid-1.0.0.rc16.3_5 libdovecot.so.0 dovecot-2.3.13_3 @@ -1576,6 +1685,9 @@ libdovecot-lda.so.0 dovecot-2.3.13_3 libwiretap.so.12 libwireshark-3.6.3_1 libwireshark.so.15 libwireshark-3.6.3_1 libwsutil.so.13 libwireshark-3.6.3_1 +libwiretap.so.13 libwireshark-4.0.0_1 +libwireshark.so.16 libwireshark-4.0.0_1 +libwsutil.so.14 libwireshark-4.0.0_1 libKF5ContactEditor.so.5 akonadi-contacts-17.12.1_1 libKF5AkonadiContact.so.5 akonadi-contacts-17.12.1_1 libKF5Prison.so.5 prison-5.43.0_1 @@ -1584,6 +1696,7 @@ libKF5Mime.so.5 kmime-17.12.1_1 libKF5Kirigami2.so.5 kirigami2-5.47.0_1 libtaskmanager.so.6 plasma-workspace-5.8.4_1 libnotificationmanager.so.1 plasma-workspace-5.15.90_1 +libKPipeWire.so.5 kpipewire-5.26.0_1 libZXing.so.1 zxing-cpp-1.2.0_1 libfreerdp-client2.so.2 libfreerdp-2.2.0_3 libfreerdp2.so.2 libfreerdp-2.2.0_3 @@ -1652,6 +1765,9 @@ libpyside2.so.5.15 libpyside2-python3-5.15.0_1 libupsclient.so.4 libnetwork-ups-tools-2.7.4_12 libnutclient.so.0 libnetwork-ups-tools-2.7.4_12 libnutscan.so.1 libnetwork-ups-tools-2.7.4_12 +libupsclient.so.6 libnetwork-ups-tools-2.8.0_1 +libnutclient.so.2 libnetwork-ups-tools-2.8.0_1 +libnutscan.so.2 libnetwork-ups-tools-2.8.0_1 libsphinxad.so.0 sphinxbase-0.8_1 libsphinxbase.so.1 sphinxbase-0.8_1 libpocketsphinx.so.1 libpocketsphinx-0.8_3 @@ -1777,6 +1893,7 @@ libopenjp2.so.7 libopenjpeg2-2.1.0_1 libcln.so.6 cln-1.3.3_1 libchm.so.0 libchmlib-0.40_1 libOkular5Core.so.9 libokular-18.04.1_1 +libOkular5Core.so.10 libokular-22.04.1_1 libmnl.so.0 libmnl-1.0.3_1 libnftnl.so.11 libnftnl-1.1.2_1 libfcgi.so.0 fcgi-2.4.0_2 @@ -1801,6 +1918,7 @@ libmateweather.so.1 libmateweather-1.8.0_1 libmate-panel-applet-4.so.1 libmate-panel-1.8.0_1 libslab.so.0 libmate-control-center-1.8.2_1 liblz4.so.1 liblz4-1.8.2_1 +libdxcompiler.so.3.7 DirectXShaderCompiler-1.7.2207_1 libatrilview.so.3 libatril-1.8.0_1 libatrildocument.so.3 libatril-1.8.0_1 libjawt.so openjdk8-jre-8u20_2 @@ -1815,6 +1933,12 @@ libawt_xawt.so openjdk11-11.0.5+10_1 libjava.so openjdk11-11.0.5+10_1 libjli.so openjdk11-11.0.5+10_1 libjvm.so openjdk11-11.0.5+10_1 +libjawt.so openjdk11-jre-11.0.5+10_1 +libawt.so openjdk11-jre-11.0.5+10_1 +libawt_xawt.so openjdk11-jre-11.0.5+10_1 +libjava.so openjdk11-jre-11.0.5+10_1 +libjli.so openjdk11-jre-11.0.5+10_1 +libjvm.so openjdk11-jre-11.0.5+10_1 libjawt.so openjdk7-bootstrap-7u221b02_1 libawt.so openjdk7-bootstrap-7u221b02_1 libawt_xawt.so openjdk7-bootstrap-7u221b02_1 @@ -1982,6 +2106,7 @@ libx265.so.199 x265-3.5_1 libQt5Xdg.so.3 libqtxdg-3.1.0_1 libQt5XdgIconLoader.so.3 libqtxdg-3.1.0_1 libqwt.so.6 qwt-6.1.3_1 +libqwt.so.6.2 qwt-6.2.0_1 liblxqt-qt5.so.0 liblxqt-0.8.0_1 liblxqt-globalkeys-qt5.so.0 lxqt-globalkeys-0.8.0_1 liblxqt-globalkeys-ui-qt5.so.0 lxqt-globalkeys-0.8.0_1 @@ -1990,6 +2115,7 @@ libpolkit-qt5-agent-1.so.1 polkit-qt5-0.112.0_1 libpolkit-qt5-gui-1.so.1 polkit-qt5-0.112.0_1 libpolkit-qt5-core-1.so.1 polkit-qt5-0.112.0_1 libfm-qt.so.10 libfm-qt-1.0.0_1 +libfm-qt.so.11 libfm-qt-1.1.0_1 libqtermwidget5.so.1 qtermwidget-1.0.0_1 libQt6Core.so.6 qt6-core-6.0.0_1 libQt6OpenGL.so.6 qt6-gui-6.0.0_1 @@ -2028,6 +2154,7 @@ libQt6Quick.so.6 qt6-declarative-6.0.0_1 libQt6QmlModels.so.6 qt6-declarative-6.0.0_1 libQt6QuickLayouts.so.6 qt6-declarative-6.1.0_1 libQt6QuickParticles.so.6 qt6-declarative-6.0.0_1 +libQt6QmlCompiler.so.6 qt6-declarative-6.4.0_1 libQt6ShaderTools.so.6 qt6-shadertools-6.0.0_1 libQt6Quick3D.so.6 qt6-quick3d-6.0.0_1 libQt6Quick3DRuntimeRender.so.6 qt6-quick3d-6.0.0_1 @@ -2035,6 +2162,9 @@ libQt6Quick3DUtils.so.6 qt6-quick3d-6.0.0_1 libQt6Quick3DAssetImport.so.6 qt6-quick3d-6.0.0_1 libQt6Quick3DIblBaker.so.6 qt6-quick3d-6.0.3_1 libQt6Quick3DParticles.so.6 qt6-quick3d-6.1.0_1 +libQt6Quick3DGlslParser.so.6 qt6-quick3d-6.3.0_1 +libQt6Quick3DAssetUtils.so.6 qt6-quick3d-6.1.0_1 +libQt6QuickTimeline.so.6 qt6-quicktimeline-6.3.0_1 libQt6QuickControls2Impl.so.6 qt6-declarative-6.0.0_1 libQt6QuickControls2.so.6 qt6-declarative-6.0.0_1 libQt6QuickTemplates2.so.6 qt6-declarative-6.0.0_1 @@ -2061,6 +2191,12 @@ libQt6Designer.so.6 qt6-tools-6.1.0_1 libQt6DesignerComponents.so.6 qt6-tools-6.1.0_1 libQt6Help.so.6 qt6-tools-6.1.0_1 libQt6UiTools.so.6 qt6-tools-6.1.0_1 +libQt6Nfc.so.6 qt6-connectivity-6.3.1_1 +libQt6Bluetooth.so.6 qt6-connectivity-6.3.1_1 +libQt6RemoteObjects.so.6 qt6-remoteobjects-6.3.1_1 +libQt6RemoteObjectsQml.so.6 qt6-remoteobjects-6.3.1_1 +libQt6Sensors.so.6 qt6-sensors-6.3.1_1 +libQt6SensorsQuick.so.6 qt6-sensors-6.3.1_1 libQt6HunspellInputMethod.so.6 qt6-virtualkeyboard-6.1.0_1 libQt6VirtualKeyboard.so.6 qt6-virtualkeyboard-6.1.0_1 libQt6SerialPort.so.6 qt6-serialport-6.2.0alpha_1 @@ -2069,6 +2205,11 @@ libQt6WebChannel.so.6 qt6-webchannel-6.2.0alpha_1 libQt6Positioning.so.6 qt6-location-6.2.0alpha_1 libnpth.so.0 npth-1.1_1 libnpupnp.so.4 libnpupnp-4.0.2_1 +libQt6MultimediaWidgets.so.6 qt6-multimedia-6.3.1_1 +libQt6MultimediaQuick.so.6 qt6-multimedia-6.3.1_1 +libQt6Multimedia.so.6 qt6-multimedia-6.3.1_1 +libnpth.so.0 npth-1.1_1 +libnpupnp.so.9 libnpupnp-5.0.0_1 libglfw.so.3 glfw-3.0.4_1 libusbmuxd-2.0.so.6 libusbmuxd-2.0.2_1 libimobiledevice-1.0.so.6 libimobiledevice-1.3.0_2 @@ -2079,6 +2220,7 @@ libopenjpeg.so.5 libopenjpeg-1.5.2_1 liboping.so.0 liboping-1.8.0_1 libloudmouth-1.so.0 loudmouth-1.5.3_12 libtorrent-rasterbar.so.10 libtorrent-rasterbar-1.2.12_2 +libtorrent-rasterbar.so.10 libtorrent-rasterbar-1.2.18_1 libcapstone.so.4 capstone-4.0_1 libhavege.so.2 libhaveged-1.9.11_1 libnih.so.1 libnih-1.0.3_1 @@ -2152,6 +2294,58 @@ libopencv_intensity_transform.so.4.5 libopencv4-4.5.3_1 libopencv_alphamat.so.4.5 libopencv4-4.5.3_1 libopencv_barcode.so.4.5 libopencv4-4.5.3_1 libopencv_mcc.so.4.5 libopencv4-4.5.3_1 +libopencv_quality.so.406 libopencv-4.6.0_1 +libopencv_reg.so.406 libopencv-4.6.0_1 +libopencv_surface_matching.so.406 libopencv-4.6.0_1 +libopencv_xphoto.so.406 libopencv-4.6.0_1 +libopencv_freetype.so.406 libopencv-4.6.0_1 +libopencv_fuzzy.so.406 libopencv-4.6.0_1 +libopencv_hfs.so.406 libopencv-4.6.0_1 +libopencv_img_hash.so.406 libopencv-4.6.0_1 +libopencv_line_descriptor.so.406 libopencv-4.6.0_1 +libopencv_saliency.so.406 libopencv-4.6.0_1 +libopencv_structured_light.so.406 libopencv-4.6.0_1 +libopencv_aruco.so.406 libopencv-4.6.0_1 +libopencv_bgsegm.so.406 libopencv-4.6.0_1 +libopencv_bioinspired.so.406 libopencv-4.6.0_1 +libopencv_ccalib.so.406 libopencv-4.6.0_1 +libopencv_face.so.406 libopencv-4.6.0_1 +libopencv_tracking.so.406 libopencv-4.6.0_1 +libopencv_xfeatures2d.so.406 libopencv-4.6.0_1 +libopencv_optflow.so.406 libopencv-4.6.0_1 +libopencv_ximgproc.so.406 libopencv-4.6.0_1 +libopencv_plot.so.406 libopencv-4.6.0_1 +libopencv_text.so.406 libopencv-4.6.0_1 +libopencv_ml.so.406 libopencv-4.6.0_1 +libopencv_objdetect.so.406 libopencv-4.6.0_1 +libopencv_dnn.so.406 libopencv-4.6.0_1 +libopencv_shape.so.406 libopencv-4.6.0_1 +libopencv_stitching.so.406 libopencv-4.6.0_1 +libopencv_photo.so.406 libopencv-4.6.0_1 +libopencv_video.so.406 libopencv-4.6.0_1 +libopencv_calib3d.so.406 libopencv-4.6.0_1 +libopencv_features2d.so.406 libopencv-4.6.0_1 +libopencv_flann.so.406 libopencv-4.6.0_1 +libopencv_highgui.so.406 libopencv-4.6.0_1 +libopencv_videoio.so.406 libopencv-4.6.0_1 +libopencv_imgcodecs.so.406 libopencv-4.6.0_1 +libopencv_imgproc.so.406 libopencv-4.6.0_1 +libopencv_core.so.406 libopencv-4.6.0_1 +libopencv_superres.so.406 libopencv-4.6.0_1 +libopencv_videostab.so.406 libopencv-4.6.0_1 +libopencv_gapi.so.406 libopencv-4.6.0_1 +libopencv_xobjdetect.so.406 libopencv-4.6.0_1 +libopencv_datasets.so.406 libopencv-4.6.0_1 +libopencv_dnn_objdetect.so.406 libopencv-4.6.0_1 +libopencv_dnn_superres.so.406 libopencv-4.6.0_1 +libopencv_dpm.so.406 libopencv-4.6.0_1 +libopencv_phase_unwrapping.so.406 libopencv-4.6.0_1 +libopencv_stereo.so.406 libopencv-4.6.0_1 +libopencv_rapid.so.406 libopencv-4.6.0_1 +libopencv_intensity_transform.so.406 libopencv-4.6.0_1 +libopencv_alphamat.so.406 libopencv-4.6.0_1 +libopencv_barcode.so.406 libopencv-4.6.0_1 +libopencv_mcc.so.406 libopencv-4.6.0_1 libuniconf.so.4.6 wvstreams-4.6.1_20 libwvbase.so.4.6 wvstreams-4.6.1_20 libwvutils.so.4.6 wvstreams-4.6.1_20 @@ -2180,6 +2374,7 @@ libdruntime-ldc-shared.so.98 ldc-runtime-1.28.0_1 libphobos2-ldc-shared.so.98 ldc-runtime-1.28.0_1 libphobos2-ldc-debug-shared.so.98 ldc-runtime-1.28.0_1 libldc-jit.so.98 ldc-runtime-1.28.0_1 +libldc-jit.so.99 ldc-runtime-1.29.0_1 libmarblewidget-qt5.so.28 marble5-17.12.2_1 libastro.so.2 marble5-17.12.2_1 libparrot.so.6.9.0 parrot-6.9.0_1 @@ -2364,6 +2559,10 @@ libKF5BalooWidgets.so.5 baloo-widgets5-17.04.3_1 libtidy.so.58 libtidy5-5.8.0_1 libSDL2_gfx-1.0.so.0 SDL2_gfx-1.0.1_1 libQupZilla.so.2 qupzilla-2.0.0_1 +libskarnet.so.2.12 skalibs-2.12.0.0_1 +libKF5BalooWidgets.so.5 baloo-widgets5-17.04.3_1 +libtidy.so.58 libtidy5-5.8.0_1 +libSDL2_gfx-1.0.so.0 SDL2_gfx-1.0.1_1 libinjeqt.so.1 injeqt-1.1.0_1 libgadu.so.3 libgadu-1.12.1_1 libhiredis.so.1.0.0 hiredis-1.0.0_1 @@ -2433,6 +2632,7 @@ libicu4lua.so.0 icu4lua-0.2B_1 libKF5I18n.so.5 ki18n-5.26.0_1 libKF5I18nLocaleData.so.5 ki18n-5.88.0_1 libglog.so.0 glog-0.3.4_1 +libglog.so.1 glog-0.6.0_1 libzita-convolver.so.4 zita-convolver-4.0.3_1 libzita-alsa-pcmi.so.0 zita-alsa-pcmi-0.2.0_1 libpugixml.so.1 pugixml-1.6_1 @@ -2501,6 +2701,7 @@ libcsound64.so.6.0 csound-6.05.0_1 libcsnd6.so.6.0 csound-6.05.0_1 libfko.so.3 libfko-2.6.9_1 libvterm.so.0 libvterm-0.0.20151005_1 +libvterm.so.0 libvterm-0.3_1 libboinc_opencl.so.7 boinc-7.16.16_2 libboinc_api.so.7 boinc-7.16.16_2 libboinc_graphics2.so.7 boinc-7.16.16_2 @@ -2512,6 +2713,7 @@ libu2f-server.so.0 libu2f-server-1.1.0_9 libsqlcipher.so.0 sqlcipher-4.3.0_3 libgta.so.1 libgta-1.2.0_1 libgdal.so.26 libgdal-3.0.4_9 +libgdal.so.31 libgdal-3.5.3_1 libosgViewer.so.131 osg-3.4.1_1 libosgShadow.so.131 osg-3.4.1_1 libosgParticle.so.131 osg-3.4.1_1 @@ -2588,6 +2790,7 @@ libaudiofile.so.1 audiofile-0.3.6_1 libbs2b.so.0 libbs2b-3.1.0_1 libmunge.so.2 munge-libs-0.5.14_3 libmgba.so.0.9 libmgba-0.9.2_1 +libmgba.so.0.10 libmgba-0.10.0_1 libglabels-3.0.so.8 libglabels30-3.2.1_1 libglbarcode-3.0.so.0 libglabels30-3.2.1_1 libjim.so.0.81 jimtcl-0.81_1 @@ -2620,6 +2823,7 @@ libnetfilter_cttimeout.so.1 libnetfilter_cttimeout-1.0.0_1 libnetfilter_cthelper.so.0 libnetfilter_cthelper-1.0.0_1 libnetfilter_queue.so.1 libnetfilter_queue-1.0.2_1 libfilezilla.so.24 libfilezilla-0.36.0_1 +libfilezilla.so.32 libfilezilla-0.39.2_1 libtommath.so.1 libtommath-1.0_1 libKF5ItemViews.so.5 kitemviews-5.26.0_1 libunicorn.so.1 unicorn-1.0_1 @@ -2644,6 +2848,11 @@ liborcus-parser-0.16.so.0 liborcus-0.16.1_1 liborcus-mso-0.16.so.0 liborcus-0.16.1_1 liborcus-0.16.so.0 liborcus-0.16.1_1 liborcus-spreadsheet-model-0.16.so.0 liborcus-0.16.1_1 +libixion-0.17.so.0 libixion-0.17.0_1 +liborcus-parser-0.17.so.0 liborcus-0.17.2_1 +liborcus-mso-0.17.so.0 liborcus-0.17.2_1 +liborcus-0.17.so.0 liborcus-0.17.2_1 +liborcus-spreadsheet-model-0.17.so.0 liborcus-0.17.2_1 libnumbertext-1.0.so.0 libnumbertext-1.0.4_1 libGeneratedSaxParser.so opencollada-0.0.20160223_1 libMathMLSolver.so opencollada-0.0.20160223_1 @@ -2696,6 +2905,27 @@ libts.so.0 tslib-1.6_1 libobs.so.0 obs-0.14.1_2 libobsglad.so.0 obs-0.14.1_2 libobs-opengl.so.0 obs-0.14.1_2 +libabigail.so.1 libabigail-2.1_1 +libgnome-games-support-1.so.3 libgnome-games-support-1.4.0_1 +libKDevCMakeCommon.so.36 kdevelop-22.04.1_1 +libKDevClangPrivate.so.36 kdevelop-22.04.1_1 +libKDevCompileAnalyzerCommon.so.36 kdevelop-22.04.1_1 +libKDevPlatformDebugger.so.58 kdevelop-22.04.1_1 +libKDevPlatformDocumentation.so.58 kdevelop-22.04.1_1 +libKDevPlatformInterfaces.so.58 kdevelop-22.04.1_1 +libKDevPlatformLanguage.so.58 kdevelop-22.04.1_1 +libKDevPlatformOutputView.so.58 kdevelop-22.04.1_1 +libKDevPlatformProject.so.58 kdevelop-22.04.1_1 +libKDevPlatformSerialization.so.58 kdevelop-22.04.1_1 +libKDevPlatformShell.so.58 kdevelop-22.04.1_1 +libKDevPlatformSublime.so.58 kdevelop-22.04.1_1 +libKDevPlatformTests.so.58 kdevelop-22.04.1_1 +libKDevPlatformUtil.so.58 kdevelop-22.04.1_1 +libKDevPlatformVcs.so.58 kdevelop-22.04.1_1 +libts.so.0 tslib-1.6_1 +libobs.so.0 obs-0.14.1_2 +libobsglad.so.1 obs-28.0.1_1 +libobs-opengl.so.1 obs-28.0.1_1 libobs-frontend-api.so.0 obs-20.1.3_1 libzimg.so.2 zimg-2.0.4_1 libvapoursynth.so vapoursynth-R32_2 @@ -2809,6 +3039,8 @@ libmono-btls-shared.so mono-5.2.0.215_1 libxcb-xrm.so.0 xcb-util-xrm-1.0_1 libinchi.so.0 openbabel-2.3.2_1 libopenbabel.so.5 openbabel-2.4.1_1 +libinchi.so.0 openbabel-3.1.1_1 +libopenbabel.so.7 openbabel-3.1.1_1 libcourier-unicode.so.7 courier-unicode-2.2.2_1 libzstd.so.1 libzstd-1.0.0_1 libudis86.so.0 udis86-1.7.2_4 @@ -2823,6 +3055,7 @@ libKF5Archive.so.5 karchive-5.26.0_1 libKF5Codecs.so.5 kcodecs-5.26.0_1 libKF5ConfigCore.so.5 kconfig-5.26.0_1 libKF5ConfigGui.so.5 kconfig-5.26.0_1 +libKF5ConfigQml.so.5 kconfig-5.95.0_1 libKF5Completion.so.5 kcompletion-5.26.0_1 libKF5Crash.so.5 kcrash-5.26.0_1 libKF5ConfigWidgets.so.5 kconfigwidgets-5.26.0_1 @@ -2849,10 +3082,12 @@ libKF5Declarative.so.5 kdeclarative-5.26.0_1 libKF5QuickAddons.so.5 kdeclarative-5.26.0_1 libKF5CalendarEvents.so.5 kdeclarative-5.26.0_1 libKF5KCMUtils.so.5 kcmutils-5.26.0_1 +libKF5KCMUtilsCore.so.5 kcmutils-5.95.0_1 libKF5Style.so.5 frameworkintegration-5.26.0_1 libkdeinit5_klauncher.so kinit-5.26.0_1 libKF5NewStuff.so.5 knewstuff-5.26.0_1 libKF5NewStuffCore.so.5 knewstuff-5.36.0_1 +libKF5NewStuffWidgets.so.5 knewstuff-5.95.0_1 libKF5NotifyConfig.so.5 knotifyconfig-5.26.0_1 libKF5Parts.so.5 kparts-5.26.0_1 libKF5Activities.so.5 kactivities5-5.26.0_1 @@ -2898,6 +3133,7 @@ libKPropertyWidgets3.so.4 kproperty-3.1.0_1 libKPropertyCore3.so.4 kproperty-3.1.0_1 libKReport3.so.4 kreport-3.1.0_1 libbotan-2.so.16 botan-2.16.0_3 +libbotan-2.so.19 botan-2.19.1_1 libswipl.so.8 swi-prolog-8.2.4_2 libpcre2-16.so.0 libpcre2-10.22_1 libpcre2-32.so.0 libpcre2-10.22_1 @@ -2942,6 +3178,36 @@ libkea-process.so.26 libkea-1.9.5_2 libkea-stats.so.18 libkea-1.9.5_2 libkea-util-io.so.0 libkea-1.9.5_2 libkea-util.so.32 libkea-1.9.5_2 +libcapnpc-0.10.2.so capnproto-0.10.2_1 +libcapnp-json-0.10.2.so capnproto-0.10.2_1 +libcapnp-rpc-0.10.2.so capnproto-0.10.2_1 +libcapnp-websocket-0.10.2.so capnproto-0.10.2_1 +libcapnp-0.10.2.so capnproto-0.10.2_1 +libkj-http-0.10.2.so capnproto-0.10.2_1 +libkj-async-0.10.2.so capnproto-0.10.2_1 +libkj-test-0.10.2.so capnproto-0.10.2_1 +libkj-0.10.2.so capnproto-0.10.2_1 +libkea-asiodns.so.24 libkea-2.2.0_1 +libkea-asiolink.so.40 libkea-2.2.0_1 +libkea-cc.so.39 libkea-2.2.0_1 +libkea-cfgclient.so.36 libkea-2.2.0_1 +libkea-cryptolink.so.28 libkea-2.2.0_1 +libkea-d2srv.so.16 libkea-2.2.0_1 +libkea-database.so.35 libkea-2.2.0_1 +libkea-dhcp++.so.54 libkea-2.2.0_1 +libkea-dhcp_ddns.so.29 libkea-2.2.0_1 +libkea-dhcpsrv.so.69 libkea-2.2.0_1 +libkea-dns++.so.30 libkea-2.2.0_1 +libkea-eval.so.39 libkea-2.2.0_1 +libkea-exceptions.so.13 libkea-2.2.0_1 +libkea-hooks.so.57 libkea-2.2.0_1 +libkea-http.so.42 libkea-2.2.0_1 +libkea-log.so.35 libkea-2.2.0_1 +libkea-pgsql.so.36 libkea-2.2.0_1 +libkea-process.so.40 libkea-2.2.0_1 +libkea-stats.so.18 libkea-2.2.0_1 +libkea-util-io.so.0 libkea-2.2.0_1 +libkea-util.so.52 libkea-2.2.0_1 libytnef.so.0 ytnef-1.8_1 libpisock.so.9 pilot-link-0.12.5_1 libpisync.so.1 pilot-link-0.12.5_1 @@ -2985,6 +3251,12 @@ libmutter-cogl-9.so.0 mutter-41.0_1 libmutter-cogl-pango-9.so.0 mutter-41.0_1 libgeoclue-2.so.0 geoclue2-2.4.4_1 libgepub.so.0 libgepub-0.4_1 +libmutter-10.so.0 mutter-42.0_1 +libmutter-clutter-10.so.0 mutter-42.0_1 +libmutter-cogl-10.so.0 mutter-42.0_1 +libmutter-cogl-pango-10.so.0 mutter-42.0_1 +libgeoclue-2.so.0 geoclue2-2.4.4_1 +libgepub-0.6.so.0 libgepub-0.6.0_4 libslopy.so.7.6 slop-7.6_1 libbcunit.so.1 bcunit-3.0_1 libzbar.so.0 libzbar-0.10_1 @@ -3088,6 +3360,7 @@ libfilteraudio.so filter_audio-0.0.1_1 libgstreamermm-1.0.so.1 gstreamermm-1.8.0_1 libmovit.so.8 movit-1.6.0_1 libduktape.so.206 duktape-2.6.0_1 +libduktape.so.207 duktape-2.7.0_1 libccgnu2-1.8.so.0 commoncpp2-1.8.1_1 libccext2-1.8.so.0 commoncpp2-1.8.1_1 libucommon.so.8 ucommon-7.0.0_1 @@ -3110,6 +3383,11 @@ libguile-srfi-srfi-60-v-2.so.2 guile1.8-1.8.8_1 libguile.so.17 guile1.8-1.8.8_1 libguilereadline-v-17.so.17 guile1.8-1.8.8_1 libguile-srfi-srfi-13-14-v-3.so.3 guile1.8-1.8.8_1 +libprotobuf-lite.so.32 libprotobuf-lite-21.4_1 +libprotoc.so.32 libprotoc-21.4_1 +libprotobuf.so.32 libprotobuf-21.4_1 +libsombok.so.3 sombok-2.4.0_1 +libdeviceclient.so.0 pragha-1.3.3_1 libykclient.so.3 ykclient-2.15_1 libbooster.so.0 cppcms-1.0.5_1 libcppcms.so.1 cppcms-1.0.5_1 @@ -3118,6 +3396,7 @@ libtracker-control-2.0.so.0 libtracker-2.0.0_1 libtracker-sparql-2.0.so.0 libtracker-2.0.0_1 libtracker-miner-2.0.so.0 libtracker-2.0.1_1 libtracker-sparql-3.0.so.0 libtracker3-3.0.0_1 +libtracker-sparql-3.0.so.0 libtracker-3.0.0_1 libdockapp.so.3 libdockapp-0.7.2_1 libkrdccore.so.5 krdc-17.04.3_1 libArcus.so.3 libArcus-3.1.0_1 @@ -3131,6 +3410,7 @@ libvala-0.56.so.0 libvala-0.56.0_1 libvaladoc-0.56.so.0 libvaladoc-0.56.0_1 libvalaccodegen.so libvala-0.44.0_1 libphodav-2.0.so.0 phodav-2.2_1 +libphodav-3.0.so.0 phodav-3.0_1 libgfshare.so.2 libgfshare-2.0.0_1 libtacacs.so.1 tacacs-4.0.4.28_1 libffms2.so.4 libffms2-2.23.1_1 @@ -3202,11 +3482,39 @@ libr_crypto.so.5.0.0 radare2-5.0.0_1 libr_fs.so.5.0.0 radare2-5.0.0_1 libr_magic.so.5.0.0 radare2-5.0.0_1 libr_reg.so.5.0.0 radare2-5.0.0_1 +libkdeconnectinterfaces.so.22 kdeconnect-22.04.1_1 +libkdeconnectcore.so.22 kdeconnect-22.04.1_1 +libkpmcore.so.12 kpmcore-22.04.1_1 +libpkcs11-helper.so.1 pkcs11-helper-1.25.1_6 +libr_core.so.5.7.8 radare2-5.7.8_1 +libr_config.so.5.7.8 radare2-5.7.8_1 +libr_cons.so.5.7.8 radare2-5.7.8_1 +libr_util.so.5.7.8 radare2-5.7.8_1 +libr_flag.so.5.7.8 radare2-5.7.8_1 +libr_asm.so.5.7.8 radare2-5.7.8_1 +libr_bin.so.5.7.8 radare2-5.7.8_1 +libr_anal.so.5.7.8 radare2-5.7.8_1 +libr_lang.so.5.7.8 radare2-5.7.8_1 +libr_debug.so.5.7.8 radare2-5.7.8_1 +libr_egg.so.5.7.8 radare2-5.7.8_1 +libr_bp.so.5.7.8 radare2-5.7.8_1 +libr_search.so.5.7.8 radare2-5.7.8_1 +libr_io.so.5.7.8 radare2-5.7.8_1 +libr_hash.so.5.7.8 radare2-5.7.8_1 +libr_socket.so.5.7.8 radare2-5.7.8_1 +libr_parse.so.5.7.8 radare2-5.7.8_1 +libr_syscall.so.5.7.8 radare2-5.7.8_1 +libr_crypto.so.5.7.8 radare2-5.7.8_1 +libr_fs.so.5.7.8 radare2-5.7.8_1 +libr_magic.so.5.7.8 radare2-5.7.8_1 +libr_reg.so.5.7.8 radare2-5.7.8_1 +libr_main.so.5.7.8 radare2-5.7.8_1 libykpiv.so.1 libykpiv-2.1.1_2 libykcs11.so.1 libykcs11-2.1.1_2 libKF5KExiv2.so.15.0.0 libkexiv25-17.04.3_1 libqmobipocket.so.2 libqmobipocket-17.04.3_1 libgloox.so.17 gloox-1.0.20_1 +libgloox.so.18 gloox-1.0.24_1 libgsmsd.so.8 gammu-smsd-1.39.0_1 libGammu.so.8 gammu-1.39.0_1 libz3.so z3-4.6.0_2 @@ -3226,6 +3534,7 @@ libKF5AkonadiWidgets.so.5 akonadi5-17.12.0_1 libKF5AkonadiXml.so.5 akonadi5-17.12.0_1 libKF5PimTextEdit.so.5 kpimtextedit-17.12.0_1 libKF5IdentityManagement.so.5 kidentitymanagement-17.12.0_1 +libKF5IdentityManagementWidgets.so.5 kidentitymanagement-22.04.0_1 libKChart.so.2 kdiagram-2.6.0_1 libKGantt.so.2 kdiagram-2.6.0_1 libscrypt.so.0 libscrypt-1.21_1 @@ -3261,6 +3570,36 @@ libgnuradio-video-sdl.so.3.8.0 gnuradio-3.8.0.0_1 libgnuradio-vocoder.so.3.8.0 gnuradio-3.8.0.0_1 libgnuradio-wavelet.so.3.8.0 gnuradio-3.8.0.0_1 libgnuradio-uhd.so.3.8.0 gnuradio-3.8.0.0_1 +libarcan_shmif.so.0.15 arcan-0.6.1.1_1 +libarcan_shmif_ext.so.0.15 arcan-0.6.1.1_1 +libarcan_shmif_server.so.0.15 arcan-0.6.1.1_1 +libarcan_tui.so.0.15 arcan-0.6.1.1_1 +libarcan_a12.so.0.1 arcan-0.6.1.1_1 +liblwipv6.so.2 lwipv6-1.5a_1 +libpipewire-0.3.so.0 libpipewire-0.3.6_1 +libvolk.so.2.5 volk-2.5.0_1 +libgnuradio-runtime.so.3.10.3 gnuradio-3.10.3.0_1 +libgnuradio-pmt.so.3.10.3 gnuradio-3.10.3.0_1 +libgnuradio-blocks.so.3.10.3 gnuradio-3.10.3.0_1 +libgnuradio-audio.so.3.10.3 gnuradio-3.10.3.0_1 +libgnuradio-fec.so.3.10.3 gnuradio-3.10.3.0_1 +libgnuradio-fft.so.3.10.3 gnuradio-3.10.3.0_1 +libgnuradio-filter.so.3.10.3 gnuradio-3.10.3.0_1 +libgnuradio-analog.so.3.10.3 gnuradio-3.10.3.0_1 +libgnuradio-digital.so.3.10.3 gnuradio-3.10.3.0_1 +libgnuradio-dtv.so.3.10.3 gnuradio-3.10.3.0_1 +libgnuradio-channels.so.3.10.3 gnuradio-3.10.3.0_1 +libgnuradio-trellis.so.3.10.3 gnuradio-3.10.3.0_1 +libgnuradio-video-sdl.so.3.10.3 gnuradio-3.10.3.0_1 +libgnuradio-vocoder.so.3.10.3 gnuradio-3.10.3.0_1 +libgnuradio-wavelet.so.3.10.3 gnuradio-3.10.3.0_1 +libgnuradio-uhd.so.3.10.3 gnuradio-3.10.3.0_1 +libgnuradio-network.so.3.10.3 gnuradio-3.10.3.0_1 +libgnuradio-soapy.so.3.10.3 gnuradio-3.10.3.0_1 +libgnuradio-qtgui.so.3.10.3 gnuradio-3.10.3.0_1 +libgnuradio-zeromq.so.3.10.3 gnuradio-3.10.3.0_1 +libgnuradio-iio.so.3.10.3 gnuradio-3.10.3.0_1 +libgnuradio-pdu.so.3.10.3 gnuradio-3.10.3.0_1 libgnuradio-osmosdr.so.0.2.0 gnuradio-osmosdr-0.2.0_1 libflann_cpp.so.1.9 flann-1.9.1_1 libflann.so.1.9 flann-1.9.1_1 @@ -3451,6 +3790,11 @@ libeditorconfig.so.0 editorconfig-0.12.2_1 libcfitsio.so.9 cfitsio-3.480_1 libapparmor.so.1 libapparmor-2.12.0_1 libplacebo.so.157 libplacebo-4.157.0_1 +libSoapySDR.so.0.8 SoapySDR-0.8.1_1 +libeditorconfig.so.0 editorconfig-0.12.2_1 +libcfitsio.so.9 cfitsio-3.480_1 +libapparmor.so.1 libapparmor-2.12.0_1 +libplacebo.so.192 libplacebo-4.192.1_1 libw2xc.so waifu2x-converter-cpp-5.2_1 libnova-0.15.so.0 libnova-0.15.0_1 libcue.so.2 libcue-2.2.0_1 @@ -3463,6 +3807,8 @@ libcss_parser_pp.so.0 htmlcxx-0.86_1 libcss_parser.so.0 htmlcxx-0.86_1 libaom.so.2 libaom-2.0.0_1 libre.so.1 re-2.0.1_1 +libaom.so.3 libaom-3.4.0_1 +libre.so.9 re-2.7.0_1 libtpms.so.0 libtpms-0.9.0_1 libswtpm_libtpms.so.0 libswtpm-0.6.1_1 libspandsp.so.2 spandsp-0.0.6_1 @@ -3477,6 +3823,7 @@ libspa-v4l2.so libspa-v4l2-0.3.6_1 libspa-videoconvert.so libspa-videoconvert-0.3.6_1 libspa-vulkan.so libspa-vulkan-0.3.6_1 librem.so rem-0.5.3_1 +librem.so.3 rem-2.7.0_1 libshp.so.1 shapelib-1.4.1_1 libantlr3c.so libantlr3c-3.4_1 libbzrtp.so.0 bzrtp-1.0.6_1 @@ -3492,11 +3839,16 @@ libshaderc_shared.so.1 shaderc-2018.0_1 libglslang.so glslang-6.2.2596_1 libHLSL.so glslang-8.13.3743_1 libSPIRV.so glslang-6.2.2596_1 +libglslang.so.11 glslang-11.11.0_1 +libHLSL.so glslang-11.11.0_1 +libSPIRV.so glslang-11.11.0_1 +libSPIRV-Tools-shared.so SPIRV-Tools-2022.3_1 libmaxminddb.so.0 libmaxminddb-1.3.2_1 libmysqlpp.so.3 mysql++-3.2.5_1 libKF5Syndication.so.5 syndication-5.50.0_1 liblqr-1.so.0 liblqr-0.4.2_1 libmozjs-78.so.0 mozjs78-78.1.0_1 +libmozjs-91.so.0 mozjs91-91.5.0_1 libebur128.so.1 libebur128-1.2.4_1 libgtksourceview-4.so.0 gtksourceview4-4.0.2_1 libgtksourceview-5.so.0 gtksourceview5-5.2.0_1 @@ -3539,6 +3891,10 @@ libfmt.so.8 fmt-8.0.1_1 libelementary-calendar.so.0 libio.elementary.calendar-4.2.3_1 libolm.so.3 olm-3.0.0_1 libtls.so.22 libtls-3.4.1_1 +libfmt.so.9 fmt-9.0.0_1 +libelementary-calendar.so.0 libio.elementary.calendar-4.2.3_1 +libolm.so.3 olm-3.0.0_1 +libtls.so.26 libtls-3.6.1_1 libxmlb.so.2 libxmlb-0.2.1_1 libvoikko.so.1 libvoikko-4.2_1 libfstrcmp.so.0 libfstrcmp-0.7.D001_1 @@ -3547,6 +3903,8 @@ libdri2.so.1 libdri2-git-20140317_2 libpst.so.4 libpst-0.6.72_1 libhamlib.so.4 hamlib-4.2_1 libhamlib++.so.4 hamlib-4.2_1 +libhamlib.so.4 hamlib-4.4_1 +libhamlib++.so.4 hamlib-4.4_1 libnss_mdns_minimal.so.2 nss-mdns-0.14.1_1 libnss_mdns4_minimal.so.2 nss-mdns-0.14.1_1 libnss_mdns6_minimal.so.2 nss-mdns-0.14.1_1 @@ -3561,6 +3919,7 @@ libcsfml-system.so.2.5 CSFML-2.5_1 libcsfml-network.so.2.5 CSFML-2.5_1 libtokyocabinet.so.9 tokyocabinet-1.4.48_1 libdav1d.so.5 libdav1d4-0.8.1_1 +libdav1d.so.6 libdav1d6-1.0.0_1 libdqlite.so.0 dqlite-0.2.1_1 libwoff2common.so.1.0.2 libwoff2common1.0.2-1.0.2_1 libwoff2enc.so.1.0.2 libwoff2enc1.0.2-1.0.2_1 @@ -3570,6 +3929,7 @@ libKF5KDEGames.so.7 libkdegames-18.08.3_1 libKF5KDEGamesPrivate.so.7 libkdegames-21.04.0_1 libidn2.so.0 libidn2-2.1.1_1 libgmime-3.0.so.0 gmime3-3.2.3_1 +libgmime-3.0.so.0 gmime-3.2.3_1 libgetdns.so.10 getdns-1.5.1_7 libgetdns_ext_event.so.10 getdns-1.5.1_7 libgetdns_ext_ev.so.10 getdns-1.5.1_7 @@ -3597,16 +3957,21 @@ libgnuradio-nrsc5-1.0.0git.so.0.0.0 gnuradio-nrsc5-1.0.0_1 libvkd3d-utils.so.1 vkd3d-1.1_1 libvkd3d-shader.so.1 vkd3d-1.3_1 libvkd3d.so.1 vkd3d-1.1_1 +libgnuradio-nrsc5.so.2.0.0git gnuradio-nrsc5-2.0.0_1 +libgamemode.so.0 libgamemode-1.6.1_1 +libgamemodeauto.so.0 libgamemode-1.6.1_1 libgaminggear.so.0 libgaminggear-0.15.1_1 libgaminggearfx.so.0 libgaminggear-0.15.1_1 libgaminggearwidget.so.0 libgaminggear-0.15.1_1 libopkg.so.1 libopkg-0.4.4_2 libpkgconf.so.3 libpkgconf-1.8.0_1 +libpkgconf.so.4 libpkgconf-1.9.3_1 libkodiplatform.so.19.0 kodi-platform-20180302_1 libQuotient.so.0.6 libQuotient-0.6.11_1 libipset.so.13 libipset-7.9_1 libmp3splt.so.0 libmp3splt-0.9.2_1 libliquid.so.1 liquid-dsp-1.3.1_1 +libliquid.so.1 liquid-dsp-1.4.0_1 libsnore-qt5.so.0.7 snorenotify-0.7.0_1 libsnoresettings-qt5.so.0.7 snorenotify-0.7.0_1 libTECkit.so.0 libteckit-2.5.8_1 @@ -3622,6 +3987,7 @@ libOsi.so.1 libClp-1.16.11_1 libOGDF.so libogdf-2018.03_1 libCOIN.so libogdf-2018.03_1 librocksdb.so.5 rocksdb-5.17.2_1 +librocksdb.so.7 rocksdb-7.4.5_1 libfrr.so.0 libfrr-6.0_1 libkaccounts.so.2 kaccounts-integration-20.04.3_1 libfrrospfapiclient.so.0 libfrrospfapiclient-6.0_1 @@ -3675,6 +4041,18 @@ libgrpc_plugin_support.so.1.39 grpc-1.39.0_1 libgrpc_unsecure.so.18 grpc-1.39.0_1 libgrpcpp_channelz.so.1.39 grpc-1.39.0_1 libupb.so.18 grpc-1.39.0_1 +libaddress_sorting.so.27 libgrpc-1.49.1_1 +libgpr.so.27 libgrpc-1.49.1_1 +libgrpc.so.27 libgrpc-1.49.1_1 +libgrpc_unsecure.so.27 libgrpc-1.49.1_1 +libupb.so.27 libgrpc-1.49.1_1 +libgrpc++.so.1.49 libgrpc-1.49.1_1 +libgrpc++_alts.so.1.49 libgrpc-1.49.1_1 +libgrpc++_error_details.so.1.49 libgrpc-1.49.1_1 +libgrpc++_reflection.so.1.49 libgrpc-1.49.1_1 +libgrpc++_unsecure.so.1.49 libgrpc-1.49.1_1 +libgrpc_plugin_support.so.1.49 libgrpc-1.49.1_1 +libgrpcpp_channelz.so.1.49 libgrpc-1.49.1_1 libircclient.so.1 libircclient-1.10_5 libFAudio.so.0 FAudio-19.05_1 libqaccessibilityclient-qt5.so.0 libqaccessibilityclient-0.4.0_1 @@ -3696,6 +4074,8 @@ libfstrm.so.0 fstrm-0.5.0_1 libfreecell-solver.so.0 libfreecell-solver-5.10.0_1 libknot.so.12 libknot-3.1.0_1 libdnssec.so.8 libknot-3.0.0_1 +libknot.so.13 libknot-3.2.0_1 +libdnssec.so.9 libknot-3.2.0_1 libzscanner.so.4 libknot-3.1.0_1 libkres.so.9 knot-resolver-4.0.0_1 libnsl.so.3 libnsl-2.0.0_1 @@ -3719,6 +4099,8 @@ libmygpo-qt5.so.1 libmygpo-qt-1.1.0_1 libluv.so.1 libluv-1.30.1.0_1 libarmadillo.so.9 armadillo-9.700.2_1 libvarnishapi.so.2 libvarnishapi-6.3.0_1 +libarmadillo.so.11 armadillo-11.0.1_1 +libvarnishapi.so.3 libvarnishapi-7.1.0_1 libicns.so.1 libicns-0.8.1_1 librabbitmq.so.4 rabbitmq-c-0.10.0_2 libuInputPlus.so.0 libuInputPlus-0.1.3_1 @@ -3882,11 +4264,14 @@ libjsonnet++.so.0 jsonnet-0.14.0_2 libigdgmm.so.11 intel-gmmlib-21.3.1_1 libigfxcmrt.so.7 intel-media-driver-21.3.5_1 libigdgmm.so.11 intel-gmmlib-19.4.1_1 +libigdgmm.so.12 intel-gmmlib-22.1.3_1 +libigfxcmrt.so.7 intel-media-driver-21.3.5_1 libigraph.so.0 igraph-0.9.4_1 libgtk-layer-shell.so.0 gtk-layer-shell-0.1.0_1 librdkafka.so.1 librdkafka-1.4.4_3 librdkafka++.so.1 librdkafka-1.4.4_3 libraft.so.0 raft-0.9.16_1 +libraft.so.2 raft-0.13.0_1 libmdnsd.so.1 libmdnsd-0.9_1 libosdGPU.so.3.4.3 OpenSubdiv-3.4.3_1 libosdCPU.so.3.4.3 OpenSubdiv-3.4.3_1 @@ -3912,6 +4297,7 @@ libbudgietheme.so.0 budgie-desktop-10.5.1_1 libbudgie-plugin.so.0 budgie-desktop-10.5.1_1 libslirp.so.0 libslirp-4.2.0_1 libqpdf.so.28 libqpdf-10.0.0_1 +libqpdf.so.29 libqpdf-11.0.0_1 libstk-4.6.1.so libstk-4.6.1_1 libc++utilities.so.5 cpp-utilities-5.2.0_1 libtagparser.so.11 tagparser-11.0.0_1 @@ -3930,6 +4316,9 @@ libhidrd_fmt.so.0 hidrd-0.2.0_1 libjcat.so.1 libjcat-0.1.2_1 libmatio.so.9 matio-1.5.17_2 libportal.so.0 libportal-0.3_1 +libportal.so.1 libportal-0.6_1 +libportal-gtk3.so.1 libportal-gtk3-0.6_1 +libportal-gtk4.so.1 libportal-gtk4-0.6_1 libvips.so.42 libvips-8.9.2_1 libvips-cpp.so.42 libvips-8.9.2_1 libselinux.so.1 libselinux-3.0_1 @@ -4031,6 +4420,10 @@ libpari-gmp-tls.so.7 pari-2.13.2_1 libtree-sitter.so.0 tree-sitter-0.19.0_1 libplanarity.so.0 planarity-3.0.1.1_1 libgap.so.0 gap-4.11.1_1 +libpari-gmp-tls.so.8 pari-2.15.0_1 +libtree-sitter.so.0 tree-sitter-0.19.0_1 +libplanarity.so.0 planarity-3.0.1.1_1 +libgap.so.8 gap-4.12.0_1 libgtkdatabox.so.1 gtkdatabox3-1.0.0_1 libxcvt.so.0 libxcvt-0.1.1_1 libgf2x.so.3 gf2x-1.3.0_1 @@ -4038,6 +4431,9 @@ libntl.so.44 ntl-11.5.1_1 libflint.so.16 flintlib-2.8.0_1 libarb.so.2 arb-2.20.0_1 libec.so.8 eclib-20210625_1 +libflint.so.17 flintlib-2.9.0_1 +libarb.so.2 arb-2.20.0_1 +libec.so.10 eclib-20220621_1 libsymmetrica.so.2 symmetrica-3.0.1_1 libLfunction.so.1 lcalc-2.0.4_1 liblrcalc.so.2 lrcalc-2.1_1 @@ -4056,6 +4452,7 @@ libmariadbd.so.19 libmariadbclient-10.5.9_1 libinstpatch-1.0.so.2 libinstpatch-1.1.6_1 libbasu.so.0 basu-0.2.0_1 libhomfly.so.0 libhomfly-1.02r6_1 +libsrt.so.1.5 libsrt-1.5.0_1 libXcomp.so.3 nx-libs-3.5.99.24_1 libXcompshad.so.3 nx-libs-3.5.99.24_1 libNX_X11.so.6 nx-libs-3.5.99.24_1 @@ -4070,6 +4467,9 @@ libprimecount.so.7 primecount-7.2_1 libprimesieve.so.9 primesieve-7.7_1 libavif.so.13 libavif-0.9.3_1 libkdumpfile.so.9 libkdumpfile-0.4.1_1 +libprimesieve.so.10 primesieve-8.0_1 +libavif.so.15 libavif-0.11.0_1 +libkdumpfile.so.10 libkdumpfile-0.4.1_1 libamd.so.2 SuiteSparse-5.10.1_1 libcholmod.so.3 SuiteSparse-5.10.1_1 libumfpack.so.5 SuiteSparse-5.10.1_1 @@ -4081,6 +4481,11 @@ libfactory-4.3.0.so singular-4.3.0_1 libpolys-4.3.0.so singular-4.3.0_1 libomalloc-0.9.6.so singular-4.3.0_1 libsingular_resources-4.3.0.so singular-4.3.0_1 +libSingular-4.3.1.so singular-4.3.1p2_1 +libfactory-4.3.1.so singular-4.3.1p2_1 +libpolys-4.3.1.so singular-4.3.1p2_1 +libomalloc-0.9.6.so singular-4.3.1p2_1 +libsingular_resources-4.3.1.so singular-4.3.1p2_1 libbrial.so.3 brial-1.2.10_1 libbrial_groebner.so.3 brial-1.2.10_1 libm4ri-0.0.20200125.so m4ri-20200125_1 @@ -4176,3 +4581,90 @@ libiga32.so.1 intel-graphics-compiler-32bit libigdgmm.so.12 intel-gmmlib-22.2.0_1 libigdrcl.so intel-compute-runtime-bin-devel-22.43.24558_1 libocloc.so intel-compute-runtime-bin-devel-22.43.24558_1 +libSvtAv1Enc.so.1 libsvt-av1-1.0.0_1 +libSvtAv1Dec.so.0 libsvt-av1-0.9.0_1 +libyascreen.so.0 yascreen-1.86_1 +librz_analysis.so.0.4 rizin-0.4.0_1 +librz_asm.so.0.4 rizin-0.4.0_1 +librz_bin.so.0.4 rizin-0.4.0_1 +librz_bp.so.0.4 rizin-0.4.0_1 +librz_config.so.0.4 rizin-0.4.0_1 +librz_cons.so.0.4 rizin-0.4.0_1 +librz_core.so.0.4 rizin-0.4.0_1 +librz_crypto.so.0.4 rizin-0.4.0_1 +librz_debug.so.0.4 rizin-0.4.0_1 +librz_demangler.so.0.4 rizin-0.4.0_1 +librz_diff.so.0.4 rizin-0.4.0_1 +librz_egg.so.0.4 rizin-0.4.0_1 +librz_flag.so.0.4 rizin-0.4.0_1 +librz_hash.so.0.4 rizin-0.4.0_1 +librz_io.so.0.4 rizin-0.4.0_1 +librz_lang.so.0.4 rizin-0.4.0_1 +librz_magic.so.0.4 rizin-0.4.0_1 +librz_main.so.0.4 rizin-0.4.0_1 +librz_parse.so.0.4 rizin-0.4.0_1 +librz_reg.so.0.4 rizin-0.4.0_1 +librz_search.so.0.4 rizin-0.4.0_1 +librz_sign.so.0.4 rizin-0.4.0_1 +librz_socket.so.0.4 rizin-0.4.0_1 +librz_syscall.so.0.4 rizin-0.4.0_1 +librz_type.so.0.4 rizin-0.4.0_1 +librz_util.so.0.4 rizin-0.4.0_1 +libaravis-0.8.so.0 libaravis-0.8.21_1 +libLimeSuite.so.22.09-1 LimeSuite-22.09.0_1 +libnvme.so.1 libnvme-1.0_1 +libRInside.so R-cran-RInside-0.2.16_1 +libXrdUtils.so.3 xrootd-5.4.0_1 +libXrdCl.so.3 xrootd-5.4.0_1 +libXrdServer.so.3 xrootd-5.4.0_1 +libXrdCrypto.so.2 xrootd-5.4.0_1 +libXrdPosix.so.3 xrootd-5.4.0_1 +libXrdHttpUtils.so.2 xrootd-5.4.0_1 +libXrdSsiLib.so.2 xrootd-5.4.0_1 +libXrdCryptoLite.so.2 xrootd-5.4.0_1 +libTree.so root-6.24.06_1 +libRIO.so root-6.24.06_1 +libMatrix.so root-6.24.06_1 +libThread.so root-6.24.06_1 +libTMVA.so root-6.24.06_1 +libMathCore.so root-6.24.06_1 +libCore.so root-6.24.06_1 +libCore.so qtcreator-7.0.2_1 +liblowdown.so lowdown-0.11.2_1 +libjaylink.so.0 libjaylink-0.2.0_1 +libnvidia-container.so.1 libnvidia-container-1.10.0_1 +libnvidia-container-go.so.1 libnvidia-container-1.10.0_1 +libqtspell-qt5.so.1 qtspell-1.0.1_1 +libopensmtpd.so.0 libopensmtpd-0.7_1 +libiio.so.0 libiio-0.23_1 +libqtforkawesome.so.1 qtforkawesome-0.1.0_1 +libqtquickforkawesome.so.1 qtforkawesome-0.1.0_1 +libsyncthingwidgets.so.3 syncthingtray-1.3.0_1 +libsyncthingmodel.so.3 syncthingtray-1.3.0_1 +libsyncthingconnector.so.3 syncthingtray-1.3.0_1 +libglibutil.so.1 libglibutil-1.0.64_1 +libgbinder.so.1 libgbinder-1.1.20_1 +libsunpinyin.so.3 libsunpinyin-3.0.0rc2_1 +libtpm2-totp.so.0 libtpm2-totp-0.3.0_1 +libmujs.so.1.2.0 mujs-1.2.0_2 +libiir.so.1 libiir1-1.9.3_1 +libabsl_statusor.so.2206.0.0 abseil-cpp-20220623.1_1 +libabsl_hash.so.2206.0.0 abseil-cpp-20220623.1_1 +libabsl_raw_hash_set.so.2206.0.0 abseil-cpp-20220623.1_1 +libabsl_bad_variant_access.so.2206.0.0 abseil-cpp-20220623.1_1 +libabsl_status.so.2206.0.0 abseil-cpp-20220623.1_1 +libabsl_random_internal_pool_urbg.so.2206.0.0 abseil-cpp-20220623.1_1 +libabsl_random_internal_randen.so.2206.0.0 abseil-cpp-20220623.1_1 +libabsl_random_internal_randen_hwaes_impl.so.2206.0.0 abseil-cpp-20220623.1_1 +libabsl_random_internal_randen_slow.so.2206.0.0 abseil-cpp-20220623.1_1 +libabsl_cord.so.2206.0.0 abseil-cpp-20220623.1_1 +libabsl_city.so.2206.0.0 abseil-cpp-20220623.1_1 +libabsl_bad_optional_access.so.2206.0.0 abseil-cpp-20220623.1_1 +libabsl_cordz_info.so.2206.0.0 abseil-cpp-20220623.1_1 +libabsl_str_format_internal.so.2206.0.0 abseil-cpp-20220623.1_1 +libabsl_synchronization.so.2206.0.0 abseil-cpp-20220623.1_1 +libabsl_time.so.2206.0.0 abseil-cpp-20220623.1_1 +libabsl_strings.so.2206.0.0 abseil-cpp-20220623.1_1 +libabsl_throw_delegate.so.2206.0.0 abseil-cpp-20220623.1_1 +libabsl_time_zone.so.2206.0.0 abseil-cpp-20220623.1_1 +libabsl_spinlock_wait.so.2206.0.0 abseil-cpp-20220623.1_1 diff --git a/common/travis/build.sh b/common/travis/build.sh index f5cf9cf..2f021bf 100755 --- a/common/travis/build.sh +++ b/common/travis/build.sh @@ -13,7 +13,11 @@ fi PKGS=$(/hostrepo/xbps-src sort-dependencies $(cat /tmp/templates)) for pkg in ${PKGS}; do +<<<<<<< HEAD /hostrepo/xbps-src -j$(nproc) -H "$HOME"/hostdir $arch $test pkg "$pkg" +======= + /hostrepo/xbps-src -j$(nproc) -s -H "$HOME"/hostdir $arch $test pkg "$pkg" +>>>>>>> upstream/master [ $? -eq 1 ] && exit 1 done diff --git a/common/travis/changed_templates.sh b/common/travis/changed_templates.sh index 686436c..cae746f 100755 --- a/common/travis/changed_templates.sh +++ b/common/travis/changed_templates.sh @@ -2,6 +2,7 @@ # # changed_templates.sh +<<<<<<< HEAD if command -v chroot-git >/dev/null 2>&1; then GIT_CMD=$(command -v chroot-git) elif command -v git >/dev/null 2>&1; then @@ -15,6 +16,17 @@ case "$tip" in esac base="$($GIT_CMD merge-base FETCH_HEAD "$tip")" || { +======= +tip="$(git rev-list -1 --parents HEAD)" +case "$tip" in + # This is a merge commit, pick last parent + *" "*" "*) tip="${tip##* }" ;; + # This is a non-merge commit, pick itself + *) tip="${tip%% *}" ;; +esac + +base="$(git merge-base FETCH_HEAD "$tip")" || { +>>>>>>> upstream/master echo "Your branches is based on too old copy." echo "Please rebase to newest copy." exit 1 @@ -23,7 +35,11 @@ base="$($GIT_CMD merge-base FETCH_HEAD "$tip")" || { echo "$base $tip" >/tmp/revisions /bin/echo -e '\x1b[32mChanged packages:\x1b[0m' +<<<<<<< HEAD $GIT_CMD diff-tree -r --no-renames --name-only --diff-filter=AM \ +======= +git diff-tree -r --no-renames --name-only --diff-filter=AM \ +>>>>>>> upstream/master "$base" "$tip" \ -- 'srcpkgs/*/template' | cut -d/ -f 2 | diff --git a/common/travis/fetch-xbps.sh b/common/travis/fetch-xbps.sh index 5a4e458..2fc68de 100755 --- a/common/travis/fetch-xbps.sh +++ b/common/travis/fetch-xbps.sh @@ -7,7 +7,11 @@ TAR=tar command -v bsdtar >/dev/null && TAR=bsdtar ARCH=$(uname -m)-musl VERSION=0.59_5 +<<<<<<< HEAD URL="https://alpha.de.repo.voidlinux.org/static/xbps-static-static-${VERSION}.${ARCH}.tar.xz" +======= +URL="https://repo-ci.voidlinux.org/static/xbps-static-static-${VERSION}.${ARCH}.tar.xz" +>>>>>>> upstream/master FILE=${URL##*/} mkdir -p /tmp/bin diff --git a/common/travis/fetch_upstream.sh b/common/travis/fetch_upstream.sh index 4531556..08b132d 100755 --- a/common/travis/fetch_upstream.sh +++ b/common/travis/fetch_upstream.sh @@ -2,6 +2,7 @@ # # changed_templates.sh +<<<<<<< HEAD if command -v chroot-git >/dev/null 2>&1; then GIT_CMD=$(command -v chroot-git) elif command -v git >/dev/null 2>&1; then @@ -10,3 +11,10 @@ fi /bin/echo -e '\x1b[32mFetching upstream...\x1b[0m' $GIT_CMD fetch --depth 200 https://github.com/void-linux/void-packages.git master +======= +# required by git 2.35.2+ +git config --global --add safe.directory "$PWD" + +/bin/echo -e '\x1b[32mFetching upstream...\x1b[0m' +git fetch --depth 200 https://github.com/void-linux/void-packages.git master +>>>>>>> upstream/master diff --git a/common/travis/license.lst b/common/travis/license.lst index 78c4cb1..1535e22 100644 --- a/common/travis/license.lst +++ b/common/travis/license.lst @@ -31,6 +31,10 @@ Apache-1.0 Apache-1.1 Apache-2.0 App-s2p +<<<<<<< HEAD +======= +Arphic-1999 +>>>>>>> upstream/master Artistic-1.0-Perl Artistic-1.0-cl8 Artistic-1.0 @@ -58,12 +62,20 @@ BSD-Protection BSD-Source-Code BSL-1.0 BUSL-1.1 +<<<<<<< HEAD +======= +Baekmuk +>>>>>>> upstream/master Bahyph Barr Beerware Bison-exception-2.2 BitTorrent-1.0 BitTorrent-1.1 +<<<<<<< HEAD +======= +Bitstream-Vera +>>>>>>> upstream/master BlueOak-1.0.0 Bootloader-exception Borceux @@ -77,6 +89,10 @@ CC-BY-2.5-AU CC-BY-2.5 CC-BY-3.0-AT CC-BY-3.0-DE +<<<<<<< HEAD +======= +CC-BY-3.0-IGO +>>>>>>> upstream/master CC-BY-3.0-NL CC-BY-3.0-US CC-BY-3.0 @@ -220,6 +236,11 @@ GPL-3.0-linking-source-exception GPL-3.0-only GPL-3.0-or-later GPL-CC-1.0 +<<<<<<< HEAD +======= +GStreamer-exception-2005 +GStreamer-exception-2008 +>>>>>>> upstream/master Giftware Glide Glulxe @@ -244,6 +265,10 @@ JPNIC JSON Jam JasPer-2.0 +<<<<<<< HEAD +======= +KiCad-libraries-exception +>>>>>>> upstream/master LAL-1.2 LAL-1.3 LGPL-2.0-only @@ -262,6 +287,11 @@ LPPL-1.1 LPPL-1.2 LPPL-1.3a LPPL-1.3c +<<<<<<< HEAD +======= +LZMA-SDK-9.11-to-9.20 +LZMA-SDK-9.22 +>>>>>>> upstream/master LZMA-exception Latex2e Leptonica @@ -286,10 +316,18 @@ MPL-1.0 MPL-1.1 MPL-2.0-no-copyleft-exception MPL-2.0 +<<<<<<< HEAD +======= +MS-LPL +>>>>>>> upstream/master MS-PL MS-RL MTLL MakeIndex +<<<<<<< HEAD +======= +Minpack +>>>>>>> upstream/master MirOS Motosoto MulanPSL-1.0 @@ -302,6 +340,10 @@ NBPL-1.0 NCGL-UK-2.0 NCSA NGPL +<<<<<<< HEAD +======= +NICTA-1.0 +>>>>>>> upstream/master NIST-PD-fallback NIST-PD NLOD-1.0 @@ -379,6 +421,10 @@ Plexus PolyForm-Noncommercial-1.0.0 PolyForm-Small-Business-1.0.0 PostgreSQL +<<<<<<< HEAD +======= +Python-2.0.1 +>>>>>>> upstream/master Python-2.0 QPL-1.0 Qhull @@ -515,7 +561,13 @@ libpng-2.0 libselinux-1.0 libtiff mif-exception +<<<<<<< HEAD mpich2 +======= +mpi-permissive +mpich2 +mplus +>>>>>>> upstream/master openvpn-openssl-exception psfrag psutils diff --git a/common/travis/set_mirror.sh b/common/travis/set_mirror.sh index a57ab20..b073d1f 100755 --- a/common/travis/set_mirror.sh +++ b/common/travis/set_mirror.sh @@ -1,5 +1,6 @@ #!/bin/sh +<<<<<<< HEAD TRAVIS_PROTO=http TRAVIS_MIRROR=repo-us.voidlinux.org @@ -12,4 +13,11 @@ for _i in etc/xbps.d/repos-remote*.conf ; do # Now set the mirror sed -i "s:alpha\.de\.repo\.voidlinux\.org:$TRAVIS_MIRROR:g" $_i +======= +TRAVIS_MIRROR=repo-ci.voidlinux.org + +for _i in etc/xbps.d/repos-remote*.conf ; do + /bin/echo -e "\x1b[32mUpdating $_i...\x1b[0m" + sed -i "s:repo-default\.voidlinux\.org:$TRAVIS_MIRROR:g" $_i +>>>>>>> upstream/master done diff --git a/common/travis/xlint.sh b/common/travis/xlint.sh index 6b3d9e9..835a3d9 100755 --- a/common/travis/xlint.sh +++ b/common/travis/xlint.sh @@ -11,7 +11,13 @@ common/scripts/lint-commits $base $tip || EXITCODE=$? for t in $(awk '{ print "srcpkgs/" $0 "/template" }' /tmp/templates); do /bin/echo -e "\x1b[32mLinting $t...\x1b[0m" +<<<<<<< HEAD xlint "$t" || EXITCODE=$? common/scripts/lint-version-change "$t" $base $tip || EXITCODE=$? +======= + xlint "$t" > /tmp/xlint_out || EXITCODE=$? + common/scripts/lint-version-change "$t" $base $tip > /tmp/vlint_out || EXITCODE=$? + awk -f common/scripts/lint2annotations.awk /tmp/xlint_out /tmp/vlint_out +>>>>>>> upstream/master done exit $EXITCODE diff --git a/common/travis/xpkgdiff.sh b/common/travis/xpkgdiff.sh new file mode 100755 index 0000000..7caabe4 --- /dev/null +++ b/common/travis/xpkgdiff.sh @@ -0,0 +1,25 @@ +#!/bin/sh +# +# xpkgdiff.sh + +export XBPS_DISTDIR=/hostrepo XBPS_HOSTDIR="$HOME/hostdir" +export DIFF='diff --unified=0 --report-identical-files --suppress-common-lines + --color=always --label REPO --label BUILT' +ARGS="-a $2 -R https://repo-ci.voidlinux.org/current" + +while read -r pkg; do + for subpkg in $(xsubpkg $pkg); do + if xbps-query --repository=$HOME/hostdir/binpkgs \ + --repository=$HOME/hostdir/binpkgs/nonfree \ + -i "$subpkg" >&/dev/null; then + /bin/echo -e "\x1b[34mFile Diff of $subpkg:\x1b[0m" + xpkgdiff $ARGS -f $subpkg + /bin/echo -e "\x1b[34mMetadata Diff of $subpkg:\x1b[0m" + xpkgdiff $ARGS -S $subpkg + /bin/echo -e "\x1b[34mDependency Diff of $subpkg:\x1b[0m" + xpkgdiff $ARGS -x $subpkg + else + /bin/echo -e "\x1b[33m$subpkg wasn't found\x1b[0m" + fi + done +done < /tmp/templates diff --git a/common/xbps-src/libexec/xbps-src-docheck.sh b/common/xbps-src/libexec/xbps-src-docheck.sh index 1e82c1a..dc2f530 100755 --- a/common/xbps-src/libexec/xbps-src-docheck.sh +++ b/common/xbps-src/libexec/xbps-src-docheck.sh @@ -20,6 +20,16 @@ done setup_pkg "$PKGNAME" $XBPS_CROSS_BUILD +<<<<<<< HEAD +======= +if [ -n "$disable_parallel_check" ]; then + XBPS_MAKEJOBS=1 +else + XBPS_MAKEJOBS="$XBPS_ORIG_MAKEJOBS" +fi +makejobs="-j$XBPS_MAKEJOBS" + +>>>>>>> upstream/master XBPS_CHECK_DONE="${XBPS_STATEDIR}/${sourcepkg}_${XBPS_CROSS_BUILD}_check_done" if [ -n "$XBPS_CROSS_BUILD" ]; then diff --git a/common/xbps-src/shutils/build_dependencies.sh b/common/xbps-src/shutils/build_dependencies.sh index e4e2210..6baa35d 100644 --- a/common/xbps-src/shutils/build_dependencies.sh +++ b/common/xbps-src/shutils/build_dependencies.sh @@ -25,9 +25,15 @@ setup_pkg_depends() { _pkgname=$(xbps-uhelper getpkgname $_depname 2>/dev/null) [ -z "$_pkgname" ] && _pkgname="$_depname" if [ -s ${XBPS_DISTDIR}/etc/virtual ]; then +<<<<<<< HEAD foo=$(egrep "^${_pkgname}[[:blank:]]" ${XBPS_DISTDIR}/etc/virtual|cut -d ' ' -f2) elif [ -s ${XBPS_DISTDIR}/etc/defaults.virtual ]; then foo=$(egrep "^${_pkgname}[[:blank:]]" ${XBPS_DISTDIR}/etc/defaults.virtual|cut -d ' ' -f2) +======= + foo=$(grep -E "^${_pkgname}[[:blank:]]" ${XBPS_DISTDIR}/etc/virtual|cut -d ' ' -f2) + elif [ -s ${XBPS_DISTDIR}/etc/defaults.virtual ]; then + foo=$(grep -E "^${_pkgname}[[:blank:]]" ${XBPS_DISTDIR}/etc/defaults.virtual|cut -d ' ' -f2) +>>>>>>> upstream/master fi if [ -z "$foo" ]; then msg_error "$pkgver: failed to resolve virtual dependency for '$j' (missing from etc/virtual)\n" diff --git a/common/xbps-src/shutils/bulk.sh b/common/xbps-src/shutils/bulk.sh index 8eb6e92..d7299cb 100644 --- a/common/xbps-src/shutils/bulk.sh +++ b/common/xbps-src/shutils/bulk.sh @@ -54,7 +54,11 @@ bulk_sortdeps() { } bulk_build() { +<<<<<<< HEAD local sys="$1" +======= + local bulk_build_cmd="$1" +>>>>>>> upstream/master local NPROCS=$(($(nproc)*2)) local NRUNNING=0 @@ -67,10 +71,24 @@ bulk_build() { fi # Compare installed pkg versions vs srcpkgs +<<<<<<< HEAD if [[ $sys ]]; then xbps-checkvers -f '%n' -I -D $XBPS_DISTDIR return $? fi +======= + case "$bulk_build_cmd" in + installed) + bulk_sortdeps $(xbps-checkvers -f '%n' -I -D "$XBPS_DISTDIR") + return $? + ;; + local) + bulk_sortdeps $(xbps-checkvers -f '%n' -i -R "${XBPS_REPOSITORY}" -R "${XBPS_REPOSITORY}/nonfree" -D "$XBPS_DISTDIR") + return $? + ;; + esac + +>>>>>>> upstream/master # compare repo pkg versions vs srcpkgs for f in $(xbps-checkvers -f '%n' -D $XBPS_DISTDIR); do if [ $NRUNNING -eq $NPROCS ]; then @@ -90,9 +108,15 @@ bulk_build() { } bulk_update() { +<<<<<<< HEAD local args="$1" pkgs f rval pkgs="$(bulk_build ${args})" +======= + local bulk_update_cmd="$1" pkgs f rval + + pkgs="$(bulk_build "${bulk_update_cmd}")" +>>>>>>> upstream/master [[ -z $pkgs ]] && return 0 msg_normal "xbps-src: the following packages must be rebuilt and updated:\n" @@ -112,7 +136,11 @@ bulk_update() { msg_error "xbps-src: failed to build $pkgver pkg!\n" fi done +<<<<<<< HEAD if [ -n "$pkgs" -a -n "$args" ]; then +======= + if [ -n "$pkgs" -a "$bulk_update_cmd" == installed ]; then +>>>>>>> upstream/master echo msg_normal "xbps-src: updating your system, confirm to proceed...\n" ${XBPS_SUCMD} "xbps-install --repository=$XBPS_REPOSITORY --repository=$XBPS_REPOSITORY/nonfree -u ${pkgs//[$'\n']/ }" || return 1 diff --git a/common/xbps-src/shutils/chroot.sh b/common/xbps-src/shutils/chroot.sh index 3083a27..ad64f27 100644 --- a/common/xbps-src/shutils/chroot.sh +++ b/common/xbps-src/shutils/chroot.sh @@ -8,12 +8,17 @@ install_base_chroot() { XBPS_TARGET_PKG="$1" fi # binary bootstrap +<<<<<<< HEAD msg_normal "xbps-src: installing base-chroot-cereus...\n" +======= + msg_normal "xbps-src: installing base-chroot...\n" +>>>>>>> upstream/master # XBPS_TARGET_PKG == arch if [ "$XBPS_TARGET_PKG" ]; then _bootstrap_arch="env XBPS_TARGET_ARCH=$XBPS_TARGET_PKG" fi (export XBPS_MACHINE=$XBPS_TARGET_PKG XBPS_ARCH=$XBPS_TARGET_PKG; chroot_sync_repodata) +<<<<<<< HEAD ${_bootstrap_arch} $XBPS_INSTALL_CMD ${XBPS_INSTALL_ARGS} -y base-chroot-cereus if [ $? -ne 0 ]; then msg_error "xbps-src: failed to install base-chroot-cereus!\n" @@ -24,6 +29,18 @@ install_base_chroot() { fi msg_normal "xbps-src: installed base-chroot-cereus successfully!\n" +======= + ${_bootstrap_arch} $XBPS_INSTALL_CMD ${XBPS_INSTALL_ARGS} -y base-chroot + if [ $? -ne 0 ]; then + msg_error "xbps-src: failed to install base-chroot!\n" + fi + # Reconfigure base-files to create dirs/symlinks. + if xbps-query -r $XBPS_MASTERDIR base-files &>/dev/null; then + XBPS_ARCH=$XBPS_TARGET_PKG xbps-reconfigure -r $XBPS_MASTERDIR -f base-files &>/dev/null + fi + + msg_normal "xbps-src: installed base-chroot successfully!\n" +>>>>>>> upstream/master chroot_prepare $XBPS_TARGET_PKG || msg_error "xbps-src: failed to initialize chroot!\n" chroot_check chroot_handler clean @@ -34,7 +51,11 @@ reconfigure_base_chroot() { local pkgs="glibc-locales ca-certificates" [ -z "$IN_CHROOT" -o -e $statefile ] && return 0 # Reconfigure ca-certificates. +<<<<<<< HEAD msg_normal "xbps-src: reconfiguring base-chroot-cereus...\n" +======= + msg_normal "xbps-src: reconfiguring base-chroot...\n" +>>>>>>> upstream/master for f in ${pkgs}; do if xbps-query -r $XBPS_MASTERDIR $f &>/dev/null; then xbps-reconfigure -r $XBPS_MASTERDIR -f $f @@ -51,7 +72,11 @@ update_base_chroot() { if $(${XBPS_INSTALL_CMD} ${XBPS_INSTALL_ARGS} -nu|grep -q xbps); then ${XBPS_INSTALL_CMD} ${XBPS_INSTALL_ARGS} -yu xbps || msg_error "xbps-src: failed to update xbps!\n" fi +<<<<<<< HEAD ${XBPS_INSTALL_CMD} ${XBPS_INSTALL_ARGS} -yu || msg_error "xbps-src: failed to update base-chroot-cereus!\n" +======= + ${XBPS_INSTALL_CMD} ${XBPS_INSTALL_ARGS} -yu || msg_error "xbps-src: failed to update base-chroot!\n" +>>>>>>> upstream/master msg_normal "xbps-src: cleaning up $XBPS_MASTERDIR masterdir...\n" [ -z "$XBPS_KEEP_ALL" -a -z "$XBPS_SKIP_DEPS" ] && remove_pkg_autodeps [ -z "$XBPS_KEEP_ALL" -a -z "$keep_all_force" ] && rm -rf $XBPS_MASTERDIR/builddir $XBPS_MASTERDIR/destdir @@ -115,14 +140,22 @@ chroot_prepare() { [ ! -d $XBPS_MASTERDIR/$f ] && mkdir -p $XBPS_MASTERDIR/$f done +<<<<<<< HEAD # Copy /etc/passwd and /etc/group from base-files +======= + # Copy /etc/passwd and /etc/group from base-files. +>>>>>>> upstream/master cp -f $XBPS_SRCPKGDIR/base-files/files/passwd $XBPS_MASTERDIR/etc echo "$(whoami):x:$(id -u):$(id -g):$(whoami) user:/tmp:/bin/xbps-shell" \ >> $XBPS_MASTERDIR/etc/passwd cp -f $XBPS_SRCPKGDIR/base-files/files/group $XBPS_MASTERDIR/etc echo "$(whoami):x:$(id -g):" >> $XBPS_MASTERDIR/etc/group +<<<<<<< HEAD # Copy /etc/hosts from base-files +======= + # Copy /etc/hosts from base-files. +>>>>>>> upstream/master cp -f $XBPS_SRCPKGDIR/base-files/files/hosts $XBPS_MASTERDIR/etc # Prepare default locale: en_US.UTF-8. diff --git a/common/xbps-src/shutils/common.sh b/common/xbps-src/shutils/common.sh index 47ff365..7289bdd 100644 --- a/common/xbps-src/shutils/common.sh +++ b/common/xbps-src/shutils/common.sh @@ -147,6 +147,26 @@ msg_normal() { fi } +<<<<<<< HEAD +======= +report_broken() { + if [ "$show_problems" = "ignore-problems" ]; then + return + fi + if [ -z "$XBPS_IGNORE_BROKENNESS" ]; then + for line in "$@"; do + msg_red "$line" + done + exit 2 + elif [ "$XBPS_IGNORE_BROKENNESS" != reported ]; then + for line in "$@"; do + msg_warn "$line" + done + XBPS_IGNORE_BROKENNESS=reported + fi +} + +>>>>>>> upstream/master msg_normal_append() { [ -n "$NOCOLORS" ] || printf "\033[1m" printf "$@" @@ -472,7 +492,19 @@ setup_pkg() { fi makejobs="-j$XBPS_MAKEJOBS" if [ -n "$XBPS_BINPKG_EXISTS" ]; then +<<<<<<< HEAD local _binpkgver="$($XBPS_QUERY_XCMD -R -ppkgver $pkgver 2>/dev/null)" +======= + local extraflags="" + if [ -n "$XBPS_SKIP_REMOTEREPOS" ]; then + extraflags="-i" + # filter out remote repositories + for repo in $(xbps-query -L | awk '{ print $2 }' | grep '^/host/'); do + extraflags+=" --repository=$repo" + done + fi + local _binpkgver="$($XBPS_QUERY_XCMD -R -ppkgver $pkgver $extraflags 2>/dev/null)" +>>>>>>> upstream/master if [ "$_binpkgver" = "$pkgver" ]; then if [ -z "$XBPS_DEPENDENCY" ]; then local _repo="$($XBPS_QUERY_XCMD -R -prepository $pkgver 2>/dev/null)" @@ -630,6 +662,7 @@ setup_pkg() { fi # Setup some specific package vars. +<<<<<<< HEAD if [ -z "$wrksrc" ]; then wrksrc="$XBPS_BUILDDIR/${sourcepkg}-${version}" else @@ -644,6 +677,18 @@ setup_pkg() { msg_red "$pkgver: cannot be built, it's currently broken; see the build log:\n" msg_red "$pkgver: $broken\n" exit 2 +======= + wrksrc="$XBPS_BUILDDIR/${sourcepkg}-${version}" + + if [ "$cross" -a "$nocross" ]; then + report_broken \ + "$pkgver: cannot be cross compiled...\n" \ + "$pkgver: $nocross\n" + elif [ "$broken" ]; then + report_broken \ + "$pkgver: cannot be built, it's currently broken; see the build log:\n" \ + "$pkgver: $broken\n" +>>>>>>> upstream/master fi if [ -n "$restricted" -a -z "$XBPS_ALLOW_RESTRICTED" -a "$show_problems" != "ignore-problems" ]; then diff --git a/common/xbps-src/shutils/cross.sh b/common/xbps-src/shutils/cross.sh index 5f65f38..1c2731d 100644 --- a/common/xbps-src/shutils/cross.sh +++ b/common/xbps-src/shutils/cross.sh @@ -72,7 +72,11 @@ prepare_cross_sysroot() { fi rm -f $errlog # Create top level symlinks in sysroot. +<<<<<<< HEAD XBPS_ARCH=$XBPS_TARGET_MACHINE xbps-reconfigure -r $XBPS_CROSS_BASE -f base-files-cereus>=2022.07.03 &>/dev/null +======= + XBPS_ARCH=$XBPS_TARGET_MACHINE xbps-reconfigure -r $XBPS_CROSS_BASE -f base-files &>/dev/null +>>>>>>> upstream/master # Create a sysroot/include and sysroot/lib symlink just in case. ln -s usr/include ${XBPS_CROSS_BASE}/include ln -s usr/lib ${XBPS_CROSS_BASE}/lib diff --git a/common/xbps-src/shutils/pkgtarget.sh b/common/xbps-src/shutils/pkgtarget.sh index 06fbcd8..bd5c9d6 100644 --- a/common/xbps-src/shutils/pkgtarget.sh +++ b/common/xbps-src/shutils/pkgtarget.sh @@ -34,8 +34,12 @@ check_pkg_arch() { esac done if [ -z "$nonegation" -a -n "$match" ] || [ -n "$nonegation" -a -z "$match" ]; then +<<<<<<< HEAD msg_red "${pkgname}-${version}_${revision}: this package cannot be built for ${_arch}.\n" exit 2 +======= + report_broken "${pkgname}-${version}_${revision}: this package cannot be built for ${_arch}.\n" +>>>>>>> upstream/master fi fi } diff --git a/common/xbps-src/shutils/update_check.sh b/common/xbps-src/shutils/update_check.sh index 0a62427..5c04ce8 100644 --- a/common/xbps-src/shutils/update_check.sh +++ b/common/xbps-src/shutils/update_check.sh @@ -4,6 +4,10 @@ update_check() { local i p url pkgurlname rx found_version consider local update_override=$XBPS_SRCPKGDIR/$XBPS_TARGET_PKG/update local original_pkgname=$pkgname +<<<<<<< HEAD +======= + local pkgname=$sourcepkg +>>>>>>> upstream/master local urlpfx urlsfx local -A fetchedurls @@ -23,8 +27,14 @@ update_check() { if [ -z "$site" ]; then case "$distfiles" in +<<<<<<< HEAD # only consider versions those exist in ftp.gnome.org *ftp.gnome.org*) ;; +======= + # special case those sites provide better source elsewhere + *ftp.gnome.org*|*download.gnome.org*) ;; + *archive.xfce.org*) ;; +>>>>>>> upstream/master *) printf '%s\n' "$homepage" ;; esac @@ -56,7 +66,12 @@ update_check() { *github.com*|\ *//gitlab.*|\ *bitbucket.org*|\ +<<<<<<< HEAD *ftp.gnome.org*|\ +======= + *ftp.gnome.org*|*download.gnome.org*|\ + *archive.xfce.org*|\ +>>>>>>> upstream/master *kernel.org/pub/linux/kernel/*|\ *cran.r-project.org/src/contrib*|\ *rubygems.org*|\ @@ -122,8 +137,16 @@ update_check() { pkgurlname="$(printf %s "$url" | cut -d/ -f4,5)" url="https://github.com/$pkgurlname/tags" rx='/archive/refs/tags/(v?|\Q'"$pkgname"'\E-)?\K[\d.]+(?=\.tar\.gz")';; +<<<<<<< HEAD *//gitlab.*) pkgurlname="$(printf %s "$url" | cut -d/ -f1-5)" +======= + *//gitlab.*|*code.videolan.org*) + case "$url" in + */-/*) pkgurlname="$(printf %s "$url" | sed -e 's%/-/.*%%g; s%/$%%')";; + *) pkgurlname="$(printf %s "$url" | cut -d / -f 1-5)";; + esac +>>>>>>> upstream/master url="$pkgurlname/tags" rx='/archive/[^/]+/\Q'"$pkgname"'\E-v?\K[\d.]+(?=\.tar\.gz")';; *bitbucket.org*) @@ -131,8 +154,16 @@ update_check() { url="https://bitbucket.org/$pkgurlname/downloads" rx='/(get|downloads)/(v?|\Q'"$pkgname"'\E-)?\K[\d.]+(?=\.tar)';; *ftp.gnome.org*|*download.gnome.org*) +<<<<<<< HEAD : ${pattern="\Q$pkgname\E-\K(0|[13]\.[0-9]*[02468]|[4-9][0-9]+)\.[0-9.]*[0-9](?=)"} url="https://download.gnome.org/sources/$pkgname/cache.json";; +======= + : ${pattern="\Q$pkgname\E-\K(0|[13]\.[0-9]*[02468]|[4-9][0-9]+)\.[0-9.]*[0-9](?=.tar)"} + url="https://download.gnome.org/sources/$pkgname/cache.json";; + *archive.xfce.org*) + : ${pattern="\Q$pkgname\E-\K((([4-9]|([1-9][0-9]+))\.[0-9]*[02468]\.[0-9.]*[0-9])|([0-3]\.[0-9.]*))(?=.tar)"} + url="https://archive.xfce.org/feeds/project/$pkgname" ;; +>>>>>>> upstream/master *kernel.org/pub/linux/kernel/*) rx=linux-'\K'${version%.*}'[\d.]+(?=\.tar\.xz)';; *cran.r-project.org/src/contrib*) @@ -145,8 +176,13 @@ update_check() { rx='/crates/'${pkgname#rust-}'/\K[0-9.]*(?=/download)' ;; *codeberg.org*) pkgurlname="$(printf %s "$url" | cut -d/ -f4,5)" +<<<<<<< HEAD url="https://codeberg.org/$pkgurlname/releases" rx='/archive/\K[\d.]+(?=\.tar\.gz)' ;; +======= + url="https://codeberg.org/$pkgurlname/tags" + rx='/archive/(v-?|\Q'"$pkgname"'\E-)?\K[\d.]+(?=\.tar\.gz)' ;; +>>>>>>> upstream/master *hg.sr.ht*) pkgurlname="$(printf %s "$url" | cut -d/ -f4,5)" url="https://hg.sr.ht/$pkgurlname/tags" diff --git a/xbps-src b/xbps-src index ff24901..a0fa938 100755 --- a/xbps-src +++ b/xbps-src @@ -122,6 +122,12 @@ show-repo-updates show-sys-updates Prints the list of outdated packages in your system. +<<<<<<< HEAD +======= +show-local-updates + Prints the list of outdated packages in your local repositories. + +>>>>>>> upstream/master sort-dependencies ... Given a list of packages specified as additional arguments, a sorted dependency list will be returned to stdout. @@ -132,6 +138,12 @@ update-bulk update-sys Rebuilds all packages in your system that are outdated and updates them. +<<<<<<< HEAD +======= +update-local + Rebuilds all packages in your local repositories that are outdated. + +>>>>>>> upstream/master update-check Check upstream site of for new releases. @@ -150,6 +162,11 @@ Options: $(print_cross_targets) +<<<<<<< HEAD +======= +-b Build packages even if marked as broken, nocross, or excluded with archs. + +>>>>>>> upstream/master -c If specified, etc/conf. will be used as the primary config file name; etc/conf will only be attempted if that does not exist. @@ -157,7 +174,11 @@ $(print_cross_targets) -C Do not remove build directory, automatic dependencies and package destdir after successful install. +<<<<<<< HEAD -E If a binary package exists in a local repository for the target package, +======= +-E If a binary package exists in a repository for the target package, +>>>>>>> upstream/master do not try to build it, exit immediately. -f Force running the specified stage (configure/build/install/pkg) @@ -216,6 +237,11 @@ $(print_cross_targets) This alternative repository will also be used to resolve dependencies with highest priority order than others. +<<<<<<< HEAD +======= +-s Make vsed warnings errors. + +>>>>>>> upstream/master -t Create a temporary masterdir to not pollute the current one. Note that the existing masterdir must be fully populated with binary-bootstrap first. Once the target has finished, this temporary masterdir will be removed. @@ -357,7 +383,11 @@ readonly XBPS_SRC_VERSION="113" export XBPS_MACHINE=$(xbps-uhelper -C /dev/null arch) XBPS_OPTIONS= +<<<<<<< HEAD XBPS_OPTSTRING="1a:c:CEfgGhH:iIj:Lm:No:p:qQKr:tV" +======= +XBPS_OPTSTRING="1a:bc:CEfgGhH:iIj:Lm:No:p:qsQKr:tV" +>>>>>>> upstream/master # Preprocess arguments in order to allow options before and after XBPS_TARGET. eval set -- $(getopt "$XBPS_OPTSTRING" "$@"); @@ -369,6 +399,10 @@ while getopts "$XBPS_OPTSTRING" opt; do case $opt in 1) XBPS_ARG_BUILD_ONLY_ONE_PKG=yes; XBPS_OPTIONS+=" -1";; a) XBPS_ARG_CROSS_BUILD="$OPTARG"; XBPS_OPTIONS+=" -a $OPTARG";; +<<<<<<< HEAD +======= + b) XBPS_ARG_IGNORE_BROKENNESS=yes; XBPS_OPTIONS+=" -b";; +>>>>>>> upstream/master c) XBPS_ARG_CONFIG="$OPTARG"; XBPS_OPTIONS+=" -c $OPTARG";; C) XBPS_ARG_KEEP_ALL=1; XBPS_OPTIONS+=" -C";; E) XBPS_ARG_BINPKG_EXISTS=1; XBPS_OPTIONS+=" -E";; @@ -389,6 +423,10 @@ while getopts "$XBPS_OPTSTRING" opt; do Q) XBPS_ARG_CHECK_PKGS=yes; XBPS_OPTIONS+=" -Q";; K) XBPS_ARG_CHECK_PKGS=full; XBPS_OPTIONS+=" -K";; r) XBPS_ARG_ALT_REPOSITORY="$OPTARG"; XBPS_OPTIONS+=" -r $OPTARG";; +<<<<<<< HEAD +======= + s) XBPS_ARG_STRICT=yes; XBPS_OPTIONS+=" -s";; +>>>>>>> upstream/master t) XBPS_ARG_TEMP_MASTERDIR=1; XBPS_OPTIONS+=" -t -C";; V) echo "xbps-src-$XBPS_SRC_VERSION $(xbps-uhelper -V)" && exit 0;; --) shift; break;; @@ -459,6 +497,10 @@ fi # Set options passed on command line, after configuration files have been read [ -n "$XBPS_ARG_BUILD_ONLY_ONE_PKG" ] && XBPS_BUILD_ONLY_ONE_PKG=yes +<<<<<<< HEAD +======= +[ -n "$XBPS_ARG_IGNORE_BROKENNESS" ] && XBPS_IGNORE_BROKENNESS=1 +>>>>>>> upstream/master [ -n "$XBPS_ARG_SKIP_REMOTEREPOS" ] && XBPS_SKIP_REMOTEREPOS=1 [ -n "$XBPS_ARG_BUILD_FORCEMODE" ] && XBPS_BUILD_FORCEMODE=1 [ -n "$XBPS_ARG_INFORMATIVE_RUN" ] && XBPS_INFORMATIVE_RUN=1 @@ -471,6 +513,10 @@ fi [ -n "$XBPS_ARG_QUIET" ] && XBPS_QUIET=1 [ -n "$XBPS_ARG_PRINT_VARIABLES" ] && XBPS_PRINT_VARIABLES="$XBPS_ARG_PRINT_VARIABLES" [ -n "$XBPS_ARG_ALT_REPOSITORY" ] && XBPS_ALT_REPOSITORY="$XBPS_ARG_ALT_REPOSITORY" +<<<<<<< HEAD +======= +[ -n "$XBPS_ARG_STRICT" ] && XBPS_STRICT="$XBPS_ARG_STRICT" +>>>>>>> upstream/master [ -n "$XBPS_ARG_CROSS_BUILD" ] && XBPS_CROSS_BUILD="$XBPS_ARG_CROSS_BUILD" [ -n "$XBPS_ARG_CHECK_PKGS" ] && XBPS_CHECK_PKGS="$XBPS_ARG_CHECK_PKGS" [ -n "$XBPS_ARG_MAKEJOBS" ] && XBPS_MAKEJOBS="$XBPS_ARG_MAKEJOBS" @@ -478,8 +524,13 @@ fi export XBPS_BUILD_ONLY_ONE_PKG XBPS_SKIP_REMOTEREPOS XBPS_BUILD_FORCEMODE \ XBPS_INFORMATIVE_RUN XBPS_TEMP_MASTERDIR XBPS_BINPKG_EXISTS \ XBPS_USE_GIT_REVS XBPS_CHECK_PKGS XBPS_DEBUG_PKGS XBPS_SKIP_DEPS \ +<<<<<<< HEAD XBPS_KEEP_ALL XBPS_QUIET XBPS_ALT_REPOSITORY XBPS_CROSS_BUILD \ XBPS_MAKEJOBS XBPS_PRINT_VARIABLES +======= + XBPS_KEEP_ALL XBPS_QUIET XBPS_ALT_REPOSITORY XBPS_STRICT XBPS_CROSS_BUILD \ + XBPS_MAKEJOBS XBPS_PRINT_VARIABLES XBPS_IGNORE_BROKENNESS +>>>>>>> upstream/master # The masterdir/hostdir variables are forced and readonly in chroot if [ -z "$IN_CHROOT" ]; then @@ -626,7 +677,11 @@ readonly XBPS_CMPVER_CMD="xbps-uhelper cmpver" export XBPS_SHUTILSDIR XBPS_CROSSPFDIR XBPS_TRIGGERSDIR \ XBPS_SRCPKGDIR XBPS_COMMONDIR XBPS_BUILDDIR \ +<<<<<<< HEAD XBPS_REPOSITORY XBPS_ALT_REPOSITORY XBPS_SRCDISTDIR XBPS_DIGEST_CMD \ +======= + XBPS_REPOSITORY XBPS_ALT_REPOSITORY XBPS_STRICT XBPS_SRCDISTDIR XBPS_DIGEST_CMD \ +>>>>>>> upstream/master XBPS_UHELPER_CMD XBPS_INSTALL_CMD XBPS_QUERY_CMD XBPS_BUILD_ONLY_ONE_PKG \ XBPS_RINDEX_CMD XBPS_RECONFIGURE_CMD XBPS_REMOVE_CMD XBPS_CHECKVERS_CMD \ XBPS_CMPVER_CMD XBPS_FETCH_CMD XBPS_VERSION XBPS_BUILDSTYLEDIR \ @@ -639,7 +694,11 @@ export XBPS_SHUTILSDIR XBPS_CROSSPFDIR XBPS_TRIGGERSDIR \ XBPS_LIBEXECDIR XBPS_DISTDIR XBPS_DISTFILES_MIRROR XBPS_ALLOW_RESTRICTED \ XBPS_USE_GIT_COMMIT_DATE XBPS_PKG_COMPTYPE XBPS_REPO_COMPTYPE \ XBPS_BUILDHELPERDIR XBPS_USE_BUILD_MTIME XBPS_BUILD_ENVIRONMENT \ +<<<<<<< HEAD XBPS_PRESERVE_PKGS +======= + XBPS_PRESERVE_PKGS XBPS_IGNORE_BROKENNESS +>>>>>>> upstream/master for i in REPOSITORY DESTDIR BUILDDIR SRCDISTDIR; do eval val="\$XBPS_$i" @@ -797,6 +856,10 @@ case "$XBPS_TARGET" in if [ -n "$CHROOT_READY" -a -z "$IN_CHROOT" ]; then chroot_handler $XBPS_TARGET $XBPS_TARGET_PKG else +<<<<<<< HEAD +======= + check_existing_pkg +>>>>>>> upstream/master chroot_sync_repodata # prevent update_base_chroot from removing the builddir/destdir update_base_chroot keep-all-force @@ -952,7 +1015,14 @@ case "$XBPS_TARGET" in bulk_build ;; show-sys-updates) +<<<<<<< HEAD bulk_build -I +======= + bulk_build installed + ;; + show-local-updates) + bulk_build local +>>>>>>> upstream/master ;; sort-dependencies) bulk_sortdeps ${@/$XBPS_TARGET/} @@ -961,7 +1031,14 @@ case "$XBPS_TARGET" in bulk_update ;; update-sys) +<<<<<<< HEAD bulk_update -I +======= + bulk_update installed + ;; + update-local) + bulk_update local +>>>>>>> upstream/master ;; update-check) read_pkg ignore-problems