Previous: , Up: Contributing   [Contents][Index]

16.9 Updating the Guix Package

It is sometimes desirable to update the guix package itself (the package defined in (gnu packages package-management)), for example to make new daemon features available for use by the guix-service-type service type. In order to simplify this task, the following command can be used:

make update-guix-package

The update-guix-package make target will use the last known commit corresponding to HEAD in your Guix checkout, compute the hash of the Guix sources corresponding to that commit and update the commit, revision and hash of the guix package definition.

To validate that the updated guix package hashes are correct and that it can be built successfully, the following command can be run from the directory of your Guix checkout:

./pre-inst-env guix build guix

To guard against accidentally updating the guix package to a commit that others can’t refer to, a check is made that the commit used has already been pushed to the Savannah-hosted Guix git repository.

This check can be disabled, at your own peril, by setting the GUIX_ALLOW_ME_TO_USE_PRIVATE_COMMIT environment variable. When this variable is set, the updated package source is also added to the store. This is used as part of the release process of Guix.