mirror of
https://codeberg.org/hako/Rosenthal.git
synced 2025-10-13 17:04:42 +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
|
||||
|
||||
(define-module (rosenthal ci tarball)
|
||||
#:use-module (srfi srfi-1)
|
||||
#:use-module (guix derivations)
|
||||
#:use-module (guix gexp)
|
||||
#:use-module (guix monads)
|
||||
@ -15,25 +16,46 @@
|
||||
#:use-module (rosenthal packages package-management)
|
||||
#:export (cuirass-jobs))
|
||||
|
||||
;; Adapted from (@@ (gnu ci) tarball-jobs).
|
||||
(define (cuirass-jobs store arguments)
|
||||
;; Copied from (@@ (gnu ci) tarball-jobs).
|
||||
(define (tarball-jobs store system)
|
||||
"Return jobs to build the self-contained Guix binary tarball."
|
||||
(define (->job name drv)
|
||||
(let ((name (string-append name "." system)))
|
||||
(parameterize ((%graft? #f))
|
||||
(derivation->job name drv))))
|
||||
|
||||
(map (lambda (system)
|
||||
(->job "binary-tarball"
|
||||
(run-with-store store
|
||||
(mbegin %store-monad
|
||||
(set-guile-for-build (default-guile))
|
||||
(>>= (profile-derivation (packages->manifest (list guix/dolly)))
|
||||
(lambda (profile)
|
||||
(self-contained-tarball "guix-binary" profile
|
||||
#:profile-name "current-guix"
|
||||
#:localstatedir? #t
|
||||
#:compressor
|
||||
(lookup-compressor "xz")))))
|
||||
#:system system)))
|
||||
(arguments->systems arguments)))
|
||||
(list
|
||||
(->job "binary-tarball"
|
||||
(run-with-store store
|
||||
(mbegin %store-monad
|
||||
(set-guile-for-build (default-guile))
|
||||
(>>= (profile-derivation (packages->manifest (list guix/dolly)))
|
||||
(lambda (profile)
|
||||
(self-contained-tarball "guix-binary" profile
|
||||
#:profile-name "current-guix"
|
||||
#:localstatedir? #t
|
||||
#:compressor
|
||||
(lookup-compressor "xz")))))
|
||||
#:system system))))
|
||||
|
||||
;; 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