[PATCH 0/2] Qmk cli

  • Done
  • quality assurance status badge
Details
7 participants
  • Nicolò Balzarotti
  • Marcel van der Boom
  • Maxim Cournoyer
  • Mathieu Othacehe
  • Fredrik Salomonsson
  • Jan Wielkiewicz
  • Vagrant Cascadian
Owner
unassigned
Submitted by
Jan Wielkiewicz
Severity
normal
J
J
Jan Wielkiewicz wrote on 2 Aug 2020 22:42
(address . guix-patches@gnu.org)(name . Jan Wielkiewicz)(address . tona_kosmicznego_smiecia@interia.pl)
20200802204208.14992-1-tona_kosmicznego_smiecia@interia.pl
Hello,

these patches add qmk-cli - a command line utility helping its users to mofify
and flash qmk firmware on input devices like keyboards or mouses.
I also add one python dependency.
Project's website: https://qmk.fm/


Jan Wielkiewicz (2):
gnu: Add python-hjson.
gnu: Add qmk-cli.

gnu/packages/hardware.scm | 50 +++++++++++++++++++++++++++++++++++++
gnu/packages/python-xyz.scm | 20 +++++++++++++++
2 files changed, 70 insertions(+)


Jan Wielkiewicz

--
2.28.0
J
J
Jan Wielkiewicz wrote on 2 Aug 2020 22:49
[PATCH 1/2] gnu: Add python-hjson.
(address . 42682@debbugs.gnu.org)(name . Jan Wielkiewicz)(address . tona_kosmicznego_smiecia@interia.pl)
20200802204910.15356-1-tona_kosmicznego_smiecia@interia.pl
* gnu/packages/python-xyz.scm (python-hjson): New variable.
---
gnu/packages/python-xyz.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 9ab0b12383..316865ddf1 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -83,6 +83,7 @@
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2020 Guy Fleury Iteriteka <gfleury@disroot.org>
+;;; Copyright © 2020 Jan Wielkiewicz <tona_kosmicznego_smiecia@interia.pl>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -21298,3 +21299,22 @@ and have a maximum lifetime built-in.")
"This package contains a small collection of test tool plugins for
@code{nose2} and @code{flake8}.")
(license license:asl2.0)))
+
+(define-public python-hjson
+ (package
+ (name "python-hjson")
+ (version "3.0.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "hjson" version))
+ (sha256
+ (base32
+ "1yaimcgz8w0ps1wk28wk9g9zdidp79d14xqqj9rjkvxalvx2f5qx"))))
+ (build-system python-build-system)
+ (arguments
+ '(#:tests? #f)) ; no tests
+ (home-page "http://github.com/hjson/hjson-py")
+ (synopsis "User interface for JSON.")
+ (description "Hjson, a user interface for JSON.")
+ (license license:expat)))
--
2.28.0
J
J
Jan Wielkiewicz wrote on 2 Aug 2020 22:49
[PATCH 2/2] gnu: Add qmk-cli.
(address . 42682@debbugs.gnu.org)(name . Jan Wielkiewicz)(address . tona_kosmicznego_smiecia@interia.pl)
20200802204910.15356-2-tona_kosmicznego_smiecia@interia.pl
* gnu/packages/hardware.scm (qmk-cli): New variable.
---
gnu/packages/hardware.scm | 50 +++++++++++++++++++++++++++++++++++++++
1 file changed, 50 insertions(+)

Toggle diff (92 lines)
diff --git a/gnu/packages/hardware.scm b/gnu/packages/hardware.scm
index 211a5a34ac..adab986d75 100644
--- a/gnu/packages/hardware.scm
+++ b/gnu/packages/hardware.scm
@@ -2,6 +2,7 @@
;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
+;;; Copyright © 2020 Jan Wielkiewicz <tona_kosmicznego_smiecia@interia.pl>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -19,6 +20,7 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages hardware)
+ #:use-module (gnu packages avr)
#:use-module (gnu packages admin)
#:use-module (gnu packages autotools)
#:use-module (gnu packages bash)
@@ -27,6 +29,8 @@
#:use-module (gnu packages cpp)
#:use-module (gnu packages crypto)
#:use-module (gnu packages documentation)
+ #:use-module (gnu packages embedded)
+ #:use-module (gnu packages flashing-tools)
#:use-module (gnu packages gcc)
#:use-module (gnu packages glib)
#:use-module (gnu packages libusb)
@@ -36,10 +40,14 @@
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages polkit)
#:use-module (gnu packages protobuf)
+ #:use-module (gnu packages python)
+ #:use-module (gnu packages python-xyz)
+ #:use-module (gnu packages version-control)
#:use-module (gnu packages xdisorg)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#:use-module (guix build-system gnu)
+ #:use-module (guix build-system python)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
@@ -465,3 +473,45 @@ authorization policies (what kind of USB devices are authorized) as well as
method of use policies (how a USB device may interact with the system).
Simply put, it is a USB device whitelisting tool.")
(license license:gpl2)))
+
+(define-public qmk-cli
+ (package
+ (name "qmk-cli")
+ (version "0.0.35")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "qmk" version))
+ (sha256
+ (base32
+ "1dd3q38r5bs9ih8jiwsb7q2655wyka2a8wlwv7yln9narlqwl177"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("arm-none-eabi-gcc" ,gcc-arm-none-eabi-7-2018-q2-update)
+ ("avr-gcc" ,avr-toolchain-5)
+ ("avrdude" ,avrdude)
+ ("dfu-programmer" ,dfu-programmer)
+ ("dfu-util" ,dfu-util)
+ ("git" ,git)
+ ("python3" ,python)
+ ("python-appdirs" ,python-appdirs)
+ ("python-argcomplete" ,python-argcomplete)
+ ("python-colorama" ,python-colorama)
+ ("python-flake8" ,python-flake8)
+ ("python-hjson" ,python-hjson)
+ ("python-nose2" ,python-nose2)
+ ("python-yapf" ,python-yapf)))
+ (arguments
+ `(#:phases (modify-phases %standard-phases
+ (add-before 'check 'set-qmk-home
+ (lambda _
+ ;; tests fail without this variable set
+ (setenv "QMK_HOME"
+ "")
+ #t)))))
+ (home-page "https://github.com/qmk/qmk_cli")
+ (synopsis
+ "Tools for developing QMK Firmware")
+ (description
+ "A program to help users work with QMK Firmware.")
+ (license license:expat)))
--
2.28.0
M
M
Mathieu Othacehe wrote on 3 Aug 2020 10:21
Re: [bug#42682] [PATCH 1/2] gnu: Add python-hjson.
(name . Jan Wielkiewicz)(address . tona_kosmicznego_smiecia@interia.pl)(address . 42682@debbugs.gnu.org)
873654uolk.fsf@gnu.org
Hello Jan,

Thanks for this patch. Please make sure to run the linter that reports
two warnings here.

Toggle quote (18 lines)
> +(define-public python-hjson
> + (package
> + (name "python-hjson")
> + (version "3.0.1")
> + (source
> + (origin
> + (method url-fetch)
> + (uri (pypi-uri "hjson" version))
> + (sha256
> + (base32
> + "1yaimcgz8w0ps1wk28wk9g9zdidp79d14xqqj9rjkvxalvx2f5qx"))))
> + (build-system python-build-system)
> + (arguments
> + '(#:tests? #f)) ; no tests
> + (home-page "http://github.com/hjson/hjson-py")
> + (synopsis "User interface for JSON.")
> + (description "Hjson, a user interface for JSON.")

You need to elaborate on that with at least two or three sentences,
explaining what is this user interface and what does it bring.

Thanks,

Mathieu
M
M
Mathieu Othacehe wrote on 3 Aug 2020 10:26
Re: [bug#42682] [PATCH 2/2] gnu: Add qmk-cli.
(name . Jan Wielkiewicz)(address . tona_kosmicznego_smiecia@interia.pl)(address . 42682@debbugs.gnu.org)
87y2mwt9t0.fsf@gnu.org
Toggle quote (16 lines)
> + (propagated-inputs
> + `(("arm-none-eabi-gcc" ,gcc-arm-none-eabi-7-2018-q2-update)
> + ("avr-gcc" ,avr-toolchain-5)
> + ("avrdude" ,avrdude)
> + ("dfu-programmer" ,dfu-programmer)
> + ("dfu-util" ,dfu-util)
> + ("git" ,git)
> + ("python3" ,python)
> + ("python-appdirs" ,python-appdirs)
> + ("python-argcomplete" ,python-argcomplete)
> + ("python-colorama" ,python-colorama)
> + ("python-flake8" ,python-flake8)
> + ("python-hjson" ,python-hjson)
> + ("python-nose2" ,python-nose2)
> + ("python-yapf" ,python-yapf)))

Do we really need to propagate all those inputs? Can't we hardcode the
path to those tools directly in the sources, if they are not registered at
build time?

Toggle quote (8 lines)
> + (arguments
> + `(#:phases (modify-phases %standard-phases
> + (add-before 'check 'set-qmk-home
> + (lambda _
> + ;; tests fail without this variable set
> + (setenv "QMK_HOME"
> + "")

Who is supposed to set it otherwise?

Toggle quote (2 lines)
> + "A program to help users work with QMK Firmware.")

You also need to elaborate here :)

Thanks,

Mathieu
J
J
Jan Wielkiewicz wrote on 3 Aug 2020 14:28
Re: [bug#42682] [PATCH 1/2] gnu: Add python-hjson.
(name . Mathieu Othacehe)(address . othacehe@gnu.org)(address . 42682@debbugs.gnu.org)
20200803142824.125def3c@interia.pl
Dnia 2020-08-03, o godz. 10:21:11
Mathieu Othacehe <othacehe@gnu.org> napisa?(a):

Toggle quote (5 lines)
>
> Hello Jan,
>
> Thanks for this patch. Please make sure to run the linter that reports
> two warnings here.
Okay. I'll check that.
Toggle quote (3 lines)
>
> You need to elaborate on that with at least two or three sentences,
> explaining what is this user interface and what does it bring.
To be honest, I'm not sure what they mean by "user interface to JSON".
They vaguely explain this on their website https://hjson.github.io/
I'm also not sure if I'm permited to just copy and paste text from
their website because of copyright.
My English is also sloppy sometimes and I fail to write meaningful
description about too abstract things.
I can try diving in and check what it does, but I don't have any
experience with Python.

Toggle quote (3 lines)
> Thanks,
>
> Mathieu
J
J
Jan Wielkiewicz wrote on 3 Aug 2020 14:43
Re: [bug#42682] [PATCH 2/2] gnu: Add qmk-cli.
(name . Mathieu Othacehe)(address . othacehe@gnu.org)(address . 42682@debbugs.gnu.org)
20200803144349.06022fa4@interia.pl
Dnia 2020-08-03, o godz. 10:26:03
Mathieu Othacehe <othacehe@gnu.org> napisa?(a):

Toggle quote (18 lines)
>
> > + (propagated-inputs
> > + `(("arm-none-eabi-gcc" ,gcc-arm-none-eabi-7-2018-q2-update)
> > + ("avr-gcc" ,avr-toolchain-5)
> > + ("avrdude" ,avrdude)
> > + ("dfu-programmer" ,dfu-programmer)
> > + ("dfu-util" ,dfu-util)
> > + ("git" ,git)
> > + ("python3" ,python)
> > + ("python-appdirs" ,python-appdirs)
> > + ("python-argcomplete" ,python-argcomplete)
> > + ("python-colorama" ,python-colorama)
> > + ("python-flake8" ,python-flake8)
> > + ("python-hjson" ,python-hjson)
> > + ("python-nose2" ,python-nose2)
> > + ("python-yapf" ,python-yapf)))
>
> Do we really need to propagate all those inputs?
The python dependencies were added to propagated inputs automatically
by "guix import". The other tools are needed in the user profine,
because qmk-cli uses them, for example it fetches qmk firmware from
git, it runs some *python stuff* and when user is done making changes
to their firmware, qmk cli builds the firmware using the compiler and
flashes it using dfu.

I think it would be cool if Guix allowed defining profiles and
environments the same way it allows defining packages.
This way installing qmk-cli would also install say qmk-profile with all
headers (and tools) needed for development. Now, even though
arv-toolchain is installed, I have to run "guix environment qmk-cli" to
be able to work with the firmware without getting build errors.

Toggle quote (3 lines)
> Can't we hardcode the
> path to those tools directly in the sources, if they are not
> registered at build time?
I need them installed, so qmk-cli doesn't complain. Should the user be
responsible for installing all the tools needed for development?

Toggle quote (9 lines)
> > + (arguments
> > + `(#:phases (modify-phases %standard-phases
> > + (add-before 'check 'set-qmk-home
> > + (lambda _
> > + ;; tests fail without this variable set
> > + (setenv "QMK_HOME"
> > + "")
>
> Who is supposed to set it otherwise?
I'm not sure. That's the first thing qmk-cli sets when it is already
installed. Normally, qmk-cli is installed by pip, maybe it is
responsible for setting the variables?

Toggle quote (3 lines)
> > + "A program to help users work with QMK Firmware.")
>
> You also need to elaborate here :)
Should I describe what qmk firmware is or say more about what working
with qmk firmware is, or both?

Toggle quote (3 lines)
> Thanks,
>
> Mathieu
M
M
Mathieu Othacehe wrote on 5 Aug 2020 11:17
(name . Jan Wielkiewicz)(address . tona_kosmicznego_smiecia@interia.pl)(address . 42682@debbugs.gnu.org)
87o8npjvt4.fsf@gnu.org
Hello Jan,

Toggle quote (8 lines)
>> Do we really need to propagate all those inputs?
> The python dependencies were added to propagated inputs automatically
> by "guix import". The other tools are needed in the user profine,
> because qmk-cli uses them, for example it fetches qmk firmware from
> git, it runs some *python stuff* and when user is done making changes
> to their firmware, qmk cli builds the firmware using the compiler and
> flashes it using dfu.

Turns out qmk_cli is just a wrapper around qmk_firmware. It clones qmk
firmware repository because it cannot locate a qmk_firmware directory
using QMK_HOME variable.

I think the proper way to do things would be to package qmk_firwmare
first (it has a root shell.nix file that should help). Then this package
would define QMK_HOME using "search-paths".

This way, qmk_cli would just require some python libraries, but would
not propagate git, and the toolchains.

Does it make sense?

Thanks,

Mathieu
J
J
Jan Wielkiewicz wrote on 5 Aug 2020 14:22
(name . Mathieu Othacehe)(address . othacehe@gnu.org)(address . 42682@debbugs.gnu.org)
20200805142240.075ac063@interia.pl
Dnia 2020-08-05, o godz. 11:17:43
Mathieu Othacehe <othacehe@gnu.org> napisa?(a):

Toggle quote (24 lines)
>
> Hello Jan,
>
> >> Do we really need to propagate all those inputs?
> > The python dependencies were added to propagated inputs
> > automatically by "guix import". The other tools are needed in the
> > user profine, because qmk-cli uses them, for example it fetches qmk
> > firmware from git, it runs some *python stuff* and when user is
> > done making changes to their firmware, qmk cli builds the firmware
> > using the compiler and flashes it using dfu.
>
> Turns out qmk_cli is just a wrapper around qmk_firmware. It clones qmk
> firmware repository because it cannot locate a qmk_firmware directory
> using QMK_HOME variable.
>
> I think the proper way to do things would be to package qmk_firwmare
> first (it has a root shell.nix file that should help). Then this
> package would define QMK_HOME using "search-paths".
>
> This way, qmk_cli would just require some python libraries, but would
> not propagate git, and the toolchains.
>
> Does it make sense?

But the entire point of qmk firmware is that the user configures it. I
had to modify the source code to make my keyboard work and add some
extra features like layouts, special keys. Your solution will only work
for the unmodified and default firmware, or is there a Guix solution
for it I'm not aware of, like a convenient interface for user defined
packages?

Toggle quote (3 lines)
> Thanks,
>
> Mathieu
M
M
Mathieu Othacehe wrote on 7 Aug 2020 10:20
(name . Jan Wielkiewicz)(address . tona_kosmicznego_smiecia@interia.pl)(address . 42682@debbugs.gnu.org)
87364yq33y.fsf@gnu.org
Hello,

Toggle quote (7 lines)
> But the entire point of qmk firmware is that the user configures it. I
> had to modify the source code to make my keyboard work and add some
> extra features like layouts, special keys. Your solution will only work
> for the unmodified and default firmware, or is there a Guix solution
> for it I'm not aware of, like a convenient interface for user defined
> packages?

Oh I see. Nonetheless, qmk_cli is a thin wrapper around qmk_firmware. I
think it would make more sense to have qmk_firmware properly packaged.

This way we would offer people a way to build their customized firmware
without propagating toolchains and fetching a git repository.

WDYT?

Mathieu
J
J
Jan Wielkiewicz wrote on 7 Aug 2020 17:44
(name . Mathieu Othacehe)(address . othacehe@gnu.org)(address . 42682@debbugs.gnu.org)
20200807174401.21be8219@interia.pl
Dnia 2020-08-07, o godz. 10:20:17
Mathieu Othacehe <othacehe@gnu.org> napisa?(a):

Toggle quote (18 lines)
>
> Hello,
>
> > But the entire point of qmk firmware is that the user configures
> > it. I had to modify the source code to make my keyboard work and
> > add some extra features like layouts, special keys. Your solution
> > will only work for the unmodified and default firmware, or is there
> > a Guix solution for it I'm not aware of, like a convenient
> > interface for user defined packages?
>
> Oh I see. Nonetheless, qmk_cli is a thin wrapper around qmk_firmware.
> I think it would make more sense to have qmk_firmware properly
> packaged.
>
> This way we would offer people a way to build their customized
> firmware without propagating toolchains and fetching a git repository.
>
> WDYT?
I can do this then, give me some time.

Toggle quote (3 lines)
> Mathieu


Jan Wielkiewicz
N
N
Nicolò Balzarotti wrote on 5 Feb 2021 12:39
(address . 42682@debbugs.gnu.org)
87sg6a216c.fsf@guixSD.i-did-not-set--mail-host-address--so-tickle-me
Jan Wielkiewicz <tona_kosmicznego_smiecia@interia.pl> writes:

Toggle quote (28 lines)
> Dnia 2020-08-07, o godz. 10:20:17
> Mathieu Othacehe <othacehe@gnu.org> napisa?(a):
>
>>
>> Hello,
>>
>> > But the entire point of qmk firmware is that the user configures
>> > it. I had to modify the source code to make my keyboard work and
>> > add some extra features like layouts, special keys. Your solution
>> > will only work for the unmodified and default firmware, or is there
>> > a Guix solution for it I'm not aware of, like a convenient
>> > interface for user defined packages?
>>
>> Oh I see. Nonetheless, qmk_cli is a thin wrapper around qmk_firmware.
>> I think it would make more sense to have qmk_firmware properly
>> packaged.
>>
>> This way we would offer people a way to build their customized
>> firmware without propagating toolchains and fetching a git repository.
>>
>> WDYT?
> I can do this then, give me some time.
>
>> Mathieu
>
>
> Jan Wielkiewicz

Hi Jan, have you been working on this? My new qmk-supported keyboard is
coming and I'd love to be able to flash it with guix.

I built qmk-firmware in guix (but there are bundled dependencies that
still need to be removed).

I was planning to use mugur with it, which calls

make -C source-path keyboard:type

So, my first idea (which should apply to qmk-cli too) was to patch this
to call guix build --with-source and hopefully get this working, but I
don't know how robust this is (or if it is even going to work).

(I'll also have to package https://github.com/zsa/wally,but it does not
seem to require qmk-cli)

Nicolò
J
J
Jan Wielkiewicz wrote on 24 Feb 2021 22:41
(name . Nicolò Balzarotti)(address . anothersms@gmail.com)
20210224224150.12ddc261@interia.pl
Dnia 2021-02-05, o godz. 12:39:55
Nicolò Balzarotti <anothersms@gmail.com> napisa?(a):

Toggle quote (2 lines)
> Hi Jan, have you been working on this? My new qmk-supported keyboard
> is coming and I'd love to be able to flash it with guix.
Nope, I'm quite busy studying right now, will resume my work this
summer.

Toggle quote (16 lines)
> I built qmk-firmware in guix (but there are bundled dependencies that
> still need to be removed).
>
> I was planning to use mugur with it, which calls
>
> make -C source-path keyboard:type
>
> So, my first idea (which should apply to qmk-cli too) was to patch
> this to call guix build --with-source and hopefully get this working,
> but I don't know how robust this is (or if it is even going to work).
>
> (I'll also have to package https://github.com/zsa/wally, but it does
> not seem to require qmk-cli)
>
> Nicolò

I totally don't remember what the issue was about. If you have a
working package then go ahead.
Thanks for info anyway, I'll check it out later.

Jan Wielkiewicz
N
N
Nicolò Balzarotti wrote on 24 Feb 2021 23:23
(name . Jan Wielkiewicz)(address . tona_kosmicznego_smiecia@interia.pl)
87sg5l9kba.fsf@guixSD.i-did-not-set--mail-host-address--so-tickle-me
Toggle quote (4 lines)
> I totally don't remember what the issue was about. If you have a
> working package then go ahead.
> Thanks for info anyway, I'll check it out later.

Ok, I'll send some patches in the following days :)

Thanks, Nicolo'
M
M
Marcel van der Boom wrote on 22 Dec 2022 13:29
[PATCH 0/2] Qmk cli
(address . 42682@debbugs.gnu.org)
87sfh7vcxp.fsf@van-der-boom.nl
Is someone still working on this?
F
F
Fredrik Salomonsson wrote on 9 Apr 2023 06:31
[PATCH v2 0/9] Add qmk-cli
(address . 42682@debbugs.gnu.org)(name . Fredrik Salomonsson)(address . plattfot@posteo.net)
20230409043116.13244-1-plattfot@posteo.net
Hi,

Since it doesn't seem to be any activity on this issue I thought I'll pick up
where Jan left off. The cli program has grown quite a bit since the last
patch in term of dependencies and is now required for you to be able to build
QMK Firmware. I've only tested this with building my firmware for my
keyboard:

guix shell avr-toolchain dfu-programmer qmk-cli -- qmk flash -kb kyria -km plattfot -bl dfu-split-left

It seems to be working fine though as I'm still able to type after that. ?

I opted to not propagate any packages (e.g. avr-toolchain, git, dfu-programmer
etc) given that it depends on what you are going to use the qmk cli for. And
seems better to specify what you need as I've shown above when flashing my
keyboard.

I also added qmk-udev-rules to be able to use qmk cli without requiring root
when flashing.

I do get some warnings when running guix lint. Which I haven't figured out how
to resolve.

Toggle quote (3 lines)
> gnu/packages/python-xyz.scm:27517:17: python-dotty-dict@1.3.1: use @code or
> similar ornament instead of quotes

Not sure what quotes it complains about as the quotes in the description are
wrapped in @code and is part of the code snippet.

Toggle quote (3 lines)
> gnu/packages/python-xyz.scm:17147:15: python-milc@1.6.6: URI
> https://milc.clueboard.co/ returned suspiciously small file (337 bytes)

The url redirects to https://milc.clueboard.co/1.6,if I switch to that it
seems it still redirects.

Toggle quote (3 lines)
> gnu/packages/hardware.scm:1416:12: qmk-udev-rules@0.20.5: the source file
> name should contain the package name

Not entirely sure what this mean, as the udev file is in the qmk_firmware
repo. Should I just redefine it using file-name in the origin declaration?

Toggle quote (2 lines)
> gnu/packages/hardware.scm:1415:13: qmk-udev-rules@0.20.5: can be upgraded to 6.1

The latest release for qmk_firmware is 0.20.5, I'm suspecting it is grabbing
6.1 from the planck-6.1 tag. Can I just ignore this one?

Fredrik Salomonsson (9):
gnu: Add python-hjson.
gnu: Add python-log-symbols.
gnu: Add python-spinners.
gnu: Add python-halo.
gnu: Add python-milc.
gnu: Add python-dotty-dict.
gnu: Add python-hid.
gnu: Add qmk-cli.
gnu: Add qmk-udev-rules.

gnu/packages/hardware.scm | 73 ++++++++++++++
gnu/packages/libusb.scm | 56 +++++++++++
gnu/packages/python-xyz.scm | 193 ++++++++++++++++++++++++++++++++++++
3 files changed, 322 insertions(+)


base-commit: 5481aaacb5f60ba43d8db7e51cb7cc967d5eb55e
--
2.39.2
F
F
Fredrik Salomonsson wrote on 9 Apr 2023 06:31
[PATCH v2 1/9] gnu: Add python-hjson.
(address . 42682@debbugs.gnu.org)(name . Fredrik Salomonsson)(address . plattfot@posteo.net)
20230409043116.13244-2-plattfot@posteo.net
* gnu/packages/python-xyz.scm (python-hjson): New variable.
---
gnu/packages/python-xyz.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (40 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index bd68d060b5..6ce8aa2072 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -135,6 +135,7 @@
;;; Copyright © 2023 Gabriel Wicki <gabriel@erlikon.ch>
;;; Copyright © 2023 Amade Nemes <nemesamade@gmail.com>
;;; Copyright © 2023 Bruno Victal <mirai@makinata.eu>
+;;; Copyright © 2023 Fredrik Salomonsson <plattfot@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -2413,6 +2414,25 @@ (define-public python-humanfriendly
helpers.")
(license license:expat)))
+(define-public python-hjson
+ (package
+ (name "python-hjson")
+ (version "3.1.0")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "hjson" version))
+ (sha256
+ (base32
+ "0xfgrnwr6xaqfkaxnzd06sw8zv6dpkbrk0w0kjbag0yg4xd4gbsm"))))
+ (build-system python-build-system)
+ (arguments
+ (list #:tests? #f)) ; no tests
+ (home-page "https://github.com/hjson/hjson-py")
+ (synopsis "Hjson, the Human JSON user interface")
+ (description "This package provides a configuration file format that caters
+to humans and helps reduce the errors they make.")
+ (license license:expat)))
+
(define-public python-textparser
(package
(name "python-textparser")
--
2.39.2
F
F
Fredrik Salomonsson wrote on 9 Apr 2023 06:31
[PATCH v2 2/9] gnu: Add python-log-symbols.
(address . 42682@debbugs.gnu.org)(name . Fredrik Salomonsson)(address . plattfot@posteo.net)
20230409043116.13244-3-plattfot@posteo.net
* gnu/packages/python-xyz.scm (python-log-symbols): New variable.
---
gnu/packages/python-xyz.scm | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)

Toggle diff (44 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 6ce8aa2072..8b07486130 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -15505,6 +15505,37 @@ (define-public python-colorama-for-awscli
(sha256
(base32 "189n8hpijy14jfan4ha9f5n06mnl33cxz7ay92wjqgkr639s0vg9"))))))
+(define-public python-log-symbols
+ (package
+ (name "python-log-symbols")
+ (version "0.0.14")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "log_symbols" version))
+ (sha256
+ (base32
+ "0mh5d0igw33libfmbsr1ri1p1y644p36nwaa2w6kzrd8w5pvq2yg"))))
+ (build-system python-build-system)
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'patch-test-requirements
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* '("requirements-dev.txt")
+ (("==") ">=")))))))
+ (native-inputs
+ (list python-tox
+ python-nose
+ python-coverage
+ python-pylint))
+ (propagated-inputs
+ (list python-colorama))
+ (home-page "https://github.com/manrajgrover/py-log-symbols")
+ (synopsis "Colored symbols for various log levels for Python")
+ (description "This package provides a Python module that generates colored symbols
+for info, success, warning and error log level.")
+ (license license:expat)))
(define-public python-moto
(package
(name "python-moto")
--
2.39.2
F
F
Fredrik Salomonsson wrote on 9 Apr 2023 06:31
[PATCH v2 3/9] gnu: Add python-spinners.
(address . 42682@debbugs.gnu.org)(name . Fredrik Salomonsson)(address . plattfot@posteo.net)
20230409043116.13244-4-plattfot@posteo.net
* gnu/packages/python-xyz.scm (python-spinners): New variable.
---
gnu/packages/python-xyz.scm | 30 ++++++++++++++++++++++++++++++
1 file changed, 30 insertions(+)

Toggle diff (43 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 8b07486130..d77a7324cc 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -15476,6 +15476,36 @@ (define-public python-progressbar33
;; Either or both of these licenses may be selected.
(license (list license:lgpl2.1+ license:bsd-3))))
+(define-public python-spinners
+ (package
+ (name "python-spinners")
+ (version "0.0.24")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "spinners" version))
+ (sha256
+ (base32
+ "0zz2z6dpdjdq5z8m8w8dfi8by0ih1zrdq0caxm1anwhxg2saxdhy"))))
+ (build-system python-build-system)
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'patch-test-requirements
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* '("requirements-dev.txt")
+ (("==") ">=")))))))
+ (native-inputs
+ (list python-nose
+ python-coverage
+ python-tox
+ python-pylint))
+ (home-page "https://github.com/manrajgrover/py-spinners")
+ (synopsis "Spinners for terminals")
+ (description "This package provides more than 60 spinners for terminals. Is a
+python port of the node library cli-spinners.")
+ (license license:expat)))
+
(define-public python-colorama
(package
(name "python-colorama")
--
2.39.2
F
F
Fredrik Salomonsson wrote on 9 Apr 2023 06:31
[PATCH v2 4/9] gnu: Add python-halo.
(address . 42682@debbugs.gnu.org)(name . Fredrik Salomonsson)(address . plattfot@posteo.net)
20230409043116.13244-5-plattfot@posteo.net
* gnu/packages/python-xyz.scm (python-halo): New variable.
---
gnu/packages/python-xyz.scm | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)

Toggle diff (44 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index d77a7324cc..2e9ab04389 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -15566,6 +15566,37 @@ (define-public python-log-symbols
(description "This package provides a Python module that generates colored symbols
for info, success, warning and error log level.")
(license license:expat)))
+
+(define-public python-halo
+ (package
+ (name "python-halo")
+ (version "0.0.31")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "halo" version))
+ (sha256
+ (base32
+ "1mn97h370ggbc9vi6x8r6akd5q8i512y6kid2nvm67g93r9a6rvv"))))
+ (build-system python-build-system)
+ (native-inputs
+ (list python-tox
+ python-nose
+ python-coverage
+ python-pylint
+ python-twine))
+ (propagated-inputs
+ (list python-colorama
+ python-log-symbols
+ python-six
+ python-spinners
+ python-termcolor))
+ (home-page "https://github.com/manrajgrover/halo")
+ (synopsis "Beautiful terminal spinners in Python")
+ (description "This package provides a Python module that renders various
+fancy looking terminal spinners. The API allow to control color on text
+and/or spinner, what animation if text does not fit etc.")
+ (license license:expat)))
+
(define-public python-moto
(package
(name "python-moto")
--
2.39.2
F
F
Fredrik Salomonsson wrote on 9 Apr 2023 06:31
[PATCH v2 5/9] gnu: Add python-milc.
(address . 42682@debbugs.gnu.org)(name . Fredrik Salomonsson)(address . plattfot@posteo.net)
20230409043116.13244-6-plattfot@posteo.net
* gnu/packages/python-xyz.scm (python-milc): New variable.
---
gnu/packages/python-xyz.scm | 45 +++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)

Toggle diff (58 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 2e9ab04389..715d531a8d 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -17126,6 +17126,51 @@ (define-public python-magic
the same purpose: to provide Python bindings for libmagic.")
(license license:expat)))
+(define-public python-milc
+ (package
+ (name "python-milc")
+ (version "1.6.6")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "milc" version))
+ (sha256
+ (base32
+ "007hdwp659s1wfld92pxdgjz9ijvh949wyf1cbmyzkma30vng8d4"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ (list
+ python-appdirs
+ python-argcomplete
+ python-colorama
+ python-halo
+ python-spinners))
+ (home-page "https://milc.clueboard.co/")
+ (synopsis "Opinionated Batteries-Included Python 3 CLI Framework")
+ (description "MILC is a framework for writing @acronym{CLI, Command Line Interface}
+applications in Python 3.6+. It gives you all the features users
+expect from a modern CLI tool out of the box:
+@itemize @bullet
+@item
+CLI Argument Parsing, with or without subcommands.
+@item
+Automatic tab-completion support through argcomplete.
+@item
+Configuration file which can be overridden by CLI options.
+@item
+ANSI color support- even on Windows- with colorama.
+@item
+Logging to stderr and/or a file, with ANSI colors.
+@item
+Easy method for printing to stdout with ANSI colors
+@item
+Labeling log output with colored emoji to easily distinguish message types.
+@item
+Thread safety.
+@item
+More than 60 built-in spinners with the ability to add your own.
+@end itemize")
+ (license license:expat)))
+
(define-public s3cmd
(package
(name "s3cmd")
--
2.39.2
F
F
Fredrik Salomonsson wrote on 9 Apr 2023 06:31
[PATCH v2 6/9] gnu: Add python-dotty-dict.
(address . 42682@debbugs.gnu.org)(name . Fredrik Salomonsson)(address . plattfot@posteo.net)
20230409043116.13244-7-plattfot@posteo.net
* gnu/packages/python-xyz.scm (python-dotty-dict): New variable.
---
gnu/packages/python-xyz.scm | 36 ++++++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)

Toggle diff (49 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 715d531a8d..6207b360c7 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -27501,6 +27501,42 @@ (define-public python-dictpath
accessor layer.")
(license license:asl2.0)))
+(define-public python-dotty-dict
+ (package
+ (name "python-dotty-dict")
+ (version "1.3.1")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "dotty_dict" version))
+ (sha256
+ (base32
+ "058sah2nyg44xq5wxywlzc3abzcv9fifnlvsflwma9mfp01nw0ab"))))
+ (build-system python-build-system)
+ (home-page "https://github.com/pawelzny/dotty_dict")
+ (synopsis "Dictionary wrapper for quick access to deeply nested keys")
+ (description "Has the following features:
+@itemize @bullet
+@item
+Simple wrapper around python dictionary and dict like objects.
+@item
+Two wrappers with the same dict are considered equal.
+@item
+Access to deeply nested keys with dot notation: @code{dot['deeply.nested.key']}.
+@item
+Create, read, update and delete nested keys of any length.
+@item
+Expose all dictionary methods like @code{.get}, @code{.pop}, @code{.keys} and other.
+@item
+Access dicts in lists by index @code{dot['parents.0.first_name']}.
+@item
+key=value caching to speed up lookups and low down memory consumption.
+@item
+Support for setting value in multidimensional lists.
+@item
+Support for accessing lists with slices.
+@end itemize")
+ (license license:expat)))
+
(define-public pyzo
(package
(name "pyzo")
--
2.39.2
F
F
Fredrik Salomonsson wrote on 9 Apr 2023 06:31
[PATCH v2 7/9] gnu: Add python-hid.
(address . 42682@debbugs.gnu.org)(name . Fredrik Salomonsson)(address . plattfot@posteo.net)
20230409043116.13244-8-plattfot@posteo.net
* gnu/packages/libusb.scm (python-hid): New variable.
---
gnu/packages/libusb.scm | 56 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 56 insertions(+)

Toggle diff (90 lines)
diff --git a/gnu/packages/libusb.scm b/gnu/packages/libusb.scm
index c009c78e88..266ab459a1 100644
--- a/gnu/packages/libusb.scm
+++ b/gnu/packages/libusb.scm
@@ -13,6 +13,7 @@
;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2022 Jacob Hrbek <kreyren@rixotstudio.cz>
;;; Copyright © 2023 Sharlatan Hellseher <sharlatanus@gmail.com>
+;;; Copyright © 2023 Fredrik Salomonsson <plattfot@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -44,6 +45,7 @@ (define-module (gnu packages libusb)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (gnu packages autotools)
+ #:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages curl)
#:use-module (gnu packages gnupg)
@@ -54,6 +56,7 @@ (define-module (gnu packages libusb)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
+ #:use-module (gnu packages python-check)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages readline)
#:use-module (gnu packages tls)
@@ -650,6 +653,59 @@ (define-public hidapi
license:bsd-3
(license:non-copyleft "file://LICENSE-orig.txt")))))
+(define-public python-hid
+ (package
+ (name "python-hid")
+ (version "1.0.5")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "hid" version))
+ (sha256
+ (base32
+ "1s5hvfbmnlmifswr5514f4xxn5rcd429bdcdqzgwkdxrg9zlx58y"))))
+ (build-system python-build-system)
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'patch-library-paths
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* '("hid/__init__.py")
+ (("'libhidapi-hidraw.so'")
+ (string-append
+ "'" (search-input-file inputs "/lib/libhidapi-hidraw.so") "'"))
+ (("'libhidapi-libusb.so'")
+ (string-append
+ "'" (search-input-file inputs "/lib/libhidapi-libusb.so") "'"))
+ ;; Nuke the rest of the library_paths
+ (("[[:blank:]]+'libhidapi-hidraw.so.0',\n")
+ "")
+ (("[[:blank:]]+'libhidapi-libusb.so.0',\n")
+ "")
+ (("[[:blank:]]+'libhidapi-iohidmanager.so',\n")
+ "")
+ (("[[:blank:]]+'libhidapi-iohidmanager.so.0',\n")
+ "")
+ (("[[:blank:]]+'libhidapi.dylib',\n")
+ "")
+ (("[[:blank:]]+'hidapi.dll',\n")
+ "")
+ (("[[:blank:]]+'hidapi-0.dll',\n")
+ "")))))))
+ (native-inputs
+ (list
+ python-nose
+ python-tox))
+ (inputs
+ (list
+ hidapi))
+ (home-page "https://github.com/apmorton/pyhidapi")
+ (synopsis "Ctypes bindings for hidapi")
+ (description "This package provides ctypes bindings in Python for the @code{hidapi}
+package. Note that this package conflicts with the
+@code{python-hidapi} package as they occupy the same Python namespace.")
+ (license license:expat)))
+
(define-public python-hidapi
(package
(name "python-hidapi")
--
2.39.2
F
F
Fredrik Salomonsson wrote on 9 Apr 2023 06:31
[PATCH v2 8/9] gnu: Add qmk-cli.
(address . 42682@debbugs.gnu.org)(name . Fredrik Salomonsson)(address . plattfot@posteo.net)
20230409043116.13244-9-plattfot@posteo.net
* gnu/packages/hardware.scm (qmk-cli): New variable.
---
gnu/packages/hardware.scm | 49 +++++++++++++++++++++++++++++++++++++++
1 file changed, 49 insertions(+)

Toggle diff (84 lines)
diff --git a/gnu/packages/hardware.scm b/gnu/packages/hardware.scm
index 299d7b96a1..1f8be61ca5 100644
--- a/gnu/packages/hardware.scm
+++ b/gnu/packages/hardware.scm
@@ -16,6 +16,7 @@
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2023 Spencer Skylar Chan <schan12@umd.edu>
+;;; Copyright © 2023 Fredrik Salomonsson <plattfot@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -76,6 +77,8 @@ (define-module (gnu packages hardware)
#:use-module (gnu packages protobuf)
#:use-module (gnu packages pulseaudio)
#:use-module (gnu packages python)
+ #:use-module (gnu packages python-build)
+ #:use-module (gnu packages python-check)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
@@ -90,10 +93,12 @@ (define-module (gnu packages hardware)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#:use-module (guix build-system cmake)
+ #:use-module (guix build-system copy)
#:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system gnu)
#:use-module (guix build-system meson)
#:use-module (guix build-system perl)
+ #:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix download)
#:use-module (guix gexp)
@@ -1359,3 +1364,47 @@ (define-public libcpuid
string, code name and other information from x86 CPU. This library is not to be
confused with the @code{cpuid} command line utility from package @code{cpuid}.")
(license license:bsd-2))))
+
+(define-public qmk-cli
+ (package
+ (name "qmk-cli")
+ (version "1.1.2")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "qmk" version))
+ (sha256
+ (base32
+ "1619q9v90740dbg8xpzqlhwcasz42xj737803aiip8qc3a7zhwgq"))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list #:tests? #f)) ; test removed in pypi
+ (inputs
+ (list
+ python-hid
+ python-hjson
+ python-jsonschema-next
+ python-milc
+ python-pillow
+ python-pygments
+ python-pyserial
+ python-pyusb
+ python-dotty-dict
+ python-tox
+ python-wheel))
+ (home-page "https://qmk.fm")
+ (synopsis "Program to help users work with QMK Firmware")
+ (description
+ "This package provides a @acronym{CLI, command line interface} based
+program to help users work with QMK Firmware. Where QMK Firmware is
+an open firmware for custom keyboards, e.g. Planck, ErgoDox, Corne and
+many more. This @acronym{CLI} program is mainly used for building the
+QMK firmware, but also has some other convenience utilities. To be
+able to build a firmware also include the following packages:
+@code{avr-toolchain} and either @code{dfu-programmer} or
+@code{avrdude} depending on what microcontroller(s) is/are used for
+the keyboard. To be able to clone the QMK Firmware project using
+@command{qmk clone} include the @code{git} package. It is highly
+recommended to setup udev rules to avoid running this as root when
+flashing the firmware, see @code{qmk-udev-rules} and
+@code{udev-service-type}.")
+ (license license:expat)))
--
2.39.2
F
F
Fredrik Salomonsson wrote on 9 Apr 2023 06:31
[PATCH v2 9/9] gnu: Add qmk-udev-rules.
(address . 42682@debbugs.gnu.org)(name . Fredrik Salomonsson)(address . plattfot@posteo.net)
20230409043116.13244-10-plattfot@posteo.net
* gnu/packages/hardware.scm (qmk-udev-rules): New variable.
---
gnu/packages/hardware.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/hardware.scm b/gnu/packages/hardware.scm
index 1f8be61ca5..eab3cf1b21 100644
--- a/gnu/packages/hardware.scm
+++ b/gnu/packages/hardware.scm
@@ -1408,3 +1408,27 @@ (define-public qmk-cli
flashing the firmware, see @code{qmk-udev-rules} and
@code{udev-service-type}.")
(license license:expat)))
+
+(define-public qmk-udev-rules
+ (package
+ (name "qmk-udev-rules")
+ (version "0.20.5") ;; Using qmk_firmware's version
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/qmk/qmk_firmware")
+ (commit version)))
+ (sha256
+ (base32
+ "0v45xvmv351717y2v77fy26ivsnnhsl6ynd7v1pvprpkpf9jk820"))))
+ (build-system copy-build-system)
+ (arguments
+ '(#:install-plan '(("./util/udev" "lib/udev/rules.d"
+ #:include-regexp ("rules$")))))
+ (home-page "https://github.com/qmk/qmk_firmware")
+ (synopsis "Udev rules for QMK Firmware")
+ (description
+ "This package provides a set of udev rules to specify the proper
+privileges for flashing QMK compatible devices without needing root. Require
+group @code{plugdev} to be added to each user that needs this.")
+ (license license:gpl2)))
--
2.39.2
F
F
Fredrik Salomonsson wrote on 29 May 2023 01:43
[PATCH v3 0/9] Add qmk-cli
(address . 42682@debbugs.gnu.org)(name . Fredrik Salomonsson)(address . plattfot@posteo.net)
cover.1685316748.git.plattfot@posteo.net
Rebased the patches against the latest changes in master. Mostly resolved
conflicts with copyright lines. But did change python-jsonschema-next to
python-jsonschema for qmk-cli.

Fredrik Salomonsson (9):
gnu: Add python-hjson.
gnu: Add python-log-symbols.
gnu: Add python-spinners.
gnu: Add python-halo.
gnu: Add python-milc.
gnu: Add python-dotty-dict.
gnu: Add python-hid.
gnu: Add qmk-cli.
gnu: Add qmk-udev-rules.

gnu/packages/hardware.scm | 71 +++++++++++++
gnu/packages/libusb.scm | 56 +++++++++++
gnu/packages/python-xyz.scm | 193 ++++++++++++++++++++++++++++++++++++
3 files changed, 320 insertions(+)


base-commit: d64d6ea2cf5a1be801be355031fb2cfa5901a92a
--
2.40.1
F
F
Fredrik Salomonsson wrote on 29 May 2023 01:43
[PATCH v3 1/9] gnu: Add python-hjson.
(address . 42682@debbugs.gnu.org)(name . Fredrik Salomonsson)(address . plattfot@posteo.net)
35e65b5e4fd47ee0756cfaab537ed9b1e9b52031.1685316748.git.plattfot@posteo.net
* gnu/packages/python-xyz.scm (python-hjson): New variable.
---
gnu/packages/python-xyz.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (40 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index f7e3f6f538..e6fc35eb6c 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -137,6 +137,7 @@
;;; Copyright © 2023 Bruno Victal <mirai@makinata.eu>
;;; Copyright © 2023 Kaelyn Takata <kaelyn.alexi@protonmail.com>
;;; Copyright © 2023 Dominik Delgado Steuter <d@delgado.nrw>
+;;; Copyright © 2023 Fredrik Salomonsson <plattfot@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -2594,6 +2595,25 @@ (define-public python-humanfriendly
helpers.")
(license license:expat)))
+(define-public python-hjson
+ (package
+ (name "python-hjson")
+ (version "3.1.0")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "hjson" version))
+ (sha256
+ (base32
+ "0xfgrnwr6xaqfkaxnzd06sw8zv6dpkbrk0w0kjbag0yg4xd4gbsm"))))
+ (build-system python-build-system)
+ (arguments
+ (list #:tests? #f)) ; no tests
+ (home-page "https://github.com/hjson/hjson-py")
+ (synopsis "Hjson, the Human JSON user interface")
+ (description "This package provides a configuration file format that caters
+to humans and helps reduce the errors they make.")
+ (license license:expat)))
+
(define-public python-textparser
(package
(name "python-textparser")
--
2.40.1
F
F
Fredrik Salomonsson wrote on 29 May 2023 01:44
[PATCH v3 2/9] gnu: Add python-log-symbols.
(address . 42682@debbugs.gnu.org)(name . Fredrik Salomonsson)(address . plattfot@posteo.net)
995818a7c2554904c0decf0d66e100ddcbfbc402.1685316748.git.plattfot@posteo.net
* gnu/packages/python-xyz.scm (python-log-symbols): New variable.
---
gnu/packages/python-xyz.scm | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)

Toggle diff (44 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index e6fc35eb6c..f7536b0f20 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -16025,6 +16025,37 @@ (define-public python-colorama-for-awscli
(sha256
(base32 "189n8hpijy14jfan4ha9f5n06mnl33cxz7ay92wjqgkr639s0vg9"))))))
+(define-public python-log-symbols
+ (package
+ (name "python-log-symbols")
+ (version "0.0.14")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "log_symbols" version))
+ (sha256
+ (base32
+ "0mh5d0igw33libfmbsr1ri1p1y644p36nwaa2w6kzrd8w5pvq2yg"))))
+ (build-system python-build-system)
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'patch-test-requirements
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* '("requirements-dev.txt")
+ (("==") ">=")))))))
+ (native-inputs
+ (list python-tox
+ python-nose
+ python-coverage
+ python-pylint))
+ (propagated-inputs
+ (list python-colorama))
+ (home-page "https://github.com/manrajgrover/py-log-symbols")
+ (synopsis "Colored symbols for various log levels for Python")
+ (description "This package provides a Python module that generates colored symbols
+for info, success, warning and error log level.")
+ (license license:expat)))
(define-public python-moto
(package
(name "python-moto")
--
2.40.1
F
F
Fredrik Salomonsson wrote on 29 May 2023 01:44
[PATCH v3 3/9] gnu: Add python-spinners.
(address . 42682@debbugs.gnu.org)(name . Fredrik Salomonsson)(address . plattfot@posteo.net)
51b3ff88d2952f19b46bb6aa98101e9d6f462a5a.1685316748.git.plattfot@posteo.net
* gnu/packages/python-xyz.scm (python-spinners): New variable.
---
gnu/packages/python-xyz.scm | 30 ++++++++++++++++++++++++++++++
1 file changed, 30 insertions(+)

Toggle diff (43 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index f7536b0f20..75f93f609a 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -15996,6 +15996,36 @@ (define-public python-progressbar33
;; Either or both of these licenses may be selected.
(license (list license:lgpl2.1+ license:bsd-3))))
+(define-public python-spinners
+ (package
+ (name "python-spinners")
+ (version "0.0.24")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "spinners" version))
+ (sha256
+ (base32
+ "0zz2z6dpdjdq5z8m8w8dfi8by0ih1zrdq0caxm1anwhxg2saxdhy"))))
+ (build-system python-build-system)
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'patch-test-requirements
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* '("requirements-dev.txt")
+ (("==") ">=")))))))
+ (native-inputs
+ (list python-nose
+ python-coverage
+ python-tox
+ python-pylint))
+ (home-page "https://github.com/manrajgrover/py-spinners")
+ (synopsis "Spinners for terminals")
+ (description "This package provides more than 60 spinners for terminals. Is a
+python port of the node library cli-spinners.")
+ (license license:expat)))
+
(define-public python-colorama
(package
(name "python-colorama")
--
2.40.1
F
F
Fredrik Salomonsson wrote on 29 May 2023 01:44
[PATCH v3 4/9] gnu: Add python-halo.
(address . 42682@debbugs.gnu.org)(name . Fredrik Salomonsson)(address . plattfot@posteo.net)
d8bb9324d00b8cec68bb2ed8d7c0e8e201c3ba49.1685316748.git.plattfot@posteo.net
* gnu/packages/python-xyz.scm (python-halo): New variable.
---
gnu/packages/python-xyz.scm | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)

Toggle diff (44 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 75f93f609a..5df4e30e83 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -16086,6 +16086,37 @@ (define-public python-log-symbols
(description "This package provides a Python module that generates colored symbols
for info, success, warning and error log level.")
(license license:expat)))
+
+(define-public python-halo
+ (package
+ (name "python-halo")
+ (version "0.0.31")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "halo" version))
+ (sha256
+ (base32
+ "1mn97h370ggbc9vi6x8r6akd5q8i512y6kid2nvm67g93r9a6rvv"))))
+ (build-system python-build-system)
+ (native-inputs
+ (list python-tox
+ python-nose
+ python-coverage
+ python-pylint
+ python-twine))
+ (propagated-inputs
+ (list python-colorama
+ python-log-symbols
+ python-six
+ python-spinners
+ python-termcolor))
+ (home-page "https://github.com/manrajgrover/halo")
+ (synopsis "Beautiful terminal spinners in Python")
+ (description "This package provides a Python module that renders various
+fancy looking terminal spinners. The API allow to control color on text
+and/or spinner, what animation if text does not fit etc.")
+ (license license:expat)))
+
(define-public python-moto
(package
(name "python-moto")
--
2.40.1
F
F
Fredrik Salomonsson wrote on 29 May 2023 01:44
[PATCH v3 5/9] gnu: Add python-milc.
(address . 42682@debbugs.gnu.org)(name . Fredrik Salomonsson)(address . plattfot@posteo.net)
e6b68a97a02653b11bce8167c5b73698c90ba13c.1685316748.git.plattfot@posteo.net
* gnu/packages/python-xyz.scm (python-milc): New variable.
---
gnu/packages/python-xyz.scm | 45 +++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)

Toggle diff (58 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 5df4e30e83..9b71ba1872 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -17685,6 +17685,51 @@ (define-public python-magic
the same purpose: to provide Python bindings for libmagic.")
(license license:expat)))
+(define-public python-milc
+ (package
+ (name "python-milc")
+ (version "1.6.6")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "milc" version))
+ (sha256
+ (base32
+ "007hdwp659s1wfld92pxdgjz9ijvh949wyf1cbmyzkma30vng8d4"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ (list
+ python-appdirs
+ python-argcomplete
+ python-colorama
+ python-halo
+ python-spinners))
+ (home-page "https://milc.clueboard.co/")
+ (synopsis "Opinionated Batteries-Included Python 3 CLI Framework")
+ (description "MILC is a framework for writing @acronym{CLI, Command Line Interface}
+applications in Python 3.6+. It gives you all the features users
+expect from a modern CLI tool out of the box:
+@itemize @bullet
+@item
+CLI Argument Parsing, with or without subcommands.
+@item
+Automatic tab-completion support through argcomplete.
+@item
+Configuration file which can be overridden by CLI options.
+@item
+ANSI color support- even on Windows- with colorama.
+@item
+Logging to stderr and/or a file, with ANSI colors.
+@item
+Easy method for printing to stdout with ANSI colors
+@item
+Labeling log output with colored emoji to easily distinguish message types.
+@item
+Thread safety.
+@item
+More than 60 built-in spinners with the ability to add your own.
+@end itemize")
+ (license license:expat)))
+
(define-public s3cmd
(package
(name "s3cmd")
--
2.40.1
F
F
Fredrik Salomonsson wrote on 29 May 2023 01:44
[PATCH v3 6/9] gnu: Add python-dotty-dict.
(address . 42682@debbugs.gnu.org)(name . Fredrik Salomonsson)(address . plattfot@posteo.net)
329d49c7d235ed6e3130ff6b251dffa7ee91779c.1685316748.git.plattfot@posteo.net
* gnu/packages/python-xyz.scm (python-dotty-dict): New variable.
---
gnu/packages/python-xyz.scm | 36 ++++++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)

Toggle diff (49 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 9b71ba1872..947e33176c 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -28145,6 +28145,42 @@ (define-public python-dictpath
accessor layer.")
(license license:asl2.0)))
+(define-public python-dotty-dict
+ (package
+ (name "python-dotty-dict")
+ (version "1.3.1")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "dotty_dict" version))
+ (sha256
+ (base32
+ "058sah2nyg44xq5wxywlzc3abzcv9fifnlvsflwma9mfp01nw0ab"))))
+ (build-system python-build-system)
+ (home-page "https://github.com/pawelzny/dotty_dict")
+ (synopsis "Dictionary wrapper for quick access to deeply nested keys")
+ (description "Has the following features:
+@itemize @bullet
+@item
+Simple wrapper around python dictionary and dict like objects.
+@item
+Two wrappers with the same dict are considered equal.
+@item
+Access to deeply nested keys with dot notation: @code{dot['deeply.nested.key']}.
+@item
+Create, read, update and delete nested keys of any length.
+@item
+Expose all dictionary methods like @code{.get}, @code{.pop}, @code{.keys} and other.
+@item
+Access dicts in lists by index @code{dot['parents.0.first_name']}.
+@item
+key=value caching to speed up lookups and low down memory consumption.
+@item
+Support for setting value in multidimensional lists.
+@item
+Support for accessing lists with slices.
+@end itemize")
+ (license license:expat)))
+
(define-public pyzo
(package
(name "pyzo")
--
2.40.1
F
F
Fredrik Salomonsson wrote on 29 May 2023 01:44
[PATCH v3 7/9] gnu: Add python-hid.
(address . 42682@debbugs.gnu.org)(name . Fredrik Salomonsson)(address . plattfot@posteo.net)
e713c0705f257f70165c13c544eca48b523f8104.1685316748.git.plattfot@posteo.net
* gnu/packages/libusb.scm (python-hid): New variable.
---
gnu/packages/libusb.scm | 56 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 56 insertions(+)

Toggle diff (90 lines)
diff --git a/gnu/packages/libusb.scm b/gnu/packages/libusb.scm
index d0837c8a91..8e81b0c1a9 100644
--- a/gnu/packages/libusb.scm
+++ b/gnu/packages/libusb.scm
@@ -13,6 +13,7 @@
;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2022 Jacob Hrbek <kreyren@rixotstudio.cz>
;;; Copyright © 2023 Sharlatan Hellseher <sharlatanus@gmail.com>
+;;; Copyright © 2023 Fredrik Salomonsson <plattfot@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -44,6 +45,7 @@ (define-module (gnu packages libusb)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (gnu packages autotools)
+ #:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages curl)
#:use-module (gnu packages gnupg)
@@ -54,6 +56,7 @@ (define-module (gnu packages libusb)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
+ #:use-module (gnu packages python-check)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages readline)
#:use-module (gnu packages tls)
@@ -650,6 +653,59 @@ (define-public hidapi
license:bsd-3
(license:non-copyleft "file://LICENSE-orig.txt")))))
+(define-public python-hid
+ (package
+ (name "python-hid")
+ (version "1.0.5")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "hid" version))
+ (sha256
+ (base32
+ "1s5hvfbmnlmifswr5514f4xxn5rcd429bdcdqzgwkdxrg9zlx58y"))))
+ (build-system python-build-system)
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'patch-library-paths
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* '("hid/__init__.py")
+ (("'libhidapi-hidraw.so'")
+ (string-append
+ "'" (search-input-file inputs "/lib/libhidapi-hidraw.so") "'"))
+ (("'libhidapi-libusb.so'")
+ (string-append
+ "'" (search-input-file inputs "/lib/libhidapi-libusb.so") "'"))
+ ;; Nuke the rest of the library_paths
+ (("[[:blank:]]+'libhidapi-hidraw.so.0',\n")
+ "")
+ (("[[:blank:]]+'libhidapi-libusb.so.0',\n")
+ "")
+ (("[[:blank:]]+'libhidapi-iohidmanager.so',\n")
+ "")
+ (("[[:blank:]]+'libhidapi-iohidmanager.so.0',\n")
+ "")
+ (("[[:blank:]]+'libhidapi.dylib',\n")
+ "")
+ (("[[:blank:]]+'hidapi.dll',\n")
+ "")
+ (("[[:blank:]]+'hidapi-0.dll',\n")
+ "")))))))
+ (native-inputs
+ (list
+ python-nose
+ python-tox))
+ (inputs
+ (list
+ hidapi))
+ (home-page "https://github.com/apmorton/pyhidapi")
+ (synopsis "Ctypes bindings for hidapi")
+ (description "This package provides ctypes bindings in Python for the @code{hidapi}
+package. Note that this package conflicts with the
+@code{python-hidapi} package as they occupy the same Python namespace.")
+ (license license:expat)))
+
(define-public python-hidapi
(package
(name "python-hidapi")
--
2.40.1
F
F
Fredrik Salomonsson wrote on 29 May 2023 01:44
[PATCH v3 8/9] gnu: Add qmk-cli.
(address . 42682@debbugs.gnu.org)(name . Fredrik Salomonsson)(address . plattfot@posteo.net)
e5dcc56f5eb7aaa97211117ddb5066785a254be3.1685316748.git.plattfot@posteo.net
* gnu/packages/hardware.scm (qmk-cli): New variable.
---
gnu/packages/hardware.scm | 47 +++++++++++++++++++++++++++++++++++++++
1 file changed, 47 insertions(+)

Toggle diff (82 lines)
diff --git a/gnu/packages/hardware.scm b/gnu/packages/hardware.scm
index c23299d1db..ebf5f47e1a 100644
--- a/gnu/packages/hardware.scm
+++ b/gnu/packages/hardware.scm
@@ -16,6 +16,7 @@
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2023 Spencer Skylar Chan <schan12@umd.edu>
+;;; Copyright © 2023 Fredrik Salomonsson <plattfot@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -79,6 +80,8 @@ (define-module (gnu packages hardware)
#:use-module (gnu packages protobuf)
#:use-module (gnu packages pulseaudio)
#:use-module (gnu packages python)
+ #:use-module (gnu packages python-build)
+ #:use-module (gnu packages python-check)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
@@ -94,10 +97,12 @@ (define-module (gnu packages hardware)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#:use-module (guix build-system cmake)
+ #:use-module (guix build-system copy)
#:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system gnu)
#:use-module (guix build-system meson)
#:use-module (guix build-system perl)
+ #:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix download)
#:use-module (guix gexp)
@@ -1438,3 +1443,45 @@ (define-public lxi-tools
on the LXI Consortium standard which defines the communication protocols for
modern instrumentation and data acquision systems using Ethernet.")
(license license:bsd-3)))
+
+(define-public qmk-cli
+ (package
+ (name "qmk-cli")
+ (version "1.1.2")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "qmk" version))
+ (sha256
+ (base32
+ "1619q9v90740dbg8xpzqlhwcasz42xj737803aiip8qc3a7zhwgq"))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list #:tests? #f)) ; test removed in pypi
+ (inputs
+ (list
+ python-hid
+ python-hjson
+ python-jsonschema
+ python-milc
+ python-pillow
+ python-pygments
+ python-pyserial
+ python-pyusb
+ python-dotty-dict
+ python-tox
+ python-wheel))
+ (home-page "https://qmk.fm")
+ (synopsis "Program to help users work with QMK Firmware")
+ (description
+ "This package provides a @acronym{CLI, command line interface} based
+program to help users work with QMK Firmware. Where QMK Firmware is an open
+firmware for custom keyboards, e.g. Planck, ErgoDox, Corne and many more.
+This @acronym{CLI} program is mainly used for building the QMK firmware, but
+also has some other convenience utilities. To be able to build a firmware
+also include the following packages: @code{avr-toolchain} and either
+@code{dfu-programmer} or @code{avrdude} depending on what microcontroller(s)
+is/are used for the keyboard. To be able to clone the QMK Firmware project
+using @command{qmk clone} include the @code{git} package. It is highly
+recommended to setup udev rules to avoid running this as root when flashing
+the firmware, see @code{qmk-udev-rules} and @code{udev-service-type}.")
+ (license license:expat)))
--
2.40.1
F
F
Fredrik Salomonsson wrote on 29 May 2023 01:44
[PATCH v3 9/9] gnu: Add qmk-udev-rules.
(address . 42682@debbugs.gnu.org)(name . Fredrik Salomonsson)(address . plattfot@posteo.net)
33c172384ca04fe6ec1685c5c924301424160852.1685316748.git.plattfot@posteo.net
* gnu/packages/hardware.scm (qmk-udev-rules): New variable.
---
gnu/packages/hardware.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/hardware.scm b/gnu/packages/hardware.scm
index ebf5f47e1a..e01eb320f2 100644
--- a/gnu/packages/hardware.scm
+++ b/gnu/packages/hardware.scm
@@ -1485,3 +1485,27 @@ (define-public qmk-cli
recommended to setup udev rules to avoid running this as root when flashing
the firmware, see @code{qmk-udev-rules} and @code{udev-service-type}.")
(license license:expat)))
+
+(define-public qmk-udev-rules
+ (package
+ (name "qmk-udev-rules")
+ (version "0.20.5") ;; Using qmk_firmware's version
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/qmk/qmk_firmware")
+ (commit version)))
+ (sha256
+ (base32
+ "0v45xvmv351717y2v77fy26ivsnnhsl6ynd7v1pvprpkpf9jk820"))))
+ (build-system copy-build-system)
+ (arguments
+ '(#:install-plan '(("./util/udev" "lib/udev/rules.d"
+ #:include-regexp ("rules$")))))
+ (home-page "https://github.com/qmk/qmk_firmware")
+ (synopsis "Udev rules for QMK Firmware")
+ (description
+ "This package provides a set of udev rules to specify the proper
+privileges for flashing QMK compatible devices without needing root. Require
+group @code{plugdev} to be added to each user that needs this.")
+ (license license:gpl2)))
--
2.40.1
F
F
Fredrik Salomonsson wrote on 19 Aug 2023 02:34
[PATCH v3 0/9] Add qmk-cli
(address . 42682@debbugs.gnu.org)
87sf8fq391.fsf@posteo.net
Hi,

Pinging this to see if there is anyone that can take a look at the
patches. I got it in my personal channel right now and I've flashed
three keyboards with this and it works fine.

E.g.

guix shell avr-toolchain dfu-programmer qmk-cli -- qmk flash -kb kyria -km plattfot -bl dfu-split-left

thanks

--
s/Fred[re]+i[ck]+/Fredrik/g
V
V
Vagrant Cascadian wrote on 2 Sep 2023 07:23
87msy5no6c.fsf@wireframe
retitle 42682 add qmk udev rules
thanks

On 2023-08-19, Fredrik Salomonsson wrote:
Toggle quote (4 lines)
> Pinging this to see if there is anyone that can take a look at the
> patches. I got it in my personal channel right now and I've flashed
> three keyboards with this and it works fine.

Most of the packages are now included from another patch series:


74d72046bdc1ed6c859565570d0db58d20c9ddd7 gnu: Add qmk.
7c2fa3e8479401b020001dc26edb5c748877d1ca gnu: Add python-milc.
a8f881d9b354ed46058477ae807cc601060bed1e gnu: Add python-dotty-dict.
b3cee1c7e86601bae6dbd3beed566ecefa25f626 gnu: Add python-hjson.
a012881e158cca32d9e167e8364796b84ff349b0 gnu: Add python-halo.
3080d0d8d714dd066970bd0a4b684150dcdbe67b gnu: Add python-log-symbols.
d98bc6094120fa26d0de6af5cc16bc7644076f7c gnu: Add python-spinners.
2da454d2033d95f108c26ac0018cf73b18823d43 gnu: Add python-hid.

The main outstanding one at a quick glance seems to be the udev
rules, if that is still needed... I have retitled the bug accordingly.


live well,
vagrant
-----BEGIN PGP SIGNATURE-----

iHUEARYKAB0WIQRlgHNhO/zFx+LkXUXcUY/If5cWqgUCZPLG2wAKCRDcUY/If5cW
qtDtAQCz/qS0/y/3vuF2pXGmHlnKHd2c+/BfeL2Zhu6LI521JQD/SH8LdgY9/rxj
USWPITlc8PTZX1p06gXwwFAr95frLgI=
=XmFT
-----END PGP SIGNATURE-----

M
M
Maxim Cournoyer wrote on 10 Oct 2023 05:56
(name . Vagrant Cascadian)(address . vagrant@debian.org)
87pm1n5dvp.fsf@gmail.com
Hello,

Vagrant Cascadian <vagrant@debian.org> writes:

Toggle quote (23 lines)
> retitle 42682 add qmk udev rules
> thanks
>
> On 2023-08-19, Fredrik Salomonsson wrote:
>> Pinging this to see if there is anyone that can take a look at the
>> patches. I got it in my personal channel right now and I've flashed
>> three keyboards with this and it works fine.
>
> Most of the packages are now included from another patch series:
>
>
> 74d72046bdc1ed6c859565570d0db58d20c9ddd7 gnu: Add qmk.
> 7c2fa3e8479401b020001dc26edb5c748877d1ca gnu: Add python-milc.
> a8f881d9b354ed46058477ae807cc601060bed1e gnu: Add python-dotty-dict.
> b3cee1c7e86601bae6dbd3beed566ecefa25f626 gnu: Add python-hjson.
> a012881e158cca32d9e167e8364796b84ff349b0 gnu: Add python-halo.
> 3080d0d8d714dd066970bd0a4b684150dcdbe67b gnu: Add python-log-symbols.
> d98bc6094120fa26d0de6af5cc16bc7644076f7c gnu: Add python-spinners.
> 2da454d2033d95f108c26ac0018cf73b18823d43 gnu: Add python-hid.
>
> The main outstanding one at a quick glance seems to be the udev
> rules, if that is still needed... I have retitled the bug accordingly.

I've salvaged the missing parts, adjusted them and pushed along the
qmk-firmware series I had prepared in bug#66217.

Closing!

--
Thanks,
Maxim
Closed
?