goryachev | ||
.dir-locals.el | ||
.gitignore | ||
.guix-authorizations | ||
.guix-channel | ||
README.org |
Goryachev Guix Channel
This is my software repository for the GNU Guix package manager, which packages some software which may not be included in the official distribution for ethical or policy-related reasons. Also some packages are based on official ones, but include changes which are not compatible with Guix project's policy.
Installation
This repository can be installed as a Guix channel.
To do so, add it to ~/.config/guix/channels.scm
:
(cons* (channel
(name 'goryachev)
(url "https://code.goryachev.org/guix/channel.git")
(introduction
(make-channel-introduction
"951e5098ccb67381f2ff7d9455363d46b594cd13"
(openpgp-fingerprint
"9E23 D5BC AEB7 E364 7321 4A00 C3A7 8EB3 FEFE 6C04"))))
%default-channels)
Then run guix pull
.
Substitutes
A substitute server is available at https://substitutes.goryachev.org. On Guix System, you can add and authorize this URL in the following way:
...
(define %goryachev.org-key
"(public-key (ecc (curve Ed25519) (q #496244137E29E6BD581103A59CFD0947316F818BAC57206104BCF55946249CCB#)))")
...
(operating-system
(services
...
(modify-services %desktop-services
...
(guix-service-type config => (guix-configuration
(inherit config)
(substitute-urls
(append (list
...
"https://substitutes.goryachev.org")
%default-substitute-urls))
(authorized-keys
(append (list
...
(plain-file "goryachev.org.pub" %goryachev.org-key))
%default-authorized-guix-keys))))
...)
...)
...
Guix System will only use the substitution server after it has been reconfigured. The substitution
server will therefore by default not be used the first time you run guix system reconfigure
after
adding the substitution server. It is therefore recommended to explicitly specify the use of the
substitution server the first time you reconfigure your system:
$ wget https://substitutes.goryachev.org/signing-key.pub
$ sudo guix archive --authorize < signing-key.pub
$ sudo -E guix system reconfigure ~/.config/guix/system.scm --substitute-urls='https://ci.guix.gnu.org https://bordeaux.guix.gnu.org https://substitutes.goryachev.org'
The Cuirass instance can be useful when investigating substitution failures.
Check out the chapter on substitutes in the Guix manual for more details.
Other
Some information provided here was taken from Nonguix project, many-many thanks to them!