Not sent upstream. From e23de62e28f64599148ff06e439fac116a391299 Mon Sep 17 00:00:00 2001 From: "Jan (janneke) Nieuwenhuizen" Date: Fri, 10 Apr 2020 07:24:48 +0200 Subject: [PATCH] guile: Cross build fix. To cross-build, both the host guile and the native guile-for-build must be available. If the native guile is not available, no snarfing is done and the guile cross build is skipped. During the cross-build gnutls.scm does not load when compliling extra.scm, becase of missing definitions from guile-gnutls-v-2. * guile/modules/gnutls.in (protocol/ssl-3 protocol/tls-1.0, protocol/tls-1.1, credentials/anonymous, cipher/rijndael-256-cbc, cipher/rijndael-128-cbc, cipher/rijndael-cbc, cipher/arcfour-128, certificate-verify/allow-any-x509-v1-ca-certificate, certificate-verify/allow-x509-v1-ca-certificate): Define to #f initially. When "GNUTLS_GUILE_CROSS_COMPILING" not set, set! to value from "guile-gnutls-v-2" load-extension C module. --- guile/modules/gnutls.in | 40 +++++++++++++++++++++++++++------------- 1 file changed, 27 insertions(+), 13 deletions(-) diff --git a/guile/modules/gnutls.in b/guile/modules/gnutls.in index 6461c404a..954e315de 100644 --- a/guile/modules/gnutls.in +++ b/guile/modules/gnutls.in @@ -564,22 +564,36 @@ This defines 'variable' as an alias for 'alias', and emits a warning when (identifier? #'id) #'alias)))))))))) - ;; Renaming. -(define protocol/ssl-3 protocol/ssl3) -(define protocol/tls-1.0 protocol/tls1-0) -(define protocol/tls-1.1 protocol/tls1-1) +(define protocol/ssl-3 #f) +(define protocol/tls-1.0 #f) +(define protocol/tls-1.1 #f) ;; Aliases. -(define credentials/anonymous credentials/anon) -(define cipher/rijndael-256-cbc cipher/aes-256-cbc) -(define cipher/rijndael-128-cbc cipher/aes-128-cbc) -(define cipher/rijndael-cbc cipher/aes-128-cbc) -(define cipher/arcfour-128 cipher/arcfour) -(define certificate-verify/allow-any-x509-v1-ca-certificate - certificate-verify/allow-any-x509-v1-ca-crt) -(define certificate-verify/allow-x509-v1-ca-certificate - certificate-verify/allow-x509-v1-ca-crt) +(define credentials/anonymous #f) +(define cipher/rijndael-256-cbc #f) +(define cipher/rijndael-128-cbc #f) +(define cipher/rijndael-cbc #f) +(define cipher/arcfour-128 #f) +(define certificate-verify/allow-any-x509-v1-ca-certificate #f) +(define certificate-verify/allow-x509-v1-ca-certificate #f) + +(unless (getenv "GNUTLS_GUILE_CROSS_COMPILING") + ;; Renaming. + (set! protocol/ssl-3 protocol/ssl3) + (set! protocol/tls-1.0 protocol/tls1-0) + (set! protocol/tls-1.1 protocol/tls1-1) + + ;; Aliases. + (set! credentials/anonymous credentials/anon) + (set! cipher/rijndael-256-cbc cipher/aes-256-cbc) + (set! cipher/rijndael-128-cbc cipher/aes-128-cbc) + (set! cipher/rijndael-cbc cipher/aes-128-cbc) + (set! cipher/arcfour-128 cipher/arcfour) + (set! certificate-verify/allow-any-x509-v1-ca-certificate + certificate-verify/allow-any-x509-v1-ca-crt) + (set! certificate-verify/allow-x509-v1-ca-certificate + certificate-verify/allow-x509-v1-ca-crt)) ;; Deprecated OpenPGP bindings. (define-deprecated certificate-type/openpgp) -- 2.26.0 -passwd with duplicate entry"): New test. Ludovic Courtès 2019-06-27accounts: Use 'fsync' instead of 'fdatasync'....* gnu/build/accounts.scm (catch-ENOSYS): Remove. (database-writer): Use 'fsync' instead of 'fdatasync'. Ludovic Courtès 2019-06-05accounts: Call 'fdatasync' when writing databases....* gnu/build/accounts.scm (catch-ENOSYS): New macro. (database-writer): Call 'fdatasync'. Ludovic Courtès 2019-06-05accounts: Close database before renaming it....Fixes <https://bugs.gnu.org/35996>. Reported by Florian Pelz <pelzflorian@pelzflorian.de>. * gnu/build/accounts.scm (database-writer): Move 'close-port' call before 'rename-file'. Ludovic Courtès 2019-06-05activation: Lock /etc/.pwd.lock before accessing databases....Suggested by Florian Pelz <pelzflorian@pelzflorian.de> in <http://bugs.gnu.org/35996>. * gnu/build/accounts.scm (%password-lock-file): New variable. * gnu/build/activation.scm (activate-users+groups): Wrap calls to 'user+group-databases', 'write-group', etc. into 'with-file-lock'. Ludovic Courtès 2019-04-26accounts: Always honor the configured user account shell....Starting from commit 0ae735bcc8ff7fdc89d67b492bdee9091ee19e86, Guix System would preserve the user shell across reconfigure and reboot. This was done so as to allow for the use of 'chsh'. This proved to be a misguided decision. This commit goes back to considering user shells as config and not "state." * gnu/build/accounts.scm (allocate-passwd): Do not use shell from PREVIOUS. Ludovic Courtès 2019-03-07Add (gnu build accounts)....* gnu/build/accounts.scm, tests/accounts.scm: New files. * Makefile.am (SCM_TESTS): Add tests/accounts.scm. * gnu/local.mk (GNU_SYSTEM_MODULES): Add build/accounts.scm. Ludovic Courtès