Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/alphagov/govuk-guix
Package, service and system definitions using GNU Guix for software and systems related to GOV.UK.
https://github.com/alphagov/govuk-guix
govuk guix
Last synced: about 1 month ago
JSON representation
Package, service and system definitions using GNU Guix for software and systems related to GOV.UK.
- Host: GitHub
- URL: https://github.com/alphagov/govuk-guix
- Owner: alphagov
- License: mit
- Archived: true
- Created: 2016-11-14T09:31:33.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2022-03-07T16:44:06.000Z (over 2 years ago)
- Last Synced: 2024-05-15T13:07:23.202Z (4 months ago)
- Topics: govuk, guix
- Language: Scheme
- Homepage:
- Size: 14.8 MB
- Stars: 66
- Watchers: 49
- Forks: 4
- Open Issues: 10
-
Metadata Files:
- Readme: README.org
- License: LICENSE
Awesome Lists containing this project
README
#+BEGIN_QUOTE
* 🚨 Deprecated*This repository is no longer maintained and should not be used.*
We now [[https://github.com/alphagov/govuk-docker][use Docker for local development]]. For more context, see [[https://github.com/alphagov/govuk-rfcs/blob/main/rfc-106-docker-for-local-development.md][GOV.UK RFC-106]].
#+END_QUOTE-----
* Getting started
See [[doc/installation.md][doc/installation.md]] for a full list of [[doc/installation.md#prerequisites][prerequisites]] and
[[doc/installation.md#steps][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:#+BEGIN_SRC shell
export PATH="$PATH:$PWD/bin"
#+END_SRC** 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:#+BEGIN_SRC shell
govuk system start short-url-manager specialist-publisher
#+END_SRCTo find out more, read the documentation on [[doc/local-development.md][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:#+BEGIN_SRC shell
govuk data load short-url-manager
#+END_SRCTo find out more, read the documentation on [[doc/local-data.md][local data]].
* Why Guix?
[[http://www.gnu.org/software/guix/][GNU Guix]] (abbreviated to Guix) (IPA: /ɡiːks/) is a package manager,
and associated free software distribution, for the [[http://www.gnu.org/gnu/gnu.html][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.* Hacking
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:#+BEGIN_SRC shell
export GDS_GNU_GUIX_MODULE_PATH="../gnu-guix"
#+END_SRCThe 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.#+BEGIN_SRC shell
export GDS_GNU_GUIX_PATH="../gnu-guix"
#+END_SRC