[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#31755] [PATCH 00/19] Use (guix store database) instead of 'guix-reg
From: |
Ludovic Courtès |
Subject: |
[bug#31755] [PATCH 00/19] Use (guix store database) instead of 'guix-register' |
Date: |
Fri, 8 Jun 2018 11:30:42 +0200 |
Hello Guix!
This not-so-interesting patch series refactors a whole bunch of things so
that, in the end, we can use the “new” (guix store database) instead of the
C++ ‘guix-register’. It turned out to be more involved that I thought. :-)
A practical consequence of this is that guile-sqlite3 becomes a requirement.
It would be nice if someone (maybe Danny?) could take care of tagging
guile-sqlite3 and making releases as needed.
I think the only new feature is that we can now populate the database in
a deterministic fashion by setting the registration data (see one of the
last patches.) Regardless, I think it’s a step in the right direction.
Comments?
Ludo’.
Ludovic Courtès (19):
database: 'with-database' can now initialize new databases.
database: Fail registration when encountering unregistered references.
store-copy: 'read-reference-graph' returns a list of records.
build: Require Guile-SQLite3.
database: Provide a way to specify the schema location.
database: 'register-path' creates the database directory if needed.
deduplicate: Fix a couple of thinkos.
database: Remove extra SQL parameter in 'update-or-insert'.
database: Add #:reset-timestamps? to 'register-path'.
database: Replace existing entries in Refs.
database: 'reset-timestamps' sets file permissions as well.
vm: 'expression->derivation-in-linux-vm' code can now use dlopen.
install: Use (guix store database) instead of 'guix-register'.
database: 'sqlite-register' takes a database, not a file name.
database: Add 'register-items'.
install: Use 'reset-timestamps' from (guix store database).
database: Allow for deterministic database construction.
store: Remove 'register-path'.
Remove 'guix-register' and its traces.
.gitignore | 1 -
Makefile.am | 24 +-
README | 3 +-
build-aux/pre-inst-env.in | 6 +-
configure.ac | 5 +-
doc/guix.texi | 3 +
gnu/build/install.scm | 59 ++--
gnu/build/vm.scm | 6 +-
gnu/packages/package-management.scm | 40 +--
gnu/services/base.scm | 5 +-
gnu/system/file-systems.scm | 11 +-
gnu/system/vm.scm | 414 +++++++++++++-----------
guix/build/store-copy.scm | 121 ++++++-
guix/config.scm.in | 12 +-
guix/nar.scm | 3 +-
guix/scripts/pack.scm | 219 +++++++------
guix/scripts/system.scm | 3 +-
guix/self.scm | 25 +-
guix/store.scm | 29 --
guix/store/database.scm | 235 +++++++++-----
guix/store/deduplication.scm | 13 +-
{nix/libstore => guix/store}/schema.sql | 0
nix/guix-register/guix-register.cc | 254 ---------------
nix/local.mk | 18 +-
tests/gexp.scm | 17 +-
tests/guix-register.sh | 191 -----------
tests/store-database.scm | 45 ++-
tests/store-deduplication.scm | 9 +-
tests/store.scm | 22 +-
29 files changed, 739 insertions(+), 1054 deletions(-)
rename {nix/libstore => guix/store}/schema.sql (100%)
delete mode 100644 nix/guix-register/guix-register.cc
delete mode 100644 tests/guix-register.sh
--
2.17.1
- [bug#31755] [PATCH 00/19] Use (guix store database) instead of 'guix-register',
Ludovic Courtès <=
- [bug#31755] [PATCH 01/19] database: 'with-database' can now initialize new databases., Ludovic Courtès, 2018/06/08
- [bug#31755] [PATCH 06/19] database: 'register-path' creates the database directory if needed., Ludovic Courtès, 2018/06/08
- [bug#31755] [PATCH 07/19] deduplicate: Fix a couple of thinkos., Ludovic Courtès, 2018/06/08
- [bug#31755] [PATCH 08/19] database: Remove extra SQL parameter in 'update-or-insert'., Ludovic Courtès, 2018/06/08
- [bug#31755] [PATCH 10/19] database: Replace existing entries in Refs., Ludovic Courtès, 2018/06/08
- [bug#31755] [PATCH 02/19] database: Fail registration when encountering unregistered references., Ludovic Courtès, 2018/06/08
- [bug#31755] [PATCH 09/19] database: Add #:reset-timestamps? to 'register-path'., Ludovic Courtès, 2018/06/08
- [bug#31755] [PATCH 05/19] database: Provide a way to specify the schema location., Ludovic Courtès, 2018/06/08
- [bug#31755] [PATCH 11/19] database: 'reset-timestamps' sets file permissions as well., Ludovic Courtès, 2018/06/08
- [bug#31755] [PATCH 12/19] vm: 'expression->derivation-in-linux-vm' code can now use dlopen., Ludovic Courtès, 2018/06/08