From 317f9e4af3fed74c2ff72aab4a9a5201a12184d7 Mon Sep 17 00:00:00 2001 From: EuAndreh Date: Tue, 29 Apr 2025 08:34:58 -0300 Subject: src/guix/system.scm: Evaluate (latest ...) version of packages once on definition --- src/guix/system.scm | 44 +++++++++++++++++++++++++++----------------- 1 file changed, 27 insertions(+), 17 deletions(-) diff --git a/src/guix/system.scm b/src/guix/system.scm index 21fa753..90c2634 100644 --- a/src/guix/system.scm +++ b/src/guix/system.scm @@ -1,12 +1,12 @@ (use-modules + ((guix transformations) #:prefix transformations:) ((srfi srfi-1) #:prefix s1:) ((xyz euandreh heredoc) #:prefix heredoc:) ((org euandre papo) #:prefix papo:) ((org euandre packages) #:prefix pkg:) ((org euandre queue) #:prefix q:) (gnu) - (guix packages) - (guix transformations)) + (guix packages)) (use-package-modules version-control) (use-service-modules @@ -48,13 +48,22 @@ -(define (latest pkg) +(define (pinned-version pkg) (let* ((name (package-name pkg)) (version (file (pkg:fmt "src/versions/~a.txt" name))) - (trans-fn (options->transformation + (trans-fn (transformations:options->transformation `((with-commit . ,(pkg:fmt "~a=~a" name version)))))) (trans-fn pkg))) +(define binder (pinned-version pkg:binder)) +(define hsts (pinned-version pkg:hsts)) +(define glaze (pinned-version pkg:glaze)) +(define untls (pinned-version pkg:untls)) +(define wscat (pinned-version pkg:wscat)) +(define papod (pinned-version papo:papod)) +(define papo.im (pinned-version papo:papo.im)) +(define chat.papo.im (pinned-version papo:chat.papo.im)) + (define package-symbols @@ -62,13 +71,14 @@ (define package-records (list - (latest pkg:binder) - (latest pkg:hsts) - (latest pkg:glaze) - (latest pkg:untls) - (latest pkg:wscat) - (latest papo:papo.im) - (latest papo:chat.papo.im))) + binder + hsts + glaze + untls + wscat + papod + papo.im + chat.papo.im)) (define binder-service-type @@ -128,22 +138,22 @@ (service dhcp-client-service-type) (service binder-service-type (pkg:binder-configuration - (package (latest pkg:binder)))) + (package binder))) (service hsts-service-type (pkg:hsts-configuration - (package (latest pkg:hsts)))) + (package hsts))) (service glaze-service-type (pkg:glaze-configuration - (package (latest pkg:glaze)))) + (package glaze))) (service untls-service-type (pkg:untls-configuration - (package (latest pkg:untls)))) + (package untls))) (service pkg:wscat-service-type (pkg:wscat-configuration - (package (latest pkg:wscat)))) + (package wscat))) (service papod-service-type (papo:papod-configuration - (package (latest papo:papod)))) + (package papod))) (service knot-service-type (q:knot-zones-configuration +tld+ +ipv4+ +ipv6+)) (service openssh-service-type -- cgit v1.2.3