Commit graph

180 commits

Author SHA1 Message Date
Zheng Junjie
fffecf715b
gnu: %glibc-stripped: Fix cross-compiling to loongarch64.
gnu/packages/make-bootstrap.scm (%glibc-stripped)[inputs]: When target
loongarch64, Use linux-libre-headers-5.19.17.

Change-Id: I4b2b9168aa3716445d1b88b4db3dcf4ad038a45d
2025-01-25 01:05:26 +08:00
Zheng Junjie
7b64a96326
Partial revert "gnu: make-bootstrap: Update gcc-static to gcc-14, for the 64bit Hurd."
This partially reverts commit ec8a5ec15f.

This part accidentally triggered a world rebuild for non-x86 architectures.

Change-Id: Id2f9bcbcda8dc86ea407e9a7857a854dc1a742b5
2024-12-05 01:13:02 +08:00
Janneke Nieuwenhuizen
ec8a5ec15f
gnu: make-bootstrap: Update gcc-static to gcc-14, for the 64bit Hurd.
* gnu/packages/make-bootstrap.scm (%gcc-static): Use gcc-14.  Update to use
G-Expressions.
[inputs]: Remove libstdc++ and libstdc++-headers.
(%gcc-stripped): Use gcc-14.
[inputs, native-inputs]: Clear fields.

Change-Id: I4e6d779cb457b256d80d1882f182b72a6f7d2be2
2024-12-03 08:33:14 +01:00
Janneke Nieuwenhuizen
94dfb68d43
gnu: Add basic support for x86_64-pc-gnu target, aka 64bit Hurd.
* gnu/packages/bootstrap.scm (glibc-dynamic-linker): Update comment on where
to find shared linker name.
(make-raw-bag): Also use raw-build-guile3 when building for the 64bit Hurd.
* gnu/packages/cross-base.scm (cross-kernel-headers*): Use target-hurd?
instead of custom "i586..."  matching to also use xhurd-core-headers for
target-hurd64.
* gnu/packages/make-bootstrap.scm (package-with-relocatable-glibc)
[native-inputs]: Move final-inputs before cross-packages.
(%binutils-static)[arguments]: When building for the 64bit Hurd, add
"lt_cv_prog_compiler_static_works=yes", "lt_cv_prog_compiler_static_works_CXX=yes"
to #:make-flags to convince to actually link the binaries statically.
(make-guile-static)[arguments]: When building for the 64bit Hurd, add
"lt_cv_prog_compiler_static_works=yes" to #:configure-flags to convince
libtool to actually link guile statically.
* guix/platforms/x86.scm (x86_64-gnu): New exported variable.
* guix/utils.scm (target-hurd64? system-hurd64?): New procedures.
2024-12-03 08:33:12 +01:00
Tobias Geerinckx-Rice
ba5b975173
gnu: guile-static-initrd: Remove (sxml) module hierarchy.
If anything is ‘useless in an initrd’ it better be XML support.  As of
Guile 3.0.9, removing it saves 1418K bytes uncompressed, or 3% of the
total static Guile size.

* gnu/packages/make-bootstrap.scm (%guile-static-initrd): Remove sxml/.

Change-Id: I592dec18c422500eca50663256586ca92df1ac37
2024-09-08 02:00:00 +02:00
Ludovic Courtès
2c51202a2a
gnu: make-bootstrap: Ensure libm.a provides ‘fmod’ on i686.
Fixes <https://issues.guix.gnu.org/72725>.

* gnu/packages/make-bootstrap.scm (glibc-for-bootstrap)[arguments]: Add
‘apply-libm-patch’ on i686.
* gnu/packages/patches/glibc-2.39-fmod-libm-a.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.

Reported-by: Ricardo Wurmus <rekado@elephly.net>
Change-Id: Iaffba0a9f424d8d80a8a5611df2d285d7d632d99
2024-08-31 10:45:48 +02:00
Ludovic Courtès
e8a1b10c27
gnu: make-bootstrap: Fix cross-compilation of ‘%glibc-stripped’.
Previously, ‘guix build bootstrap-tarballs --target=aarch64-linux-gnu’
or similar would construct a cross-libc where ‘%current-target-system’
is set.  This would lead to a failure in the
‘add-cross-binutils-to-PATH’ phase, which assumes that
‘%current-target-system’ is #f; indeed, ‘cross-libc’ already returns a
cross libc and so ‘%current-target-system’ must be set to #f.

* gnu/packages/make-bootstrap.scm (%glibc-stripped)[inputs]: Move libc to…
[native-inputs]: … here.

Change-Id: Ifbf5e519ba3198940f4de4a36075d5302e923172
2024-08-31 10:45:45 +02:00
Ludovic Courtès
cfd67d36b5
gnu: make-bootstrap: Fix statically-linked ‘grep’ compilation.
The ‘%static-inputs’ list is used by ‘bootstrap-tarballs’ for systems
other than x86_64-linux and i686-linux.

* gnu/packages/make-bootstrap.scm (%static-inputs): Pass
‘--disable-perl-regexp’ and remove ‘--enable-perl-regexp’ for grep.

Change-Id: Id9cc8c026eee5031b00c1824624fe6da205d55eb
2024-08-31 10:45:45 +02:00
Ludovic Courtès
9fe0e5b353
gnu: make-bootstrap: Build with GCC 11 instead of GCC 7.
This fixes a glibc-for-bootstrap build issue on aarch64-linux.

* gnu/packages/make-bootstrap.scm (glibc-for-bootstrap)[native-inputs]:
Remove.
(gcc-for-bootstrap, package-with-relocatable-glibc)
(%gcc-static, %gcc-stripped): Depend on ‘gcc’ instead of ‘gcc-7’.

Reported-by: Ricardo Wurmus <rekado@elephly.net>
Change-Id: Ia7f62f9674873087aa20a9d7da8d25d94b215e5c
2024-08-31 10:45:45 +02:00
Josselin Poiret
6de53de54a
gnu: glibc-for-bootstrap: Adapt patch for glibc 2.39.
* gnu/packages/patches/glibc-2.39-bootstrap-system.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/make-bootstrap.scm (glibc-for-bootstrap): Use it for glibc 2.39.

Change-Id: I96761a0bc011af13d861bfece32d96db160f7686
2024-08-31 10:44:55 +02:00
Ludovic Courtès
77ee97628a
gnu: binutils: Use gexps.
This is the result of applying ‘guix style -S arguments’ and making
small adjustments.

* gnu/packages/base.scm (binutils)[arguments]: Use gexps.
(binutils-2.33, binutils-gold): Likewise.
* gnu/packages/commencement.scm (binutils-mesboot0, binutils-mesboot1)
(binutils-boot0, binutils-final): Likewise.
* gnu/packages/cross-base.scm (cross-binutils*): Adjust accordingly.
* gnu/packages/embedded.scm (make-propeller-binutils): Use gexps.
* gnu/packages/make-bootstrap.scm (%binutils-static): Use gexps.

Change-Id: I59cbe29760784b09e6d4e80beca9153cb9b495a7
2024-08-31 10:44:23 +02:00
Maxim Cournoyer
cf4c045ac1
gnu: %gcc-static: Import the correct set of modules.
* gnu/packages/make-bootstrap.scm (%gcc-static) [arguments]
<modules>: Replace %default-gnu-imported-modules with %default-gnu-modules.

Change-Id: I44bf99a8f1a7836352478b6f7dadc27ffb81bb51
2024-08-31 10:42:22 +02:00
Maxim Cournoyer
f59df1aa3c
build-systems: gnu: Export %default-gnu-imported-modules and %default-gnu-modules.
Until now users would have to cargo cult or inspect the private
%default-modules variable of (guix build-systems gnu) to discover which
modules to include when extending the used modules via the #:modules argument.

The renaming was automated via the command:

  $ git grep -l %gnu-build-system-modules
    | xargs sed 's/%gnu-build-system-modules/%default-gnu-imported-modules/' -i

* guix/build-system/gnu.scm (%gnu-build-system-modules): Rename to...
(%default-gnu-imported-modules): ... this.
(%default-modules): Rename to...
(%default-gnu-modules): ... this.  Export.
(dist-package, gnu-build, gnu-cross-build): Adjust accordingly.

Change-Id: Idef307fff13cb76f3182d782b26e1cd3a5c757ee
2024-08-31 10:42:16 +02:00
Ludovic Courtès
5f89f45e74
linux-initrd: Further strip the static Guile.
‘guile-static-initrd’ weighs in at 46 MiB, compared to 54 MiB for
‘guile-static-stripped’ (15% reduction).

* gnu/packages/make-bootstrap.scm (make-guile-static-stripped): Add
‘directories-to-remove’ parameter and honor it.
(%guile-static-initrd): New variable.
* gnu/system/linux-initrd.scm (expression->initrd): Default to
‘%guile-static-initrd’.
* doc/guix.texi (Initial RAM Disk): Adjust accordingly.

Change-Id: I2baf06fed7a3698433e7c83b1d7726054a8c746e
2024-04-29 22:52:08 +02:00
Janneke Nieuwenhuizen
ff690faf66
gnu: Use target-hurd?, system-hurd? instead of hurd-target?, hurd-system?.
* gnu/packages/hurd.scm (hurd-target?): Remove.
(hurd-system?): Move to...
* guix/utils.scm (system-hurd?): ...here.
* gnu/packages/*: Update all users, removing (gnu packages hurd) include where
now unused.
2023-06-17 14:38:32 +02:00
Ludovic Courtès
ca7b1e2fd7
gnu: guile-static: Switch to gexps.
* gnu/packages/make-bootstrap.scm (make-guile-static): Switch to gexps.
2023-03-30 12:44:21 +02:00
Ludovic Courtès
0c425b8d18
gnu: make-bootstrap: Fix static linking of tar.
Fixes a regression introduced in
4eda203420, which inadvertently commented
out those #:configure-flags.

* gnu/packages/make-bootstrap.scm (%static-inputs)[tar]: Reinstate
'gl_cv_func_working_mktime=yes' configure flag.
2023-03-09 18:44:12 +01:00
Ludovic Courtès
b0f1728187
gnu: guile-static: Adjust to changed input labels.
Fixes a regression introduce in
d427ec4038.

* gnu/packages/make-bootstrap.scm (make-guile-static): Replace "libgc",
not "bdw-gc".
2023-03-09 12:29:59 +01:00
Ludovic Courtès
4eda203420
gnu: static-binaries: Use gexps.
This fixes "guix build static-binaries-tarball".

* gnu/packages/make-bootstrap.scm (%static-inputs): Use gexps.
2023-02-28 17:10:40 +01:00
Jan (janneke) Nieuwenhuizen
c2167ffb97
gnu: bootstrap: mes-minimal: Remove packages and tarball.
* gnu/packages/make-bootstrap.scm (%mes-minimal, %mes-minimal-stripped,
%mes-bootstrap-tarball): Remove.
2023-02-15 09:13:36 +01:00
Jan (janneke) Nieuwenhuizen
0501136d57
gnu: bootstrap: mescc-tools-static: Remove packages and tarball.
* gnu/packages/make-bootstrap.scm (%mescc-tools-static,
%mescc-tools-static-stripped, %mescc-tools-bootstrap-tarball): Remove.
2023-02-15 09:13:34 +01:00
Jan (janneke) Nieuwenhuizen
ccb55481d4
gnu: bootstrap: bootstrap-tarballs: Remove mes and mescc-tools.
* gnu/packages/make-bootstrap.scm (%bootstrap-tarballs): Remove
%mescc-tools-bootstrap-tarball, %mes-bootstrap-tarball.
2023-02-15 09:13:31 +01:00
Efraim Flashner
4cf1acc7f3
Merge remote-tracking branch 'origin/master' into core-updates
Conflicts:
	doc/guix.texi
	gnu/local.mk
	gnu/packages/admin.scm
	gnu/packages/base.scm
	gnu/packages/chromium.scm
	gnu/packages/compression.scm
	gnu/packages/databases.scm
	gnu/packages/diffoscope.scm
	gnu/packages/freedesktop.scm
	gnu/packages/gnome.scm
	gnu/packages/gnupg.scm
	gnu/packages/guile.scm
	gnu/packages/inkscape.scm
	gnu/packages/llvm.scm
	gnu/packages/openldap.scm
	gnu/packages/pciutils.scm
	gnu/packages/ruby.scm
	gnu/packages/samba.scm
	gnu/packages/sqlite.scm
	gnu/packages/statistics.scm
	gnu/packages/syndication.scm
	gnu/packages/tex.scm
	gnu/packages/tls.scm
	gnu/packages/version-control.scm
	gnu/packages/xml.scm
	guix/build-system/copy.scm
	guix/scripts/home.scm
2023-01-30 12:39:40 +02:00
Ludovic Courtès
c2b40b4b4c
gnu: guile-static: Use 'gcc-ar' and 'gcc-ranlib'.
Fixes a regression introduced in
0e480ca7b6 whereby '%guile-static-3.0'
would fail to build with "undefined reference" errors at link time.

Fixes <https://issues.guix.gnu.org/61080>.
Reported by Hilton Chain <hako@ultrarare.space>.

* gnu/packages/make-bootstrap.scm (make-guile-static): Pass 'AR' and
'RANLIB' as #:configure-flags.
2023-01-26 23:22:34 +01:00
Maxim Cournoyer
5588d9bd7a
gnu: %guile-static-3.0: New variable.
* gnu/packages/make-bootstrap.scm (%guile-static-3.0): New variable.
(%guile-static-stripped): Use it.
2023-01-03 16:17:37 -05:00
Maxim Cournoyer
45ac52239a
gnu: %guile-static-stripped: Update to Guile 3.0.8.
* gnu/packages/make-bootstrap.scm (%guile-static-stripped): Use
guile-3.0-latest, currently at 3.0.8.  This resolves a segfault in the Guix
System Linux initrd when running Guile 3.0.7 on a Cortex A9 CPU (NXP i.MX6
Quad).
2023-01-03 16:17:37 -05:00
Marius Bakke
6703ff4d3b
gnu: glibc-for-bootstrap: Remove obsolete patch.
* gnu/packages/patches/glibc-static-nss.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/make-bootstrap.scm (glibc-for-bootstrap)[source](patches):
Remove it.
2022-09-16 22:41:22 +02:00
Marius Bakke
40f96ea667
gnu: binutils: Update to 2.38.
If this commit gives a deja vu, you are not dreaming; see commit
3e3a37b2bc.

* gnu/packages/base.scm (binutils): Update to 2.38.
[source](patches): Remove obsolete.
[arguments]: Add #:make-flags.
[properties]: New field.
(binutils+documentation): New variable.
(binutils-gold): Inherit from BINUTILS+DOCUMENTATION.
* gnu/packages/make-bootstrap.scm (%binutils-static)[arguments]: Inherit
 #:make-flags.
* gnu/packages/patches/binutils-2.37-file-descriptor-leak.patch,
gnu/packages/patches/binutils-CVE-2021-45078.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
2022-06-26 22:58:33 +02:00
Pierre Langlois
48b754553a
gnu: glibc-for-bootstrap: Build with GCC 7.
Fixes <https://issues.guix.gnu.org/52066>.

* gnu/packages/make-bootstrap.scm (glibc-for-bootstrap)[native-inputs]:
Add gcc-7.
2021-11-27 14:23:30 +00:00
Ludovic Courtès
b00fbabdf6
gnu: guile: Use 'modify-inputs' where appropriate.
* gnu/packages/guile.scm (guile-3.0)[propagated-inputs]: Use
'modify-inputs'.
(guile-3.0/libgc-7)[propagated-inputs]: Likewise.
(guile-for-guile-emacs)[native-inputs]: Likewise.
* gnu/packages/make-bootstrap.scm (make-guile-static): Likewise.
2021-09-30 00:06:30 +02:00
Ludovic Courtès
da8be73d5b
gnu: guile-static: Disable JIT on GNU/Hurd.
* gnu/packages/make-bootstrap.scm (make-guile-static): Pass
"--disable-jit" when targeting GNU/Hurd.
2021-09-30 00:06:30 +02:00
Ludovic Courtès
191c1992b8
gnu: make-bootstrap: Remove more input labels.
* gnu/packages/make-bootstrap.scm (%binutils-static-stripped)[inputs]:
Remove.
[arguments]: Turn #:builder into a gexp.
(%mes-minimal-stripped)[inputs]: Remove.
[arguments]: Turn #:builder into a gexp.
(make-guile-static-stripped): Likewise.
2021-09-30 00:06:29 +02:00
Ludovic Courtès
26d31db742
gnu: make-bootstrap: Remove input labels.
* gnu/packages/make-bootstrap.scm (%static-inputs): Remove labels.
(%static-binaries)[arguments]: Special-case 'name' for "bash-static".
(%linux-libre-headers-stripped)[inputs]: Remove label.
(%mes-minimal)[native-inputs]: Remove label.
(tarball-package)[native-inputs]: Remove labels.
[inputs]: Remove.
[arguments]: Rewrite as a gexp.
(%bootstrap-tarballs)[inputs]: Remove labels.
2021-09-30 00:06:29 +02:00
Thiago Jung Bauermann
106181c0a0
gnu: make-bootstrap: Enable tests in static gawk build.
The tests were disabled because gawk’s extension mechanism doesn’t work
when it’s built statically, and some tests fail because of that.

Another alternative is to disable the extension mechanism during
configuration time, which causes the testsuite to pass again.

* gnu/packages/make-bootstrap.scm (%static-inputs)[gawk]<#:tests?>: Remove.
<#:configure-flags>: Add.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-09-28 23:45:01 +02:00
Ludovic Courtès
7d30e6e5c2
gnu: make-bootstrap: Allow compilation of the statically-link gawk.
Previously, linking would fail due to the '-fno-common' default in GCC 10:

  ld: /gnu/store/…-glibc-2.33-static/lib/libc.a(getopt.o): in function `_getopt_internal_r':
  (.text+0x6e0): multiple definition of `_getopt_internal_r'; support/libsupport.a(getopt.o):/tmp/guix-build-gawk-5.1.0.drv-0/gawk-5.1.0/support/getopt.c:404: first defined here
  ld: /gnu/store/…-glibc-2.33-static/lib/libc.a(getopt.o): in function `_getopt_internal':

Reported by Thiago Jung Bauermann <bauermann@kolabnow.com>.

* gnu/packages/make-bootstrap.scm (%static-inputs) <gawk>: Remove
getopt.o from libsupport.a.
2021-09-28 23:45:00 +02:00
Ludovic Courtès
08005133ec
gnu: glibc-static: Fix static NSS support.
Support for static NSS broke in glibc 2.33, meaning that 'getpw' &
co. would always fail.  This patch backports the upstream fix to
reinstate it.

Reported by Marius Bakke.

* gnu/packages/patches/glibc-static-nss.patch: New file.
* gnu/packages/make-bootstrap.scm (glibc-for-bootstrap): Use it.
* gnu/local.mk (dist_patch_DATA): Add it.
2021-09-06 13:50:00 +02:00
Ludovic Courtès
da32015db0
gnu: mes-minimal-stripped: Explicitly disallow references.
* gnu/packages/make-bootstrap.scm (%mes-minimal-stripped)[arguments]:
Add #:allowed-references.
2021-07-26 13:24:28 +02:00
Ludovic Courtès
81096caf7d
gnu: mes: Switch to Guile 3.0.
* gnu/packages/mes.scm (nyacc-1.00.2)[inputs]: Change GUILE-2.2 to
GUILE-3.0.
(mes-0.19)[native-inputs]: Likewise.
* gnu/packages/make-bootstrap.scm (%mes-minimal)[native-inputs]:
Likewise.
2021-07-26 13:24:28 +02:00
Ludovic Courtès
114a9f1f80
gnu: mescc-tools: Update to 1.2.0.
Fixes <https://issues.guix.gnu.org/49515>.

* gnu/packages/mes.scm (mescc-tools-0.5.2): Remove.
(mescc-tools): Update to 1.2.0.  Use 'git-fetch'.
* gnu/packages/make-bootstrap.scm (%mescc-tools-static): Inherit from
MESCC-TOOLS rather than MESCC-TOOLS-0.5.2.
(%mes-minimal): Inherit from MES rather than MES-0.19.
[arguments]: Remove 'delete-file-recursively' for /mes/scaffold.
2021-07-26 13:24:28 +02:00
Ludovic Courtès
8b627a7701
gnu: mes-minimal: Remove unused variable.
* gnu/packages/make-bootstrap.scm (%mes-minimal): Remove unused
'triplet' variable.
2021-07-26 13:24:23 +02:00
Ludovic Courtès
0e47fcced4
Merge branch 'master' into core-updates 2021-07-18 19:50:01 +02:00
Maxime Devos
637a1e7dcc
utils: Define 'target-hurd?' predicate.
It behaves similarily to the other target-...? procedures.
The usage of hurd-triplet? / target-hurd? in libgc appears
incorrect to me, as (%current-system) is normally never false.

* gnu/packages/hurd.scm (hurd-triplet?): Move to ...
* guix/util.scm (target-hurd?): ... here, let its argument
  default to (%current-target-system) or (%current-system),
  and write a docstring.
* gnu/packages/hurd.scm
  (hurd-target?, hurd-system?): Use target-hurd? instead of
  hurd-triplet?.
* gnu/packages/bdw-gc.scm (libgc): Likewise.
* gnu/packages/cross-base.scm
  (cross-libc)[arguments]<#:configure-flags>: Likewise.
  (cross-libc)[arguments]<#:phases>: Likewise.
  (cross-libc)[arguments]<#:native-inputs>: Likewise.
* gnu/packages/make-boostrap.scm
  (%glibc-stripped)[inputs]: Likewise.

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2021-07-14 15:38:03 +02:00
Efraim Flashner
49e2e75ced
gnu: %guile-3.0-static-stripped: Rename to %guile-static-stripped.
* gnu/packages/make-bootstrap.scm (%guile-3.0-static-stripped): Rename
to %guile-static-stripped.
(%guile-bootstrap-tarball): Adjust accordingly.
* gnu/system/linux-initrd.scm (expression->initrd): Use
%guile-static-stripped as default guile.
* doc/guix.texi (initial RAM disk)[expression->initrd]: Adjust
documentation accordingly.
2021-07-08 09:39:05 +03:00
Efraim Flashner
e48cff0965
gnu: make-bootstrap: Use guile-3.0 bootstrap tarball.
* gnu/packages/make-bootstrap.scm (%guile-bootstrap-tarball): Use
guile-3.0.
(%guile-static-stripped): Remove variable.
2021-07-08 09:29:03 +03:00
Efraim Flashner
f819b46acb
gnu: make-bootstrap: Build with gcc-7.
* gnu/packages/make-bootstrap.scm (gcc-for-bootstrap)[Inherit]: Inherit
from gcc-7.
[inputs]: Use package-inputs from gcc-7.
(package-with-relocatable-glibc)[native-inputs]: Have cross-gcc use
gcc-7.
(%gcc-static)[inherit]: Inherit from gcc-7.
[arguments]: Use package-arguments from gcc-7.
[inputs]: Replace isl-0.18 with isl. Use package-inputs from gcc-7.
[native-inputs]: Use package-native-inputs from gcc-7.
(%gcc-stripped)[inherit]: Inherit from gcc-7.
2021-07-08 09:28:38 +03:00
Ludovic Courtès
dbacdb8c03
gnu: bootstrap-tarballs: Turn builder into a gexp.
* gnu/packages/make-bootstrap.scm (%bootstrap-tarballs)[arguments]: Turn
 #:builder into a gexp.
2021-07-05 23:57:20 +02:00
Ludovic Courtès
8740a62b6b
gnu: bootstrap-tarballs: Fix build.
* gnu/packages/make-bootstrap.scm (%bootstrap-tarballs)[arguments]: Make
'use-modules' the first expression.  Failing that, 'match' would not be
properly expanded when running on Guile 3.0.
2021-07-05 22:18:23 +02:00
Marius Bakke
69b048bf62
gnu: guile-static: Fix build without GMP.
* gnu/packages/make-bootstrap.scm (make-guile-static)[arguments]: Add
"--enable-mini-gmp" to #:configure-flags.
2021-05-22 17:28:37 +02:00
Marius Bakke
986e9025a5
gnu: guile-static: Remove obsolete workaround.
* gnu/packages/make-bootstrap.scm (make-guile-static)[arguments]: Don't
disable JIT on ARMv7.
2021-05-22 17:28:37 +02:00
Efraim Flashner
2aab587f84
Merge remote-tracking branch 'origin/master' into core-updates 2021-03-24 20:50:44 +02:00