summary refs log tree commit diff
diff options
context:
space:
mode:
authorXinglu Chen <public@yoctocell.xyz>2021-08-12 09:17:20 +0200
committerLudovic Courtès <ludo@gnu.org>2021-08-30 14:38:50 +0200
commit0508622848f65795d71c4dc860e0151291bff044 (patch)
tree9d8f046cfa9b0373db23a0425e186347f0b3eea3
parent99160bc71370f37b02052b51a3cd16c3b2f7af5b (diff)
downloadguix-0508622848f65795d71c4dc860e0151291bff044.tar.gz
build-system: chicken: Add 'egg-uri' procedure.
Once Chicken 6 gets released, we can just adjust the URL in the ‘egg-uri’
procedure, instead of having to change the URL for all the Chicken packages.
Making things a little more future-proof.

* guix/build-system/chicken.scm (egg-uri): New procedure.
* guix/import/egg.scm (egg-source-url): Adjust accordingly.
(egg->guix-package): Likewise.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
-rw-r--r--guix/build-system/chicken.scm10
-rw-r--r--guix/import/egg.scm5
2 files changed, 12 insertions, 3 deletions
diff --git a/guix/build-system/chicken.scm b/guix/build-system/chicken.scm
index 9abae0431a..10f1469e88 100644
--- a/guix/build-system/chicken.scm
+++ b/guix/build-system/chicken.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2020 raingloom <raingloom@riseup.net>
+;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -26,7 +27,14 @@
   #:use-module (ice-9 match)
   #:export (%chicken-build-system-modules
             chicken-build
-            chicken-build-system))
+            chicken-build-system
+            egg-uri))
+
+(define* (egg-uri name version #:optional (extension ".tar.gz"))
+  "Return a URI string for the CHICKEN egg corresponding to NAME and VERSION.
+EXTENSION is the file name extension, such as '.tar.gz'."
+  (string-append "https://code.call-cc.org/egg-tarballs/5/"
+                 name "/" name "-" version extension))
 
 (define %chicken-build-system-modules
   ;; Build-side modules imported and used by default.
diff --git a/guix/import/egg.scm b/guix/import/egg.scm
index 107894ddcf..89e7a9160d 100644
--- a/guix/import/egg.scm
+++ b/guix/import/egg.scm
@@ -87,7 +87,7 @@
 (define (egg-source-url name version)
   "Return the URL to the source tarball for version VERSION of the CHICKEN egg
 NAME."
-  (string-append (%eggs-url) "/" name "/" name "-" version ".tar.gz"))
+  `(egg-uri ,name version))
 
 (define (egg-name->guix-name name)
   "Return the package name for CHICKEN egg NAME."
@@ -197,7 +197,8 @@ not work."
              (tarball (if source
                           #f
                           (with-store store
-                            (download-to-store store source-url)))))
+                            (download-to-store
+                             store (egg-uri name version))))))
 
         (define egg-home-page
           (string-append (%eggs-home-page) "/" name))