summary refs log tree commit diff
path: root/guix/git.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2020-05-06 22:45:31 +0200
committerLudovic Courtès <ludo@gnu.org>2020-05-07 10:06:15 +0200
commit053b10c3ef2df7ea80556ab9b2c93d0bf88094f2 (patch)
tree6d3bbcd545f2590a879a066010df9ef8fa157cc7 /guix/git.scm
parent4ba425060a9d000f54bbab99d17a2f23b277c623 (diff)
downloadguix-053b10c3ef2df7ea80556ab9b2c93d0bf88094f2.tar.gz
channels: Add mechanism to patch checkouts of the 'guix channel.
* guix/channels.scm (<patch>): New record type.
(apply-patches): New procedure.
(latest-channel-instance)[dot-git?]: New procedure.
Use 'update-cached-checkout' and 'add-to-store' instead of
'latest-repository-commit'.  Call 'apply-patches' when CHANNEL is the
'guix channel.
(%patches): New variable.
* guix/git.scm (url+commit->name): Make public.
* tests/channels.scm ("latest-channel-instances includes channel dependencies")
("latest-channel-instances excludes duplicate channel dependencies"):
Mock 'update-cached-checkout' instead of 'latest-repository-commit'.
Wrap body in 'with-store' and pass the store to 'latest-channel-instances'.
Diffstat (limited to 'guix/git.scm')
-rw-r--r--guix/git.scm1
1 files changed, 1 insertions, 0 deletions
diff --git a/guix/git.scm b/guix/git.scm
index 5fffd429bd..92121156cf 100644
--- a/guix/git.scm
+++ b/guix/git.scm
@@ -40,6 +40,7 @@
 
             with-repository
             update-cached-checkout
+            url+commit->name
             latest-repository-commit
             commit-difference