arch-boxes merge requestshttps://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests2022-09-01T15:09:23Zhttps://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/183Enable systemd-time-wait-sync.service and order pacman-init.service after tim...2022-09-01T15:09:23Znl6720Enable systemd-time-wait-sync.service and order pacman-init.service after time-sync.targetIf the hardware clock is not in UTC, but instead UTC+_X_, the pacman keyring may end up with keys created in the future.
Ensure the time is synced before starting `pacman-init.service`.
This fixes the equivalent of archiso's https://git...If the hardware clock is not in UTC, but instead UTC+_X_, the pacman keyring may end up with keys created in the future.
Ensure the time is synced before starting `pacman-init.service`.
This fixes the equivalent of archiso's https://gitlab.archlinux.org/archlinux/archiso/-/issues/190 for arch-boxes.https://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/180Order pacman-init.service before archlinux-keyring-wkd-sync.service2022-09-01T14:11:40Znl6720Order pacman-init.service before archlinux-keyring-wkd-sync.service`archlinux-keyring-wkd-sync.service` will need an initialized pacman keyring to work.`archlinux-keyring-wkd-sync.service` will need an initialized pacman keyring to work.https://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/178Do not pass a keyring name to pacman-key2022-07-01T13:29:00Znl6720Do not pass a keyring name to pacman-keyIf the keyring is not specified, `pacman-key` will simply use all keyrings from `/usr/share/pacman/keyrings/`.
----
See also https://gitlab.archlinux.org/archlinux/archiso/-/merge_requests/174 & https://gitlab.archlinux.org/archlinux/a...If the keyring is not specified, `pacman-key` will simply use all keyrings from `/usr/share/pacman/keyrings/`.
----
See also https://gitlab.archlinux.org/archlinux/archiso/-/merge_requests/174 & https://gitlab.archlinux.org/archlinux/archlinux-docker/-/merge_requests/65.https://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/177Use the C.UTF-8 locale2022-06-15T20:23:04Znl6720Use the C.UTF-8 localeThe glibc 2.35-6 package ships with the `C.UTF-8` locale included.
This means there is now a UTF-8 locale available by default and `en_US.UTF-8`, which requires editing `/etc/locale.gen` and running `locale-gen`, is not needed anymore.The glibc 2.35-6 package ships with the `C.UTF-8` locale included.
This means there is now a UTF-8 locale available by default and `en_US.UTF-8`, which requires editing `/etc/locale.gen` and running `locale-gen`, is not needed anymore.https://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/172Draft: Upload release artifacts to "Generic Packages Repository"2022-05-29T14:35:00ZKristian KlausenDraft: Upload release artifacts to "Generic Packages Repository"Fix #118
---
Example: https://gitlab.archlinux.org/klausenbusk/arch-boxes/-/releases/v20210830.32835 and https://gitlab.archlinux.org/klausenbusk/arch-boxes/-/packages/366Fix #118
---
Example: https://gitlab.archlinux.org/klausenbusk/arch-boxes/-/releases/v20210830.32835 and https://gitlab.archlinux.org/klausenbusk/arch-boxes/-/packages/366https://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/175Use geo.mirror.pkgbuild.com as the default mirror2022-05-22T15:33:01Znl6720Use geo.mirror.pkgbuild.com as the default mirrorgeo.mirror.pkgbuild.com is a GeoDNS mirror that points to the sponsored mirrors.
This avoids the usage of Arch's own infrastructure (mirror.pkgbuild.com) for large downloads.
See infrastructure!522 for details.
----
Similar change was...geo.mirror.pkgbuild.com is a GeoDNS mirror that points to the sponsored mirrors.
This avoids the usage of Arch's own infrastructure (mirror.pkgbuild.com) for large downloads.
See infrastructure!522 for details.
----
Similar change was made in ci-scripts!4.https://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/174Fix output of metrics.txt2022-04-16T21:28:52ZA PFix output of metrics.txtThere was a missing `>` which resulted in the basic `qcow2` output to not show in `metrics.txt`.There was a missing `>` which resulted in the basic `qcow2` output to not show in `metrics.txt`.https://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/173Fix broken artifact links2022-03-01T23:06:14ZJosh VanderwillikFix broken artifact linksThis is my best guess fix for #145
I removed `?job=build:secure` from the URL, I'm not sure if this is important or notThis is my best guess fix for #145
I removed `?job=build:secure` from the URL, I'm not sure if this is important or nothttps://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/171Downgrade to util-linux v2.36 to workaround kernel bug2021-06-19T01:04:25ZKristian KlausenDowngrade to util-linux v2.36 to workaround kernel buglosetup (>=2.37)[1] uses the LOOP_CONFIGURE ioctl which discard support
is broken[2].
[1] https://github.com/karelzak/util-linux/pull/1152
[2] https://lore.kernel.org/linux-block/20210617221158.7045-1-kristian@klausen.dk/T/
Fix #138losetup (>=2.37)[1] uses the LOOP_CONFIGURE ioctl which discard support
is broken[2].
[1] https://github.com/karelzak/util-linux/pull/1152
[2] https://lore.kernel.org/linux-block/20210617221158.7045-1-kristian@klausen.dk/T/
Fix #138https://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/170Add a workaround for fstrim command not working in some FS2021-06-18T07:42:19ZjuaddeAdd a workaround for fstrim command not working in some FSToday build is failing when fstrim is not supported on the FS.
This workaround enables the build to continue even when trimming is failing, by having a workaround for `set -o errexit` option at the beginning.
We could also unset this pro...Today build is failing when fstrim is not supported on the FS.
This workaround enables the build to continue even when trimming is failing, by having a workaround for `set -o errexit` option at the beginning.
We could also unset this property.
Please advise if any adjustment should be done.https://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/169Fix shellcheck complains due to new version2021-05-05T23:35:01ZKristian KlausenFix shellcheck complains due to new version```
Shellcheck v0.7.2[1] added more checks resulting in the following
complains in our case:
In build-host.sh line 12:
readonly TMPDIR="$(mktemp --dry-run --directory --tmpdir="${PWD}/tmp")"
^----^ SC2155: Declare and assign...```
Shellcheck v0.7.2[1] added more checks resulting in the following
complains in our case:
In build-host.sh line 12:
readonly TMPDIR="$(mktemp --dry-run --directory --tmpdir="${PWD}/tmp")"
^----^ SC2155: Declare and assign separately to avoid masking return values.
In build-inside-vm.sh line 16:
readonly TMPDIR="$(mktemp --dry-run --directory --tmpdir="${PWD}/tmp")"
^----^ SC2155: Declare and assign separately to avoid masking return values.
In build-inside-vm.sh line 19:
chown "${SUDO_UID}:${SUDO_GID}" "${OUTPUT}" "${TMPDIR}"
^---------^ SC2153: Possible misspelling: SUDO_GID may not be assigned, but SUDO_UID is.
[1] https://github.com/koalaman/shellcheck/blob/331e89be990547b6e21ad1b6e56065bcda1ba053/CHANGELOG.md#v072---2021-04-19
```https://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/168Refer to the ArchWiki for tested cloud providers and instructions2021-03-27T16:23:01ZKristian KlausenRefer to the ArchWiki for tested cloud providers and instructionsFix #133Fix #133https://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/167Remove haveged2021-03-19T22:04:03ZKristian KlausenRemove haveged```
haveged was presumably added to increase entropy and prevent entropy
starvation.
A few things has changed since, most notable:
* the kernel actively tries to add entropy (jitter entropy)[1][2][3][4]
* /dev/random no longer blocks af...```
haveged was presumably added to increase entropy and prevent entropy
starvation.
A few things has changed since, most notable:
* the kernel actively tries to add entropy (jitter entropy)[1][2][3][4]
* /dev/random no longer blocks after CRNG initialization[5][6]
[1] https://github.com/torvalds/linux/commit/3f2dc2798b81531fd93a3b9b7c39da47ec689e55
[2] https://github.com/torvalds/linux/commit/50ee7529ec4500c88f8664560770a7a1b65db72b
[3] https://lore.kernel.org/lkml/alpine.DEB.2.21.1909290010500.2636@nanos.tec.linutronix.de/T/
[4] https://lwn.net/Articles/800509/
[5] https://github.com/torvalds/linux/commit/30c08efec8884fb106b8e57094baa51bb4c44e32
[6] https://lwn.net/Articles/808575/
```https://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/165Cleanup README2021-03-09T10:40:34ZKristian KlausenCleanup READMEhttps://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/164Fix partial upgrade in the guest2021-02-25T20:34:06ZKristian KlausenFix partial upgrade in the guestA partial upgrade is often a bad idea and can cause issue like:
qemu-img: /usr/lib/libc.so.6: version `GLIBC_2.33' not found (required by qemu-img)
cow_spacesize is bumped as upgrading can use a lot of storage.
linux is ignored as we n...A partial upgrade is often a bad idea and can cause issue like:
qemu-img: /usr/lib/libc.so.6: version `GLIBC_2.33' not found (required by qemu-img)
cow_spacesize is bumped as upgrading can use a lot of storage.
linux is ignored as we need the kernel modules for the runnig kernel to
be available.
Fix #136https://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/163Don't set initramfs compression to zstd as it's the default now[1]2021-02-20T22:53:47ZKristian KlausenDon't set initramfs compression to zstd as it's the default now[1][1] https://archlinux.org/news/moving-to-zstandard-images-by-default-on-mkinitcpio/[1] https://archlinux.org/news/moving-to-zstandard-images-by-default-on-mkinitcpio/https://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/162Dynamic allocation for file descriptors used in ./build-host.sh2021-02-16T16:08:11ZjuaddeDynamic allocation for file descriptors used in ./build-host.sh@klausenbusk would you consider it OK like that to just to use system-defined fd?
It would close #135 (that is already closed as not an arch-boxes bug)
Edit: Visual studio code had an issue with file descriptors already used by the inte...@klausenbusk would you consider it OK like that to just to use system-defined fd?
It would close #135 (that is already closed as not an arch-boxes bug)
Edit: Visual studio code had an issue with file descriptors already used by the integrated terminal. This commit asks bash to dynamically assign a "free" file descriptor to be used in the expect function.https://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/160Make disk size configurable per image2021-01-31T07:22:12ZKristian KlausenMake disk size configurable per image```
Shrink the cloud image to the bare minimum (2GB)
cloud-init resizes the disk[1] so we don't need a "big disk" with a lot
of unused space + some cloud providers charges for the unused space +
some cloud providers offers VM with disk ...```
Shrink the cloud image to the bare minimum (2GB)
cloud-init resizes the disk[1] so we don't need a "big disk" with a lot
of unused space + some cloud providers charges for the unused space +
some cloud providers offers VM with disk < 20GB.
[1] https://cloudinit.readthedocs.io/en/latest/topics/modules.html#growpart
Fix #127
```
```
Expand the basic disk image from 20G -> 40G
It is meant for local usage so the disk should be "big enough".
```https://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/161Use the fast fast-single-thread runner when using qemu for testing2021-01-31T06:54:31ZKristian KlausenUse the fast fast-single-thread runner when using qemu for testingThe fast-single-thread runner is much faster (test-cloudimg-qemu):
3min 39sec[1] vs 8min 37sec[2]
[1] https://gitlab.archlinux.org/klausenbusk/arch-boxes/-/jobs/14739
[2] https://gitlab.archlinux.org/klausenbusk/arch-boxes/-/jobs/14746The fast-single-thread runner is much faster (test-cloudimg-qemu):
3min 39sec[1] vs 8min 37sec[2]
[1] https://gitlab.archlinux.org/klausenbusk/arch-boxes/-/jobs/14739
[2] https://gitlab.archlinux.org/klausenbusk/arch-boxes/-/jobs/14746https://gitlab.archlinux.org/archlinux/arch-boxes/-/merge_requests/158Add basic image2021-01-31T05:33:43ZKristian KlausenAdd basic imageIt is similar to the cloud-image but it comes with a preconfigured arch
user (pw: arch) and lacks cloud-init.It is similar to the cloud-image but it comes with a preconfigured arch
user (pw: arch) and lacks cloud-init.