Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
This helps to have a convenient way to manage and test our personal
GitLab tokens. Those are used for certain API calls like creating new
repositories.
prefill the access token web view as per
https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html#prefill-personal-access-token-name-and-scopes
Signed-off-by: Levente Polyak <anthraxx@archlinux.org>
|
|
We need to use API calls as we can't create repositories in protected
namespaces by simply pushing a none existing repository. For privacy
reasons this is limited to private personal repositories in GitLab.
|
|
|
|
This will greatly help us to structure the functionality and commands in
a more sane way. We will distribute the sources as actual libraries and
reuse code with imports instead of processing everything with m4 and
duplicating a lot of code.
|
|
This is the first step of a simple and highly structured unified
interface to devtools commands in a single wrapper.
The split is based on groups like `repo`, `build` and `diff`
Signed-off-by: Levente Polyak <anthraxx@archlinux.org>
|
|
This can be quite handy if a packager quickly wants to check the GitLab
page for merge requests or but reports. Quickly calling a cli command
inside the current packaging clone or with the pkgname provided will
open the remote location inside the browser.
Signed-off-by: Levente Polyak <anthraxx@archlinux.org>
|
|
This can be very handy for cache warming on the repo server or
to perform mass operations on all PKGBUILDs.
Signed-off-by: Levente Polyak <anthraxx@archlinux.org>
|
|
Signed-off-by: Levente Polyak <anthraxx@archlinux.org>
|
|
It makes a lot of sense to have them in a central place that can be
swapped and also re-used across different execution units. Hence lets
move the repos.archlinux.org host to lib/common.sh
Signed-off-by: Levente Polyak <anthraxx@archlinux.org>
|
|
Query Archweb to retrieve a list of all packages of a maintainer by
their pkgbase. AFterwards loop through all packages and clone them.
Signed-off-by: Levente Polyak <anthraxx@archlinux.org>
|
|
Manages Git packaging repositories and helps with their configuration
according to distro specs.
Git author information and the used signing key is set up from
makepkg.conf read from any valid location like /etc or XDG_CONFIG_HOME.
The configure command can be used to synchronize the distro specs and
makepkg.conf settings for previously cloned repositories.
The unprivileged option can be used for cloning packaging repositories
without SSH access using read-only HTTPS.
Signed-off-by: Levente Polyak <anthraxx@archlinux.org>
|
|
|
|
We unified the source repositories to a single location. Having to cross
repo move them between physical locations is not required anymore.
|
|
|
|
This allows us to reuse the code and have the conversion in a single
place instead of cluttering rules across different execution units.
It also fixes the implementations according to the specs of
git-check-ref-format.
Signed-off-by: Levente Polyak <anthraxx@archlinux.org>
|
|
|
|
Signed-off-by: Morten Linderud <foxboron@archlinux.org>
|
|
Signed-off-by: Morten Linderud <foxboron@archlinux.org>
|
|
Signed-off-by: Morten Linderud <foxboron@archlinux.org>
|
|
Signed-off-by: Morten Linderud <foxboron@archlinux.org>
Signed-off-by: Levente Polyak <anthraxx@archlinux.org>
|
|
Signed-off-by: Morten Linderud <foxboron@archlinux.org>
Adjusted-by: Levente Polyak <anthraxx@archlinux.org>
|
|
Do not allow uploads of source=() with only weak cryptographic hashing
algorithms but require at least one strong algorithm.
This doesn't 100% enforce it ofcourse, but it allows for an early
failure instead of failing in `db-update`.
Signed-off-by: Levente Polyak <anthraxx@archlinux.org>
|
|
Use the first mirror that is configured for each repo in pacman.conf.
With the default configuration, this means to use the first mirror from /etc/pacman.d/mirrorlist.
If a repo is not configured in pacman.conf, fall back to https://geo.mirror.pkgbuild.com.
|
|
|
|
The `extglob` option changes the behavior of the shell parser, since
extended glob patterns would otherwise be syntax errors. bash-5.2
changed the way a function definition is processed by calling the parser
instead of relying on the ad-hoc code in bash-5.1 and earlier versions.
This means, in bash-5.2 the shell function was parsed without `extglob`
being enabled because the `shopt` command to enable it was part of the
function body.
Add `shopt` options for `extglob` around function definitions to address
this issue and allow bash-5.2 to correctly parse the function.
Co-authored-by: Frédéric Pierret (fepitre) <frederic.pierret@qubes-os.org>
Co-authored-by: Levente Polyak <anthraxx@archlinux.org>
Signed-off-by: Levente Polyak <anthraxx@archlinux.org>
|
|
Signed-off-by: Celeste Liu <CoelacanthusHex@gmail.com>
|
|
Adding such an entry is problematic as it results in locale -a showing:
C
C.UTF-8
C.utf8
POSIX
(other locales)
In the above, C.UTF-8 is built-in whereas C.utf8 comes from locale.gen.
The duplicate locale has the potential to expose undesired behavior in
upstream software: https://github.com/sudo-project/sudo/issues/241
|
|
|
|
Previously the script execution did not abort if the msg file editor
exited none-successfully leading to undesired commits with a potentially
unfinished message. Instead abort the commit if the msg file editor is
deliberately terminated with a failure code.
Signed-off-by: Levente Polyak <anthraxx@archlinux.org>
|
|
Use the workdir location which gets cleaned up automatically. Previously
this was leaking tmpfiles if the commitpkg command got aborted after
file creation.
Signed-off-by: Levente Polyak <anthraxx@archlinux.org>
|
|
config path: @pkgdatadir@/mount.d/${arch}
config format:
Each line will start with 'ro' and 'rw' will be used, other lines will
be ignore, rest of line is out/path:in/path. e.g.
```
ro /some/path:/proc/cpuinfo
rw /some/some/path:/var/cache/pacman/pkg
```
For example, in the RISC-V port, if we use qemu-user to build, we need
to pass a parameter to makechrootpkg to map a correct /proc/cpuinfo, so
that software that relies on /proc/cpuinfo to obtain information can be
built normally.
Signed-off-by: Celeste Liu <CoelacanthusHex@gmail.com>
|
|
systemd by default limits the /tmp folder to be 10% of the host memory:
https://github.com/systemd/systemd/blob/6f2cea06bfce6ad99f0ac37ab12af61ef7549fe3/src/shared/mount-util.h#L33
This is problematic to our builds because many toolchains opt to put
build artifacts in /tmp, and expecting the host memory to be 10 times
larger is not optimal or even realistic sometimes.
This MR attempts to enlarge it to 50% memory as the host machine's
default value of /tmp. This should be a fair compromise between being
overly conservative and taking up too much memory to crash the system.
|
|
|
|
This enables DEBUG_RUSTFLAGS with the appropriate debuginfo settings.
The empty RUSTFLAGS variable is required workaround to avoid double
compilation during package function call. The issue is that the
behavior of the current implementation of buildenv_debugflags is not
idempotent, so consecutive calls will append the same flags again
leading to cargo consider the build inputs to have changed.
Signed-off-by: Levente Polyak <anthraxx@archlinux.org>
|
|
|
|
|
|
|
|
|
|
|
|
(http[s]://mirror.url/path/$arch/$repo)
|
|
We had trouble in the past with not properly initialized keyrings.
This change aims at fixing this.
|
|
|
|
--verifysource"
|
|
non-x86_64-build, so we do not use any-packages from x86_64 mirrors, and cross-mount inside to /var/cache/pacman/pkg
|
|
pacman-staging-with-build-support-i686.conf: reorder repositories and add repo build-support for i686
|
|
|