alphagov/govuk-guix

admin2 admin2
2 Min Read

This repository contains Guix package, service and system definitions
for software and systems specifically related to GOV.UK.

See doc/installation.md for a full list of prerequisites and
steps. The most reliable way to run the included scripts is via the
included govuk script. The bin directory can be added to your PATH for
easy access, for example:

export PATH="$PATH:$PWD/bin"

Local Development

You can use govuk-guix to run GOV.UK services on your computer, for
example, to start a system with the Short URL Manager, Specialist
Publisher and any of their dependencies, you would run:

govuk system start short-url-manager specialist-publisher

To find out more, read the documentation on local development.

Local Data

You can use govuk-guix to list and load data downloaded through the
replication scripts in the govuk-puppet repository, for example, to
load the data for the short-url-manager service, you would run:

govuk data load short-url-manager

To find out more, read the documentation on local data.

GNU Guix (abbreviated to Guix) (IPA: ɡiːks) is a package manager,
and associated free software distribution, for the GNU system.

Guix is a state of the art package manager, providing many features,
such as reproducible build environments, unprivileged package
management, transparent source/binary deployment and per-user
profiles.

The design and low level mechanisms of Guix come from the Nix package
manager, on top of which Guix provides a hackable set of tooling using
Guile.

This project leverages Guix, building on top of its tooling to provide
packages, services and systems relevant to GOV.UK.

When developing locally, you may find it useful to use a local copy of
GNU Guix, this can be done by setting the GDS_GNU_GUIX_MODULE_PATH
environment variable, for example:

export GDS_GNU_GUIX_MODULE_PATH="../gnu-guix"

The value of GDS_GNU_GUIX_MODULE_PATH will be prepended to the
GUILE_LOAD_PATH and GUILE_LOAD_COMPILED_PATH.

To replace the package source for the guix package within the
govuk-guix repository, you can set the GDS_GNU_GUIX_PATH environment
variable.

export GDS_GNU_GUIX_PATH="../gnu-guix"

Read More

Share This Article
Leave a Comment

Leave a Reply