mirror of
https://codeberg.org/hako/Rosenthal.git
synced 2025-10-14 01:14:35 +00:00
ci: Attempt to fix the tarball job.
* modules/rosenthal/ci/tarball.scm (tarball-jobs): New procedure. (cuirass-jobs): Copied from Guix.
This commit is contained in:
parent
3bcfc744fe
commit
17c5c2fd78
@ -3,6 +3,7 @@
|
|||||||
;;; SPDX-License-Identifier: GPL-3.0-or-later
|
;;; SPDX-License-Identifier: GPL-3.0-or-later
|
||||||
|
|
||||||
(define-module (rosenthal ci tarball)
|
(define-module (rosenthal ci tarball)
|
||||||
|
#:use-module (srfi srfi-1)
|
||||||
#:use-module (guix derivations)
|
#:use-module (guix derivations)
|
||||||
#:use-module (guix gexp)
|
#:use-module (guix gexp)
|
||||||
#:use-module (guix monads)
|
#:use-module (guix monads)
|
||||||
@ -15,25 +16,46 @@
|
|||||||
#:use-module (rosenthal packages package-management)
|
#:use-module (rosenthal packages package-management)
|
||||||
#:export (cuirass-jobs))
|
#:export (cuirass-jobs))
|
||||||
|
|
||||||
;; Adapted from (@@ (gnu ci) tarball-jobs).
|
;; Copied from (@@ (gnu ci) tarball-jobs).
|
||||||
(define (cuirass-jobs store arguments)
|
(define (tarball-jobs store system)
|
||||||
"Return jobs to build the self-contained Guix binary tarball."
|
"Return jobs to build the self-contained Guix binary tarball."
|
||||||
(define (->job name drv)
|
(define (->job name drv)
|
||||||
(let ((name (string-append name "." system)))
|
(let ((name (string-append name "." system)))
|
||||||
(parameterize ((%graft? #f))
|
(parameterize ((%graft? #f))
|
||||||
(derivation->job name drv))))
|
(derivation->job name drv))))
|
||||||
|
|
||||||
(map (lambda (system)
|
(list
|
||||||
(->job "binary-tarball"
|
(->job "binary-tarball"
|
||||||
(run-with-store store
|
(run-with-store store
|
||||||
(mbegin %store-monad
|
(mbegin %store-monad
|
||||||
(set-guile-for-build (default-guile))
|
(set-guile-for-build (default-guile))
|
||||||
(>>= (profile-derivation (packages->manifest (list guix/dolly)))
|
(>>= (profile-derivation (packages->manifest (list guix/dolly)))
|
||||||
(lambda (profile)
|
(lambda (profile)
|
||||||
(self-contained-tarball "guix-binary" profile
|
(self-contained-tarball "guix-binary" profile
|
||||||
#:profile-name "current-guix"
|
#:profile-name "current-guix"
|
||||||
#:localstatedir? #t
|
#:localstatedir? #t
|
||||||
#:compressor
|
#:compressor
|
||||||
(lookup-compressor "xz")))))
|
(lookup-compressor "xz")))))
|
||||||
#:system system)))
|
#:system system))))
|
||||||
(arguments->systems arguments)))
|
|
||||||
|
;; Copied from (@@ (gnu ci) cuirass-jobs).
|
||||||
|
(define (cuirass-jobs store arguments)
|
||||||
|
"Register Cuirass jobs."
|
||||||
|
|
||||||
|
(define systems
|
||||||
|
(arguments->systems arguments))
|
||||||
|
|
||||||
|
;; Turn off grafts. Grafting is meant to happen on the user's machines.
|
||||||
|
(parameterize ((%graft? #f))
|
||||||
|
;; Return one job for each package, except bootstrap packages.
|
||||||
|
(append-map
|
||||||
|
(lambda (system)
|
||||||
|
(format (current-error-port)
|
||||||
|
"evaluating for '~a' (heap size: ~a MiB)...~%"
|
||||||
|
system
|
||||||
|
(round
|
||||||
|
(/ (assoc-ref (gc-stats) 'heap-size)
|
||||||
|
(expt 2. 20))))
|
||||||
|
(invalidate-derivation-caches!)
|
||||||
|
(tarball-jobs store system))
|
||||||
|
systems)))
|
||||||
|
Loading…
Reference in New Issue
Block a user