In addition to substitutes from ci.guix.gnu.org. There are more changes that
can be made in the future, but these changes seem like a good start.
* config-daemon.ac (guix_substitute_urls): Add https://bordeaux.guix.gnu.org.
* guix/scripts/substitute.scm (%default-substitute-urls): Add
http://bordeaux.guix.gnu.org.
* guix/store.scm (%default-substitute-urls): Add bordeaux.guix.gnu.org.
* doc/guix.texi: Adjust accordingly.
* doc/contributing.texi: Adjust accordingly.
The previous instructions were correct, but we got too many bug reports
with a root cause of "did not build Guix yet".
Other parts of the manual already instruct `make && make check`, so this
makes the treatment of building Guix more consistent, too.
* doc/contributing.texi (Building from Git): Instruct the user to run
`make` when building Guix.
2021-04-04 13:34:30 -04:00
Tobias Geerinckx-Rice via Bug reports for GNU Guix
For more context, see the discussion in <https://bugs.gnu.org/47111>.
* doc/contributing.texi (Commit Access): Add paragraph about removing
inactive committers.
Fixes <https://issues.guix.gnu.org/36117>.
Before this change, the 'binfmt_misc' entries registered for QEMU would not be
usable in container contexts outside of guix-daemon (without manually bind
mounting file names).
For example:
$ docker run --rm arm32v7/debian true
standard_init_linux.go:207: exec user process caused "no such file or directory"
After this change, any container can make use of the QEMU binfmt_misc
registrations, as their corresponding QEMU static binaries are fully
pre-loaded by the kernel.
* gnu/services/virtualization.scm (<qemu-platform>): Define using
'define-record-type*'.
[flags]: New field, which defaults to "F" (fix binary).
(%i386, %i486, %alpha, %arm, %armeb, %sparc, %sparc32plus, %ppc, %ppc64)
(%ppc64le, %m68k, %mips, %mipsel, %mipsn32, %mipsn32el, %mips64, %mips64el)
(%riscv32, %riscv64, %sh4, %sh4eb, %s390x, %aarch64, %hppa): Adjust.
(qemu-binfmt-guix-chroot): Remove variable.
(qemu-binfmt-service-type): Remove the qemu-binfmt-guix-chroot extension.
* gnu/services/qemu-binfmt (qemu-platform->binfmt): Use the static output of
QEMU.
* doc/contributing.texi (Submitting Patches): Update doc.
* doc/guix.texi (Virtualization Services): Update doc.
* doc/contributing.texi: Replace link to TP with a link to Weblate.
* doc/guix.texi: Replace link to TP with a link to Weblate.
* doc/guix-cookbook.texi: Replace link to TP with a link to Weblate.
* doc/contributing.texi (Running Guix Before It Is Installed): Instruct
user to run ./bootstrap before ./configure.
Signed-off-by: Jakub Kądziołka <kuba@kadziolka.net>
Following discussions in <https://issues.guix.gnu.org/43893>, keeping a copy
of the updated package source is desirable when generating a release.
* build-aux/update-guix-package.scm (version-controlled?): Remove variable.
(call-with-temporary-git-worktree): Renamed from
'with-temporary-git-worktree'. Update doc. Do not change directory
implicitly. Define as a procedure, not a syntax.
(keep-source-in-store): New procedure.
(main): Adjust to use with call-with-temporary-git-worktree. Add the sources
to the store when GUIX_ALLOW_ME_TO_USE_PRIVATE_COMMIT is set. Exit gracefully
when FIND-ORIGIN-REMOTE returns #f.
(%savannah-guix-git-repo-push-url-regexp): Adjust match for a potential colon
separator.
* Makefile.am (GUIX_ALLOW_ME_TO_USE_PRIVATE_COMMIT): Adjust.
* .dir-locals.el (scheme-mode): Remove entry for with-temporary-git-worktree.
* doc/contributing.texi (Updating the Guix Package): Update doc.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
* Makefile.am (GUIX_GIT_KEYRING): New variable.
(authenticate): Use GUIX_GIT_KEYRING to select the keyring branch
reference.
* doc/contributing.texi (Building from Git): Add an example about the
use of GUIX_GIT_KEYRING.
* doc/guix.texi (G-Expressions): Use @lisp for 'let-system' example.
* doc/contributing.texi (Synopses and Descriptions): Use @lisp for
second example.
Fixes <https://issues.guix.gnu.org/43893>.
This changes the 'update-guix-package' tool so that it:
1. Always uses a clean checkout to compute the hash of the updated 'guix'
package.
2. Ensures the commit used in the updated 'guix' package definition has already
been pushed upstream.
* build-aux/update-guix-package.scm (%savannah-guix-git-repo-push-url): New
variable.
(with-input-pipe-to-string, with-temporary-git-worktree): New syntaxes.
(find-origin-remote, git-add-worktree): New procedures.
(commit-already-pushed?): New predicate.
(main): Check the commit used has already been pushed upstream and compute the
hash from a clean checkout.
* doc/contributing.texi (Updating the Guix Package): Document it.
* .dir-locals.el (scheme-mode): Fix indentation of with-temporary-git-worktree.
Suggested by Emmanuel Agullo.
* doc/contributing.texi (Running Guix Before It Is Installed): Move the
"./pre-inst-env guix-daemon" snippet at the bottom. Make it clear that
it's necessary only when hacking on guix-daemon or when guix-daemon is
not already running.
* doc/contributing.texi (Building from Git): Instruct the user to fetch
the 'keyring' branch. Fix a typo.
Signed-off-by: Leo Famulari <leo@famulari.name>
The amount of packages has more than tripled since this section was written.
Adjust the rebuild limits and cycle lengths based on current practices.
* doc/contributing.texi (Submitting Patches): Increase 'staging' rebuild limit
to 1800 packages, and adjust the cycle to six weeks. Increase 'core-updates'
cycle to six months.
It's been a good run, but no one is maintaining the architecture.
So long, and thanks for all the fish.
* doc/guix.texi (GNU Distribution): Change text for mips64el-linux
to denote it is deprecated.
(Daemon Offload Setup): Change occurrences of mips64el-linux to
aarch64-linux and adjust local code snippets.
(Guix Environment)[cross-compilation]: Change mips64el-linux-gnu to
aarch64-linux-gnu.
(GNU Build System)(package-cross-derivation]: Same.
(G-Expressions)[cross compilation]: Same.
(Additional Build Options)[cross-compilation, build logs]: Same.
(qemu-binfmt-service-type): Remove mips64el.
* doc/contributing.texi (Submitting Patches): Same.
* m4/guix.m4: (GUIX_ASSERT_SUPPORTED_SYSTEM): Remove mips64el-linux.