Use Guix: Pin dependencies

It was discovered that builds no longer were functional on my current version of
Guix (25b83bd). That is, builds would fail indicating 'avr-ld: cannot find crtatmega32u4.o:
No such file or directory'. avr-toolchain has been updated a few times, and an old version is
required to build this; as such, dependencies are now pinned with a channels.scm file, and an
.envrc has been provided for convenience.

A latter commit should merge qmk_firmware upstream, which likely will resolve the build issue
with the latest version of avr-gcc.
This commit is contained in:
Collin J. Doering 2024-04-11 17:45:26 -04:00
parent a592e7b7ce
commit 923fad1c76
Signed by: rekahsoft
GPG Key ID: 7B4DEB93212B3022
2 changed files with 21 additions and 0 deletions

10
.envrc Normal file
View File

@ -0,0 +1,10 @@
use_guix-shell() {
CHANNEL_FILE=channels.scm
if [ -f $CHANNEL_FILE ]; then
eval "$(guix time-machine -C $CHANNEL_FILE -- shell "$@" --search-paths)"
else
eval "$(guix shell "$@" --search-paths)"
fi
}
use guix-shell avr-toolchain avrdude make python-wrapper

11
channels.scm Normal file
View File

@ -0,0 +1,11 @@
(list (channel
(name 'guix)
(url "https://git.savannah.gnu.org/git/guix.git")
(branch "master")
(commit
"273709932fa47f6ae56c96564a9415fdbff4a169")
(introduction
(make-channel-introduction
"9edb3f66fd807b096b48283debdcddccfea34bad"
(openpgp-fingerprint
"BBB0 2DDF 2CEA F6A8 0D1D E643 A2A0 6DF2 A33A 54FA")))))