aboutsummaryrefslogtreecommitdiff
path: root/tests/guix-git-authenticate.sh
blob: 2b90d8a4afeeb55a18315d8bd667fd074c87d567 (about) (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
# GNU Guix --- Functional package management for GNU
# Copyright © 2020, 2022 Ludovic Courtès <ludo@gnu.org>
#
# This file is part of GNU Guix.
#
# GNU Guix is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or (at
# your option) any later version.
#
# GNU Guix is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.

#
# Test the 'guix git authenticate' command-line utility.
#

# Skip if we're not in a Git checkout.
[ -d "$abs_top_srcdir/.git" ] || exit 77

# Skip if there's no 'keyring' branch.
guile -c '(use-modules (git))
  (member "refs/heads/keyring" (branch-list (repository-open ".")))' || \
    exit 77

# Keep in sync with '%default-channels' in (guix channels)!
intro_commit="9edb3f66fd807b096b48283debdcddccfea34bad"
intro_signer="BBB0 2DDF 2CEA F6A8 0D1D  E643 A2A0 6DF2 A33A 54FA"

cache_key="test-$$"

# This must fail because the end commit is not a descendant of $intro_commit.
! guix git authenticate "$intro_commit" "$intro_signer"	\
     --cache-key="$cache_key" --stats			\
     --end=9549f0283a78fe36f2d4ff2a04ef8ad6b0c02604

# The v1.2.0 commit is a descendant of $intro_commit and it satisfies the
# authorization invariant.
v1_2_0_commit="a099685659b4bfa6b3218f84953cbb7ff9e88063"
guix git authenticate "$intro_commit" "$intro_signer"	\
     --cache-key="$cache_key" --stats			\
     --end="$v1_2_0_commit"

rm "$XDG_CACHE_HOME/guix/authentication/$cache_key"

# Commit and signer of the 'v1.0.0' tag.
v1_0_0_commit="6298c3ffd9654d3231a6f25390b056483e8f407c"
v1_0_0_signer="3CE4 6455 8A84 FDC6 9DB4  0CFB 090B 1199 3D9A EBB5" # civodul
v1_0_1_commit="d68de958b60426798ed62797ff7c96c327a672ac"

# This should succeed because v1.0.0 is an ancestor of $intro_commit.
guix git authenticate "$intro_commit" "$intro_signer"	\
     --cache-key="$cache_key" --stats			\
     --end="$v1_0_0_commit"

# This should fail because these commits lack '.guix-authorizations'.
! guix git authenticate "$v1_0_0_commit" "$v1_0_0_signer" \
       --cache-key="$cache_key" --end="$v1_0_1_commit"

# This should work thanks to '--historical-authorizations'.
guix git authenticate "$v1_0_0_commit" "$v1_0_0_signer" 	\
     --cache-key="$cache_key" --end="$v1_0_1_commit" --stats	\
     --historical-authorizations="$abs_top_srcdir/etc/historical-authorizations"
td>Arun Isaac 2024-03-10gnu: python-docker: Update to 7.0.0....* gnu/packages/docker.scm (python-docker): Update to 7.0.0. [native-inputs]: Add python-setuptools-scm. [propagated-inputs]: Add python-packaging. Change-Id: I1c23575836689e9bcdbcea22ea9d84520b0353a0 Arun Isaac 2024-02-13gnu: go-golang-org-x-sys: Move to golang-build....* gnu/packages/golang.scm (go-golang-org-x-sys): Move from here ... * gnu/packages/golang-build.scm: ... to here. * gnu/packages/curl.scm: Add (gnu packages golang-build) module. * gnu/packages/databases.scm: As above. * gnu/packages/docker.scm: As above. * gnu/packages/golang-build.scm: As above. * gnu/packages/golang.scm: As above. * gnu/packages/irc.scm: As above. * gnu/packages/linux.scm: As above. * gnu/packages/password-utils.scm: As above. * gnu/packages/syncthing.scm: As above. * gnu/packages/textutils.scm: As above. * gnu/packages/vpn.scm: As above. * gnu/packages/weather.scm: As above. * gnu/packages/web.scm: As above. Change-Id: I161e89cacb9aa87b4fbb643ecd9ad32cfe49c9d7 Sharlatan Hellseher 2024-01-13gnu: docker: Update to 20.10.27....Fixes <https://issues.guix.gnu.org/68053>. * gnu/packages/docker.scm (%docker-version): Update to 20.10.27. (docker-libnetwork): Update to 20.10-3.3797618. (docker)[native-inputs]: Replace go-1.19 with go-1.20. Change-Id: Ie4cc54f62c89f3a6c83969d1e7e425189c370482 Signed-off-by: Hilton Chain <hako@ultrarare.space> Christian Miller 2023-11-29gnu: docker-libnetwork-cmd-proxy: Skip tests on most architectures....* gnu/packages/docker.scm (docker-libnetwork-cmd-proxy)[arguments]: Skip the tests unless building on x86_64-linux and not cross-building. Change-Id: I35028bd728920840370fe641240053baa3a4585f Efraim Flashner ix/commit/gnu/packages/ebook.scm?id=d6ef422fe72a188361cf1779d27934a7787ad3d2'>gnu: Add fbreader....* gnu/packages/ebook.scm (fbreader): New variable. Danny Milosavljevic 2017-08-17gnu: Add liblinebreak....* gnu/packages/ebook.scm (liblinebreak): New variable. Danny Milosavljevic 2017-08-02gnu: calibre: Add python2-msgpack as an input....* gnu/packages/ebook.scm (calibre)[inputs]: Add python2-msgpack. Manolis Ragkousis 2017-06-22gnu: Update calibre to 3.0.0....* gnu/local.mk: Remove patch. * gnu/packages/ebook.scm (calibre): Update to 3.0.0. * gnu/packages/patches/calibre-dont-load-remote-icons.patch: Remove file. Roel Janssen 2017-05-19gnu: calibre: Don't create uninstaller....* gnu/packages/ebook.scm (calibre)[arguments]<#:phases>. Add 'patch-source' phase. Co-authored-by: Marius Bakke <mbakke@fastmail.com> Brendan Tildesley 2017-05-19gnu: calibre: Add exhaustive license list....* gnu/packages/ebook.scm (calibre): Add exhaustive license list. (chmlib)[license]: Use license: prefix. Co-authored-by: Marius Bakke <mbakke@fastmail.com> Brendan Tildesley 2017-05-19gnu: calibre: Add missing dependencies....* gnu/packages/ebook.scm (calibre)[inputs]: Add poppler, python2-dnspython, and python2-pygments. [arguments]: Remove old TODO comments. libwmf and psutil are no longer used. Signed-off-by: Marius Bakke <mbakke@fastmail.com> Brendan Tildesley 2017-05-19gnu: calibre: Unbundle chardet....* gnu/packages/ebook.scm (calibre)[source]: Delete bundled chardet. [inputs]: Add python2-chardet. Signed-off-by: Marius Bakke <mbakke@fastmail.com> Brendan Tildesley 2017-05-19gnu: calibre: Unbundle liberation fonts....*gnu/packages/ebook.scm (calibre)[source]: Delete liberation .ttf files. [native-inputs]: Add font-liberation. [arguments]: Calibre still references the bundled fonts, so we install the packaged fonts to the directory the bundled fonts would have been. Signed-off-by: Marius Bakke <mbakke@fastmail.com> Brendan Tildesley 2017-05-19gnu: calibre: Unbundle python2-markdown....* gnu/packages/ebook.scm (calibre)[snippet]: Replace python references to bundled markdown with packaged. Remove markdown from source. [inputs]: Add python2-markdown as a dependency. Signed-off-by: Marius Bakke <mbakke@fastmail.com> Brendan Tildesley 2017-05-19gnu: calibre: Import unbundle feedparser patch from debian....* gnu/packages/ebook.scm (calibre)[source]: Reference new patch file. [inputs]: Add python2-feedparser as an input. * gnu/packages/patches/calibre-use-packaged-feedparser.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. Signed-off-by: Marius Bakke <mbakke@fastmail.com> Brendan Tildesley 2017-05-19gnu: calibre: Import dont-load-icons patch from debian....* gnu/packages/patches/calibre-dont-load-remote-icons.patch: New file. * gnu/packages/ebooks.scm (calibre)[source]: Add reference to patch file. * gnu/local.mk (dist_path_DATA): Add it. Signed-off-by: Marius Bakke <mbakke@fastmail.com> Brendan Tildesley 2017-05-19gnu: calibre: Update to 2.85.1....* gnu/packages/ebooks.scm (calibre): Update to 2.85.1. * gnu/packages/patches/calibre-drop-unrar.patch: Delete incompatible patch file. Recreate debian patch file from the latest calibre git revision. Signed-off-by: Marius Bakke <mbakke@fastmail.com> Brendan Tildesley 2017-01-04gnu: calibre: Update to 2.76.0....* gnu/packages/ebook.scm (calibre): Update to 2.76.0. Signed-off-by: Leo Famulari <leo@famulari.name> Alex Griffin 2016-12-12gnu: calibre: Update to 2.74.0....* gnu/packages/ebook.scm (calibre): Update to 2.74.0. Efraim Flashner 2016-12-12gnu: calibre: Update qt dependancies....* gnu/packages/ebook.scm (calibre)[native-inputs]: Remove qt, add qtbase. [inputs]: Remove qt, replace python2-pyqt@5.5 with python2-pyqt. Efraim Flashner 2016-12-02gnu: calibre: Do not use python setuptools for building....* gnu/packages/ebook.scm (calibre)[arguments]: Set #:use-setuptools? to false. Hartmut Goebel 2016-07-27gnu: calibre: Update to 2.63.0....* gnu/packages/ebook.scm (calibre): Update to 2.63.0. [inputs]: Remove unnecessary imagemagick dependency. [phases]: Use modify-phases. * gnu/packages/patches/calibre-drop-unrar.patch: Update for new version. Signed-off-by: Roel Janssen <roel@gnu.org> Alex Griffin 2016-07-26gnu: calibre: Build with non-modular Qt....* gnu/packages/ebook.scm (calibre)[native-inputs]: Replace QTBASE by QT. [inputs]: Replace QTBASE by QT and PYTHON2-PYQT by PYTHON2-PYQT-5.5. This essentially reverts commit 76806c54ed72f8f04079bbb187b186b833c103e1. Reported by Roel Janssen <roel@gnu.org>. Andreas Enge 2016-07-19gnu: calibre: Update to 2.62.0....* gnu/packages/ebook.scm (calibre): Update to 2.62.0. Efraim Flashner 2016-06-16gnu: calibre: Build with qtbase....* gnu/packages/ebook.scm (calibre)[inputs]: Remove qt, add qtbase. [native-inputs]: Remove qt, add qtbase. Efraim Flashner 2016-06-06gnu: calibre: Update to 2.58.0....* gnu/packages/ebook.scm (calibre): Update to 2.58.0. Efraim Flashner 2016-04-14gnu: packages: Use 'search-patches' everywhere....* gnu/packages/abiword.scm: Use 'search-patches' for 'patches' field. * gnu/packages/acl.scm: Likewise. * gnu/packages/admin.scm: Likewise. * gnu/packages/algebra.scm: Likewise. * gnu/packages/animation.scm: Likewise. * gnu/packages/apr.scm: Likewise. * gnu/packages/audacity.scm: Likewise. * gnu/packages/audio.scm: Likewise. * gnu/packages/autotools.scm: Likewise. * gnu/packages/avahi.scm: Likewise. * gnu/packages/backup.scm: Likewise. * gnu/packages/base.scm: Likewise. * gnu/packages/bash.scm: Likewise. * gnu/packages/bioinformatics.scm: Likewise. * gnu/packages/cdrom.scm: Likewise. * gnu/packages/ci.scm: Likewise. * gnu/packages/cmake.scm: Likewise. * gnu/packages/cpio.scm: Likewise. * gnu/packages/cross-base.scm: Likewise. * gnu/packages/dico.scm: Likewise. * gnu/packages/doxygen.scm: Likewise. * gnu/packages/ebook.scm: Likewise. * gnu/packages/elf.scm: Likewise. * gnu/packages/emacs.scm: Likewise. * gnu/packages/engineering.scm: Likewise. * gnu/packages/firmware.scm: Likewise. * gnu/packages/flashing-tools.scm: Likewise. * gnu/packages/fltk.scm: Likewise. * gnu/packages/ftp.scm: Likewise. * gnu/packages/games.scm: Likewise. * gnu/packages/gawk.scm: Likewise. * gnu/packages/gcc.scm: Likewise. * gnu/packages/gd.scm: Likewise. * gnu/packages/ghostscript.scm: Likewise. * gnu/packages/glib.scm: Likewise. * gnu/packages/gnome.scm: Likewise. * gnu/packages/gnucash.scm: Likewise. * gnu/packages/gnunet.scm: Likewise. * gnu/packages/gnupg.scm: Likewise. * gnu/packages/gnuzilla.scm: Likewise. * gnu/packages/graphics.scm: Likewise. * gnu/packages/grub.scm: Likewise. * gnu/packages/gtk.scm: Likewise. * gnu/packages/guile.scm: Likewise. * gnu/packages/icu4c.scm: Likewise. * gnu/packages/idutils.scm: Likewise. * gnu/packages/image.scm: Likewise. * gnu/packages/imagemagick.scm: Likewise. * gnu/packages/irc.scm: Likewise. * gnu/packages/ldc.scm: Likewise. * gnu/packages/libcanberra.scm: Likewise. * gnu/packages/libevent.scm: Likewise. * gnu/packages/libreoffice.scm: Likewise. * gnu/packages/libunwind.scm: Likewise. * gnu/packages/libusb.scm: Likewise. * gnu/packages/linux.scm: Likewise. * gnu/packages/lirc.scm: Likewise. * gnu/packages/llvm.scm: Likewise. * gnu/packages/lsh.scm: Likewise. * gnu/packages/lua.scm: Likewise. * gnu/packages/lxqt.scm: Likewise. * gnu/packages/mail.scm: Likewise. * gnu/packages/maths.scm: Likewise. * gnu/packages/mcrypt.scm: Likewise. * gnu/packages/messaging.scm: Likewise. * gnu/packages/mit-krb5.scm: Likewise. * gnu/packages/mp3.scm: Likewise. * gnu/packages/multiprecision.scm: Likewise. * gnu/packages/music.scm: Likewise. * gnu/packages/ninja.scm: Likewise. * gnu/packages/nvi.scm: Likewise. * gnu/packages/ocaml.scm: Likewise. * gnu/packages/orpheus.scm: Likewise. * gnu/packages/ots.scm: Likewise. * gnu/packages/parallel.scm: Likewise. * gnu/packages/patchutils.scm: Likewise. * gnu/packages/pcre.scm: Likewise. * gnu/packages/pdf.scm: Likewise. * gnu/packages/perl.scm: Likewise. * gnu/packages/plotutils.scm: Likewise. * gnu/packages/polkit.scm: Likewise. * gnu/packages/pulseaudio.scm: Likewise. * gnu/packages/python.scm: Likewise. * gnu/packages/qemu.scm: Likewise. * gnu/packages/qt.scm: Likewise. * gnu/packages/ratpoison.scm: Likewise. * gnu/packages/rdf.scm: Likewise. * gnu/packages/readline.scm: Likewise. * gnu/packages/rush.scm: Likewise. * gnu/packages/scheme.scm: Likewise. * gnu/packages/screen.scm: Likewise. * gnu/packages/sdl.scm: Likewise. * gnu/packages/slim.scm: Likewise. * gnu/packages/ssh.scm: Likewise. * gnu/packages/tcl.scm: Likewise. * gnu/packages/tcsh.scm: Likewise. * gnu/packages/texinfo.scm: Likewise. * gnu/packages/tls.scm: Likewise. * gnu/packages/tor.scm: Likewise. * gnu/packages/tv.scm: Likewise. * gnu/packages/valgrind.scm: Likewise. * gnu/packages/version-control.scm: Likewise. * gnu/packages/video.scm: Likewise. * gnu/packages/vpn.scm: Likewise. * gnu/packages/vtk.scm: Likewise. * gnu/packages/w3m.scm: Likewise. * gnu/packages/web.scm: Likewise. * gnu/packages/wicd.scm: Likewise. * gnu/packages/wm.scm: Likewise. * gnu/packages/xdisorg.scm: Likewise. * gnu/packages/xfce.scm: Likewise. * gnu/packages/xiph.scm: Likewise. * gnu/packages/xml.scm: Likewise. * gnu/packages/xorg.scm: Likewise. * gnu/packages/zip.scm: Likewise. Alex Kost