# GNU Guix --- Functional package management for GNU
-# Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
+# Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2013 Andreas Enge <andreas@enge.fr>
# Copyright © 2015, 2017 Alex Kost <alezost@gmail.com>
# Copyright © 2016, 2018 Mathieu Lirzin <mthl@gnu.org>
guix/build-system/meson.scm \
guix/build-system/minify.scm \
guix/build-system/asdf.scm \
+ guix/build-system/copy.scm \
guix/build-system/glib-or-gtk.scm \
guix/build-system/gnu.scm \
guix/build-system/guile.scm \
guix/build-system/perl.scm \
guix/build-system/python.scm \
guix/build-system/ocaml.scm \
+ guix/build-system/qt.scm \
guix/build-system/waf.scm \
guix/build-system/r.scm \
guix/build-system/rakudo.scm \
guix/build/go-build-system.scm \
guix/build/asdf-build-system.scm \
guix/build/bzr.scm \
+ guix/build/copy-build-system.scm \
guix/build/git.scm \
guix/build/hg.scm \
guix/build/glib-or-gtk-build-system.scm \
guix/build/perl-build-system.scm \
guix/build/python-build-system.scm \
guix/build/ocaml-build-system.scm \
+ guix/build/qt-build-system.scm \
guix/build/r-build-system.scm \
guix/build/rakudo-build-system.scm \
guix/build/ruby-build-system.scm \
guix/scripts/remove.scm \
guix/scripts/upgrade.scm \
guix/scripts/search.scm \
+ guix/scripts/show.scm \
guix/scripts/gc.scm \
guix/scripts/hash.scm \
guix/scripts/pack.scm \
guix/scripts/container.scm \
guix/scripts/container/exec.scm \
guix/scripts/deploy.scm \
+ guix/scripts/time-machine.scm \
guix.scm \
$(GNU_SYSTEM_MODULES)
MODULES += $(STORE_MODULES)
# Internal modules with test suite support.
-dist_noinst_DATA = guix/tests.scm guix/tests/http.scm
+dist_noinst_DATA = \
+ guix/tests.scm \
+ guix/tests/http.scm \
+ guix/tests/git.scm
# Auxiliary files for packages.
AUX_FILES = \
gnu/packages/aux-files/chromium/master-preferences.json \
gnu/packages/aux-files/emacs/guix-emacs.el \
- gnu/packages/aux-files/linux-libre/5.2-arm.conf \
- gnu/packages/aux-files/linux-libre/5.2-arm-veyron.conf \
- gnu/packages/aux-files/linux-libre/5.2-arm64.conf \
- gnu/packages/aux-files/linux-libre/5.2-i686.conf \
- gnu/packages/aux-files/linux-libre/5.2-x86_64.conf \
+ gnu/packages/aux-files/linux-libre/5.4-arm.conf \
+ gnu/packages/aux-files/linux-libre/5.4-arm64.conf \
+ gnu/packages/aux-files/linux-libre/5.4-i686.conf \
+ gnu/packages/aux-files/linux-libre/5.4-x86_64.conf \
gnu/packages/aux-files/linux-libre/4.19-arm.conf \
gnu/packages/aux-files/linux-libre/4.19-arm64.conf \
gnu/packages/aux-files/linux-libre/4.19-i686.conf \
tests/file-systems.scm \
tests/gem.scm \
tests/gexp.scm \
+ tests/git.scm \
tests/glob.scm \
tests/gnu-maintenance.scm \
tests/grafts.scm \
tests/scripts-build.scm \
tests/search-paths.scm \
tests/services.scm \
+ tests/services/linux.scm \
tests/sets.scm \
tests/size.scm \
tests/snix.scm \
check-system: $(GOBJECTS)
$(AM_V_at)$(top_builddir)/pre-inst-env \
- $(GUILE) --no-auto-compile \
- -e '(@@ (run-system-tests) run-system-tests)' \
- $(top_srcdir)/build-aux/run-system-tests.scm
+ guix build -m $(top_srcdir)/etc/system-tests.scm -K
# Public keys used to sign substitutes.
dist_pkgdata_DATA = \
TODO \
CODE-OF-CONDUCT \
.dir-locals.el \
+ .guix-channel \
scripts/guix.in \
etc/guix-install.sh \
+ etc/news.scm \
+ etc/release-manifest.scm \
+ etc/system-tests.scm \
build-aux/build-self.scm \
build-aux/compile-all.scm \
build-aux/hydra/evaluate.scm \
build-aux/cuirass/gnu-system.scm \
build-aux/cuirass/guix-modular.scm \
build-aux/cuirass/hydra-to-cuirass.scm \
- build-aux/check-available-binaries.scm \
build-aux/check-final-inputs-self-contained.scm \
build-aux/compile-as-derivation.scm \
build-aux/generate-authors.scm \
+ build-aux/git-authenticate.scm \
build-aux/test-driver.scm \
build-aux/update-guix-package.scm \
build-aux/update-NEWS.scm \
- build-aux/run-system-tests.scm \
d3.v3.js \
graph.js \
tests/test.drv \
tests/signing-key.pub \
tests/signing-key.sec \
- tests/cve-sample.xml \
+ tests/cve-sample.json \
build-aux/config.rpath \
bootstrap \
doc/build.scm \
install-data-hook:
touch "$(DESTDIR)$(guileobjectdir)/guix/config.go"
+# Commit corresponding to the 'v1.0.1' tag.
+commit_v1_0_1 = d68de958b60426798ed62797ff7c96c327a672ac
+
+# Authenticate the current Git checkout by checking signatures on every commit
+# starting from $(commit_v1_0_1).
+authenticate:
+ $(AM_V_at)echo "Authenticating Git checkout..." ; \
+ "$(top_builddir)/pre-inst-env" $(GUILE) \
+ --no-auto-compile -e git-authenticate \
+ "$(top_srcdir)/build-aux/git-authenticate.scm" \
+ "$(commit_v1_0_1)"
+
# Assuming Guix is already installed and the daemon is up and running, this
# rule builds from $(srcdir), creating and building derivations.
as-derivation:
$(AM_V_at)if grep -r --exclude=*.texi --exclude=*.info \
--exclude=*.info-[0-9] --exclude=*.dot \
--exclude=*.eps --exclude-dir=bootstrap \
- --exclude=guix-manual.pot --exclude=guix-manual.*.po \
+ --exclude=guix-manual.pot --exclude=guix-manual.*.po \
+ --exclude=guix-cookbook.pot --exclude=guix-cookbook.*.po \
--exclude=guix-prettify.el \
--exclude=ChangeLog* \
--exclude=binutils-boot-2.20*.patch \
# Make sure important substitutes are available.
assert-binaries-available: $(GOBJECTS)
- $(AM_V_at)$(top_builddir)/pre-inst-env "$(GUILE)" \
- "$(top_srcdir)/build-aux/check-available-binaries.scm"
+ $(AM_V_at)$(top_builddir)/pre-inst-env \
+ guix weather -m "$(top_srcdir)/etc/release-manifest.scm" \
+ --display-missing
# Make sure the final inputs don't refer to bootstrap tools.
assert-final-inputs-self-contained: $(GOBJECTS)
.PHONY: gen-ChangeLog gen-AUTHORS gen-tarball-version
.PHONY: assert-no-store-file-names assert-binaries-available
.PHONY: assert-final-inputs-self-contained
-.PHONY: clean-go make-go as-derivation
+.PHONY: clean-go make-go as-derivation authenticate
.PHONY: update-guix-package update-NEWS release
# Downloading up-to-date PO files.