[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Question regarding qmk firmware
From: |
Ekaitz Zarraga |
Subject: |
Re: Question regarding qmk firmware |
Date: |
Sun, 08 Oct 2023 10:28:43 +0000 |
------- Original Message -------
On Saturday, October 7th, 2023 at 21:23, Fredrik Salomonsson
<plattfot@posteo.net> wrote:
> Hi,
>
> Today I was tweaking a keymap for one of my qmk based keyboards but some
> of the packages I used when building the firmware has been removed. My
> commad was as follows:
>
> `sh guix shell avr-toolchain dfu-programmer qmk -- qmk flash -kb
> ergodox_infinity -km plattfot -bl dfu-split-left`
>
> But `avr-toolchain` is gone. When I tried to just drop it and see if it
> worked I get
>
> `Ψ Compiling keymap with make --jobs=1
> ergodox_infinity:plattfot:dfu-split-left QMK Firmware 0.14.19 Making
> ergodox_infinity with keymap plattfot and target dfu-split-left
> /gnu/store/rib9g2ig1xf3kclyl076w28parmncg4k-bash-minimal-5.1.16/bin/sh: line
> 1: arm-none-eabi-gcc: command not found`
>
> It seems `arm-none-eabi-toolchain` is also removed. Looking at the
> commit history for guix it looks like they got replaced by
> [proceduers][0] instead.
>
> [0]
> https://git.savannah.gnu.org/cgit/guix.git/commit/?id=35c1df5bd6317b1cd038c1a4aca1c7e4a52d4d93
>
> My question is how do I get access to the arm-none-eabi-toolchain from
> the commandline with guix shell?
>
> Thanks
Hi Fredrik,
Now what you need to do is call to the `make-avr-toolchain` function from `(gnu
packages avr)` to get that.
Maybe the easiest way is to create a `manifest.scm` where you do something like
this (i'm doing it by memory):
``` scheme
(use-modules (gnu packages avr)
(gnu packages flashing-tools)
(gnu packages firmware))
(packages->manifest (list (make-avr-toolchain) dfu-programmer qmk))
```
Then use `guix shell -m manifest.scm`.
There are other ways to do it, but I find this the easiest.
You can even make a package for your firmware and let guix compile it for you
(and maybe flash it too?).
Cheers,
Ekaitz