From patchwork Tue Sep 26 19:04:24 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Maxim Cournoyer X-Patchwork-Id: 54326 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id C362027BBE2; Tue, 26 Sep 2023 20:39:42 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI, SPF_HELO_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 79D5B27BBEA for ; Tue, 26 Sep 2023 20:39:40 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlDtV-0006fG-QA; Tue, 26 Sep 2023 15:38:53 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlDtS-0006eL-G2 for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:50 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qlDtQ-0006M5-Iv for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:50 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qlDtd-00010h-Ml for guix-patches@gnu.org; Tue, 26 Sep 2023 15:39:01 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#66217] [PATCH 01/22] gnu: make-avr-toolchain: Add a #:xgcc argument. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Tue, 26 Sep 2023 19:39:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66217 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 66217@debbugs.gnu.org Cc: Maxim Cournoyer Received: via spool by 66217-submit@debbugs.gnu.org id=B66217.16957570913552 (code B ref 66217); Tue, 26 Sep 2023 19:39:01 +0000 Received: (at 66217) by debbugs.gnu.org; 26 Sep 2023 19:38:11 +0000 Received: from localhost ([127.0.0.1]:49794 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDso-0000v2-MF for submit@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:11 -0400 Received: from mail-oo1-xc33.google.com ([2607:f8b0:4864:20::c33]:58867) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDsm-0000uj-DP for 66217@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:09 -0400 Received: by mail-oo1-xc33.google.com with SMTP id 006d021491bc7-573912a7b14so5002457eaf.1 for <66217@debbugs.gnu.org>; Tue, 26 Sep 2023 12:37:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1695757069; x=1696361869; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=/vcVm38Tirl1qtmriBb6kD/2JGsuP+DYWn5slrGOxYU=; b=iovcxoRny8NXLuq+Kc3QyPaBGbhqh9qkbiz53lha0apS12b5mR6jDGVnvp+GNaM/lc IGUyDjXEsKMFp4aW9wAUVsFOkhHmagPSprNR+M+19cAtaanib/sJpVBXFovfjBjNroMY 0N7JldOzvHVIsTDAOBULxyrx2TdyQ9F3Ai6r6MySS1vTZ6R15srTiM88MwGco4S+232b AoRotXqACutF/QmQkVTI2L1idTK9HRl9V2STXQ8BLR/g6gQ/lMJrttpzvdqs6C1u0oDN V4Do22EA3GSPIUwakUS0YR1/fhgOefiZ6ihjc04+rdG0MmVKR1m6FuSPSfZ0tGySBAmY 47jA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695757069; x=1696361869; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=/vcVm38Tirl1qtmriBb6kD/2JGsuP+DYWn5slrGOxYU=; b=Icdpz9mzuQU0r5NAsKtr01GN/f23+ymEfpMSbMYCto9MhpA3XYtz3Zzp8B44Z6vQ43 D1f2zednxBnOe3umjR0pCRbL+n1F3pzeI17BnALx1OLChD5REypNk2fvU7FOZaGH57W2 zaZT+7oUvdaFOUvBP+SNh6Vu3PXS0ZLeYNoKQ2SoZdWae9n6NGnEQQw/CqTsIbf9ovfC h5YMUervQpLWO8vtKwc4S+xdAbovJftVPrHMVW+SEpXqo+lrkF/3prL3+Ik4/Y5iLwFN RfTmneqSpTEUN5iQyJ1rBzhvylsQ1f/iS4zY40Ch6WJEp/F/Eud2efmB3xtbIGdc2PRL Qxjw== X-Gm-Message-State: AOJu0YydYrsRfvmSAmaXd6sP5IywddTDiy+TYxVi6xwevq8wmalwJZW6 mz0TXwrdbOh//3QylVuQ3dWVNu8fJHQ= X-Google-Smtp-Source: AGHT+IGC9N1x5RUI2bLyanEx57YSfnvUbQd7qtOr9gyow06JTTgXzeo25SdqTP3qT0oGHAkH8eEXHA== X-Received: by 2002:a05:6870:179f:b0:1b0:3d61:553e with SMTP id r31-20020a056870179f00b001b03d61553emr12541682oae.15.1695757069141; Tue, 26 Sep 2023 12:37:49 -0700 (PDT) Received: from localhost.localdomain (dsl-10-130-229.b2b2c.ca. [72.10.130.229]) by smtp.gmail.com with ESMTPSA id a13-20020a05620a16cd00b0076cbcf8ad3bsm2887595qkn.55.2023.09.26.12.37.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 12:37:48 -0700 (PDT) From: Maxim Cournoyer Date: Tue, 26 Sep 2023 15:04:24 -0400 Message-ID: <33c37ede82d69e5976cb50367ed8d4835a6d4ae4.1695754731.git.maxim.cournoyer@gmail.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches This allows generating an AVR toolchain for any version of GCC. * gnu/packages/avr.scm (make-avr-gcc): Add a #:xgcc argument; use memoize instead of mlambda. (make-avr-libc): Likewise. Provide it to the 'make-avr-gcc' call. (make-avr-toolchain): Add a #:xgcc argument; use memoize instead of mlambda. Provide the xgcc argument to the 'make-avr-libc' and 'make-avr-gcc' procedures. --- gnu/packages/avr.scm | 212 ++++++++++++++++++++++--------------------- 1 file changed, 110 insertions(+), 102 deletions(-) diff --git a/gnu/packages/avr.scm b/gnu/packages/avr.scm index bc583ddff3b..a66abbbd3ad 100644 --- a/gnu/packages/avr.scm +++ b/gnu/packages/avr.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2018 Tobias Geerinckx-Rice ;;; Copyright © 2020 Marius Bakke ;;; Copyright © 2020 Arun Isaac +;;; Copyright © 2023 Maxim Cournoyer ;;; ;;; This file is part of GNU Guix. ;;; @@ -58,115 +59,122 @@ (define make-avr-binutils (inherit (cross-binutils "avr")) (name "avr-binutils")))) -(define make-avr-gcc - (mlambda () - (let ((xgcc (cross-gcc "avr" #:xbinutils (make-avr-binutils)))) - (package - (inherit xgcc) - (name "avr-gcc") - (arguments - (substitute-keyword-arguments (package-arguments xgcc) - ((#:phases phases) - #~(modify-phases #$phases - (add-after 'set-paths 'augment-CPLUS_INCLUDE_PATH - (lambda* (#:key inputs #:allow-other-keys) - (let ((gcc (assoc-ref inputs "gcc"))) - ;; Remove the default compiler from CPLUS_INCLUDE_PATH - ;; to prevent header conflict with the GCC from - ;; native-inputs. - (setenv "CPLUS_INCLUDE_PATH" - (string-join - (delete (string-append gcc "/include/c++") - (string-split (getenv "CPLUS_INCLUDE_PATH") - #\:)) - ":")) - (format #t - "environment variable `CPLUS_INCLUDE_PATH' \ +(define* (make-avr-gcc/implementation #:key (xgcc gcc)) + "Return a XGCC-base cross-compiler for the AVR target." + (let ((xgcc (cross-gcc "avr" #:xgcc xgcc #:xbinutils (make-avr-binutils)))) + (package + (inherit xgcc) + (name "avr-gcc") + (arguments + (substitute-keyword-arguments (package-arguments xgcc) + ((#:phases phases) + #~(modify-phases #$phases + (add-after 'set-paths 'augment-CPLUS_INCLUDE_PATH + (lambda* (#:key inputs #:allow-other-keys) + (let ((gcc (assoc-ref inputs "gcc"))) + ;; Remove the default compiler from CPLUS_INCLUDE_PATH + ;; to prevent header conflict with the GCC from + ;; native-inputs. + (setenv "CPLUS_INCLUDE_PATH" + (string-join + (delete (string-append gcc "/include/c++") + (string-split (getenv "CPLUS_INCLUDE_PATH") + #\:)) + ":")) + (format #t + "environment variable `CPLUS_INCLUDE_PATH' \ changed to ~a~%" - (getenv "CPLUS_INCLUDE_PATH"))))) - ;; Without a working multilib build, the resulting GCC lacks - ;; support for nearly every AVR chip. - (add-after 'unpack 'fix-genmultilib - (lambda _ - ;; patch-shebang doesn't work here because there are - ;; actually several scripts inside this script, each with - ;; a #!/bin/sh that needs patching. - (substitute* "gcc/genmultilib" - (("#!/bin/sh") (string-append "#!" (which "sh")))))))) - ((#:configure-flags flags) - #~(delete "--disable-multilib" #$flags)))) - (native-search-paths - (list (search-path-specification - (variable "CROSS_C_INCLUDE_PATH") - (files '("avr/include"))) - (search-path-specification - (variable "CROSS_CPLUS_INCLUDE_PATH") - (files '("avr/include"))) - (search-path-specification - (variable "CROSS_OBJC_INCLUDE_PATH") - (files '("avr/include"))) - (search-path-specification - (variable "CROSS_OBJCPLUS_INCLUDE_PATH") - (files '("avr/include"))) - (search-path-specification - (variable "CROSS_LIBRARY_PATH") - (files '("avr/lib"))))) - (native-inputs - `(("gcc" ,gcc) - ,@(package-native-inputs xgcc))))))) + (getenv "CPLUS_INCLUDE_PATH"))))) + ;; Without a working multilib build, the resulting GCC lacks + ;; support for nearly every AVR chip. + (add-after 'unpack 'fix-genmultilib + (lambda _ + ;; patch-shebang doesn't work here because there are + ;; actually several scripts inside this script, each with + ;; a #!/bin/sh that needs patching. + (substitute* "gcc/genmultilib" + (("#!/bin/sh") (string-append "#!" (which "sh")))))))) + ((#:configure-flags flags) + #~(delete "--disable-multilib" #$flags)))) + (native-search-paths + (list (search-path-specification + (variable "CROSS_C_INCLUDE_PATH") + (files '("avr/include"))) + (search-path-specification + (variable "CROSS_CPLUS_INCLUDE_PATH") + (files '("avr/include"))) + (search-path-specification + (variable "CROSS_OBJC_INCLUDE_PATH") + (files '("avr/include"))) + (search-path-specification + (variable "CROSS_OBJCPLUS_INCLUDE_PATH") + (files '("avr/include"))) + (search-path-specification + (variable "CROSS_LIBRARY_PATH") + (files '("avr/lib"))))) + (native-inputs + `(("gcc" ,gcc) + ,@(package-native-inputs xgcc)))))) + +(define make-avr-gcc + (memoize make-avr-gcc/implementation)) + +(define* (make-avr-libc/implementation #:key (xgcc gcc)) + (package + (name "avr-libc") + (version "2.0.0") + (source (origin + (method url-fetch) + (uri (string-append "mirror://savannah//avr-libc/avr-libc-" + version ".tar.bz2")) + (sha256 + (base32 + "15svr2fx8j6prql2il2fc0ppwlv50rpmyckaxx38d3gxxv97zpdj")))) + (build-system gnu-build-system) + (arguments + '(#:out-of-source? #t + #:configure-flags '("--host=avr"))) + (native-inputs `(("avr-binutils" ,(make-avr-binutils)) + ("avr-gcc" ,(make-avr-gcc #:xgcc xgcc)))) + (home-page "https://www.nongnu.org/avr-libc/") + (synopsis "The AVR C Library") + (description + "AVR Libc is a project whose goal is to provide a high quality C library +for use with GCC on Atmel AVR microcontrollers.") + (license + (license:non-copyleft "http://www.nongnu.org/avr-libc/LICENSE.txt")))) (define make-avr-libc - (mlambda () - (package - (name "avr-libc") - (version "2.0.0") - (source (origin - (method url-fetch) - (uri (string-append "mirror://savannah//avr-libc/avr-libc-" - version ".tar.bz2")) - (sha256 - (base32 - "15svr2fx8j6prql2il2fc0ppwlv50rpmyckaxx38d3gxxv97zpdj")))) - (build-system gnu-build-system) - (arguments - '(#:out-of-source? #t - #:configure-flags '("--host=avr"))) - (native-inputs `(("avr-binutils" ,(make-avr-binutils)) - ("avr-gcc" ,(make-avr-gcc)))) - (home-page "https://www.nongnu.org/avr-libc/") - (synopsis "The AVR C Library") - (description - "AVR Libc is a project whose goal is to provide a high quality C -library for use with GCC on Atmel AVR microcontrollers.") - (license - (license:non-copyleft "http://www.nongnu.org/avr-libc/LICENSE.txt"))))) + (memoize make-avr-libc/implementation)) -(define make-avr-toolchain - (mlambda () - (let ((avr-binutils (make-avr-binutils)) - (avr-libc (make-avr-libc)) - (avr-gcc (make-avr-gcc))) - ;; avr-libc checks the compiler version and passes "--enable-device-lib" - ;; for avr-gcc > 5.1.0. It wouldn't install the library for atmega32u4 - ;; etc if we didn't use the corret avr-gcc. - (package - (name "avr-toolchain") - (version (package-version avr-gcc)) - (source #f) - (build-system trivial-build-system) - (arguments '(#:builder (begin (mkdir %output) #t))) - (propagated-inputs - `(("avrdude" ,avrdude) - ("binutils" ,avr-binutils) - ("gcc" ,avr-gcc) - ("libc" ,avr-libc))) - (synopsis "Complete GCC tool chain for AVR microcontroller development") - (description "This package provides a complete GCC tool chain for AVR +(define* (make-avr-toolchain/implementation #:key (xgcc gcc)) + (let ((avr-binutils (make-avr-binutils)) + (avr-libc (make-avr-libc #:xgcc xgcc)) + (avr-gcc (make-avr-gcc #:xgcc xgcc))) + ;; avr-libc checks the compiler version and passes "--enable-device-lib" + ;; for avr-gcc > 5.1.0. It wouldn't install the library for atmega32u4 + ;; etc if we didn't use the corret avr-gcc. + (package + (name "avr-toolchain") + (version (package-version avr-gcc)) + (source #f) + (build-system trivial-build-system) + (arguments '(#:builder (begin (mkdir %output) #t))) + (propagated-inputs + `(("avrdude" ,avrdude) + ("binutils" ,avr-binutils) + ("gcc" ,avr-gcc) + ("libc" ,avr-libc))) + (synopsis "Complete GCC tool chain for AVR microcontroller development") + (description "This package provides a complete GCC tool chain for AVR microcontroller development. This includes the GCC AVR cross compiler and avrdude for firmware flashing. The supported programming languages are C and C++.") - (home-page (package-home-page avr-libc)) - (license (package-license avr-gcc)))))) + (home-page (package-home-page avr-libc)) + (license (package-license avr-gcc))))) + +(define make-avr-toolchain + (memoize make-avr-toolchain/implementation)) (define-public microscheme (package From patchwork Tue Sep 26 19:04:25 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxim Cournoyer X-Patchwork-Id: 54332 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 8D2BC27BBE2; Tue, 26 Sep 2023 20:40:06 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI, SPF_HELO_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 073C927BBEA for ; Tue, 26 Sep 2023 20:40:05 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlDtc-0006o4-Er; Tue, 26 Sep 2023 15:39:00 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlDtW-0006gB-Cu for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:54 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qlDtT-0006MN-S9 for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:54 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qlDte-00010p-2f; Tue, 26 Sep 2023 15:39:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#66217] [PATCH 02/22] gnu: qmk: Style. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: efraim@flashner.co.il, vagrant@debian.org, guix-patches@gnu.org Resent-Date: Tue, 26 Sep 2023 19:39:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66217 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 66217@debbugs.gnu.org Cc: Maxim Cournoyer , Efraim Flashner , Vagrant Cascadian X-Debbugs-Original-Xcc: Efraim Flashner , Vagrant Cascadian Received: via spool by 66217-submit@debbugs.gnu.org id=B66217.16957570963591 (code B ref 66217); Tue, 26 Sep 2023 19:39:02 +0000 Received: (at 66217) by debbugs.gnu.org; 26 Sep 2023 19:38:16 +0000 Received: from localhost ([127.0.0.1]:49800 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDst-0000vl-RY for submit@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:16 -0400 Received: from mail-qk1-x72a.google.com ([2607:f8b0:4864:20::72a]:49397) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDsn-0000ul-Gg for 66217@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:10 -0400 Received: by mail-qk1-x72a.google.com with SMTP id af79cd13be357-77432add7caso298007885a.2 for <66217@debbugs.gnu.org>; Tue, 26 Sep 2023 12:37:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1695757070; x=1696361870; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=fSRNkDza4WnfowRVsW0VAa4ICTGkzLwA1XobNqKY4+o=; b=T/A+8usU7qrrL4DeHGw/KLYxUc3779BO+rnIVywzPVZjdKhbVe/lLbVLc4d+1uFNmo tDYdleOzWyOrv3+pL99RQ5ZTvV6Dqd4H7+YwOXBtK0+d71T9154chXwpVUiMRZ2MbWDT b0wAw62Qi/fSWwcYiwq72MGZtbMWFbrzYniGhL5J5dN0dyNcy7l2/1Pl6LKe9D694JbP N2KduVCa73IpU3zeQd/lDlK7OVU9g6bsPrvtNMoUPjh5BQByhV4qWwFUv1EkWYtMYiAP sbj/a0gjGn/H8olF04PyzW1u/2XPSKDaxuuyPJHeMapEbHWoqOkuUVnInDB2qRes8b1t HvPA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695757070; x=1696361870; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=fSRNkDza4WnfowRVsW0VAa4ICTGkzLwA1XobNqKY4+o=; b=saKR0FzVchjGHny2Z7ZypJcoKWBU4xGZYEFeDkMDlqUMP8TcWUXNu4vyC5PgvenKd3 fiZBYvjo4NTV+YI/8a+4B+Ycf4uhhBy99BChcTsiI4JdG3nVNyxGpc1hik4Z0TobORnK kveuKAnuMQFDsm/hgk1uGBSriXn+Xg1r5QTbrEZKkrxzDcsZZk23qPJoNV6tJ8uxndRx NKm9sURO8qjmdcmcawss/tpocHfg/C/reKDcWnfq8cBEyxZnv60aDCY3f3BudWYoE1BI cBVojqUl7+cMCsZkD8Ht4zxjg5yjkIQPa/31BvLwuUc6/bTcQHb7D0frnwVv+2ko5tnV 4cAA== X-Gm-Message-State: AOJu0Yz095DaYyKl0FejHawTIWNYuQhzXecDpHkc1CaYf7sMblz5Agyf ZA7uhwGrdt2Kh5dplp/0NRqNw/Dp/BU= X-Google-Smtp-Source: AGHT+IHNFvWSO70FS3qC8CfgjsGPdINptsRtalVH9LSaRcG3mDlKYpoYmtVqhaviwVxd4lXOjy6p5Q== X-Received: by 2002:a05:620a:8e86:b0:775:6d22:d1f5 with SMTP id rf6-20020a05620a8e8600b007756d22d1f5mr1260904qkn.51.1695757070494; Tue, 26 Sep 2023 12:37:50 -0700 (PDT) Received: from localhost.localdomain (dsl-10-130-229.b2b2c.ca. [72.10.130.229]) by smtp.gmail.com with ESMTPSA id a13-20020a05620a16cd00b0076cbcf8ad3bsm2887595qkn.55.2023.09.26.12.37.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 12:37:50 -0700 (PDT) From: Maxim Cournoyer Date: Tue, 26 Sep 2023 15:04:25 -0400 Message-ID: <274ab19b6cc26c5cb677a56a62be982098ee9819.1695754731.git.maxim.cournoyer@gmail.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/firmware.scm (qmk): Apply 'guix style' changes. --- gnu/packages/firmware.scm | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm index 08fe8311dce..dcae0d510b5 100644 --- a/gnu/packages/firmware.scm +++ b/gnu/packages/firmware.scm @@ -1223,10 +1223,17 @@ (define-public qmk (base32 "1619q9v90740dbg8xpzqlhwcasz42xj737803aiip8qc3a7zhwgq")))) (build-system pyproject-build-system) - (arguments (list #:tests? #f)) ;; No tests. - (propagated-inputs (list python-dotty-dict python-hid python-hjson - python-jsonschema python-milc python-pillow - python-pygments python-pyserial python-pyusb)) + (arguments + (list #:tests? #f)) ;No tests. + (propagated-inputs (list python-dotty-dict + python-hid + python-hjson + python-jsonschema + python-milc + python-pillow + python-pygments + python-pyserial + python-pyusb)) (home-page "https://qmk.fm") (synopsis "Command line utility to manage QMK keyboard firmwares") (description "This package provides a program to help users work with From patchwork Tue Sep 26 19:04:26 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxim Cournoyer X-Patchwork-Id: 54336 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 029DD27BBE9; Tue, 26 Sep 2023 20:40:36 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI, SPF_HELO_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 93A4D27BBEA for ; Tue, 26 Sep 2023 20:40:33 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlDtZ-0006jD-4C; Tue, 26 Sep 2023 15:38:57 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlDtW-0006gG-Fi for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:54 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qlDtS-0006MI-Vj for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:54 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qlDte-00010w-Mm; Tue, 26 Sep 2023 15:39:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#66217] [PATCH 03/22] gnu: qmk: Avoid propagating inputs. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: efraim@flashner.co.il, vagrant@debian.org, guix-patches@gnu.org Resent-Date: Tue, 26 Sep 2023 19:39:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66217 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 66217@debbugs.gnu.org Cc: Maxim Cournoyer , Efraim Flashner , Vagrant Cascadian X-Debbugs-Original-Xcc: Efraim Flashner , Vagrant Cascadian Received: via spool by 66217-submit@debbugs.gnu.org id=B66217.16957570973599 (code B ref 66217); Tue, 26 Sep 2023 19:39:02 +0000 Received: (at 66217) by debbugs.gnu.org; 26 Sep 2023 19:38:17 +0000 Received: from localhost ([127.0.0.1]:49802 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDsu-0000vs-BA for submit@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:16 -0400 Received: from mail-qk1-x72a.google.com ([2607:f8b0:4864:20::72a]:47221) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDso-0000un-Gt for 66217@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:11 -0400 Received: by mail-qk1-x72a.google.com with SMTP id af79cd13be357-77433d61155so289430085a.2 for <66217@debbugs.gnu.org>; Tue, 26 Sep 2023 12:37:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1695757071; x=1696361871; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=BiKDYug1TNo2kq5FVpD6vRpM+hX+7NOOMtgOo0IhWjo=; b=YSB8OnaLqavuA+yLYFSQOCaq1tDdUW0CoPoD3gc+2PJjcAr83vWpvNXucj3BCaHomi Ls0bQMMWoIzvStSvj6MocNH7KDYrYmJdvY8Gm6hEeAY5N8chxfCZRY3VjBnmkzhnFXCn zvDfPagmxrLzfDCUwcH1sJc6hEHJo7HuVDrD4m8DpARolGsORukcR9VUiqZnYRVUzb71 iBdCrfbynn4ftIhOvmNmUZP6E0RwDGt47Pl9X8jWS1SWQ6xa89X45fxKb6volRn/mkxN /iY06iS1xu6GHIP53I+yKpvcO7MEuogWieSfmuvaVtjxZ4x9Hif6qmUqN0XKKnUqBVmz g8xQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695757071; x=1696361871; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=BiKDYug1TNo2kq5FVpD6vRpM+hX+7NOOMtgOo0IhWjo=; b=anbWGh3n9lRDV1NlWP7YDVY5cqrBJENmqOWeIp0+cRJ5f3eXPL9TpDb4qeBUn9avE0 /3UymO7h+j/43NXAkjFDjS0oRtmkAE5iwSIFv2BgorB0xNEaTWi2ZX4JToSMXTzIg+eQ L1ZN3Xb5w5XAjZ414uIeI0bQHEXXtzJCUSyj1kssSqhhTr2oseDDWNIfPEQhY0qGXAcw /rj2TbuZqz3KkSONBrhVOxGkLmO1FJCcyuI207CtB9L0xDeMSGGJhpgHRsQ0o052rK3e 8l76DpAf6cv6BZ/CIeSlatGXpqraIjDBGXpyuqZgiOpwVifxbBzSSqFmg8XKjJun/kMF dapw== X-Gm-Message-State: AOJu0YzdJMOzrKl+6tpm4cLjb62mJOW+U+HsKUhrU8vYbPjy5SFDBLn8 TVmB/WqYudTawdiuy/EaH2rX20hVWtE= X-Google-Smtp-Source: AGHT+IH2z6qZGabtIsie1EDctkYW9T+qeAgUnv9wSxlmeAacZ1iMx56Dgruy0rre2zWwC+Y7UqKaKA== X-Received: by 2002:a05:620a:470f:b0:775:6a75:9320 with SMTP id bs15-20020a05620a470f00b007756a759320mr1868175qkb.74.1695757071636; Tue, 26 Sep 2023 12:37:51 -0700 (PDT) Received: from localhost.localdomain (dsl-10-130-229.b2b2c.ca. [72.10.130.229]) by smtp.gmail.com with ESMTPSA id a13-20020a05620a16cd00b0076cbcf8ad3bsm2887595qkn.55.2023.09.26.12.37.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 12:37:51 -0700 (PDT) From: Maxim Cournoyer Date: Tue, 26 Sep 2023 15:04:26 -0400 Message-ID: <4f682ffc051356929e9c32104f44b10a5deefcbb.1695754731.git.maxim.cournoyer@gmail.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/firmware.scm (qmk): [arguments]: New modules and phases arguments. [propagated-inputs]: Turn into... [inputs]: ... this. Add coreutils-minimal, sed and util-linux. [description]: Expound. --- gnu/packages/firmware.scm | 71 ++++++++++++++++++++++++++++++++------- 1 file changed, 59 insertions(+), 12 deletions(-) diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm index dcae0d510b5..499920160a8 100644 --- a/gnu/packages/firmware.scm +++ b/gnu/packages/firmware.scm @@ -33,6 +33,7 @@ (define-module (gnu packages firmware) #:use-module (guix gexp) #:use-module (guix utils) #:use-module (guix git-download) + #:use-module (guix build-system copy) #:use-module (guix build-system gnu) #:use-module (guix build-system meson) #:use-module (guix build-system python) @@ -40,6 +41,8 @@ (define-module (gnu packages firmware) #:use-module (guix build-system trivial) #:use-module (gnu packages) #:use-module (gnu packages admin) + #:use-module (gnu packages autotools) + #:use-module (gnu packages avr) #:use-module (gnu packages assembly) #:use-module (gnu packages backup) #:use-module (gnu packages base) @@ -52,6 +55,7 @@ (define-module (gnu packages firmware) #:use-module (gnu packages curl) #:use-module (gnu packages efi) #:use-module (gnu packages elf) + #:use-module (gnu packages flashing-tools) #:use-module (gnu packages flex) #:use-module (gnu packages gcc) #:use-module (gnu packages gettext) @@ -1212,6 +1216,11 @@ (define-public crust-pinebook (define-public crust-pine64-plus (make-crust-package "pine64_plus")) + +;;; +;;; QMK Firmware. +;;; + (define-public qmk (package (name "qmk") @@ -1224,18 +1233,56 @@ (define-public qmk "1619q9v90740dbg8xpzqlhwcasz42xj737803aiip8qc3a7zhwgq")))) (build-system pyproject-build-system) (arguments - (list #:tests? #f)) ;No tests. - (propagated-inputs (list python-dotty-dict - python-hid - python-hjson - python-jsonschema - python-milc - python-pillow - python-pygments - python-pyserial - python-pyusb)) + (list + #:tests? #f ;no tests + #:modules '((guix build pyproject-build-system) + (guix build utils) + (srfi srfi-26)) + #:phases + #~(modify-phases %standard-phases + (add-after 'wrap 'wrap-path + (lambda* (#:key inputs outputs #:allow-other-keys) + (wrap-program (search-input-file outputs "bin/qmk") + `("PATH" prefix + ,(map (compose dirname + (cut search-input-file inputs <>)) + '("bin/avr-gcc" + "bin/avrdude" + "bin/dfu-programmer" + "bin/git" + ;; TODO: Remove after git is wrapped with these. + "bin/basename" + "bin/sed" + "bin/uname"))))))))) + ;; The inputs are not propagated since qmk is to be used strictly as a + ;; command. + (inputs + (list (make-avr-toolchain) + avrdude + dfu-programmer + git-minimal ;for the clone action + python-dotty-dict + python-hid + python-hjson + python-jsonschema + python-milc + python-pillow + python-pygments + python-pyserial + python-pyusb + ;; These are added to workaround faults in our git package (see + ;; bug#65924). + coreutils-minimal + sed + util-linux)) (home-page "https://qmk.fm") (synopsis "Command line utility to manage QMK keyboard firmwares") - (description "This package provides a program to help users work with -@acronym{QMK, Quantum Mechanical Keyboard} firmwares.") + (description "The QMK CLI provides a @acronym{CLI, command line interface} +based program to help users work with the QMK firmware, which can be used for +multiple custom keyboards such as Planck, ErgoDox, Corne and others. + +This @acronym{CLI} program is mainly used for building the QMK firmware, but +also has some other convenience utilities. It is highly recommended to +install the udev rules provided by the @code{qmk-udev-rules} package to avoid +having to run @command{qmk} as root when flashing the firmware.") (license license:expat))) From patchwork Tue Sep 26 19:04:27 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxim Cournoyer X-Patchwork-Id: 54320 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 1219E27BBEA; Tue, 26 Sep 2023 20:39:15 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI, SPF_HELO_PASS autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 8C26D27BBE2 for ; Tue, 26 Sep 2023 20:39:14 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlDtX-0006i9-99; Tue, 26 Sep 2023 15:38:55 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlDtW-0006gC-DV for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:54 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qlDtS-0006MF-LR for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:52 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qlDtf-000113-5M; Tue, 26 Sep 2023 15:39:03 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#66217] [PATCH 04/22] gnu: qmk: Use GCC 8 for the AVR toolchain. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: efraim@flashner.co.il, vagrant@debian.org, guix-patches@gnu.org Resent-Date: Tue, 26 Sep 2023 19:39:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66217 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 66217@debbugs.gnu.org Cc: Maxim Cournoyer , Efraim Flashner , Vagrant Cascadian X-Debbugs-Original-Xcc: Efraim Flashner , Vagrant Cascadian Received: via spool by 66217-submit@debbugs.gnu.org id=B66217.16957570973607 (code B ref 66217); Tue, 26 Sep 2023 19:39:03 +0000 Received: (at 66217) by debbugs.gnu.org; 26 Sep 2023 19:38:17 +0000 Received: from localhost ([127.0.0.1]:49804 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDsu-0000w0-R0 for submit@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:17 -0400 Received: from mail-qk1-x731.google.com ([2607:f8b0:4864:20::731]:48407) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDsp-0000up-Px for 66217@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:12 -0400 Received: by mail-qk1-x731.google.com with SMTP id af79cd13be357-7741c5bac51so474290285a.1 for <66217@debbugs.gnu.org>; Tue, 26 Sep 2023 12:37:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1695757073; x=1696361873; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=77utFAqMxtAR5tECpJv3F45PSRJuG94cWKIoAPpForU=; b=ZhQxYIv+KbiASyRU6fXUmlZqfRtXWuGzUShIHInNJf24UfdtJk/wfE//ckSsfWCyM3 vF5YxPnKgN2qsEW47MVRISDn0aOxfHFIyfFAVw1RhXlKuMj9YRPcq6Ost7AblliGCsJO 4UfLcKPg9NSOjnkBSipo1TRR4GJXwchcxC7xiGir3+oYnjdus6I8GZdU+YYPrv9r4n4y AohA8KlOqAkvmYmaivIr6vFjKGUIZ7MB08HEXEdUDYyS3oNTYvshP3N3cpIlKYFKGeOF I6DEnmrvXasJWN9rtg91V+G/WkaWcmzOJCj0ub+Hpu/SK9OlF1JYfp/V6YzugryRszsy uKNA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695757073; x=1696361873; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=77utFAqMxtAR5tECpJv3F45PSRJuG94cWKIoAPpForU=; b=emvM6yUjE5BTyc6tYb6VfogJPSOpZzZbd27BLUj19zH3iu3aUYTZaqVdjoOyD+/e7C szVh/2gPr08x5bvCrdZXqJD5RX1JEDLbrNsw2kGGUpjuff39f/AvLGCTa8UpvuTUZuVS eaPITJAcjeDw2JOfn2V/Mz9mTGpnHUB0EOyVayf02yraA2ohuiU4ER6zaoIYjrusTNkK T4w9diVIDfSe5TwDw0yZ82FBuY4eNO9IrvSERA0bnmf93zZmdD+sJibFer2/9gNGRSQu xmUD3VYYA6yp+SV7KfhzeFnv2IMXRgEq+PtalX9N3XynK8ryymsN7v3AYC5WIz36Y686 KZ/Q== X-Gm-Message-State: AOJu0YwMxQSMHk5fWS3cLz6CVi8/RKi7iyiOBweoIRiU8Iz/H6dWyxBt Ffv+YZp02oL34YHk83UuQMPE9WlTGmc= X-Google-Smtp-Source: AGHT+IFxwPd+46SOH5Kf38nLNnf2KlVISVHd094ORiWUwnMc2+IVNzu/ngg21rA5o6hTqmuVT8iQpQ== X-Received: by 2002:a05:620a:4629:b0:773:bdb3:1318 with SMTP id br41-20020a05620a462900b00773bdb31318mr10621218qkb.15.1695757072880; Tue, 26 Sep 2023 12:37:52 -0700 (PDT) Received: from localhost.localdomain (dsl-10-130-229.b2b2c.ca. [72.10.130.229]) by smtp.gmail.com with ESMTPSA id a13-20020a05620a16cd00b0076cbcf8ad3bsm2887595qkn.55.2023.09.26.12.37.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 12:37:52 -0700 (PDT) From: Maxim Cournoyer Date: Tue, 26 Sep 2023 15:04:27 -0400 Message-ID: X-Mailer: git-send-email 2.41.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/firmware.scm (qmk) [inputs]: Specify 'gcc-8' as the #:xgcc argument to the 'make-avr-toolchain' procedure. --- gnu/packages/firmware.scm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm index 499920160a8..c1f6c8ea5e2 100644 --- a/gnu/packages/firmware.scm +++ b/gnu/packages/firmware.scm @@ -1257,7 +1257,9 @@ (define-public qmk ;; The inputs are not propagated since qmk is to be used strictly as a ;; command. (inputs - (list (make-avr-toolchain) + ;; The 'qmk setup' command advises to use GCC at version 8, and there are + ;; compilation errors in some firmware otherwise. + (list (make-avr-toolchain #:xgcc gcc-8) avrdude dfu-programmer git-minimal ;for the clone action From patchwork Tue Sep 26 19:04:28 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxim Cournoyer X-Patchwork-Id: 54337 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 8A8CB27BBE9; Tue, 26 Sep 2023 20:40:36 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI, SPF_HELO_PASS autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 2A82C27BBE2 for ; Tue, 26 Sep 2023 20:40:34 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlDtZ-0006lx-Nh; Tue, 26 Sep 2023 15:38:57 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlDtW-0006gJ-GD for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:54 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qlDtT-0006MJ-22 for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:54 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qlDtf-000119-HT; Tue, 26 Sep 2023 15:39:03 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#66217] [PATCH 05/22] gnu: qmk: Add many missing inputs and add more commands to PATH. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: efraim@flashner.co.il, vagrant@debian.org, guix-patches@gnu.org Resent-Date: Tue, 26 Sep 2023 19:39:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66217 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 66217@debbugs.gnu.org Cc: Maxim Cournoyer , Efraim Flashner , Vagrant Cascadian X-Debbugs-Original-Xcc: Efraim Flashner , Vagrant Cascadian Received: via spool by 66217-submit@debbugs.gnu.org id=B66217.16957570983614 (code B ref 66217); Tue, 26 Sep 2023 19:39:03 +0000 Received: (at 66217) by debbugs.gnu.org; 26 Sep 2023 19:38:18 +0000 Received: from localhost ([127.0.0.1]:49807 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDsv-0000w8-99 for submit@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:17 -0400 Received: from mail-qk1-x72d.google.com ([2607:f8b0:4864:20::72d]:51248) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDsr-0000us-3M for 66217@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:13 -0400 Received: by mail-qk1-x72d.google.com with SMTP id af79cd13be357-7740cedd4baso632962285a.2 for <66217@debbugs.gnu.org>; Tue, 26 Sep 2023 12:37:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1695757074; x=1696361874; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=kT4IQMm+w3i4d66/bdbu2lRKakb1z4cbKmgOL242FEc=; b=ZgyZzfXBo58asOn8MjVwv9jfKQztpqb+o6UsKlkcj3wg0FrIdaE5DeEa8JrxwgIDsd iwlCOAfju7/k/aCjuLxaIPDMl4WxIDZBaU4NNMBy3tCP/1IUN+gjKmu5bsq5AskkMuM9 dmccGdzvlUweRJy+DUbb1JXAUdLX+3xRYEXLlaKVS9PWzNJzfN16R+eF+AZpczvkthdw ywY/lW/nvNylHSarqbQhBNkRuSkjZIDv81azloQjKqHQsF+KjNe6kIL/8o9MPOgyXdw5 r7ZilfzG96XcJW0470Hhc6X/X3TcN2anMtF7JxTNc3L0qoUHhBCVaRLsQcuHbcSrpRU0 YDxQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695757074; x=1696361874; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=kT4IQMm+w3i4d66/bdbu2lRKakb1z4cbKmgOL242FEc=; b=Xkc603dhOBhG6DWUGUGzCZ1ooB9uW3OlEoDpBXdmU1WtmMxRaPyElUjZLLURYs3K1T 3RebNAIcx4gWlMGO40Q+gZ+vNaWlq0RtzQ6Q2tNKGkGbhYT9PPDJq9yp5OEcSoYrxXw3 048A2SiiW+4Mc+Cwpoh0IzRODzgMJMn9zsvr0lBurWZWrFxtVuAMqqYY1iV9Qay/TMza UFiHvwmBq1H/GIyTzqomlaYGUEp/KFtXVyURlEpsTmkS57gTZPbFlY6k9l43JUB5qoJy fPXVOhUIuiZJ/Y5Z939zsQfzXtD9G2UO7lS86ty76UImGiVLU+fQUIaaJHd2jK3xgusK HnCw== X-Gm-Message-State: AOJu0YwGxc6ND1eFkNP3lQuVdLedRu7Y4pwyqtvR+m6tB8r5yTMdEE+E xun23Znsry4VZq7Zh9IhRUxzCqlA0LA= X-Google-Smtp-Source: AGHT+IEo+dlG/HFJxblr6GL9A4Z0qO0sj/YKxHSNDC/KhXjFE4/PacAS/cw6PSiQ6jOKevZD+IOluA== X-Received: by 2002:a05:620a:1424:b0:76d:2725:f36f with SMTP id k4-20020a05620a142400b0076d2725f36fmr9889229qkj.71.1695757074190; Tue, 26 Sep 2023 12:37:54 -0700 (PDT) Received: from localhost.localdomain (dsl-10-130-229.b2b2c.ca. [72.10.130.229]) by smtp.gmail.com with ESMTPSA id a13-20020a05620a16cd00b0076cbcf8ad3bsm2887595qkn.55.2023.09.26.12.37.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 12:37:53 -0700 (PDT) From: Maxim Cournoyer Date: Tue, 26 Sep 2023 15:04:28 -0400 Message-ID: X-Mailer: git-send-email 2.41.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/firmware.scm (qmk) [inputs]: Add bash-minimal, dfu-util, diffutils, gawk, gnu-make, grep and python. [arguments]: Add them to PATH in the wrapper in the wrap-path phase. Also capture avr-ar in the PATH. Add CROSS_C_INCLUDE_PATH and CROSS_LIBRARY_PATH to the wrapper. --- gnu/packages/firmware.scm | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm index c1f6c8ea5e2..1957fb8aac4 100644 --- a/gnu/packages/firmware.scm +++ b/gnu/packages/firmware.scm @@ -57,6 +57,7 @@ (define-module (gnu packages firmware) #:use-module (gnu packages elf) #:use-module (gnu packages flashing-tools) #:use-module (gnu packages flex) + #:use-module (gnu packages gawk) #:use-module (gnu packages gcc) #:use-module (gnu packages gettext) #:use-module (gnu packages glib) @@ -1241,19 +1242,31 @@ (define-public qmk #:phases #~(modify-phases %standard-phases (add-after 'wrap 'wrap-path + ;; Wrap all the tools needed for the 'setup' and 'compile' actions + ;; (tested with the 'ergodox_ez' keyboard). (lambda* (#:key inputs outputs #:allow-other-keys) (wrap-program (search-input-file outputs "bin/qmk") `("PATH" prefix ,(map (compose dirname (cut search-input-file inputs <>)) - '("bin/avr-gcc" + '("bin/avr-ar" + "bin/avr-gcc" "bin/avrdude" + "bin/awk" + "bin/cmp" "bin/dfu-programmer" + "bin/dfu-util" "bin/git" + "bin/grep" + "bin/make" + "bin/python3" + "bin/sh" ;; TODO: Remove after git is wrapped with these. "bin/basename" "bin/sed" - "bin/uname"))))))))) + "bin/uname"))) + `("CROSS_C_INCLUDE_PATH" = (,(getenv "CROSS_C_INCLUDE_PATH"))) + `("CROSS_LIBRARY_PATH" = (,(getenv "CROSS_LIBRARY_PATH"))))))))) ;; The inputs are not propagated since qmk is to be used strictly as a ;; command. (inputs @@ -1261,8 +1274,15 @@ (define-public qmk ;; compilation errors in some firmware otherwise. (list (make-avr-toolchain #:xgcc gcc-8) avrdude + bash-minimal dfu-programmer + dfu-util + diffutils git-minimal ;for the clone action + gawk + gnu-make + grep + python python-dotty-dict python-hid python-hjson From patchwork Tue Sep 26 19:04:29 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Maxim Cournoyer X-Patchwork-Id: 54322 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id EEEC727BBE2; Tue, 26 Sep 2023 20:39:35 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI, SPF_HELO_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id A606D27BBE9 for ; Tue, 26 Sep 2023 20:39:34 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlDtc-0006qF-Nr; Tue, 26 Sep 2023 15:39:00 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlDtW-0006gF-FJ for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:54 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qlDtS-0006MG-QC for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:52 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qlDtf-00011K-Ti for guix-patches@gnu.org; Tue, 26 Sep 2023 15:39:03 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#66217] [PATCH 06/22] gnu: Add lufa. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Tue, 26 Sep 2023 19:39:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66217 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 66217@debbugs.gnu.org Cc: Maxim Cournoyer Received: via spool by 66217-submit@debbugs.gnu.org id=B66217.16957571133721 (code B ref 66217); Tue, 26 Sep 2023 19:39:03 +0000 Received: (at 66217) by debbugs.gnu.org; 26 Sep 2023 19:38:33 +0000 Received: from localhost ([127.0.0.1]:49822 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDtA-0000xr-TK for submit@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:33 -0400 Received: from mail-qk1-x733.google.com ([2607:f8b0:4864:20::733]:57473) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDss-0000uu-C4 for 66217@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:15 -0400 Received: by mail-qk1-x733.google.com with SMTP id af79cd13be357-773ac11de71so597289185a.2 for <66217@debbugs.gnu.org>; Tue, 26 Sep 2023 12:38:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1695757075; x=1696361875; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=RlGqm//yDOTpso3efW0OU0tcClx3e5S3NuehTudLxoU=; b=Bsv0JmDCxnpoX58M9S/l4G3vvc01TY6ZMqL6o6PLdtYzltN1ODTSbHX5dpJFOEnHD3 t6ktaFqWvYilnV96nLJaKOwKyLkXs6h+EkDDeT+RH8vGGHCZXYKf+ePjyyWAkS7AQaaj ZotqwHiGzd7GPLDUVdGhuaI1mWAsAncUaMSySXp7Twm9MqgHXxnIEqLM6nKibq3yHL1P GsjYSPvolnTkNXy0T1yccCUWmuHZwCpWU+bSpwH2x1gUdw/jWX2gjU6LDY6DAi+Hh5ZD Iiv2yP6tEkX/Z+UiNocP/e+muj5QV94J+bcbKZEYrHdCN4egdelkfhKqdamMZpZI2pHd MTFQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695757075; x=1696361875; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=RlGqm//yDOTpso3efW0OU0tcClx3e5S3NuehTudLxoU=; b=XAXdgsM20N2NYbTAu9dDOSJdqDIJbxLu77PTpW+qyt/Fo0MTHQ5rEMZJUSL9NseZgz 2fRbJVtfNlDrVgI+J7OAdV43fulyAcxF3aJKs5vMExjpWhxpnhmEccdmZSkA+MDtJmVs 6VUlOumlyZ7kqSNYcgriFlPJcym9scvuKSZr5WYhIPBvlZjz4ndDKw5B6Hr9qOcEB+xo l3d/prM+b0w6h2WbmjRlFrFuTUe+EMW9leJvrWN83zSfalQ2SsYFjmsNogI90J9l03ou aRWFtP/ppzM5vEYiPHCZwEnuztt9WPAIIslCzqImIZfrq9YymHkwngDoSLGVIUJWSATo Sz6w== X-Gm-Message-State: AOJu0Yw1jmG/7jzRzujjz/t0HsPRmz3q75dL9GJGgzRtSuhJssKrT4i/ arr0rtmjlLs+JRToeuNvlEFFNhksWEI= X-Google-Smtp-Source: AGHT+IH1Wtw7pFYmdjxVvn2AvZ9oPkO2U1cIlvkl4XU6ioLMEmoJ8S0s1R2x2whcKdOOXrtW1exUOQ== X-Received: by 2002:a05:620a:24d3:b0:774:38cc:61b0 with SMTP id m19-20020a05620a24d300b0077438cc61b0mr5619988qkn.32.1695757075425; Tue, 26 Sep 2023 12:37:55 -0700 (PDT) Received: from localhost.localdomain (dsl-10-130-229.b2b2c.ca. [72.10.130.229]) by smtp.gmail.com with ESMTPSA id a13-20020a05620a16cd00b0076cbcf8ad3bsm2887595qkn.55.2023.09.26.12.37.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 12:37:55 -0700 (PDT) From: Maxim Cournoyer Date: Tue, 26 Sep 2023 15:04:29 -0400 Message-ID: <21857466a2ff7222d1f4aedbb6dadb61e44307ef.1695754731.git.maxim.cournoyer@gmail.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/avr-xyz.scm (lufa): New variable. --- gnu/packages/avr-xyz.scm | 83 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 83 insertions(+) diff --git a/gnu/packages/avr-xyz.scm b/gnu/packages/avr-xyz.scm index e8844b8d438..e0db2e3a0c7 100644 --- a/gnu/packages/avr-xyz.scm +++ b/gnu/packages/avr-xyz.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2022 Artyom V. Poptsov +;;; Copyright © 2023 Maxim Cournoyer ;;; ;;; This file is part of GNU Guix. ;;; @@ -29,6 +30,7 @@ (define-module (gnu packages avr-xyz) #:use-module (gnu packages base) #:use-module (gnu packages bash) #:use-module (gnu packages avr) + #:use-module (gnu packages documentation) #:use-module (gnu packages elf) #:use-module (gnu packages gl) #:use-module (gnu packages pkg-config) @@ -95,3 +97,84 @@ (define-public simavr in the emulated code using an @code{.elf} section. You can also load multipart HEX files.") (license license:gpl3))) + +(define-public lufa + (package + (name "lufa") + (version "210130") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/abcminiuser/lufa") + (commit (string-append "LUFA-" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0ylr7qsiikcy827k18zj1vdzf0kb8hb0gjmifd75y8krkhhar49g")))) + (outputs '("bootloaders" "demos" "projects" "doc")) + (build-system gnu-build-system) + (arguments + ;; There are tests, but even LUFA's own CI doesn't run them (they are + ;; only built). + (list + #:tests? #f + #:modules '((guix build gnu-build-system) + (guix build utils) + (ice-9 match) + (srfi srfi-26)) + #:make-flags + #~(list (string-append "SHELL="(search-input-file %build-inputs + "bin/sh"))) + #:phases #~(modify-phases %standard-phases + (delete 'configure) + (add-before 'build 'build-documentation + (lambda* (#:key make-flags #:allow-other-keys) + (apply invoke "make" "-j" (number->string + (or (parallel-job-count) + 1)) + "doxygen" + ;; Ignore errors (see: + ;; https://github.com/abcminiuser/lufa/issues/90). + "-i" + make-flags))) + (replace 'install + ;; There is no default install target as the library is + ;; intended to be integrated in source form in a + ;; project. Install the example projects and demos + ;; binaries as well as the documentation. + (lambda _ + (let ((doc (string-append #$output:doc + "/share/doc/lufa/")) + (html-dirs (find-files "." "^html$" + #:directories? #t))) + (for-each (cut install-file <> #$output:bootloaders) + (find-files "Bootloaders" "\\.hex$")) + (for-each (cut install-file <> #$output:demos) + (find-files "Demos" "\\.hex$")) + (for-each (cut install-file <> #$output:projects) + (find-files "Projects" "\\.hex$")) + ;; Install Doxygen generated HTML documentation. + (for-each + (lambda (html) + (let* ((suffix "Documentation/html") + (l (string-length suffix)) + (dest (string-append + doc + (string-drop + (if (string-suffix? suffix html) + (string-drop-right html l) + (error "unexpected path" html)) + 1)))) ;drop leading "." + (mkdir-p dest) + (copy-recursively html dest))) + html-dirs))))))) + (native-inputs (list doxygen (make-avr-toolchain))) + (home-page "https://www.lufa-lib.org/") + (synopsis "Lightweight USB Framework for AVRs") + (description "UFA is a simple to use, lightweight framework which sits +atop the hardware USB controller in specific AVR microcontroller models, and +allows for the quick and easy creation of complex USB devices and hosts. This +package contains the user-submitted projects and bootloaders for use with +compatible microcontroller models, as well as the demos and the +documentation.") + (license license:expat))) ;see LUFA/License.txt From patchwork Tue Sep 26 19:04:30 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxim Cournoyer X-Patchwork-Id: 54318 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 0F8D627BBE2; Tue, 26 Sep 2023 20:39:10 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI, SPF_HELO_PASS autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id A312427BBE9 for ; Tue, 26 Sep 2023 20:39:08 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlDtX-0006j0-Rm; Tue, 26 Sep 2023 15:38:55 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlDtW-0006gO-Gv for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:54 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qlDtU-0006MK-7P for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:54 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qlDtg-00011V-AO for guix-patches@gnu.org; Tue, 26 Sep 2023 15:39:04 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#66217] [PATCH 07/22] gnu: embedded: Do not use a prefix on the (gnu packages base) module. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Tue, 26 Sep 2023 19:39:04 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66217 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 66217@debbugs.gnu.org Cc: Maxim Cournoyer Received: via spool by 66217-submit@debbugs.gnu.org id=B66217.16957571133730 (code B ref 66217); Tue, 26 Sep 2023 19:39:04 +0000 Received: (at 66217) by debbugs.gnu.org; 26 Sep 2023 19:38:33 +0000 Received: from localhost ([127.0.0.1]:49824 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDtB-0000xy-BQ for submit@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:33 -0400 Received: from mail-qk1-x736.google.com ([2607:f8b0:4864:20::736]:46405) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDst-0000v1-LY for 66217@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:16 -0400 Received: by mail-qk1-x736.google.com with SMTP id af79cd13be357-77428e40f71so391440085a.1 for <66217@debbugs.gnu.org>; Tue, 26 Sep 2023 12:38:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1695757077; x=1696361877; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=0OZE6cx53m7e3neSq1RnPWCWCjQVdzhFZjiGiTHR2Kg=; b=QxL9AKxeYZ4Nv6gP20R4gy+i1+xt92xEOgS9CcEvFWC24IBDOZcW1voocza4CajDyj S+JP/anJl2dSWZtVR1NPSo7QmsuvepHTLqQndA+bAlf0LGQSo2LmqfISucpl36Vaj7xx pQOdZ1rsgDdiCjWC78kym7MzOHsK9BXVyMLGuL50pR3sDMtoAr8hZxZwQzqjOLk7MDZC ZOCV53BOMvcqkKjgD+/3uHNKGb7dA+s8t6uxbBV4F1SgW/Hsv/R5CvEt/wDIdPpv4Ar2 socupsKjk2U/6DYYF4KFrgM7DRp16tiDuwrhSGBbXDhyPk5ccGTaxfM/UfGtBQ2hgV3Y jxYQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695757077; x=1696361877; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=0OZE6cx53m7e3neSq1RnPWCWCjQVdzhFZjiGiTHR2Kg=; b=LyUhxX3BK+3WN2hee8eyFwX8ZyTiXcVyML0DfyTLvOOcYegwMMLOJa5KJF7GD0gXo3 PAjEOJPRfB+Iji/UIMig3+klZPZL8H+wpkypaFFN+9ohGZNpVafRFgqvx0ZOZQTiy58V YHEVOPUIU4iFW/f3JaDz/xBv+R57u6A6yHwywQZemnqXH2xOz2etYa3xK0EQnX+V9tn+ qpO6KT0l4m+eLOpFfktddFHr0F7dldRsbiQA91eDg2zRMhlf+YRF1ViEgq9i33cp6Hpi bUQ8o/fkH1c67InCzC1z7toliuRFQ+d0L4Sgij9ZguDHWe7cg4SxTQLxcb7AHaH3u53D BDeg== X-Gm-Message-State: AOJu0Yxgj52wmGOLqCLfGmFlAzbSaj5tZpKj+1f/rn1UMXU0nkJIZ3dp DNrcQKvE9z3rMrUtBnX0JXTXF01psQs= X-Google-Smtp-Source: AGHT+IEelNQ4ziQwxqdS3ITmH0OLc6x37PsKlOrK3dKGPT3RzK3frSnSZprVFrOs+41/eKk9Bfsw+Q== X-Received: by 2002:a0c:b2c4:0:b0:65b:1744:55dc with SMTP id d4-20020a0cb2c4000000b0065b174455dcmr5047194qvf.37.1695757076669; Tue, 26 Sep 2023 12:37:56 -0700 (PDT) Received: from localhost.localdomain (dsl-10-130-229.b2b2c.ca. [72.10.130.229]) by smtp.gmail.com with ESMTPSA id a13-20020a05620a16cd00b0076cbcf8ad3bsm2887595qkn.55.2023.09.26.12.37.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 12:37:56 -0700 (PDT) From: Maxim Cournoyer Date: Tue, 26 Sep 2023 15:04:30 -0400 Message-ID: <572e2fa9a956ffe6ab2ec957943b7a5e4f771743.1695754731.git.maxim.cournoyer@gmail.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches This can in some cases hide the real error with errors such as: error: base:which: unbound variable * gnu/packages/embedded.scm (openocd) [native-inputs]: Replace base:which with which. (binutils-vc4): Likewise. (python-libmpsse): Likewise. --- gnu/packages/embedded.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/embedded.scm b/gnu/packages/embedded.scm index 46a9a3a70a8..aca3cbade87 100644 --- a/gnu/packages/embedded.scm +++ b/gnu/packages/embedded.scm @@ -46,7 +46,7 @@ (define-module (gnu packages embedded) #:use-module (gnu packages) #:use-module (gnu packages admin) #:use-module (gnu packages autotools) - #:use-module ((gnu packages base) #:prefix base:) + #:use-module (gnu packages base) #:use-module (gnu packages bison) #:use-module (gnu packages boost) #:use-module (gnu packages check) @@ -672,7 +672,7 @@ (define-public openocd (list autoconf automake libtool - base:which + which pkg-config texinfo)) (inputs @@ -1152,7 +1152,7 @@ (define-public binutils-vc4 ("flex" ,flex) ("bison" ,bison) ("guile-1.8" ,guile-1.8) - ("which" ,base:which))) + ("which" ,which))) (synopsis "Binutils for VC4") (description "This package provides @code{binutils} for VideoCore IV, the Raspberry Pi chip.") @@ -1241,7 +1241,7 @@ (define-public python-libmpsse (inputs (list libftdi python)) (native-inputs - (list pkg-config swig base:which)) + (list pkg-config swig which)) (arguments `(#:tests? #f ; No tests exist. #:parallel-build? #f ; Would be buggy. From patchwork Tue Sep 26 19:04:31 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxim Cournoyer X-Patchwork-Id: 54328 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 8C27827BBE2; Tue, 26 Sep 2023 20:39:51 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI, SPF_HELO_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 8792E27BBEA for ; Tue, 26 Sep 2023 20:39:48 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlDta-0006nn-PQ; Tue, 26 Sep 2023 15:38:59 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlDtW-0006gL-Gh for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:54 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qlDtU-0006ML-JP for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:54 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qlDtg-00011c-Ms; Tue, 26 Sep 2023 15:39:04 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#66217] [PATCH 08/22] gnu: Add qmk-firmware-ergodox-ez-default. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: efraim@flashner.co.il, vagrant@debian.org, guix-patches@gnu.org Resent-Date: Tue, 26 Sep 2023 19:39:04 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66217 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 66217@debbugs.gnu.org Cc: Maxim Cournoyer , Efraim Flashner , Vagrant Cascadian X-Debbugs-Original-Xcc: Efraim Flashner , Vagrant Cascadian Received: via spool by 66217-submit@debbugs.gnu.org id=B66217.16957571143743 (code B ref 66217); Tue, 26 Sep 2023 19:39:04 +0000 Received: (at 66217) by debbugs.gnu.org; 26 Sep 2023 19:38:34 +0000 Received: from localhost ([127.0.0.1]:49827 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDtB-0000y7-RJ for submit@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:34 -0400 Received: from mail-qk1-x72f.google.com ([2607:f8b0:4864:20::72f]:60742) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDsv-0000vK-0W for 66217@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:18 -0400 Received: by mail-qk1-x72f.google.com with SMTP id af79cd13be357-77407e21d3cso600802685a.1 for <66217@debbugs.gnu.org>; Tue, 26 Sep 2023 12:38:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1695757078; x=1696361878; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=TYD1dbar7wz9g8zUo5lkA35Sg5ie+isGxSm8vTEqRWs=; b=RznXA4pjYMjjtGW7FOFkZ+4+8dpfsyQc5Tk4i8X5VEFQCF6nFzHMrQYXSOsGLFaexY JyvJahBQvWZtHf1E+rT/MbWBtn/OpagY0etCe2tB744ZIBwYnp/nctkRVQpEiLtmmsqT oyb5zVgDtN5NZxrkoDYii2C7+z94n0lLyFsT1CVySNcdz0/uHlpdQyZ3JqWJrdAa//GT pFyCUqf95DWlMF94EiTqmT0VEBcQ9U8QoQwWB7ywW50vRQVaB+tGIHJ5gHn8KYo1ZgLP re6FkVotgKhGgKMPXOb/hjDicx2/LSz2Xf7nvkdB7tvBHqW+EhhH3eHgld03pJjQy0cI 7eFA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695757078; x=1696361878; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=TYD1dbar7wz9g8zUo5lkA35Sg5ie+isGxSm8vTEqRWs=; b=q1Ar+WQHjnxM3J1ldPAaHZ7Ew2Ahvv0vRT51dEeHN3pI0EGnt7Pw3pXPC7XVux9RIc mUcr7wUPatCceY/aU6LJ30whggQv9oYc1LpmJFzVuE/YunUzsgRwNo3zmP0b/IR4LuCi amdEpPWdchQDsmSEjMHn3GOr7URwS3PeELlhp5iy+zcFe11xdzLlU/DMlxx25WuAWacM UnWSvS8/ydUaGzlh9vRDvM5XqhMEnpz/nuJn/QSnZ/YYLmVdoEcEpb23dqWA7alv8aTE xQlxwOH3NlPMKAUgteus/vGBAGe+wt5GCVByFcH+285BIjPHa9Zf3sdyc19fxiOMpZbC revA== X-Gm-Message-State: AOJu0YxTIOEnYgnwhp7do9JXJ9OC7kA6kWyse+t1HgdK+AlE4rTZbFAB Ia2Sx1b5kA2q/sSx+3Q6cONtvTEVbJc= X-Google-Smtp-Source: AGHT+IHuPbXiKc1F13eOK1rmafQtJSi/MaLdp9je2gG0QtDkPw3xkFfZvOkSdp0c6ePwL/mpwGAJQA== X-Received: by 2002:a05:620a:f14:b0:76c:9391:6922 with SMTP id v20-20020a05620a0f1400b0076c93916922mr13460093qkl.24.1695757077979; Tue, 26 Sep 2023 12:37:57 -0700 (PDT) Received: from localhost.localdomain (dsl-10-130-229.b2b2c.ca. [72.10.130.229]) by smtp.gmail.com with ESMTPSA id a13-20020a05620a16cd00b0076cbcf8ad3bsm2887595qkn.55.2023.09.26.12.37.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 12:37:57 -0700 (PDT) From: Maxim Cournoyer Date: Tue, 26 Sep 2023 15:04:31 -0400 Message-ID: <1a7b1a9eb1d7c0dacb807b19ba949b55e851692a.1695754731.git.maxim.cournoyer@gmail.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/firmware.scm (make-qmk-firmware/implementation) (make-qmk-firmware): New procedures. (qmk-firmware-ergodox-ez-default): New variable. --- gnu/packages/firmware.scm | 126 +++++++++++++++++++++++++++++++++++++- 1 file changed, 125 insertions(+), 1 deletion(-) diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm index 1957fb8aac4..7220177eadb 100644 --- a/gnu/packages/firmware.scm +++ b/gnu/packages/firmware.scm @@ -28,6 +28,7 @@ (define-module (gnu packages firmware) #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix memoization) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix gexp) @@ -43,6 +44,7 @@ (define-module (gnu packages firmware) #:use-module (gnu packages admin) #:use-module (gnu packages autotools) #:use-module (gnu packages avr) + #:use-module (gnu packages avr-xyz) #:use-module (gnu packages assembly) #:use-module (gnu packages backup) #:use-module (gnu packages base) @@ -80,7 +82,10 @@ (define-module (gnu packages firmware) #:use-module (gnu packages tls) #:use-module (gnu packages version-control) #:use-module (gnu packages xml) - #:use-module (ice-9 match)) + #:use-module (ice-9 format) + #:use-module (ice-9 match) + + #:export (make-qmk-firmware)) (define-public ath9k-htc-firmware (package @@ -1308,3 +1313,122 @@ (define-public qmk install the udev rules provided by the @code{qmk-udev-rules} package to avoid having to run @command{qmk} as root when flashing the firmware.") (license license:expat))) + +(define* (make-qmk-firmware/implementation keyboard keymap + #:key (description "") + keymap-json + keymap-source-directory) + "Return a package to build the QMK firmware for KEYBOARD with KEYMAP. +Keyboard should be the name of a sub-directory under the @file{keyboards} +directory. For custom keymaps, KEYMAP-JSON, a file-like object of a JSON +representation of KEYMAP as generated by the @url{https://config.qmk.fm/, QMK +Configurator} tool or KEYMAP-SOURCE-DIRECTORY, a file-like object directory +containing the keymap source files files such as @file{keymap.c}, can be +provided." + (package + (name (string-append "qmk-firmware-" + (string-replace-substring keyboard "_" "-") "-" + (string-replace-substring keymap "_" "-"))) + ;; Note: When updating this package, make sure to also update the commit + ;; used for the LUFA submodule in the 'copy-lufa-source' phase below. + (version "0.22.3") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/qmk/qmk_firmware") + (commit version))) + (file-name (git-file-name "qmk-firmware" version)) + (sha256 + (base32 + "0s1lcnv7cddpn768p7mrc5bkxhx0ba5p77ya007dnkbk36c33d0w")))) + (build-system gnu-build-system) + (arguments + (list + #:modules '((guix build gnu-build-system) + (guix build utils) + (ice-9 match) + (srfi srfi-26)) + ;; XXX: Running a test target like "test:$keyboard" doesn't seem to run + ;; anything and causes the .hex file to be regenerated; leave the tests + ;; out for now. + #:tests? #f + #:make-flags + #~(list #$(format #f "~a:~a" keyboard keymap) + (string-append "SHELL=" (search-input-file + %build-inputs "bin/sh"))) + #:phases + #~(modify-phases %standard-phases + (replace 'configure + (lambda _ + ;; Do not attempt to retrieve information from git during the + ;; build. + (setenv "SKIP_GIT" "1"))) + (add-after 'unpack 'copy-lufa-source + ;; QMK carries a custom fork of LUFA as a git submodule; make sure + ;; the same commit is used (see: + ;; https://github.com/qmk/qmk_firmware/tree/master/lib). + (lambda _ + (copy-recursively + #$(let ((commit "549b97320d515bfca2f95c145a67bd13be968faa")) + (origin + (inherit (package-source lufa)) + (uri (git-reference + (url "https://github.com/qmk/lufa") + (commit commit))) + (file-name (git-file-name "lufa" commit)) + (sha256 + (base32 + "1rmhm4rxvq8skxqn6vc4n4ly1ak6whj7c386zbsci4pxx548n9h4")))) + "lib/lufa"))) + #$@(if keymap-source-directory + #~((add-after 'unpack 'copy-keymap-source-directory + (lambda _ + (let ((keymap-dir #$(string-append "keyboards/" keyboard + "/keymaps/" keymap))) + (false-if-exception (delete-file-recursively + keymap-dir)) + (copy-recursively #$keymap-source-directory + keymap-dir))))) + #~()) + #$@(if keymap-json + #~((replace 'build + (lambda _ + (invoke "qmk" "compile" #$keymap-json)))) + #~()) + (replace 'install + (lambda _ + (match (find-files ".build" "\\.hex$") + (() + (error "no built binary file found")) + ((hex ..1) + (for-each (cut install-file <> #$output) hex)))))))) + ;; Some of the build tools are required to be on the PATH, as the make + ;; files do not always operate through 'qmk'; all of qmk's inputs must + ;; thus be made available. + (native-inputs (modify-inputs (package-inputs qmk) + (append qmk))) + (home-page "https://qmk.fm/") + (synopsis "Keyboard firmware for Atmel AVR and Arm USB families") + (description + (format #f "QMK (Quantum Mechanical Keyboard Firmware) is a keyboard +firmware based on the @url{https://github.com/tmk/tmk_keyboard, tmk_keyboard +firmware} with some useful features for Atmel AVR and ARM controllers, and +more specifically, the @url{https://olkb.com/, OLKB product line}, the +@url{https://ergodox-ez.com/, ErgoDox EZ keyboard}, and the +@url{https://clueboard.co/, Clueboard product line}.~@[~%~%~a~]" description)) + (license license:gpl2+))) + +(define make-qmk-firmware (memoize make-qmk-firmware/implementation)) + +(define-public qmk-firmware-ergodox-ez-default + (make-qmk-firmware + "ergodox_ez" "default" #:description + "This is the default keymap used on the ErgoDox EZ keyboard. It includes +the novel MEH and Hyper keys pioneered by the ErgoDox EZ, easy to reach +Control/Shift modifiers keys, and two-functions hold keys to access layer 1. +Layer 1 contains function keys, symbols, a numpad as well as brightness keys. +Layer 2 contains multimedia and mouse keys. See the +@file{keyboards/ergodox_ez/keymaps/default/keymap.c} source file for the +keymap definition, or the +@url{https://configure.ergodox-ez.com/ergodox-ez/layouts/JwwW/latest/0, +ErgoDox EZ Configurator} page.")) From patchwork Tue Sep 26 19:04:32 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxim Cournoyer X-Patchwork-Id: 54323 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 673D327BBE2; Tue, 26 Sep 2023 20:39:38 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI, SPF_HELO_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 612E127BBE9 for ; Tue, 26 Sep 2023 20:39:37 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlDtc-0006pa-M6; Tue, 26 Sep 2023 15:39:00 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlDtW-0006gI-Fp for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:54 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qlDtT-0006MP-VJ for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:54 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qlDth-00011n-2l; Tue, 26 Sep 2023 15:39:05 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#66217] [PATCH 09/22] gnu: Add qmk-firmware-ergodox-ez-dvorak-42-key. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: efraim@flashner.co.il, vagrant@debian.org, guix-patches@gnu.org Resent-Date: Tue, 26 Sep 2023 19:39:05 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66217 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 66217@debbugs.gnu.org Cc: Maxim Cournoyer , Efraim Flashner , Vagrant Cascadian X-Debbugs-Original-Xcc: Efraim Flashner , Vagrant Cascadian Received: via spool by 66217-submit@debbugs.gnu.org id=B66217.16957571153750 (code B ref 66217); Tue, 26 Sep 2023 19:39:05 +0000 Received: (at 66217) by debbugs.gnu.org; 26 Sep 2023 19:38:35 +0000 Received: from localhost ([127.0.0.1]:49829 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDtC-0000yL-QQ for submit@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:35 -0400 Received: from mail-qv1-xf2e.google.com ([2607:f8b0:4864:20::f2e]:48156) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDsw-0000vS-79 for 66217@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:18 -0400 Received: by mail-qv1-xf2e.google.com with SMTP id 6a1803df08f44-65b2463d663so12318996d6.0 for <66217@debbugs.gnu.org>; Tue, 26 Sep 2023 12:38:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1695757079; x=1696361879; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=zvgaJLhqUvj683SWe5nLxTFepOkTUpcy0QlU16f+cMk=; b=WYUc0IXsWNeHh5tNCuQwda1rYwQUxKIL5MxD0UeBwfv6Z+XC769B3yNMM3rXxJAVFY BLhyh/iv3LuAHbFUSldXwuCaJZmi2OyG65uaDQLjs1KQ7MFt5T5I5SdsOxLf2+Loq+Kx e6EH4gjx6DD//nNtsUbwfPQeg3e4/7ey+Idb8MGh2w978BHaGe/NMgwCP+g/0E9xRTqC DNlgcywj49+edsVcMGWeCgKAqHem526KMYIIEF0pNrOImbJWi8Z1hfL+Fa6E6MF4NGbZ cKBwOdXpwfnBMi+3ob6mEelQ11ASytmNK0BWUWDHSJ/8eAxAfzVIu64+sJ70ZtM4DMLB b6eQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695757079; x=1696361879; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=zvgaJLhqUvj683SWe5nLxTFepOkTUpcy0QlU16f+cMk=; b=E6Safu5woL3gToSM+MA5o1lD2KkjPg4jv0Ua+VMfm5Cnt9DEvUB3lHYMj2A5eHPYcj 7a8V6tFPFVquh7LjIoK0KpjwtECiTzCZ5AIuYhOuSg2qeT/oYzz67/C1G9/fxQmwYXB/ fCoooI68f1HmzGeURyXkG4Y/6RG97vphB1cUz7miNyWuMht6TGljOiwR1myBIzM+LTyt 9G50qHraBvPnillqNOpmRyAiqkcsKTve0gHMyin2ydnW71ZypyKV/x0VdtkbrIwdpH5+ mbyt8qExK1ovVF/l8wpbXeqEncIjkx0i+Dw11Y5g0PlG1C27ofeWm6OLGUCkuNCT+oXk PP0A== X-Gm-Message-State: AOJu0YwLt5IfmRjKi9ANt/AaoPzN1lgN3p1PUx6N6hUlGhRKA6c5wXqm q/elc7V+BqBxeedEZN2r84uNf18o82Y= X-Google-Smtp-Source: AGHT+IGGJjZLFOVl9vv22wNqRvJu2SozF73YK5eLDxaT0P69ibSmI132hpRfl70ufg8/FXRjAGYiNg== X-Received: by 2002:a0c:b71a:0:b0:63f:bf70:6796 with SMTP id t26-20020a0cb71a000000b0063fbf706796mr9887811qvd.58.1695757079133; Tue, 26 Sep 2023 12:37:59 -0700 (PDT) Received: from localhost.localdomain (dsl-10-130-229.b2b2c.ca. [72.10.130.229]) by smtp.gmail.com with ESMTPSA id a13-20020a05620a16cd00b0076cbcf8ad3bsm2887595qkn.55.2023.09.26.12.37.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 12:37:58 -0700 (PDT) From: Maxim Cournoyer Date: Tue, 26 Sep 2023 15:04:32 -0400 Message-ID: <616840fd29c50d60e475bf04608a8f8e62843d72.1695754731.git.maxim.cournoyer@gmail.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/firmware.scm (qmk-firmware-ergodox-ez-dvorak-42-key): New variable. --- gnu/packages/firmware.scm | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm index 7220177eadb..79ef0416b3d 100644 --- a/gnu/packages/firmware.scm +++ b/gnu/packages/firmware.scm @@ -1432,3 +1432,14 @@ (define-public qmk-firmware-ergodox-ez-default keymap definition, or the @url{https://configure.ergodox-ez.com/ergodox-ez/layouts/JwwW/latest/0, ErgoDox EZ Configurator} page.")) + +(define-public qmk-firmware-ergodox-ez-dvorak-42-key + (make-qmk-firmware "ergodox_ez" "dvorak_42_key" #:description "\ +This is a Dvorak-based layout for the ErgoDox EZ. Its basic key layout is +similar to the Atreus @samp{dvorak_42_key} layout; in fact this layout was +created for seamless switching between the ErgoDox EZ and Atreus keyboards. +On the base layer, the keys that don't exist on the Atreus are mapped to MEH +shortcuts and can be interpreted by your window managher. This layout only +makes use of the 42 keys that the Atreus also has for the main functionality. +See the @file{keyboards/atreus/keymaps/dvorak_42_key/keymap.c} source file for +the keymap definition.")) From patchwork Tue Sep 26 19:04:33 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxim Cournoyer X-Patchwork-Id: 54338 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 910DA27BBE9; Tue, 26 Sep 2023 20:40:38 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI, SPF_HELO_PASS autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id DC34527BBE2 for ; Tue, 26 Sep 2023 20:40:36 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlDtZ-0006le-DD; Tue, 26 Sep 2023 15:38:57 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlDtW-0006gE-FG for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:54 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qlDtU-0006MR-Ar for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:54 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qlDth-00011v-Eu; Tue, 26 Sep 2023 15:39:05 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#66217] [PATCH 10/22] gnu: Add qmk-udev-rules. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: efraim@flashner.co.il, vagrant@debian.org, guix-patches@gnu.org Resent-Date: Tue, 26 Sep 2023 19:39:05 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66217 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 66217@debbugs.gnu.org Cc: Maxim Cournoyer , Efraim Flashner , Vagrant Cascadian X-Debbugs-Original-Xcc: Efraim Flashner , Vagrant Cascadian Received: via spool by 66217-submit@debbugs.gnu.org id=B66217.16957571153757 (code B ref 66217); Tue, 26 Sep 2023 19:39:05 +0000 Received: (at 66217) by debbugs.gnu.org; 26 Sep 2023 19:38:35 +0000 Received: from localhost ([127.0.0.1]:49831 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDtD-0000yR-3P for submit@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:35 -0400 Received: from mail-qk1-x72a.google.com ([2607:f8b0:4864:20::72a]:48402) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDsx-0000va-9o for 66217@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:19 -0400 Received: by mail-qk1-x72a.google.com with SMTP id af79cd13be357-7741c5bac51so474298985a.1 for <66217@debbugs.gnu.org>; Tue, 26 Sep 2023 12:38:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1695757080; x=1696361880; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=ofMvdwwt0AHpK7wY0K+Z/bcfXr4eFsF4M8dvtvytjXY=; b=k1llTFJkCB/xz/Q/aeAjIUVaoYCIxpugA3XXhHE++iMPRqRXqE4WTq1hammn+xgpsO 1D8QpYwsmt88wRZuUjjOVEDTp9omwkNnUekgXHZjuwl6zT1BZ46WICx2usdoso3m/CTa S1Pgo6wWhd94AC8znoLjZZgL8ZOSJBbxoVl+qhnPGQ9KG5+XG6xFaWFlONEDjJ2tKGQC ehCQfeEKALPPhWczLX4ic4g+Rlf5cs3kzsbqB01aX6hCp/PJNaenxubqjZGvbG+hbHrb RuNds51CjgDfv6TEncWVhedQkWWCwIo6E/TFijs2aaqT3bIHI1c2z45F4vA8mnj7xZ1e DVHw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695757080; x=1696361880; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ofMvdwwt0AHpK7wY0K+Z/bcfXr4eFsF4M8dvtvytjXY=; b=tipGZfiDtod4+4c+hdNF/z/31B1Z8axDRLUXZgpMPnpLXO7XFqbSflPKfCDmxt8f7P Mx3/YBwXAsF8lP1GVj/Q1lp1XZ6GxIp3fFlJgLSeP8dO2eeqwOB4k9bmq0AAlcFJ11oF lkhRC4uwEysJCD3N4JFfdEC4YTMLajRzWseVd2w6DhtRg8D97FgUaehUkAbUm5T1zfHf NfI4T0jQvXgDMvC1dMqx5qdaCmoSHAx4CF9jFJTIzso5sKLgzFdBRFRP6nQHj9FMqpAi 9QIgAYu/1hzrKuKuGE5BQ3eoTWz40+9Ejb6uHvqtb3+iWdPPU7E0WYn0zqKiCJh5TrYN /BxA== X-Gm-Message-State: AOJu0YygAUMl89Cz18N/bv06guGecv0GJ6ZxFhKMdycOAd7jkbOt4yXn ryLs2K4MKMa7QsAw8ZNi4WpzMp5apds= X-Google-Smtp-Source: AGHT+IEf/IiJjME7emM020iCaTHMDWqoZtEhijzUiD1fBPE27QRXgNPor0xFJXOUtLpO2Dh/DwYp/w== X-Received: by 2002:a05:620a:1998:b0:76f:24d2:e232 with SMTP id bm24-20020a05620a199800b0076f24d2e232mr10998108qkb.47.1695757080496; Tue, 26 Sep 2023 12:38:00 -0700 (PDT) Received: from localhost.localdomain (dsl-10-130-229.b2b2c.ca. [72.10.130.229]) by smtp.gmail.com with ESMTPSA id a13-20020a05620a16cd00b0076cbcf8ad3bsm2887595qkn.55.2023.09.26.12.37.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 12:38:00 -0700 (PDT) From: Maxim Cournoyer Date: Tue, 26 Sep 2023 15:04:33 -0400 Message-ID: X-Mailer: git-send-email 2.41.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/firmware.scm (qmk-udev-rules): New variable. --- gnu/packages/firmware.scm | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm index 79ef0416b3d..22be7ee62dd 100644 --- a/gnu/packages/firmware.scm +++ b/gnu/packages/firmware.scm @@ -1443,3 +1443,21 @@ (define-public qmk-firmware-ergodox-ez-dvorak-42-key makes use of the 42 keys that the Atreus also has for the main functionality. See the @file{keyboards/atreus/keymaps/dvorak_42_key/keymap.c} source file for the keymap definition.")) + +(define-public qmk-udev-rules + (package + (inherit qmk-firmware-ergodox-ez-default) + (name "qmk-udev-rules") + (build-system copy-build-system) + (arguments + '(#:install-plan '(("./util/udev" "lib/udev/rules.d" + #:include-regexp ("rules$"))))) + (native-inputs '()) + (inputs '()) + (propagated-inputs '()) + (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. The +rules require the group @code{plugdev} to be added to each user that needs +this."))) From patchwork Tue Sep 26 19:04:34 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxim Cournoyer X-Patchwork-Id: 54319 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 2F5C227BBEA; Tue, 26 Sep 2023 20:39:12 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI, SPF_HELO_PASS,TVD_SPACE_RATIO,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 1580827BBE2 for ; Tue, 26 Sep 2023 20:39:11 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlDtY-0006jL-H1; Tue, 26 Sep 2023 15:38:56 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlDtW-0006gH-Ft for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:54 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qlDtV-0006Ml-Uq for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:54 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qlDth-000123-SK; Tue, 26 Sep 2023 15:39:05 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#66217] [PATCH 11/22] gnu: Add qmk-firmware-ergodox-ez-hacker-dvorak. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: efraim@flashner.co.il, vagrant@debian.org, guix-patches@gnu.org Resent-Date: Tue, 26 Sep 2023 19:39:05 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66217 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 66217@debbugs.gnu.org Cc: Maxim Cournoyer , Efraim Flashner , Vagrant Cascadian X-Debbugs-Original-Xcc: Efraim Flashner , Vagrant Cascadian Received: via spool by 66217-submit@debbugs.gnu.org id=B66217.16957571163765 (code B ref 66217); Tue, 26 Sep 2023 19:39:05 +0000 Received: (at 66217) by debbugs.gnu.org; 26 Sep 2023 19:38:36 +0000 Received: from localhost ([127.0.0.1]:49833 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDtD-0000yY-Ga for submit@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:36 -0400 Received: from mail-qk1-x732.google.com ([2607:f8b0:4864:20::732]:49657) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDsy-0000ve-HO for 66217@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:21 -0400 Received: by mail-qk1-x732.google.com with SMTP id af79cd13be357-7740c8509c8so557682285a.3 for <66217@debbugs.gnu.org>; Tue, 26 Sep 2023 12:38:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1695757081; x=1696361881; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=hFJfrBU3GqRQeDwB9FyK3UooGqM1XQhh7ElRbSvw9qM=; b=iav+wWg6V3jpcYszv5fJN0MaLrEiRKSiIg8i2rvInITDB4q+X24+lPbOMsylGfRoqd DxbLzom+HSF+zODNT+QmLjA6v18ZK8zU1iRlyoWwpZQN8K+cuDwmhFu+0IzQKMf0feSd /urqNQTW+HXUTWygUr485XO+abRdRcacmcqQ5IxvmB5EI1tX9cuJyDrPAiIdEN741d1p nVY6xIwZAp4uxwOr5iuF7K9fQ+w2Uh0dIKWM+Ovd21SZw7VvqVZ/MPnTRRUN0hoQJpiV yUItXR87UQcXf/B/Wd+J0BLDbpNasGzTNou0az5Z6wpHofYLPNcS6ER3CtYLb6dLlBnj zqcA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695757081; x=1696361881; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=hFJfrBU3GqRQeDwB9FyK3UooGqM1XQhh7ElRbSvw9qM=; b=IYi+r51Mg5ZStCy+Zm5MKFsoHyPThTkZlWll1zRoIUkoAIKzg8bPipXCXEVSi76jvD TQfeZE5F2dxpIkTVP1JgWS/3uQg4hJWOWHSbHbBBV9xdKMh0hsQYhcNZZvGYKQDAev+o YIXpCe/PyK7Q2b0UJxD+DCShCsyzg4B3eAQSJMWJx2S3RGZS0H123OKKx21hsdz5M82Q 6L3OqBesfhZpx3V1j9ZGiEjZG2AP6V7Q2KKXb0fbkgW+88ijBOYqjo++VKMcPVauLnQQ i3x7F5jArr96l2TKxVPNRe1feE1yJlhyHCcRj9ZiuT3M8W2R0nvILvQEYaXMWc34/2C3 0iJg== X-Gm-Message-State: AOJu0YxPUhvfQOjp+YJjvdDSh3QhCDrXsH5TC91mndODletOJrrQld1m auYSPjQ+cQMcATWpb3pUD+gIWz8VcM0= X-Google-Smtp-Source: AGHT+IH0PqNWeq2/NCMjGDsYoN5buleDhcXfDm3OUgYvi4nYFWhoy33ySILJLGx2YdMpdCqJ0znPgA== X-Received: by 2002:a05:620a:222a:b0:76f:1f8c:cc1b with SMTP id n10-20020a05620a222a00b0076f1f8ccc1bmr8064245qkh.78.1695757081593; Tue, 26 Sep 2023 12:38:01 -0700 (PDT) Received: from localhost.localdomain (dsl-10-130-229.b2b2c.ca. [72.10.130.229]) by smtp.gmail.com with ESMTPSA id a13-20020a05620a16cd00b0076cbcf8ad3bsm2887595qkn.55.2023.09.26.12.38.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 12:38:01 -0700 (PDT) From: Maxim Cournoyer Date: Tue, 26 Sep 2023 15:04:34 -0400 Message-ID: <3913e3181ace6703af58aed05be334c059e57ef1.1695754731.git.maxim.cournoyer@gmail.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/firmware.scm (qmk-firmware-ergodox-ez-hacker-dvorak): New variable. * gnu/packages/patches/qmk-firmware-fix-hacker-dvorak.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. --- gnu/local.mk | 1 + gnu/packages/firmware.scm | 25 ++++++++++++++++++- .../qmk-firmware-fix-hacker-dvorak.patch | 15 +++++++++++ 3 files changed, 40 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/qmk-firmware-fix-hacker-dvorak.patch diff --git a/gnu/local.mk b/gnu/local.mk index bfa816d717c..c04c4196cdf 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1893,6 +1893,7 @@ dist_patch_DATA = \ %D%/packages/patches/quagga-reproducible-build.patch \ %D%/packages/patches/quickswitch-fix-dmenu-check.patch \ %D%/packages/patches/quilt-grep-compat.patch \ + %D%/packages/patches/qmk-firmware-fix-hacker-dvorak.patch \ %D%/packages/patches/qtwayland-dont-recreate-callbacks.patch \ %D%/packages/patches/qtwayland-cleanup-callbacks.patch \ %D%/packages/patches/ragel-char-signedness.patch \ diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm index 22be7ee62dd..6a488d672ff 100644 --- a/gnu/packages/firmware.scm +++ b/gnu/packages/firmware.scm @@ -1340,7 +1340,9 @@ (define* (make-qmk-firmware/implementation keyboard keymap (file-name (git-file-name "qmk-firmware" version)) (sha256 (base32 - "0s1lcnv7cddpn768p7mrc5bkxhx0ba5p77ya007dnkbk36c33d0w")))) + "0s1lcnv7cddpn768p7mrc5bkxhx0ba5p77ya007dnkbk36c33d0w")) + (patches + (search-patches "qmk-firmware-fix-hacker-dvorak.patch")))) (build-system gnu-build-system) (arguments (list @@ -1444,6 +1446,27 @@ (define-public qmk-firmware-ergodox-ez-dvorak-42-key See the @file{keyboards/atreus/keymaps/dvorak_42_key/keymap.c} source file for the keymap definition.")) +(define-public qmk-firmware-ergodox-ez-hacker-dvorak + (make-qmk-firmware "ergodox_ez" "hacker_dvorak" #:description "\ +This is a Dvorak layout for the ErgoDox EZ. It is inspired by the +@url{https://www.kaufmann.no/roland/dvorak, Programmer Dvorak}. The operating +system keyboard layout should be set to US for this keymap to function +normally. It defines 10 layers: +@enumerate +@item Dvorak +@item Querty +@item Gaming +@item Arrows +@item Mouse +@item Numpad +@item Hyper Fn +@item Media Fn +@item Meh Fn +@item Meh Fn + +@end enumerate +The complete keymap can be inspected at the ErgoDox EZ Configurator web site: +@url{https://configure.ergodox-ez.com/ergodox-ez/layouts/Wadz/latest/0}.")) + (define-public qmk-udev-rules (package (inherit qmk-firmware-ergodox-ez-default) diff --git a/gnu/packages/patches/qmk-firmware-fix-hacker-dvorak.patch b/gnu/packages/patches/qmk-firmware-fix-hacker-dvorak.patch new file mode 100644 index 00000000000..69e68cc8e12 --- /dev/null +++ b/gnu/packages/patches/qmk-firmware-fix-hacker-dvorak.patch @@ -0,0 +1,15 @@ +Submitted upstream: https://github.com/qmk/qmk_firmware/pull/22102 + +diff --git a/keyboards/ergodox_ez/keymaps/hacker_dvorak/user/layer_set_state_user.c b/keyboards/ergodox_ez/keymaps/hacker_dvorak/user/layer_set_state_user.c +index bd4fd10ad1..5ce5f5298f 100644 +--- a/keyboards/ergodox_ez/keymaps/hacker_dvorak/user/layer_set_state_user.c ++++ b/keyboards/ergodox_ez/keymaps/hacker_dvorak/user/layer_set_state_user.c +@@ -4,7 +4,7 @@ layer_state_t layer_state_set_user(layer_state_t state) { + + switch (layer) { + case DVORAK: +- rgblight_sethsv_noeeprom(GREEN); ++ rgblight_sethsv_noeeprom(HSV_GREEN); + rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT); + + if (PLOVER_MODE) { From patchwork Tue Sep 26 19:04:35 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxim Cournoyer X-Patchwork-Id: 54317 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id D962E27BBE2; Tue, 26 Sep 2023 20:39:09 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI, SPF_HELO_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id A8BF627BBEA for ; Tue, 26 Sep 2023 20:39:08 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlDta-0006nj-P1; Tue, 26 Sep 2023 15:38:59 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlDtW-0006gK-G6 for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:54 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qlDtV-0006MS-Br for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:54 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qlDti-00012C-Fa; Tue, 26 Sep 2023 15:39:06 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#66217] [PATCH 12/22] gnu: Add qmk-firmware-ergodox-ez-dvorak. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: efraim@flashner.co.il, vagrant@debian.org, guix-patches@gnu.org Resent-Date: Tue, 26 Sep 2023 19:39:06 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66217 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 66217@debbugs.gnu.org Cc: Maxim Cournoyer , Efraim Flashner , Vagrant Cascadian X-Debbugs-Original-Xcc: Efraim Flashner , Vagrant Cascadian Received: via spool by 66217-submit@debbugs.gnu.org id=B66217.16957571163772 (code B ref 66217); Tue, 26 Sep 2023 19:39:06 +0000 Received: (at 66217) by debbugs.gnu.org; 26 Sep 2023 19:38:36 +0000 Received: from localhost ([127.0.0.1]:49835 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDtE-0000yg-7y for submit@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:36 -0400 Received: from mail-qk1-x734.google.com ([2607:f8b0:4864:20::734]:44218) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDsz-0000vy-ME for 66217@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:21 -0400 Received: by mail-qk1-x734.google.com with SMTP id af79cd13be357-77386822cfbso623149485a.0 for <66217@debbugs.gnu.org>; Tue, 26 Sep 2023 12:38:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1695757083; x=1696361883; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=v6Pvreg56Zpmstxpg40StVxtpaU7fuWYgZH4os/qr5k=; b=NMcDPJh5PM7Eu10ofQrS72OqLQH10f/SiGVObQ0QriXfq6YgpToorj2yhG4Qzg6JgQ AzjkrPuzXFaokWV34CWkyWKfSWSEs4o8ELqLpdxGD6ZGKCm9WZwUyOHpwdrTp1+Fm7wQ upKGTClOxBly/Xp3mtdaeNhth0AybRniMDn/t4McmUcX6mNy6XHSFc0B/C6Gor1PBcN7 9vO8shEemA4Hj6FSj6kM2pcWvCUsgTzHrhe162+LRrjOSpNRODxLi03Lidzdmki8Fs0c 1IMsLB8jnealiAS5636WULxuLu2C4lqZ/wuP3ZfwDzrNEurE2ZKnWMN1F+3NR/avFd7r Daqg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695757083; x=1696361883; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=v6Pvreg56Zpmstxpg40StVxtpaU7fuWYgZH4os/qr5k=; b=GuMdhfavY3ZbbvRUO2bvlXVgJzbX+MAGR1Od6ZnBP0Lg8ZbC1FaGnZgheKCrRi5R7O ciSmb/E644jAZPjCua/83emnSznMWzoXt0SHtYv+5DvYrivRIA3d4W7OtrD8omu6g+dl TVPv3StGxv5dd4hm8Ic+maUqFNfmJOWi4x+Nz1/pSwO12fzzzvDxqHXArKT8w4uOKZNp PBIHJY5Z4Phil43o+uuju/cKYMjuk++tlOsB1rHZi7v9fGFCU43Mbt4vg499SsyWEQdU MZzCk1jblsj02lrR2/OvE+swSeKGWlLS2dhi5dx8uPyQBm8duNuDiAYk70QBKoAHWad8 823w== X-Gm-Message-State: AOJu0Yz+L7iCWUjGwJ+sceI0D4BwDU1XRxdLQEyMV9b56e23/SQhu7Ng /WhLx4Vg6B1EqrKBXHzvfAS6/7Y4wQA= X-Google-Smtp-Source: AGHT+IGg0dvp0jOJcLqbRUyVgNhg+QYR/LcMFX2ndVP4r22ps5NLi77UwZPmuGwOxHavmLSnGtQFIQ== X-Received: by 2002:a05:620a:2698:b0:771:7698:7c51 with SMTP id c24-20020a05620a269800b0077176987c51mr12437542qkp.16.1695757082770; Tue, 26 Sep 2023 12:38:02 -0700 (PDT) Received: from localhost.localdomain (dsl-10-130-229.b2b2c.ca. [72.10.130.229]) by smtp.gmail.com with ESMTPSA id a13-20020a05620a16cd00b0076cbcf8ad3bsm2887595qkn.55.2023.09.26.12.38.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 12:38:02 -0700 (PDT) From: Maxim Cournoyer Date: Tue, 26 Sep 2023 15:04:35 -0400 Message-ID: X-Mailer: git-send-email 2.41.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/firmware.scm (qmk-firmware-ergodox-ez-dvorak): New variable. --- gnu/packages/firmware.scm | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm index 6a488d672ff..ecbab94eda5 100644 --- a/gnu/packages/firmware.scm +++ b/gnu/packages/firmware.scm @@ -1467,6 +1467,14 @@ (define-public qmk-firmware-ergodox-ez-hacker-dvorak The complete keymap can be inspected at the ErgoDox EZ Configurator web site: @url{https://configure.ergodox-ez.com/ergodox-ez/layouts/Wadz/latest/0}.")) +(define-public qmk-firmware-ergodox-ez-dvorak + (make-qmk-firmware + "ergodox_ez" "dvorak" #:description + "This is a rather plain Dvorak layout for the ErgoDox EZ, containing +function and symbols on layer 1 and media and and mouse keys on layer 2. See +the @file{layouts/community/ergodox/dvorak/keymap.c} source file for the +keymap definition.")) + (define-public qmk-udev-rules (package (inherit qmk-firmware-ergodox-ez-default) From patchwork Tue Sep 26 19:04:36 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxim Cournoyer X-Patchwork-Id: 54335 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 0370F27BBEB; Tue, 26 Sep 2023 20:40:34 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI, SPF_HELO_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 47A4F27BBE2 for ; Tue, 26 Sep 2023 20:40:32 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlDtZ-0006jE-4Z; Tue, 26 Sep 2023 15:38:57 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlDtW-0006gP-Hd for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:54 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qlDtV-0006Mk-TV for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:54 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qlDti-00012Q-Vq; Tue, 26 Sep 2023 15:39:06 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#66217] [PATCH 13/22] gnu: Add qmk-firmware-ergodox-ez-dvorak-emacs. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: efraim@flashner.co.il, vagrant@debian.org, guix-patches@gnu.org Resent-Date: Tue, 26 Sep 2023 19:39:06 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66217 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 66217@debbugs.gnu.org Cc: Maxim Cournoyer , Efraim Flashner , Vagrant Cascadian X-Debbugs-Original-Xcc: Efraim Flashner , Vagrant Cascadian Received: via spool by 66217-submit@debbugs.gnu.org id=B66217.16957571173780 (code B ref 66217); Tue, 26 Sep 2023 19:39:06 +0000 Received: (at 66217) by debbugs.gnu.org; 26 Sep 2023 19:38:37 +0000 Received: from localhost ([127.0.0.1]:49837 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDtE-0000yn-JE for submit@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:36 -0400 Received: from mail-qk1-x733.google.com ([2607:f8b0:4864:20::733]:58753) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDt0-0000wE-NK for 66217@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:23 -0400 Received: by mail-qk1-x733.google.com with SMTP id af79cd13be357-77412b91c41so499049585a.1 for <66217@debbugs.gnu.org>; Tue, 26 Sep 2023 12:38:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1695757084; x=1696361884; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=/PDhU2M+vFsZepI6VTC4aC1nQE/nmJivAFr4TZ4DRD0=; b=EUK8ZHm8NlswaZ1gOJWHCvn7DoJts+YNjw9nq3rAT2zuIHvVR218kO8t5H0+hK+1Ub Oi5i5807AhK6VgLRWVl+gP62A4PJ71h5/ksCJuw8cGgPGMKROaLZ0JEJwrKXPF7Th0+L OTy3U9G5nxQUU/e0nFST20L+iBFTx7AzC+kLJrrosHKVggFFrQXKYHELWgIm/OWtmnU/ Aoe93qqb0S7icyBFlrxdFDyevILS6hwiyC532sl1vTFQ6anCj5hd8yh5oCCzhWz5C7Nc XF4gWQY6CJ1yDuuum0BjtbZj2SX1RlNUCE0JYKOiRZCIMn5wheTxs9DNfO2k9V5tU+08 L3CA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695757084; x=1696361884; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=/PDhU2M+vFsZepI6VTC4aC1nQE/nmJivAFr4TZ4DRD0=; b=aeSEns4u/S9sqj2ECltc5XKtjJFx5tBBWYj6PB7X1N9qwViP0PtalUBJ5nmKOD5Dq0 MqwUv22xNVqXUB+bfcENYpSd/DeIoA9B4REvqqoLzI39rMKbsVd1DrV0hJXsGE16imAE WW1soJNlbH4R2SE1nwlPmy7bIJFP0Wy0QrVxI0Sp8Fupgb7PHTzGPR2itxSiQbmia4J1 FKkVYyDwvPjE7aKLBzw4V3KnRl+K0AfGG6BH1xx8D0k/wRFT5pkgD+sRhlJxLS4eIREr cu+e4VO87cXhEWQMSNfgteeB+UEhVk54Q4q+F5Xrv1CVFqgpLAWvacnDqBSaaO7ZlMyK XEdA== X-Gm-Message-State: AOJu0YylkH93Sb6me6qdD9eKf7uMsWe81uHJp+Mf5WKHl5ujr2Sn//7J n1wMCq55BeyPBkvn6ZY5vFlfaJGlpbM= X-Google-Smtp-Source: AGHT+IGIlzb67Aca9vI1I5lT5C6ToVaAktBvRVN+eynn1UaeLXaSjHQjijcjr5X07dSSELrjIEyNag== X-Received: by 2002:a05:620a:222a:b0:774:15ef:5deb with SMTP id n10-20020a05620a222a00b0077415ef5debmr8623847qkh.35.1695757083880; Tue, 26 Sep 2023 12:38:03 -0700 (PDT) Received: from localhost.localdomain (dsl-10-130-229.b2b2c.ca. [72.10.130.229]) by smtp.gmail.com with ESMTPSA id a13-20020a05620a16cd00b0076cbcf8ad3bsm2887595qkn.55.2023.09.26.12.38.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 12:38:03 -0700 (PDT) From: Maxim Cournoyer Date: Tue, 26 Sep 2023 15:04:36 -0400 Message-ID: X-Mailer: git-send-email 2.41.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/firmware.scm (qmk-firmware-ergodox-ez-dvorak-emacs): New variable. --- gnu/packages/firmware.scm | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm index ecbab94eda5..19dc12a8fce 100644 --- a/gnu/packages/firmware.scm +++ b/gnu/packages/firmware.scm @@ -1475,6 +1475,15 @@ (define-public qmk-firmware-ergodox-ez-dvorak the @file{layouts/community/ergodox/dvorak/keymap.c} source file for the keymap definition.")) +(define-public qmk-firmware-ergodox-ez-dvorak-emacs + (make-qmk-firmware + "ergodox_ez" "dvorak_emacs" #:description + "This is a Dvorak-based keymap optimized for Emacs usage, with the +frequently used Control and Meta (Alt) keys mapped to the thumb buttons. It +contains a single extra layer that includes function and multimedia keys. A +graphical representation of the keymap is available in the +@file{layouts/community/ergodox/dvorak_emacs/readme.md} source file.")) + (define-public qmk-udev-rules (package (inherit qmk-firmware-ergodox-ez-default) From patchwork Tue Sep 26 19:04:37 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxim Cournoyer X-Patchwork-Id: 54331 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 5D02827BBEA; Tue, 26 Sep 2023 20:40:03 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI, SPF_HELO_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id A289527BBE2 for ; Tue, 26 Sep 2023 20:40:02 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlDtc-0006o2-Dc; Tue, 26 Sep 2023 15:39:00 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlDtW-0006hi-Pf for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:54 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qlDtW-0006Ng-Gt for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:54 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qlDtj-00012l-Kh; Tue, 26 Sep 2023 15:39:07 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#66217] [PATCH 14/22] gnu: Add qmk-firmware-ergodox-ez-dvorak-emacs-software. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: efraim@flashner.co.il, vagrant@debian.org, guix-patches@gnu.org Resent-Date: Tue, 26 Sep 2023 19:39:07 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66217 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 66217@debbugs.gnu.org Cc: Maxim Cournoyer , Efraim Flashner , Vagrant Cascadian X-Debbugs-Original-Xcc: Efraim Flashner , Vagrant Cascadian Received: via spool by 66217-submit@debbugs.gnu.org id=B66217.16957571173787 (code B ref 66217); Tue, 26 Sep 2023 19:39:07 +0000 Received: (at 66217) by debbugs.gnu.org; 26 Sep 2023 19:38:37 +0000 Received: from localhost ([127.0.0.1]:49839 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDtE-0000yu-UC for submit@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:37 -0400 Received: from mail-yb1-xb2e.google.com ([2607:f8b0:4864:20::b2e]:54354) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDt2-0000wW-5J for 66217@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:24 -0400 Received: by mail-yb1-xb2e.google.com with SMTP id 3f1490d57ef6-d81d09d883dso10958031276.0 for <66217@debbugs.gnu.org>; Tue, 26 Sep 2023 12:38:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1695757085; x=1696361885; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=/CLnZJd8csjpTxbvBAM8WOaXOEUyKbS1ElBXfWVj1wU=; b=MzLa62njmELdOLz5WAcMjSF9CEFbtMfHKNYAaTOwKMPHCD1WcG7zmjHqkI6/dKmOkT CHBagHUS/axEJcz0WD39SM3O/1BtlWD/fTr4cgE/KOrqP25677cc9NvLOk5G0FMjrrqu 99Mkz3sT+VFszZJGZUawzA0aJGAMhQJDThH3F5Pq4TUjUi/YpFOR1TMJvp/p5m3dDLgU u9M/K6Vd602B/YvG/WkGTueA5l79jJOHybCaptvoAWdvxsLXZPx5Nh/8NXE+SPfb77AA 3KkZ5jaoQYxZyNjIKdhR2I8poZHv8uiw0sENMhq40NLwC6gB7DA5knb3Gh2TleiTUQh+ BRqQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695757085; x=1696361885; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=/CLnZJd8csjpTxbvBAM8WOaXOEUyKbS1ElBXfWVj1wU=; b=IJOoomoIg5r/RFEm+k4wDDA27jHTbU6e/TbZYTRK9TrV8slJPjmCHUIFgz7bgpKIIg 09EF6Lu0+gVMA8XLhGFEia5kJcv+q5d5PAT2Dc/Dt2YZCTSidi/NDWrEPbPu/KB6TDGt LRITzap9xKLAP/HnbWPTbwalqq+jyeMGrO8F7CpHJ8+ut2J2x5bcfF2HCo0dWh2q5Dq0 SUIhCf6qrMADsfU+hbCETVxpcjBlWxXBhDHAGrFBr2Qgo1anEWps1cEz1R0cJVQ6xirp YueJS5eIqcN+x0Gs54dvK4QHbGaVQHLK5SH3xxM0CG/OuXyTpein/l6T3CfC0bdW9kci tchw== X-Gm-Message-State: AOJu0Yy5sMZC+JIky3TALODVjXu646SbfV3AZy3mUpK8xC1d3J1ihkDM rv77qqjau2uETQXX12TPxUYEslchh2E= X-Google-Smtp-Source: AGHT+IGsByHMejs8dYuA0iEEkFbA3khS059C11U+mpqzeD6V/qHRcgwlpI+N6JfXX8AaukuF/+/I6g== X-Received: by 2002:a25:838f:0:b0:d81:4307:4b1e with SMTP id t15-20020a25838f000000b00d8143074b1emr9038926ybk.33.1695757085175; Tue, 26 Sep 2023 12:38:05 -0700 (PDT) Received: from localhost.localdomain (dsl-10-130-229.b2b2c.ca. [72.10.130.229]) by smtp.gmail.com with ESMTPSA id a13-20020a05620a16cd00b0076cbcf8ad3bsm2887595qkn.55.2023.09.26.12.38.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 12:38:04 -0700 (PDT) From: Maxim Cournoyer Date: Tue, 26 Sep 2023 15:04:37 -0400 Message-ID: <442031b64fb2ad4f4ac08a6d78d28b7ab3cbf93b.1695754731.git.maxim.cournoyer@gmail.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/firmware.scm (qmk-firmware-ergodox-ez-dvorak-emacs-software): New variable. --- gnu/packages/firmware.scm | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm index 19dc12a8fce..a7428df8129 100644 --- a/gnu/packages/firmware.scm +++ b/gnu/packages/firmware.scm @@ -1484,6 +1484,14 @@ (define-public qmk-firmware-ergodox-ez-dvorak-emacs graphical representation of the keymap is available in the @file{layouts/community/ergodox/dvorak_emacs/readme.md} source file.")) +(define-public qmk-firmware-ergodox-ez-dvorak-emacs-software + (make-qmk-firmware + "ergodox_ez" "dvorak_emacs_software" #:description + "This is the same layout as that of the +@code{qmk-firmware-ergodox-ez-dvorak-emacs}, but designed to be used with a +Dvorak-configured operating system (instead of a US QWERTY one, which is the +default assumption for QMK firmware keymaps).")) + (define-public qmk-udev-rules (package (inherit qmk-firmware-ergodox-ez-default) From patchwork Tue Sep 26 19:04:38 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxim Cournoyer X-Patchwork-Id: 54327 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id A601C27BBEC; Tue, 26 Sep 2023 20:39:49 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI, SPF_HELO_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 833BD27BBE2 for ; Tue, 26 Sep 2023 20:39:44 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlDtl-0006zz-8U; Tue, 26 Sep 2023 15:39:09 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlDtZ-0006ly-Nt for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:57 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qlDtZ-0006Ob-FB for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:57 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qlDtl-00013F-2p; Tue, 26 Sep 2023 15:39:09 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#66217] [PATCH 15/22] gnu: Add ergodox-firmware-colemak-jc-mod. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: efraim@flashner.co.il, vagrant@debian.org, guix-patches@gnu.org Resent-Date: Tue, 26 Sep 2023 19:39:09 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66217 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 66217@debbugs.gnu.org Cc: Maxim Cournoyer , Efraim Flashner , Vagrant Cascadian X-Debbugs-Original-Xcc: Efraim Flashner , Vagrant Cascadian Received: via spool by 66217-submit@debbugs.gnu.org id=B66217.16957571203811 (code B ref 66217); Tue, 26 Sep 2023 19:39:09 +0000 Received: (at 66217) by debbugs.gnu.org; 26 Sep 2023 19:38:40 +0000 Received: from localhost ([127.0.0.1]:49845 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDtF-0000zG-T7 for submit@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:40 -0400 Received: from mail-qk1-x72d.google.com ([2607:f8b0:4864:20::72d]:57470) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDt4-0000we-0E for 66217@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:28 -0400 Received: by mail-qk1-x72d.google.com with SMTP id af79cd13be357-773ac11de71so597302585a.2 for <66217@debbugs.gnu.org>; Tue, 26 Sep 2023 12:38:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1695757087; x=1696361887; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=h87O6y6L3UBv75GGwOj4+bNPbvrRfY2feW0gZzNLq98=; b=dUfByuaH47cKs3ug55TmQYHffEfmpxJ03armjlKSttN6qBL60LA1Pe4HNThLc8p78j Uy37ZKKG3in1APgo94br9IZS17NLaM7C/Zyu/mPWmp03yarwqFtGf3wKCmYneey7N00g IoXNe6q7/hS3R7Sl3ZZ0ZEsFfVbOyR3qxwlFxdoIsLai1jfPnvxzGD3a88rJFQunIKYm IXprCLw9dPkKl+x5m5pORmQajuMe97Knhl6e0h9uJ0KPMLxyhidVbprCb5sOWSnnGVM+ 0VeA1kcU74ZgnAXBMjEvZPEcC+lgQx7aM6LolMpj7uT5PUrJjW2Agu9azfjTPAFoasgc KSBw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695757087; x=1696361887; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=h87O6y6L3UBv75GGwOj4+bNPbvrRfY2feW0gZzNLq98=; b=X1ZY+gNqu0KM2ZS3Ng466/YhGVE2G5kauTz7TXtfRCuYRcle831YhbxViBkdHorPII EmuiMgJf1zdW+v0RzAKmpxi6zIfZBxCaGwBcbRIDTeiW6RHvtMGqQRzocOfP7uQilIxQ enIH5j/VOayHBflwf9a53/TwSaWBEiR6hV7dbzt//cqVGV4syMkQyI5BU/59gIjnhOEs EzxmtpEqOO18wVTBFBWxG2pJD1qE9Rgiqr37av3OVs0QQOWTJKmJj3sq17CfBM19Ayi3 3Fwu4UtC9NBSDFeqsppKF33QQDjJF1Z7LJDJG8+GsjG+Hp5OnqBums8/eOWw4IrpqcwR of7g== X-Gm-Message-State: AOJu0YxGvGuruCH6N9P6y+85PJf+P88b8NyeSe2NOSqTKrUipltEcQsC 4WCk3gbuE5wmlACVFVdr3KitKJMzPLA= X-Google-Smtp-Source: AGHT+IE1gb2dr11EKhYb5WhPPCXVn+j/A+Hlw/mM5IvakGSw93rnS7VZWfKhNP9DCNcL/4eM17uLhw== X-Received: by 2002:a05:620a:258e:b0:770:7643:320b with SMTP id x14-20020a05620a258e00b007707643320bmr10629331qko.9.1695757086533; Tue, 26 Sep 2023 12:38:06 -0700 (PDT) Received: from localhost.localdomain (dsl-10-130-229.b2b2c.ca. [72.10.130.229]) by smtp.gmail.com with ESMTPSA id a13-20020a05620a16cd00b0076cbcf8ad3bsm2887595qkn.55.2023.09.26.12.38.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 12:38:06 -0700 (PDT) From: Maxim Cournoyer Date: Tue, 26 Sep 2023 15:04:38 -0400 Message-ID: <87a393d9fca9ade4f7b6f9636b5f02015891e665.1695754731.git.maxim.cournoyer@gmail.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/firmware.scm (make-ergodox-firmware): New procedure (ergodox-firmware-colemak-jc-mod): New variable. * gnu/packages/patches/ergodox-firmware-fix-json-target.patch: New file. * gnu/packages/patches/ergodox-firmware-fix-numpad.patch: Likewise. * gnu/local.mk (dist_patch_DATA): Register them. --- gnu/local.mk | 2 + gnu/packages/firmware.scm | 77 +- .../ergodox-firmware-fix-json-target.patch | 1405 +++++++++++++++++ .../patches/ergodox-firmware-fix-numpad.patch | 18 + 4 files changed, 1501 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/ergodox-firmware-fix-json-target.patch create mode 100644 gnu/packages/patches/ergodox-firmware-fix-numpad.patch diff --git a/gnu/local.mk b/gnu/local.mk index c04c4196cdf..052e6f2013c 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1120,6 +1120,8 @@ dist_patch_DATA = \ %D%/packages/patches/enblend-enfuse-reproducible.patch \ %D%/packages/patches/enjarify-setup-py.patch \ %D%/packages/patches/enlightenment-fix-setuid-path.patch \ + %D%/packages/patches/ergodox-firmware-fix-json-target.patch \ + %D%/packages/patches/ergodox-firmware-fix-numpad.patch \ %D%/packages/patches/erlang-man-path.patch \ %D%/packages/patches/esmini-no-clutter-log.patch \ %D%/packages/patches/esmini-use-pkgconfig.patch \ diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm index a7428df8129..a901ae46944 100644 --- a/gnu/packages/firmware.scm +++ b/gnu/packages/firmware.scm @@ -85,7 +85,8 @@ (define-module (gnu packages firmware) #:use-module (ice-9 format) #:use-module (ice-9 match) - #:export (make-qmk-firmware)) + #:export (make-ergodox-firmware + make-qmk-firmware)) (define-public ath9k-htc-firmware (package @@ -1222,6 +1223,80 @@ (define-public crust-pinebook (define-public crust-pine64-plus (make-crust-package "pine64_plus")) + +;;; +;;; ErgoDox firmware. +;;; + +(define* (make-ergodox-firmware/implementation layout #:key override.c + override.h) + "Return an ergodox-firmware package for LAYOUT, optionally using OVERRIDE.C, +a C source file-like object to override LAYOUT which may be accompanied by +OVERRIDE.H, to also override the corresponding layout include file." + (let ((revision "0") + (commit "89b7e2bfdafb2a87e0248846d5c95cc5e9a27858")) + (package + (name (string-append "ergodox-firmware-" layout)) + (version (git-version "1" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/benblazak/ergodox-firmware") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1z28frxyb21nz90frycrpsbxjp09374wawayvjphnwc8njlvkkpy")) + (patches + (search-patches "ergodox-firmware-fix-json-target.patch" + "ergodox-firmware-fix-numpad.patch")))) + (build-system gnu-build-system) + (arguments + (list + #:tests? #f ;no test suite + #:make-flags + #~(list (string-append "LAYOUT=" #$layout) + ;; Simplify the output directory name. + "ROOT=output") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'copy-override-files + (lambda _ + (when #$override.c + (copy-file #$override.c + (format #f "src/keyboard/ergodox/layout/~a.c" + #$layout))) + (when #$override.h + (copy-file #$override.h + (format #f "src/keyboard/ergodox/layout/~a.h" + #$layout))))) + ;; The Makefile-based build system lacks configure + ;; and install targets. + (delete 'configure) + (replace 'install + (lambda _ + (with-directory-excursion "output" + (install-file "firmware.hex" #$output) + (install-file "firmware.eep" #$output) + (install-file "firmware--layout.html" #$output))))))) + (native-inputs (list (make-avr-toolchain) python)) + (home-page "https://www.ergodox.io") + (synopsis "Firmware for the ErgoDox keyboard") + (description (format #f "This package contains the original firmware for +the ErgoDox keyboard, built using the ~a layout (as defined in the +@file{src/keyboard/ergodox/layout/~@*~a.c} source file). It contains the +@file{firmware.hex} and the @file{firmware.eep} files, which can be loaded to +a target using the @code{teensy-loader-cli} package as well as a +@file{firmware--layout.html} file, useful to easily visualize the +corresponding layout." layout)) + (license license:expat)))) + +(define make-ergodox-firmware + (memoize make-ergodox-firmware/implementation)) + +(define-public ergodox-firmware-colemak-jc-mod + (make-ergodox-firmware "colemak-jc-mod")) + ;;; ;;; QMK Firmware. diff --git a/gnu/packages/patches/ergodox-firmware-fix-json-target.patch b/gnu/packages/patches/ergodox-firmware-fix-json-target.patch new file mode 100644 index 00000000000..52da4e2497d --- /dev/null +++ b/gnu/packages/patches/ergodox-firmware-fix-json-target.patch @@ -0,0 +1,1405 @@ +Submitted upstream: + + + +diff --git a/build-scripts/gen-layout.py b/build-scripts/gen-layout.py +index fd5e54c..251a463 100755 +--- a/build-scripts/gen-layout.py ++++ b/build-scripts/gen-layout.py +@@ -22,8 +22,10 @@ import sys + + # ----------------------------------------------------------------------------- + +-class Namespace(): +- pass ++ ++class Namespace: ++ pass ++ + + template = Namespace() + doc = Namespace() +@@ -31,45 +33,45 @@ info = Namespace() + + # ----------------------------------------------------------------------------- + ++ + def main(): +- arg_parser = argparse.ArgumentParser( +- description = "Generate a picture of the firmware's " +- + "keyboard layout" ) ++ arg_parser = argparse.ArgumentParser( ++ description="Generate a picture of the firmware's " + "keyboard layout" ++ ) + +- arg_parser.add_argument( +- '--ui-info-file', +- required = True ) ++ arg_parser.add_argument("--ui-info-file", required=True) + +- args = arg_parser.parse_args(sys.argv[1:]) ++ args = arg_parser.parse_args(sys.argv[1:]) + +- # constant file paths +- args.template_svg_file = './build-scripts/gen_layout/template.svg' +- args.template_js_file = './build-scripts/gen_layout/template.js' ++ # constant file paths ++ args.template_svg_file = "./build-scripts/gen_layout/template.svg" ++ args.template_js_file = "./build-scripts/gen_layout/template.js" + +- # normalize paths +- args.ui_info_file = os.path.abspath(args.ui_info_file) +- args.template_svg_file = os.path.abspath(args.template_svg_file) +- args.template_js_file = os.path.abspath(args.template_js_file) ++ # normalize paths ++ args.ui_info_file = os.path.abspath(args.ui_info_file) ++ args.template_svg_file = os.path.abspath(args.template_svg_file) ++ args.template_js_file = os.path.abspath(args.template_js_file) + +- # set vars +- doc.main = '' # to store the html document we're generating +- template.svg = open(args.template_svg_file).read() +- template.js = open(args.template_js_file).read() +- info.all = json.loads(open(args.ui_info_file).read()) ++ # set vars ++ doc.main = "" # to store the html document we're generating ++ template.svg = open(args.template_svg_file).read() ++ template.js = open(args.template_js_file).read() ++ info.all = json.loads(open(args.ui_info_file).read()) + +- info.matrix_positions = info.all['mappings']['matrix-positions'] +- info.matrix_layout = info.all['mappings']['matrix-layout'] ++ info.matrix_positions = info.all["mappings"]["matrix-positions"] ++ info.matrix_layout = info.all["mappings"]["matrix-layout"] + +- # prefix +- doc.prefix = (""" ++ # prefix ++ doc.prefix = ( ++ """ + + + + + ++ + template.js ++ + """ + + + +@@ -78,9 +80,13 @@ def main(): + +
    +
  • git commit date: +- """ + info.all['miscellaneous']['git-commit-date'] + """
  • ++ """ ++ + info.all["miscellaneous"]["git-commit-date"] ++ + """ +
  • git commit id: +- """ + info.all['miscellaneous']['git-commit-id'] + """
  • ++ """ ++ + info.all["miscellaneous"]["git-commit-id"] ++ + """ +
+ +

Notes

+@@ -123,301 +129,293 @@ def main(): + +
+ +-""")[1:-1] ++""" ++ )[1:-1] + +- # suffix +- doc.suffix = (""" ++ # suffix ++ doc.suffix = ( ++ """ + + + +-""")[1:-1] +- +- # substitute into template +- # ------- +- # note: this is not general enough to handle any possible layout well, at +- # the moment. but it should handle more standard ones well. (hopefully +- # minor) modifications may be necessary on a case by case basis +- # ------- +- layer_number = -1 +- for (layout, layer) in zip( info.matrix_layout, +- range(len(info.matrix_layout))): +- layer_number += 1 +- svg = template.svg +- for (name, (code, press, release)) \ +- in zip(info.matrix_positions, layout): +- replace = '' +- if press == 'kbfun_transparent': +- replace = '' +- elif press == 'kbfun_shift_press_release': +- replace = 'sh ' + keycode_to_string.get(code, '[n/a]') +- elif press == 'kbfun_jump_to_bootloader': +- replace = '[btldr]' +- elif press == 'NULL' and release == 'NULL': +- replace = '(null)' +- elif re.search(r'numpad', press+release): +- replace = '[num]' +- elif re.search(r'layer', press+release): +- replace = 'la ' + re.findall(r'\d+', press+release)[0] + ' ' +- if re.search(r'push', press+release): +- replace += '+' +- if re.search(r'pop', press+release): +- replace += '-' +- replace += ' ' + str(code) +- else: +- replace = keycode_to_string.get(code, '[n/a]') +- +- svg = re.sub( +- '>'+name+'<', '>'+replace+'<', svg ) +- svg = re.sub( +- r"\('(" + name + r".*)'\)", +- r"('\1', " + str(layer) + r")", +- svg ) +- +- doc.main += '

Layer ' + str(layer_number) + '

\n' + svg +- +- # change the font size +- doc.main = re.sub(r'22.5px', '15px', doc.main) +- +- print(doc.prefix + doc.main + doc.suffix) ++""" ++ )[1:-1] ++ ++ # substitute into template ++ # ------- ++ # note: this is not general enough to handle any possible layout well, at ++ # the moment. but it should handle more standard ones well. (hopefully ++ # minor) modifications may be necessary on a case by case basis ++ # ------- ++ layer_number = -1 ++ for (layout, layer) in zip( ++ info.matrix_layout, range(len(info.matrix_layout)) ++ ): ++ layer_number += 1 ++ svg = template.svg ++ for (name, (code, press, release)) in zip( ++ info.matrix_positions, layout ++ ): ++ replace = "" ++ if press == "kbfun_transparent": ++ replace = "" ++ elif press == "kbfun_shift_press_release": ++ replace = "sh " + keycode_to_string.get(code, "[n/a]") ++ elif press == "kbfun_jump_to_bootloader": ++ replace = "[btldr]" ++ elif press == "NULL" and release == "NULL": ++ replace = "(null)" ++ elif re.search(r"numpad", press + release): ++ replace = "[num]" ++ elif re.search(r"layer", press + release): ++ replace = "la " + re.findall(r"\d+", press + release)[0] + " " ++ if re.search(r"push", press + release): ++ replace += "+" ++ if re.search(r"pop", press + release): ++ replace += "-" ++ replace += " " + str(code) ++ else: ++ replace = keycode_to_string.get(code, "[n/a]") ++ ++ svg = re.sub(">" + name + "<", ">" + replace + "<", svg) ++ svg = re.sub( ++ r"\('(" + name + r".*)'\)", r"('\1', " + str(layer) + r")", svg ++ ) ++ ++ doc.main += "

Layer " + str(layer_number) + "

\n" + svg ++ ++ # change the font size ++ doc.main = re.sub(r"22.5px", "15px", doc.main) ++ ++ print(doc.prefix + doc.main + doc.suffix) ++ + + # ----------------------------------------------------------------------------- + # ----------------------------------------------------------------------------- + + keycode_to_string = { +- 0x01: "Error", # ErrorRollOver +- 0x02: "POSTFail", +- 0x03: "Error", # ErrorUndefined +- 0x04: "a A", +- 0x05: "b B", +- 0x06: "c C", +- 0x07: "d D", +- 0x08: "e E", +- 0x09: "f F", +- 0x0A: "g G", +- 0x0B: "h H", +- 0x0C: "i I", +- 0x0D: "j J", +- 0x0E: "k K", +- 0x0F: "l L", +- 0x10: "m M", +- 0x11: "n N", +- 0x12: "o O", +- 0x13: "p P", +- 0x14: "q Q", +- 0x15: "r R", +- 0x16: "s S", +- 0x17: "t T", +- 0x18: "u U", +- 0x19: "v V", +- 0x1A: "w W", +- 0x1B: "x X", +- 0x1C: "y Y", +- 0x1D: "z Z", +- 0x1E: "1 !", +- 0x1F: "2 @", +- 0x20: "3 #", +- 0x21: "4 $", +- 0x22: "5 %", +- 0x23: "6 ^", +- 0x24: "7 &", +- 0x25: "8 *", +- 0x26: "9 (", +- 0x27: "0 )", +- 0x28: "Return", +- 0x29: "Esc", +- 0x2A: "Backspace", +- 0x2B: "Tab", +- 0x2C: "Space", +- 0x2D: "- _", +- 0x2E: "= +", +- 0x2F: "[ {", +- 0x30: "] }", +- 0x31: "\ |", +- 0x32: "# ~", +- 0x33: "; :", +- 0x34: "\' \"", +- 0x35: "` ~", +- 0x36: ", <", +- 0x37: ". >", +- 0x38: "/ ?", +- 0x39: "Caps", +- 0x3A: "F1", +- 0x3B: "F2", +- 0x3C: "F3", +- 0x3D: "F4", +- 0x3E: "F5", +- 0x3F: "F6", +- 0x40: "F7", +- 0x41: "F8", +- 0x42: "F9", +- 0x43: "F10", +- 0x44: "F11", +- 0x45: "F12", +- 0x46: "PrintScreen", +- 0x47: "ScrollLock", +- 0x48: "Pause", +- 0x49: "Ins", # Insert +- 0x4A: "Hm", # Home +- 0x4B: "Pg\u2191", # up arrow +- 0x4C: "Delete", +- 0x4D: "End", +- 0x4E: "Pg\u2193", # down arrow +- 0x4F: "\u2192", # right arrow +- 0x50: "\u2190", # left arrow +- 0x51: "\u2193", # down arrow +- 0x52: "\u2191", # up arrow +- +- 0x53: "Num", +- 0x54: "/", +- 0x55: "*", +- 0x56: "-", +- 0x57: "+", +- 0x58: "Enter", +- 0x59: "1 End", +- 0x5A: "2 \u2193", # down arrow +- 0x5B: "3 Pg\u2193", # down arrow +- 0x5C: "4 \u2190", # left arrow +- 0x5D: "5", +- 0x5E: "6 \u2192", # right arrow +- 0x5F: "7 Hm", # Home +- 0x60: "8 \u2191", # up arrow +- 0x61: "9 Pg\u2191", # up arrow +- 0x62: "0 Ins", # Insert +- 0x63: ". Del", +- +- 0x64: "\ |", +- 0x65: "App", +- 0x66: "Power", +- +- 0x67: "=", +- +- 0x68: "F13", +- 0x69: "F14", +- 0x6A: "F15", +- 0x6B: "F16", +- 0x6C: "F17", +- 0x6D: "F18", +- 0x6E: "F19", +- 0x6F: "F20", +- 0x70: "F21", +- 0x71: "F22", +- 0x72: "F23", +- 0x73: "F24", +- 0x74: "Exec", +- 0x75: "Help", +- 0x76: "Menu", +- 0x77: "Select", +- 0x78: "Stop", +- 0x79: "Again", +- 0x7A: "Undo", +- 0x7B: "Cut", +- 0x7C: "Copy", +- 0x7D: "Paste", +- 0x7E: "Find", +- 0x7F: "Mute", +- 0x80: "VolUp", +- 0x81: "VolDown", +- 0x82: "LockingCapsLock", +- 0x83: "LockingNumLock", +- 0x84: "LockingScrollLock", +- +- 0x85: ",", +- 0x86: "=", +- +- 0x87: "Int1", +- 0x88: "Int2", +- 0x89: "Int3", +- 0x8A: "Int4", +- 0x8B: "Int5", +- 0x8C: "Int6", +- 0x8D: "Int7", +- 0x8E: "Int8", +- 0x8F: "Int9", +- 0x90: "LANG1", +- 0x91: "LANG2", +- 0x92: "LANG3", +- 0x93: "LANG4", +- 0x94: "LANG5", +- 0x95: "LANG6", +- 0x96: "LANG7", +- 0x97: "LANG8", +- 0x98: "LANG9", +- 0x99: "AlternateErase", +- 0x9A: "SysReq_Attention", +- 0x9B: "Cancel", +- 0x9C: "Clear", +- 0x9D: "Prior", +- 0x9E: "Return", +- 0x9F: "Separator", +- 0xA0: "Out", +- 0xA1: "Oper", +- 0xA2: "Clear_Again", +- 0xA3: "CrSel_Props", +- 0xA4: "ExSel", +- +- 0xB0: "00", +- 0xB1: "000", +- +- 0xB2: "Thousands_Sep", +- 0xB3: "Decimal_Sep", +- 0xB4: "$", +- 0xB5: "Currency_Subunit", +- +- 0xB6: "(", +- 0xB7: ")", +- 0xB8: "{", +- 0xB9: "}", +- +- 0xBA: "Tab", +- 0xBB: "Backspace", +- 0xBC: "A", +- 0xBD: "B", +- 0xBE: "C", +- 0xBF: "D", +- 0xC0: "E", +- 0xC1: "F", +- 0xC2: "XOR", +- 0xC3: "^", +- 0xC4: "%", +- 0xC5: "<", +- 0xC6: ">", +- 0xC7: "&", +- 0xC8: "&&", +- 0xC9: "|", +- 0xCA: "||", +- 0xCB: ":", +- 0xCC: "#", +- 0xCD: "Space", +- 0xCE: "@", +- 0xCF: "!", +- 0xD0: "Mem_Store", +- 0xD1: "Mem_Recall", +- 0xD2: "Mem_Clear", +- 0xD3: "Mem_+", +- 0xD4: "Mem_-", +- 0xD5: "Mem_*", +- 0xD6: "Mem_/", +- 0xD7: "+-", +- 0xD8: "Clear", +- 0xD9: "ClearEntry", +- 0xDA: "Binary", +- 0xDB: "Octal", +- 0xDC: ".", +- 0xDD: "Hexadecimal", +- +- 0xE0: "L-Ctrl", +- 0xE1: "L-Shift", +- 0xE2: "L-Alt", +- 0xE3: "L-GUI", +- 0xE4: "R-Ctrl", +- 0xE5: "R-Shift", +- 0xE6: "R-Alt", +- 0xE7: "R-GUI", +- } ++ 0x01: "Error", # ErrorRollOver ++ 0x02: "POSTFail", ++ 0x03: "Error", # ErrorUndefined ++ 0x04: "a A", ++ 0x05: "b B", ++ 0x06: "c C", ++ 0x07: "d D", ++ 0x08: "e E", ++ 0x09: "f F", ++ 0x0A: "g G", ++ 0x0B: "h H", ++ 0x0C: "i I", ++ 0x0D: "j J", ++ 0x0E: "k K", ++ 0x0F: "l L", ++ 0x10: "m M", ++ 0x11: "n N", ++ 0x12: "o O", ++ 0x13: "p P", ++ 0x14: "q Q", ++ 0x15: "r R", ++ 0x16: "s S", ++ 0x17: "t T", ++ 0x18: "u U", ++ 0x19: "v V", ++ 0x1A: "w W", ++ 0x1B: "x X", ++ 0x1C: "y Y", ++ 0x1D: "z Z", ++ 0x1E: "1 !", ++ 0x1F: "2 @", ++ 0x20: "3 #", ++ 0x21: "4 $", ++ 0x22: "5 %", ++ 0x23: "6 ^", ++ 0x24: "7 &", ++ 0x25: "8 *", ++ 0x26: "9 (", ++ 0x27: "0 )", ++ 0x28: "Return", ++ 0x29: "Esc", ++ 0x2A: "Backspace", ++ 0x2B: "Tab", ++ 0x2C: "Space", ++ 0x2D: "- _", ++ 0x2E: "= +", ++ 0x2F: "[ {", ++ 0x30: "] }", ++ 0x31: "\ |", ++ 0x32: "# ~", ++ 0x33: "; :", ++ 0x34: "' \"", ++ 0x35: "` ~", ++ 0x36: ", <", ++ 0x37: ". >", ++ 0x38: "/ ?", ++ 0x39: "Caps", ++ 0x3A: "F1", ++ 0x3B: "F2", ++ 0x3C: "F3", ++ 0x3D: "F4", ++ 0x3E: "F5", ++ 0x3F: "F6", ++ 0x40: "F7", ++ 0x41: "F8", ++ 0x42: "F9", ++ 0x43: "F10", ++ 0x44: "F11", ++ 0x45: "F12", ++ 0x46: "PrintScreen", ++ 0x47: "ScrollLock", ++ 0x48: "Pause", ++ 0x49: "Ins", # Insert ++ 0x4A: "Hm", # Home ++ 0x4B: "Pg\u2191", # up arrow ++ 0x4C: "Delete", ++ 0x4D: "End", ++ 0x4E: "Pg\u2193", # down arrow ++ 0x4F: "\u2192", # right arrow ++ 0x50: "\u2190", # left arrow ++ 0x51: "\u2193", # down arrow ++ 0x52: "\u2191", # up arrow ++ 0x53: "Num", ++ 0x54: "/", ++ 0x55: "*", ++ 0x56: "-", ++ 0x57: "+", ++ 0x58: "Enter", ++ 0x59: "1 End", ++ 0x5A: "2 \u2193", # down arrow ++ 0x5B: "3 Pg\u2193", # down arrow ++ 0x5C: "4 \u2190", # left arrow ++ 0x5D: "5", ++ 0x5E: "6 \u2192", # right arrow ++ 0x5F: "7 Hm", # Home ++ 0x60: "8 \u2191", # up arrow ++ 0x61: "9 Pg\u2191", # up arrow ++ 0x62: "0 Ins", # Insert ++ 0x63: ". Del", ++ 0x64: "\ |", ++ 0x65: "App", ++ 0x66: "Power", ++ 0x67: "=", ++ 0x68: "F13", ++ 0x69: "F14", ++ 0x6A: "F15", ++ 0x6B: "F16", ++ 0x6C: "F17", ++ 0x6D: "F18", ++ 0x6E: "F19", ++ 0x6F: "F20", ++ 0x70: "F21", ++ 0x71: "F22", ++ 0x72: "F23", ++ 0x73: "F24", ++ 0x74: "Exec", ++ 0x75: "Help", ++ 0x76: "Menu", ++ 0x77: "Select", ++ 0x78: "Stop", ++ 0x79: "Again", ++ 0x7A: "Undo", ++ 0x7B: "Cut", ++ 0x7C: "Copy", ++ 0x7D: "Paste", ++ 0x7E: "Find", ++ 0x7F: "Mute", ++ 0x80: "VolUp", ++ 0x81: "VolDown", ++ 0x82: "LockingCapsLock", ++ 0x83: "LockingNumLock", ++ 0x84: "LockingScrollLock", ++ 0x85: ",", ++ 0x86: "=", ++ 0x87: "Int1", ++ 0x88: "Int2", ++ 0x89: "Int3", ++ 0x8A: "Int4", ++ 0x8B: "Int5", ++ 0x8C: "Int6", ++ 0x8D: "Int7", ++ 0x8E: "Int8", ++ 0x8F: "Int9", ++ 0x90: "LANG1", ++ 0x91: "LANG2", ++ 0x92: "LANG3", ++ 0x93: "LANG4", ++ 0x94: "LANG5", ++ 0x95: "LANG6", ++ 0x96: "LANG7", ++ 0x97: "LANG8", ++ 0x98: "LANG9", ++ 0x99: "AlternateErase", ++ 0x9A: "SysReq_Attention", ++ 0x9B: "Cancel", ++ 0x9C: "Clear", ++ 0x9D: "Prior", ++ 0x9E: "Return", ++ 0x9F: "Separator", ++ 0xA0: "Out", ++ 0xA1: "Oper", ++ 0xA2: "Clear_Again", ++ 0xA3: "CrSel_Props", ++ 0xA4: "ExSel", ++ 0xB0: "00", ++ 0xB1: "000", ++ 0xB2: "Thousands_Sep", ++ 0xB3: "Decimal_Sep", ++ 0xB4: "$", ++ 0xB5: "Currency_Subunit", ++ 0xB6: "(", ++ 0xB7: ")", ++ 0xB8: "{", ++ 0xB9: "}", ++ 0xBA: "Tab", ++ 0xBB: "Backspace", ++ 0xBC: "A", ++ 0xBD: "B", ++ 0xBE: "C", ++ 0xBF: "D", ++ 0xC0: "E", ++ 0xC1: "F", ++ 0xC2: "XOR", ++ 0xC3: "^", ++ 0xC4: "%", ++ 0xC5: "<", ++ 0xC6: ">", ++ 0xC7: "&", ++ 0xC8: "&&", ++ 0xC9: "|", ++ 0xCA: "||", ++ 0xCB: ":", ++ 0xCC: "#", ++ 0xCD: "Space", ++ 0xCE: "@", ++ 0xCF: "!", ++ 0xD0: "Mem_Store", ++ 0xD1: "Mem_Recall", ++ 0xD2: "Mem_Clear", ++ 0xD3: "Mem_+", ++ 0xD4: "Mem_-", ++ 0xD5: "Mem_*", ++ 0xD6: "Mem_/", ++ 0xD7: "+-", ++ 0xD8: "Clear", ++ 0xD9: "ClearEntry", ++ 0xDA: "Binary", ++ 0xDB: "Octal", ++ 0xDC: ".", ++ 0xDD: "Hexadecimal", ++ 0xE0: "L-Ctrl", ++ 0xE1: "L-Shift", ++ 0xE2: "L-Alt", ++ 0xE3: "L-GUI", ++ 0xE4: "R-Ctrl", ++ 0xE5: "R-Shift", ++ 0xE6: "R-Alt", ++ 0xE7: "R-GUI", ++} + + # ----------------------------------------------------------------------------- + # ----------------------------------------------------------------------------- + +-if __name__ == '__main__': +- main() +- ++if __name__ == "__main__": ++ main() +diff --git a/build-scripts/gen-ui-info.py b/build-scripts/gen-ui-info.py +index 1c93d32..0fa52e3 100755 +--- a/build-scripts/gen-ui-info.py ++++ b/build-scripts/gen-ui-info.py +@@ -13,7 +13,16 @@ Depends on: + - the project '.map' file (generated by the compiler) + """ + +-_FORMAT_DESCRIPTION = (""" ++import argparse ++import json ++import os ++import pathlib ++import re ++import subprocess ++import sys ++ ++_FORMAT_DESCRIPTION = ( ++ """ + /* ---------------------------------------------------------------------------- + * Version 0 + * ---------------------------------------------------------------------------- +@@ -31,7 +40,7 @@ var ui_info = { + ".meta-data": { // for the JSON file + "version": "", + "date-generated": "", // format: RFC 3339 +- "description": "", ++ "description": "", + }, + "keyboard-functions": { + "<(function name)>": { +@@ -57,7 +66,7 @@ var ui_info = { + "..." + }, + "mappings": { +- /* ++ /* + * The mappings prefixed with 'matrix' have their elements in the same + * order as the .hex file (whatever order that is). The mappings + * prefixed with 'physical' will have their elements in an order +@@ -113,365 +122,304 @@ var ui_info = { + "number-of-layers": "" + } + } +-""")[1:-1] ++""" ++)[1:-1] + + # ----------------------------------------------------------------------------- + +-import argparse +-import json +-import os +-import re +-import subprocess +-import sys +- +-# ----------------------------------------------------------------------------- + + def gen_static(current_date=None, git_commit_date=None, git_commit_id=None): +- """Generate static information""" +- +- return { +- '.meta-data': { +- 'version': 0, # the format version number +- 'date-generated': current_date, +- 'description': _FORMAT_DESCRIPTION, +- }, +- 'miscellaneous': { +- 'git-commit-date': git_commit_date, # should be passed by makefile +- 'git-commit-id': git_commit_id, # should be passed by makefile +- }, +- } +- +-def gen_derived(data): +- return {} # don't really need this info anymore +-# """ +-# Generate derived information +-# Should be called last +-# """ +-# return { +-# 'miscellaneous': { +-# 'number-of-layers': +-# int( data['layout-matrices']['_kb_layout']['length']/(6*14) ), +-# # because 6*14 is the number of bytes/layer for '_kb_layout' +-# # (which is a uint8_t matrix) +-# }, +-# } +- +-# ----------------------------------------------------------------------------- ++ """Generate static information""" + +-def parse_mapfile(map_file_path): +- return {} # don't really need this info anymore +-# """Parse the '.map' file""" +-# +-# def parse_keyboard_function(f, line): +-# """Parse keyboard-functions in the '.map' file""" +-# +-# search = re.search(r'(0x\S+)\s+(0x\S+)', next(f)) +-# position = int( search.group(1), 16 ) +-# length = int( search.group(2), 16 ) +-# +-# search = re.search(r'0x\S+\s+(\S+)', next(f)) +-# name = search.group(1) +-# +-# return { +-# 'keyboard-functions': { +-# name: { +-# 'position': position, +-# 'length': length, +-# }, +-# }, +-# } +-# +-# def parse_layout_matrices(f, line): +-# """Parse layout matrix information in the '.map' file""" +-# +-# name = re.search(r'.progmem.data.(_kb_layout\S*)', line).group(1) +-# +-# search = re.search(r'(0x\S+)\s+(0x\S+)', next(f)) +-# position = int( search.group(1), 16 ) +-# length = int( search.group(2), 16 ) +-# +-# return { +-# 'layout-matrices': { +-# name: { +-# 'position': position, +-# 'length': length, +-# }, +-# }, +-# } +-# +-# # --- parse_mapfile() --- +-# +-# # normalize paths +-# map_file_path = os.path.abspath(map_file_path) +-# # check paths +-# if not os.path.exists(map_file_path): +-# raise ValueError("invalid 'map_file_path' given") +-# +-# output = {} +-# +-# f = open(map_file_path) +-# +-# for line in f: +-# if re.search(r'^\s*\.text\.kbfun_', line): +-# dict_merge(output, parse_keyboard_function(f, line)) +-# elif re.search(r'^\s*\.progmem\.data.*layout', line): +-# dict_merge(output, parse_layout_matrices(f, line)) +-# +-# return output ++ return { ++ ".meta-data": { ++ "version": 0, # the format version number ++ "date-generated": current_date, ++ "description": _FORMAT_DESCRIPTION, ++ }, ++ "miscellaneous": { ++ "git-commit-date": git_commit_date, # should be passed by makefile ++ "git-commit-id": git_commit_id, # should be passed by makefile ++ }, ++ } + + + def find_keyboard_functions(source_code_path): +- """Parse all files in the source directory""" +- +- def read_comments(f, line): +- """ +- Read in properly formatted multi-line comments +- - Comments must start with '/*' and end with '*/', each on their own +- line +- """ +- comments = '' +- while(line.strip() != r'*/'): +- comments += line[2:].strip()+'\n' +- line = next(f) +- return comments +- +- def parse_comments(comments): +- """ +- Parse an INI style comment string +- - Fields begin with '[field-name]', and continue until the next field, +- or the end of the comment +- - Fields '[name]', '[description]', and '[note]' are treated specially +- """ +- +- def add_field(output, field, value): +- """Put a field+value pair in 'output', the way we want it, if the +- pair is valid""" +- +- value = value.strip() +- +- if field is not None: +- if field in ('name', 'description'): +- if field not in output: +- output[field] = value +- else: +- if field == 'note': +- field = 'notes' +- +- if field not in output: +- output[field] = [] +- +- output[field] += [value] +- +- # --- parse_comments() --- +- +- output = {} +- +- field = None +- value = None +- for line in comments.split('\n'): +- line = line.strip() +- +- if re.search(r'^\[.*\]$', line): +- add_field(output, field, value) +- field = line[1:-1] +- value = None +- +- else: +- if value is None: +- value = '' +- if len(value) > 0 and value[-1] == '.': +- line = ' '+line +- value += ' '+line +- +- add_field(output, field, value) +- +- return output +- +- def parse_keyboard_function(f, line, comments): +- """Parse keyboard-functions in the source code""" +- +- search = re.search(r'void\s+(kbfun_\S+)\s*\(void\)', line) +- name = search.group(1) +- +- return { +- 'keyboard-functions': { +- name: { +- 'comments': parse_comments(comments), +- }, +- }, +- } +- +- # --- find_keyboard_functions() --- +- +- # normalize paths +- source_code_path = os.path.abspath(source_code_path) +- # check paths +- if not os.path.exists(source_code_path): +- raise ValueError("invalid 'source_code_path' given") +- +- output = {} +- +- for tup in os.walk(source_code_path): +- for file_name in tup[2]: +- # normalize paths +- file_name = os.path.abspath( os.path.join( tup[0], file_name ) ) +- +- # ignore non '.c' files +- if file_name[-2:] != '.c': +- continue +- +- f = open(file_name) +- +- comments = '' +- for line in f: +- if line.strip() == r'/*': +- comments = read_comments(f, line) +- elif re.search(r'void\s+kbfun_\S+\s*\(void\)', line): +- dict_merge( +- output, +- parse_keyboard_function(f, line, comments) ) +- +- return output ++ """Parse all files in the source directory""" ++ ++ def read_comments(f, line): ++ """ ++ Read in properly formatted multi-line comments ++ - Comments must start with '/*' and end with '*/', each on their own ++ line ++ """ ++ comments = "" ++ while line.strip() != r"*/": ++ comments += line[2:].strip() + "\n" ++ line = next(f) ++ return comments ++ ++ def parse_comments(comments): ++ """ ++ Parse an INI style comment string ++ - Fields begin with '[field-name]', and continue until the next field, ++ or the end of the comment ++ - Fields '[name]', '[description]', and '[note]' are treated specially ++ """ ++ ++ def add_field(output, field, value): ++ """Put a field+value pair in 'output', the way we want it, if the ++ pair is valid""" ++ ++ value = value.strip() ++ ++ if field is not None: ++ if field in ("name", "description"): ++ if field not in output: ++ output[field] = value ++ else: ++ if field == "note": ++ field = "notes" ++ ++ if field not in output: ++ output[field] = [] ++ ++ output[field] += [value] ++ ++ # --- parse_comments() --- ++ ++ output = {} ++ ++ field = None ++ value = None ++ for line in comments.split("\n"): ++ line = line.strip() ++ ++ if re.search(r"^\[.*\]$", line): ++ add_field(output, field, value) ++ field = line[1:-1] ++ value = None ++ else: ++ if value is None: ++ value = "" ++ if len(value) > 0 and value[-1] == ".": ++ line = " " + line ++ value += " " + line ++ ++ add_field(output, field, value) ++ ++ return output ++ ++ def parse_keyboard_function(f, line, comments): ++ """Parse keyboard-functions in the source code""" ++ ++ search = re.search(r"void\s+(kbfun_\S+)\s*\(void\)", line) ++ name = search.group(1) ++ ++ return { ++ "keyboard-functions": { ++ name: { ++ "comments": parse_comments(comments), ++ }, ++ }, ++ } ++ ++ # --- find_keyboard_functions() --- ++ ++ # normalize paths ++ source_code_path = os.path.abspath(source_code_path) ++ # check paths ++ if not os.path.exists(source_code_path): ++ raise ValueError("invalid 'source_code_path' given") ++ ++ output = {} ++ ++ for tup in os.walk(source_code_path): ++ for file_name in tup[2]: ++ # normalize paths ++ file_name = os.path.abspath(os.path.join(tup[0], file_name)) ++ ++ # ignore non '.c' files ++ if file_name[-2:] != ".c": ++ continue ++ ++ f = open(file_name) ++ ++ comments = "" ++ for line in f: ++ if line.strip() == r"/*": ++ comments = read_comments(f, line) ++ elif re.search(r"void\s+kbfun_\S+\s*\(void\)", line): ++ dict_merge( ++ output, parse_keyboard_function(f, line, comments) ++ ) ++ ++ return output + + + def gen_mappings(matrix_file_path, layout_file_path): +- # normalize paths +- matrix_file_path = os.path.abspath(matrix_file_path) +- layout_file_path = os.path.abspath(layout_file_path) +- +- def parse_matrix_file(matrix_file_path): +- match = re.search( # find the whole 'KB_MATRIX_LAYER' macro +- r'#define\s+KB_MATRIX_LAYER\s*\(([^)]+)\)[^{]*\{\{([^#]+)\}\}', +- open(matrix_file_path).read() ) +- +- return { +- "mappings": { +- "physical-positions": re.findall(r'k..', match.group(1)), +- "matrix-positions": re.findall(r'k..|na', match.group(2)), +- }, +- } +- +- def parse_layout_file(layout_file_path): +- match = re.findall( # find each whole '_kb_layout*' matrix definition +- r'(_kb_layout\w*)[^=]*=((?:[^{}]*\{){3}[^=]*(?:[^{}]*\}){3})', +- subprocess.getoutput("gcc -E '"+layout_file_path+"'") ) +- +- layout = {} +- # collect all the values +- for (name, matrix) in match: +- layout[name] = [ +- re.findall( # find all numbers and function pointers +- r'[x0-9A-F]+|&\w+|NULL', +- re.sub( # replace '((void *) 0)' with 'NULL' +- r'\(\s*\(\s*void\s*\*\s*\)\s*0\s*\)', +- 'NULL', +- el ) ) +- for el in +- re.findall( # find each whole layer +- r'(?:[^{}]*\{){2}((?:[^}]|\}\s*,)+)(?:[^{}]*\}){2}', +- matrix ) ] +- +- # make the numbers into actual numbers +- layout['_kb_layout'] = \ +- [[eval(el) for el in layer] for layer in layout['_kb_layout']] +- # remove the preceeding '&' from function pointers +- for matrix in ('_kb_layout_press', '_kb_layout_release'): +- layout[matrix] = \ +- [ [re.sub(r'&', '', el) for el in layer] +- for layer in layout[matrix] ] +- +- return { +- "mappings": { +- "matrix-layout": +- # group them all properly +- [ [[c, p, r] for (c, p, r) in zip(code, press, release)] +- for (code, press, release) in +- zip( layout['_kb_layout'], +- layout['_kb_layout_press'], +- layout['_kb_layout_release'] ) ] +- }, +- } +- +- return dict_merge( +- parse_matrix_file(matrix_file_path), +- parse_layout_file(layout_file_path) ) ++ # normalize paths ++ matrix_file_path = os.path.abspath(matrix_file_path) ++ layout_file_path = os.path.abspath(layout_file_path) ++ layout_name = pathlib.Path(layout_file_path).with_suffix('').name ++ ++ def parse_matrix_file(matrix_file_path): ++ match = re.search( # find the whole 'KB_MATRIX_LAYER' macro ++ r"#define\s+KB_MATRIX_LAYER\s*\(([^)]+)\)[^{]*\{\{([^#]+)\}\}", ++ open(matrix_file_path).read(), ++ ) ++ ++ return { ++ "mappings": { ++ "physical-positions": re.findall(r"k..", match.group(1)), ++ "matrix-positions": re.findall(r"k..|na", match.group(2)), ++ }, ++ } ++ ++ def parse_layout_file(layout_file_path): ++ output = subprocess.check_output( ++ ['avr-gcc', f'-DMAKEFILE_KEYBOARD_LAYOUT={layout_name}', ++ '-E', layout_file_path], encoding='UTF-8') ++ match = re.findall( # find each whole '_kb_layout*' matrix definition ++ r"(_kb_layout\w*)[^=]*=((?:[^{}]*\{){3}[^=]*(?:[^{}]*\}){3})", ++ output, ++ ) ++ ++ layout = {} ++ # collect all the values ++ for (name, matrix) in match: ++ layout[name] = [ ++ re.findall( # find all numbers and function pointers ++ r"[x0-9A-F]+|&\w+|NULL", ++ re.sub( # replace '((void *) 0)' with 'NULL' ++ r"\(\s*\(\s*void\s*\*\s*\)\s*0\s*\)", "NULL", el ++ ), ++ ) ++ for el in re.findall( # find each whole layer ++ r"(?:[^{}]*\{){2}((?:[^}]|\}\s*,)+)(?:[^{}]*\}){2}", matrix ++ ) ++ ] ++ ++ # make the numbers into actual numbers ++ layout["_kb_layout"] = [ ++ [eval(el) for el in layer] for layer in layout["_kb_layout"] ++ ] ++ # remove the preceeding '&' from function pointers ++ for matrix in ("_kb_layout_press", "_kb_layout_release"): ++ layout[matrix] = [ ++ [re.sub(r"&", "", el) for el in layer] ++ for layer in layout[matrix] ++ ] ++ ++ return { ++ "mappings": { ++ "matrix-layout": ++ # group them all properly ++ [ ++ [[c, p, r] for (c, p, r) in zip(code, press, release)] ++ for (code, press, release) in zip( ++ layout["_kb_layout"], ++ layout["_kb_layout_press"], ++ layout["_kb_layout_release"], ++ ) ++ ] ++ }, ++ } ++ ++ return dict_merge( ++ parse_matrix_file(matrix_file_path), ++ parse_layout_file(layout_file_path), ++ ) + + + # ----------------------------------------------------------------------------- + ++ + def dict_merge(a, b): +- """ +- Recursively merge two dictionaries +- - I was looking around for an easy way to do this, and found something +- [here] +- (http://www.xormedia.com/recursively-merge-dictionaries-in-python.html). +- This is pretty close, but i didn't copy it exactly. +- """ ++ """ ++ Recursively merge two dictionaries ++ - I was looking around for an easy way to do this, and found something ++ [here] ++ (http://www.xormedia.com/recursively-merge-dictionaries-in-python.html). ++ This is pretty close, but i didn't copy it exactly. ++ """ ++ ++ if not isinstance(a, dict) or not isinstance(b, dict): ++ return b + +- if not isinstance(a, dict) or not isinstance(b, dict): +- return b ++ for (key, value) in b.items(): ++ if key in a: ++ a[key] = dict_merge(a[key], value) ++ else: ++ a[key] = value + +- for (key, value) in b.items(): +- if key in a: +- a[key] = dict_merge(a[key], value) +- else: +- a[key] = value ++ return a + +- return a + + # ----------------------------------------------------------------------------- + ++ + def main(): +- arg_parser = argparse.ArgumentParser( +- description = 'Generate project data for use with the UI' ) +- +- arg_parser.add_argument( +- '--current-date', +- help = ( "should be in the format rfc-3339 " +- + "(e.g. 2006-08-07 12:34:56-06:00)" ), +- required = True ) +- arg_parser.add_argument( +- '--git-commit-date', +- help = ( "should be in the format rfc-3339 " +- + "(e.g. 2006-08-07 12:34:56-06:00)" ), +- required = True ) +- arg_parser.add_argument( +- '--git-commit-id', +- help = "the git commit ID", +- required = True ) +- arg_parser.add_argument( +- '--map-file-path', +- help = "the path to the '.map' file", +- required = True ) +- arg_parser.add_argument( +- '--source-code-path', +- help = "the path to the source code directory", +- required = True ) +- arg_parser.add_argument( +- '--matrix-file-path', +- help = "the path to the matrix file we're using", +- required = True ) +- arg_parser.add_argument( +- '--layout-file-path', +- help = "the path to the layout file we're using", +- required = True ) +- +- args = arg_parser.parse_args(sys.argv[1:]) +- +- output = {} +- dict_merge( output, gen_static( args.current_date, +- args.git_commit_date, +- args.git_commit_id ) ) +- dict_merge(output, parse_mapfile(args.map_file_path)) +- dict_merge(output, find_keyboard_functions(args.source_code_path)) +- dict_merge(output, gen_mappings( args.matrix_file_path, +- args.layout_file_path )) +- dict_merge(output, gen_derived(output)) +- +- print(json.dumps(output, sort_keys=True, indent=4)) ++ arg_parser = argparse.ArgumentParser( ++ description="Generate project data for use with the UI" ++ ) ++ ++ arg_parser.add_argument( ++ "--current-date", ++ help=( ++ "should be in the format rfc-3339 " ++ "(e.g. 2006-08-07 12:34:56-06:00)" ++ ), ++ required=True, ++ ) ++ arg_parser.add_argument( ++ "--git-commit-date", ++ help=( ++ "should be in the format rfc-3339 " ++ "(e.g. 2006-08-07 12:34:56-06:00)" ++ ), ++ required=True, ++ ) ++ arg_parser.add_argument( ++ "--git-commit-id", help="the git commit ID", required=True ++ ) ++ arg_parser.add_argument( ++ "--map-file-path", help="the path to the '.map' file", required=True ++ ) ++ arg_parser.add_argument( ++ "--source-code-path", ++ help="the path to the source code directory", ++ required=True, ++ ) ++ arg_parser.add_argument( ++ "--matrix-file-path", ++ help="the path to the matrix file we're using", ++ required=True, ++ ) ++ arg_parser.add_argument( ++ "--layout-file-path", ++ help="the path to the layout file we're using", ++ required=True, ++ ) ++ ++ args = arg_parser.parse_args(sys.argv[1:]) ++ ++ output = {} ++ dict_merge( ++ output, ++ gen_static( ++ args.current_date, args.git_commit_date, args.git_commit_id ++ ) ++ ) ++ dict_merge(output, find_keyboard_functions(args.source_code_path)) ++ dict_merge( ++ output, gen_mappings(args.matrix_file_path, args.layout_file_path) ++ ) ++ ++ print(json.dumps(output, sort_keys=True, indent=4)) + +-# ----------------------------------------------------------------------------- + +-if __name__ == '__main__': +- main() ++# ----------------------------------------------------------------------------- + ++if __name__ == "__main__": ++ main() +diff --git a/makefile b/makefile +index d9fe10c..971ee0e 100644 +--- a/makefile ++++ b/makefile +@@ -58,24 +58,27 @@ SCRIPTS := build-scripts + all: dist + + clean: +- git clean -dX # remove ignored files and directories +- -rm -r '$(BUILD)' ++ git clean -fdX # remove ignored files and directories ++ rm -rf '$(BUILD)' + + checkin: + -git commit -a + + build-dir: +- -rm -r '$(BUILD)/$(TARGET)'* +- -mkdir -p '$(BUILD)/$(TARGET)' ++ rm -rf '$(BUILD)/$(TARGET)'* ++ mkdir -p '$(BUILD)/$(TARGET)' + + firmware: + cd src; $(MAKE) LAYOUT=$(LAYOUT) all + +-$(ROOT)/firmware.%: firmware ++$(ROOT): ++ mkdir -p '$@' ++ ++$(ROOT)/firmware.%: firmware $(ROOT) + cp 'src/firmware.$*' '$@' + + +-$(ROOT)/firmware--ui-info.json: $(SCRIPTS)/gen-ui-info.py checkin ++$(ROOT)/firmware--ui-info.json: $(SCRIPTS)/gen-ui-info.py checkin firmware + ( ./'$<' \ + --current-date '$(shell $(DATE_PROG) --rfc-3339 s)' \ + --git-commit-date '$(GIT_COMMIT_DATE)' \ diff --git a/gnu/packages/patches/ergodox-firmware-fix-numpad.patch b/gnu/packages/patches/ergodox-firmware-fix-numpad.patch new file mode 100644 index 00000000000..47af9f8398d --- /dev/null +++ b/gnu/packages/patches/ergodox-firmware-fix-numpad.patch @@ -0,0 +1,18 @@ +Submitted upstream: https://github.com/benblazak/ergodox-firmware/pull/100 + +diff --git a/src/lib/key-functions/public/special.c b/src/lib/key-functions/public/special.c +index 42aba45..6488137 100644 +--- a/src/lib/key-functions/public/special.c ++++ b/src/lib/key-functions/public/special.c +@@ -102,9 +102,9 @@ void kbfun_2_keys_capslock_press_release(void) { + static uint8_t numpad_layer_id; + + static inline void numpad_toggle_numlock(void) { +- _kbfun_press_release(true, KEY_LockingNumLock); ++ _kbfun_press_release(true, KEYPAD_NumLock_Clear); + usb_keyboard_send(); +- _kbfun_press_release(false, KEY_LockingNumLock); ++ _kbfun_press_release(false, KEYPAD_NumLock_Clear); + usb_keyboard_send(); + } + From patchwork Tue Sep 26 19:04:39 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxim Cournoyer X-Patchwork-Id: 54333 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 03F4F27BBEA; Tue, 26 Sep 2023 20:40:07 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI, SPF_HELO_PASS autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id EF0C127BBE9 for ; Tue, 26 Sep 2023 20:40:04 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlDtk-0006yP-HA; Tue, 26 Sep 2023 15:39:08 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlDtX-0006iE-CO for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:55 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qlDtX-0006O1-4V for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:55 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qlDtk-00012v-7M; Tue, 26 Sep 2023 15:39:08 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#66217] [PATCH 16/22] gnu: Add ergodox-firmware-colemak-symbol-mod. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: efraim@flashner.co.il, vagrant@debian.org, guix-patches@gnu.org Resent-Date: Tue, 26 Sep 2023 19:39:08 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66217 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 66217@debbugs.gnu.org Cc: Maxim Cournoyer , Efraim Flashner , Vagrant Cascadian X-Debbugs-Original-Xcc: Efraim Flashner , Vagrant Cascadian Received: via spool by 66217-submit@debbugs.gnu.org id=B66217.16957571173794 (code B ref 66217); Tue, 26 Sep 2023 19:39:08 +0000 Received: (at 66217) by debbugs.gnu.org; 26 Sep 2023 19:38:37 +0000 Received: from localhost ([127.0.0.1]:49841 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDtF-0000z2-8Y for submit@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:37 -0400 Received: from mail-qk1-x731.google.com ([2607:f8b0:4864:20::731]:51675) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDt4-0000wl-NH for 66217@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:27 -0400 Received: by mail-qk1-x731.google.com with SMTP id af79cd13be357-774105e8c81so623305485a.3 for <66217@debbugs.gnu.org>; Tue, 26 Sep 2023 12:38:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1695757088; x=1696361888; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=ZGoOvrJGavdhir1y78MiFzo9ORp5Ky3nXayVunNBJt0=; b=FR7W2XDfSKAJrB6WaKYwL9oyBjNgYTYEKp643y46y8LVFOOKnX3FdygswQXjo/Uqdc 7lpD/EcCDtLpy1XE7rLZZRz5iiyAN1G1meB3BrBr0Bt+hPMkB5l850dSDPbKx9cJmXn0 35nnvFOuxewtye58FppclHFvZLOHoac2wm8CMQ0aJY3RRUlJfoeuMPnh4fiCBNtKLtsK lig7tS60SEyCIOGJSblJnTFLvtBycujMN06aAP2IAPu6ugUu4tECDPP7wBBv1kVwNB7x rYDMMH3R1MKyebQVJH+drRL7pNGdUg+Rs9N1T8R7Cl0YUbXBawqOCDM2Yu82YQ5LGDz2 LCDQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695757088; x=1696361888; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ZGoOvrJGavdhir1y78MiFzo9ORp5Ky3nXayVunNBJt0=; b=cS4PUyI9U2KsPxVgqZxHRwKOmXEjiSW9J0fls0lsRkMHIzhChR+Iqhn2kFqo8n88hb q4/IIm4tLIk2faClQayUJ1s516Hz4jJRZR2khiZHRlIEw8S20kDfvVQkE9sjkPBYDCMi xsRkEY1G2X4WiBegk6dE+YSqwcjECy0gomj+S5OHWjIoR7QxFp4G2qeCSsGoT59Fx/69 CWUjvURvyWoSJqwfdH1Dqh6qp0QHHZvjAPZ6p2T1QOWpf8XFjGOXV6lO2vxxQgih6gNz vIFGewRb20j5J6moyMmD06cplgJW3y9NnQSt5qNKECZSkGwlqHSRzYGgLcsVFCZWWdPK hMrw== X-Gm-Message-State: AOJu0Yy0Ey+KjUmPJN4HZQzXUO2eAF0ee2/plGaLhQSxL3Rk+A0KjdeW JQidvRWRcyNB71WDCVSanb6uzMs2UhE= X-Google-Smtp-Source: AGHT+IENmZIUQfnep5puS2ikFrJ32g1pkPbKASvVJ/c59oVCX7mKvXmtQtMOKFEHrZlGQknMwd2HYA== X-Received: by 2002:a05:620a:198d:b0:76f:1817:942b with SMTP id bm13-20020a05620a198d00b0076f1817942bmr12886627qkb.28.1695757087890; Tue, 26 Sep 2023 12:38:07 -0700 (PDT) Received: from localhost.localdomain (dsl-10-130-229.b2b2c.ca. [72.10.130.229]) by smtp.gmail.com with ESMTPSA id a13-20020a05620a16cd00b0076cbcf8ad3bsm2887595qkn.55.2023.09.26.12.38.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 12:38:07 -0700 (PDT) From: Maxim Cournoyer Date: Tue, 26 Sep 2023 15:04:39 -0400 Message-ID: X-Mailer: git-send-email 2.41.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/firmware.scm (ergodox-firmware-colemak-symbol-mod): New variable. --- gnu/packages/firmware.scm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm index a901ae46944..213f2002403 100644 --- a/gnu/packages/firmware.scm +++ b/gnu/packages/firmware.scm @@ -1297,6 +1297,9 @@ (define make-ergodox-firmware (define-public ergodox-firmware-colemak-jc-mod (make-ergodox-firmware "colemak-jc-mod")) +(define-public ergodox-firmware-colemak-symbol-mod + (make-ergodox-firmware "colemak-symbol-mod")) + ;;; ;;; QMK Firmware. From patchwork Tue Sep 26 19:04:40 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxim Cournoyer X-Patchwork-Id: 54334 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 1D99927BBEA; Tue, 26 Sep 2023 20:40:10 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI, SPF_HELO_PASS autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 4D29C27BBE2 for ; Tue, 26 Sep 2023 20:40:09 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlDtd-0006rV-01; Tue, 26 Sep 2023 15:39:01 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlDtX-0006iz-QZ for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:55 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qlDtX-0006OH-I9 for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:55 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qlDtk-000136-Lp; Tue, 26 Sep 2023 15:39:08 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#66217] [PATCH 17/22] gnu: Add ergodox-firmware-dvorak-kinesis-mod. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: efraim@flashner.co.il, vagrant@debian.org, guix-patches@gnu.org Resent-Date: Tue, 26 Sep 2023 19:39:08 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66217 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 66217@debbugs.gnu.org Cc: Maxim Cournoyer , Efraim Flashner , Vagrant Cascadian X-Debbugs-Original-Xcc: Efraim Flashner , Vagrant Cascadian Received: via spool by 66217-submit@debbugs.gnu.org id=B66217.16957571183801 (code B ref 66217); Tue, 26 Sep 2023 19:39:08 +0000 Received: (at 66217) by debbugs.gnu.org; 26 Sep 2023 19:38:38 +0000 Received: from localhost ([127.0.0.1]:49843 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDtF-0000z9-IC for submit@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:37 -0400 Received: from mail-qk1-x730.google.com ([2607:f8b0:4864:20::730]:61542) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDt5-0000ws-Rx for 66217@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:28 -0400 Received: by mail-qk1-x730.google.com with SMTP id af79cd13be357-7743448d88eso291015885a.2 for <66217@debbugs.gnu.org>; Tue, 26 Sep 2023 12:38:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1695757089; x=1696361889; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=b+atYbZqBB58W6rVHsvFJwNgbRbRtaHPZfCfNhwbixU=; b=iwWNqfndob3VpF7CBRpjUq8bd6tyEX+j/R1FwL6CyHIstKOJmqx+eae0e7OEc7t/JN Yga1j7MUM8CvG4q63R3DNADF8zl4hS2aMz5UpNHw3PC5DWYeW14fk1CPcNpDEw4ECtov XRjgRcPM0a+JoiQpP0HJyls7qMR38hxYsMrgyg3t38mTNTz2zuAr8YIBB1sFh+HiORTC QvagT1MXBYgIhHaT8UcaWVXibyg/odWXflOOjHIUcfMWI8C/U4/C4sMrCGECdGqVqPgo omqluecRAkcKSEQt+CTGKIoRjBoXdKBmvPndocCnDoQQZ5NfEk54C/jjkLdBGyKQuMUy E87g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695757089; x=1696361889; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=b+atYbZqBB58W6rVHsvFJwNgbRbRtaHPZfCfNhwbixU=; b=w2Shn89CE7Digd0IE9+67ld48MXDGVuAtYieZLRSMLAvioXpTy0foJPu3vNFYLmo0a ES6R+L5shq/bhRW1TbMkc0Vq7MBekxJD6H0vCK7expBvTtNB5szvk8jtsGHXkQhYfL2O WhuQNqX7rXXI8dSErkmWSo5vSEYKQhPXIJzhTBmgujsfSgm4TeYEvPb81FyTmFi9I8/c zn5fvM1MEp16ljpojKkBLZWIgnbsNMkA0XdrFpKs+46RvRzAieqObatnEGS+p17zbO8p k0JcDv97OE6q7IEea2A8nbWLo7uQRLJKszDwM2Z+1fR1hG8L2suhZOmC8p1nwyCe1Kcj j67w== X-Gm-Message-State: AOJu0Yw1+uxAmhK6+RmD0e5xsMbR9ogCOLCAnox9FRFFJAb19V/PdFHF t9AIvZv6ih7b3lZ7LlQCb/Af2FDypI4= X-Google-Smtp-Source: AGHT+IEKOcFIPESLpUaRWS/ASkqpPvHI/2/Q55C3Beu99aSbjHEXTBEP6QW8hHMhMw+P1vU6VHr1fQ== X-Received: by 2002:a05:620a:45a7:b0:774:344e:4a87 with SMTP id bp39-20020a05620a45a700b00774344e4a87mr6802349qkb.2.1695757089010; Tue, 26 Sep 2023 12:38:09 -0700 (PDT) Received: from localhost.localdomain (dsl-10-130-229.b2b2c.ca. [72.10.130.229]) by smtp.gmail.com with ESMTPSA id a13-20020a05620a16cd00b0076cbcf8ad3bsm2887595qkn.55.2023.09.26.12.38.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 12:38:08 -0700 (PDT) From: Maxim Cournoyer Date: Tue, 26 Sep 2023 15:04:40 -0400 Message-ID: <34b7385cecb5628683de976bcb6814d59fbb19dd.1695754731.git.maxim.cournoyer@gmail.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/firmware.scm (ergodox-firmware-dvorak-kinesis-mod): New variable. --- gnu/packages/firmware.scm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm index 213f2002403..9bab352f704 100644 --- a/gnu/packages/firmware.scm +++ b/gnu/packages/firmware.scm @@ -1300,6 +1300,9 @@ (define-public ergodox-firmware-colemak-jc-mod (define-public ergodox-firmware-colemak-symbol-mod (make-ergodox-firmware "colemak-symbol-mod")) +(define-public ergodox-firmware-dvorak-kinesis-mod + (make-ergodox-firmware "dvorak-kinesis-mod")) + ;;; ;;; QMK Firmware. From patchwork Tue Sep 26 19:04:41 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxim Cournoyer X-Patchwork-Id: 54321 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 92CDA27BBED; Tue, 26 Sep 2023 20:39:35 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI, SPF_HELO_PASS autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 1DE6B27BBE2 for ; Tue, 26 Sep 2023 20:39:34 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlDta-0006me-2S; Tue, 26 Sep 2023 15:38:58 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlDtY-0006jM-K6 for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:56 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qlDtY-0006OR-C6 for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:56 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qlDtl-00013O-Fc; Tue, 26 Sep 2023 15:39:09 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#66217] [PATCH 18/22] gnu: Add ergodox-firmware-qwerty-kinesis-mod. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: efraim@flashner.co.il, vagrant@debian.org, guix-patches@gnu.org Resent-Date: Tue, 26 Sep 2023 19:39:09 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66217 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 66217@debbugs.gnu.org Cc: Maxim Cournoyer , Efraim Flashner , Vagrant Cascadian X-Debbugs-Original-Xcc: Efraim Flashner , Vagrant Cascadian Received: via spool by 66217-submit@debbugs.gnu.org id=B66217.16957571203819 (code B ref 66217); Tue, 26 Sep 2023 19:39:09 +0000 Received: (at 66217) by debbugs.gnu.org; 26 Sep 2023 19:38:40 +0000 Received: from localhost ([127.0.0.1]:49847 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDtI-0000zQ-2J for submit@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:40 -0400 Received: from mail-qk1-x72d.google.com ([2607:f8b0:4864:20::72d]:45434) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDt7-0000x0-2C for 66217@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:29 -0400 Received: by mail-qk1-x72d.google.com with SMTP id af79cd13be357-7740aa4b545so601877485a.3 for <66217@debbugs.gnu.org>; Tue, 26 Sep 2023 12:38:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1695757090; x=1696361890; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=SpUi2eVMfjpEawG0NfAPX9dckArzlwIzpj9e0E35xnc=; b=IgADBUiAKzAMyHYEuq+FNsddbGKK0skaQTzqSESVlxZixhr2MLjsrdwOJA5qIMb8n1 sJt6DEpEyNS6odFIvvIgU+jlyB+6RYqDuzvO/c4oUzLVyY7nWO3qu+xNuhoRuzNZ9iVW xzPW+T4GgugZknG0c4SXYLO4OwamlbL+NaIPLrd6AWNqc2InKCOGyKiwFweGBglbxjnV ZPajpI3pWnCmjR1SZWPkjoRAjvqm8v+RbeBV8klxPDFvqKV6LEStkl5CuDZK6pSNjac9 rmYACFivXJiElgCLkk4AroDlXm09P3ULI6DX8lNojoh8bqzRsB1EuHHXzvi55ZGxC3dN xJsg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695757090; x=1696361890; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=SpUi2eVMfjpEawG0NfAPX9dckArzlwIzpj9e0E35xnc=; b=KtLauyyzzOQ//oQwPqaL5OUgM6VKJ2B/U/cVL3IsCxLQBej/7agOf8w94Tqnxn4LIc Sz5pNBYzzbdMg+UWc+gBpGkQp2WzJHNED2sFQdt046B4tAEPW4XlDXqzZh/yVW+CIzPo UeL6NSc1my3Z3M+jp5KVAowmPLLoJaDRPLnEt73x6rAfm00IohscLeVUTJQu1VU5WE4f 4tD3Iw344vpgtB9kuEyJJlUkFwKD6BHPCI3amj5KA4oHi2TU51yuPug7FnF/0N874J9k gRqvYq9EMXm3f31gjFLwJwJ9/CRT0ICxMUZtvb4bkRJM+kbS1MJPKYLcpSmJSkASS5Xk Di8g== X-Gm-Message-State: AOJu0Yzyavp3ltNnai1Fu/OB/M19eK66CUzsaRwaL5+7NnKMtY/5yKLQ FNPGZI7kIJ91XpfwNer6DU1kTBwu2Tc= X-Google-Smtp-Source: AGHT+IEqEhG8ySyuIfk9oBvXkdEREuUoqszdHj6sGNowI90sSKx3D7Vj+jhGNm6rUp9ZH0s6WuV45w== X-Received: by 2002:a05:620a:34c:b0:774:1bb4:5025 with SMTP id t12-20020a05620a034c00b007741bb45025mr10544516qkm.68.1695757090100; Tue, 26 Sep 2023 12:38:10 -0700 (PDT) Received: from localhost.localdomain (dsl-10-130-229.b2b2c.ca. [72.10.130.229]) by smtp.gmail.com with ESMTPSA id a13-20020a05620a16cd00b0076cbcf8ad3bsm2887595qkn.55.2023.09.26.12.38.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 12:38:09 -0700 (PDT) From: Maxim Cournoyer Date: Tue, 26 Sep 2023 15:04:41 -0400 Message-ID: X-Mailer: git-send-email 2.41.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/firmware.scm (ergodox-firmware-qwerty-kinesis-mod): New variable. --- gnu/packages/firmware.scm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm index 9bab352f704..4f928ec8bce 100644 --- a/gnu/packages/firmware.scm +++ b/gnu/packages/firmware.scm @@ -1303,6 +1303,9 @@ (define-public ergodox-firmware-colemak-symbol-mod (define-public ergodox-firmware-dvorak-kinesis-mod (make-ergodox-firmware "dvorak-kinesis-mod")) +(define-public ergodox-firmware-qwerty-kinesis-mod + (make-ergodox-firmware "qwerty-kinesis-mod")) + ;;; ;;; QMK Firmware. From patchwork Tue Sep 26 19:04:42 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxim Cournoyer X-Patchwork-Id: 54329 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id E822927BBEA; Tue, 26 Sep 2023 20:39:55 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI, SPF_HELO_PASS autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 97C9B27BBE9 for ; Tue, 26 Sep 2023 20:39:55 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlDtl-00070t-N5; Tue, 26 Sep 2023 15:39:09 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlDta-0006n8-Ce for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:58 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qlDta-0006Ov-4j for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:58 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qlDtl-00013X-UU; Tue, 26 Sep 2023 15:39:09 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#66217] [PATCH 19/22] gnu: Add ergodox-firmware-workman-p-kinesis-mod. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: efraim@flashner.co.il, vagrant@debian.org, guix-patches@gnu.org Resent-Date: Tue, 26 Sep 2023 19:39:09 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66217 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 66217@debbugs.gnu.org Cc: Maxim Cournoyer , Efraim Flashner , Vagrant Cascadian X-Debbugs-Original-Xcc: Efraim Flashner , Vagrant Cascadian Received: via spool by 66217-submit@debbugs.gnu.org id=B66217.16957571203826 (code B ref 66217); Tue, 26 Sep 2023 19:39:09 +0000 Received: (at 66217) by debbugs.gnu.org; 26 Sep 2023 19:38:40 +0000 Received: from localhost ([127.0.0.1]:49849 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDtI-0000zY-E2 for submit@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:40 -0400 Received: from mail-qk1-x730.google.com ([2607:f8b0:4864:20::730]:54274) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDt8-0000x7-56 for 66217@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:30 -0400 Received: by mail-qk1-x730.google.com with SMTP id af79cd13be357-7741c2fae49so530263385a.0 for <66217@debbugs.gnu.org>; Tue, 26 Sep 2023 12:38:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1695757091; x=1696361891; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=bR2Yz3G9ML5Rr7jaNSpPLn5//dmbRTBEagFIA83tnjM=; b=L/IMOdcLlzR8/7+s3atuo1ZBJrg5kUMQD8zKMZUqA3KqRNqiSHlUXWhDTwQt3INt/D s+MkL/2baAfO0qgfsQBYnRAzE1ziVE6DfqEGITY/BVRRAiwrtekdOtn60TATFgd+0gFg BJfzPF+yRS4GBGydnbC8zX0ZIMvOWBaRxRhccwFBIFUc0zX59+5iHiDwBahQdM1g8p8k pbAYxVexU1V6t8WzyS6WVfYUE51gIekUxDVQbinisidA9U5Mhd4NejtCXPMYfvRITplp kt4Pw1wIxMYOVksfE4SKS6A0T/OxCZqaZnwIrG9dd2MwpFvfaarSAeYe0Cej0WRCKaxY rY9w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695757091; x=1696361891; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=bR2Yz3G9ML5Rr7jaNSpPLn5//dmbRTBEagFIA83tnjM=; b=vEnR41MA9ParHcoC2RMKD8iVDh1Jz9qI6SPvDU08HdH5RleZ9+X6kcJn+UzrehUPEM +7B5aKfm3LVW+Ve2L8lTASi2GKFI/pqPb0icqvZpIBjWmSKHNTI+ZvSvr/Vzj3aSgzg3 VQ/ws7R6jrCVLXCQeO9kwyzGAcH+bXVaDRPBQ84az/Ajtv9r5sFUVP7YaBYzdBiXhtWG OXiRXD/QMwtXsYw02OwwYLRBWXEKI6e1sxjTzrotiuLUv8Ea3lpSnNRPdLUHP8ZJc3H9 JZNNRu/KeabLdBPvueGpQDYx7Ntvh/GDOWgz6IViYgMjKcVP0P6Kvt2X8GX2JHPRfrgW nNhw== X-Gm-Message-State: AOJu0Yw7IBVX2QE3Fb+oZR9TAXF1E0rRdzq4p4+zPz0aC0NMhk2E8+OJ n14KKCrcZHLqo0VyUyd0oFfI5MpsHLo= X-Google-Smtp-Source: AGHT+IG6lEduiHE/caALfcIV5CG4ZLD/qcHE66vNLMqnDcZW0oJsI1fAsK8BY7VHgVaa8QSgUhmjAw== X-Received: by 2002:a05:620a:eca:b0:773:c0d7:4ecc with SMTP id x10-20020a05620a0eca00b00773c0d74eccmr9956284qkm.12.1695757091207; Tue, 26 Sep 2023 12:38:11 -0700 (PDT) Received: from localhost.localdomain (dsl-10-130-229.b2b2c.ca. [72.10.130.229]) by smtp.gmail.com with ESMTPSA id a13-20020a05620a16cd00b0076cbcf8ad3bsm2887595qkn.55.2023.09.26.12.38.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 12:38:10 -0700 (PDT) From: Maxim Cournoyer Date: Tue, 26 Sep 2023 15:04:42 -0400 Message-ID: <977e7b4a396721f2762dab428623fd874ba8e473.1695754731.git.maxim.cournoyer@gmail.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/firmware.scm (ergodox-firmware-workman-p-kinesis-mod): New variable. --- gnu/packages/firmware.scm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm index 4f928ec8bce..5eb4292ec7d 100644 --- a/gnu/packages/firmware.scm +++ b/gnu/packages/firmware.scm @@ -1306,6 +1306,9 @@ (define-public ergodox-firmware-dvorak-kinesis-mod (define-public ergodox-firmware-qwerty-kinesis-mod (make-ergodox-firmware "qwerty-kinesis-mod")) +(define-public ergodox-firmware-workman-p-kinesis-mod + (make-ergodox-firmware "workman-p-kinesis-mod")) + ;;; ;;; QMK Firmware. From patchwork Tue Sep 26 19:04:43 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxim Cournoyer X-Patchwork-Id: 54324 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 160C127BBEC; Tue, 26 Sep 2023 20:39:41 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI, SPF_HELO_PASS autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id F1FEE27BBE2 for ; Tue, 26 Sep 2023 20:39:39 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlDtj-0006xV-8A; Tue, 26 Sep 2023 15:39:07 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlDta-0006nD-HB for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:58 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qlDta-0006P1-8n for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:58 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qlDtm-00013f-Af for guix-patches@gnu.org; Tue, 26 Sep 2023 15:39:10 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#66217] [PATCH 20/22] gnu: teensy-loader-cli: Use gexps. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Tue, 26 Sep 2023 19:39:10 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66217 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 66217@debbugs.gnu.org Cc: Maxim Cournoyer Received: via spool by 66217-submit@debbugs.gnu.org id=B66217.16957571213832 (code B ref 66217); Tue, 26 Sep 2023 19:39:10 +0000 Received: (at 66217) by debbugs.gnu.org; 26 Sep 2023 19:38:41 +0000 Received: from localhost ([127.0.0.1]:49851 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDtI-0000zf-NM for submit@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:41 -0400 Received: from mail-qk1-x730.google.com ([2607:f8b0:4864:20::730]:42300) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDt9-0000xC-Eo for 66217@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:31 -0400 Received: by mail-qk1-x730.google.com with SMTP id af79cd13be357-77428510fe7so297298485a.1 for <66217@debbugs.gnu.org>; Tue, 26 Sep 2023 12:38:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1695757092; x=1696361892; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=VSUWqbJbnIfTrCgDOyaz0OX/UWx1V2/oixQbf+MldqA=; b=MdET2ykQabWRJhpl7jmRZSwxlpaSQiID/Z7KOGJUGHtt604ZELssZUTUBTYUhQ2WGi betpUGpn/ae0uBICM1Mg7bHcLBA+PExHOeuH7kmKbYXyaQ/XLWNcz3EGdJeiHdTNFC85 oViv5MuXY018TF7SFSNMhVR6SsYV3BzAaVK83gGE6gjOJBArRkUfDIeaBJ5Gm8YzVS6S nRzx377JGz3XH6vz+uBgpcdxpjKuScYWVm4QXigxSVk5d/jHUncXCcySGlgb+RDESQTw zKMli4Wai07+8NKxzT00lzkejAc5+7YwwzlW1KHLjSEkKVjNqzpEdJIST9xZabSgE4Bu fLmA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695757092; x=1696361892; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=VSUWqbJbnIfTrCgDOyaz0OX/UWx1V2/oixQbf+MldqA=; b=r9OyVqeqNDsQTAxbuD55MBkBC+vxebis1fALbWJw1icJTzASmdLkUgXLaM7ZZrx8Vz i/xGTJcDqXyimfI7PyA9y9OBYbYj3pNMzCM7Eni48P1tvzKZK58Q4VzbtlDjl6hXRAkV xVFQCpfIkNtV8WUd93LwUdBowRNB27xqYuVoaUb2SKN59lmEKLR3nOlk+1cRJ3g1gLou s7yrGoK9UD29hAhFlwZQtDy3voSt4IeNr8M/UG/eamonaJWMFDO2KauUR3c6mpDfRiBF o+uZIgeEfCKDFPTVZTOH6hUm2uBI/sziucZnXhK1Qe+scV6uknXxYP5Ptm7xs32fDgHZ 300Q== X-Gm-Message-State: AOJu0Ywl63NljNbvrYpn5tp1w85PTHPJjbrz4zkIp5ZSqUSGLIryAUWb CjzvsT9JmBnzWN52w70NjjQhZHi/mIs= X-Google-Smtp-Source: AGHT+IGnmiotggCJlwGtYT08hXNvbbEjyLWv5WKa6lPb3PN5NRSuvr9cCtX4wHpdvioBtcsn8bUbiQ== X-Received: by 2002:a05:620a:4546:b0:773:fa62:39fe with SMTP id u6-20020a05620a454600b00773fa6239femr4155975qkp.1.1695757092547; Tue, 26 Sep 2023 12:38:12 -0700 (PDT) Received: from localhost.localdomain (dsl-10-130-229.b2b2c.ca. [72.10.130.229]) by smtp.gmail.com with ESMTPSA id a13-20020a05620a16cd00b0076cbcf8ad3bsm2887595qkn.55.2023.09.26.12.38.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 12:38:12 -0700 (PDT) From: Maxim Cournoyer Date: Tue, 26 Sep 2023 15:04:43 -0400 Message-ID: X-Mailer: git-send-email 2.41.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/flashing-tools.scm (teensy-loader-cli) [arguments]: Use gexps. --- gnu/packages/flashing-tools.scm | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/gnu/packages/flashing-tools.scm b/gnu/packages/flashing-tools.scm index d9f59cd0b7c..a17547cbcd7 100644 --- a/gnu/packages/flashing-tools.scm +++ b/gnu/packages/flashing-tools.scm @@ -234,16 +234,15 @@ (define-public teensy-loader-cli (patches (search-patches "teensy-loader-cli-help.patch")))) (build-system gnu-build-system) (arguments - '(#:tests? #f ;; Makefile has no test target - #:make-flags (list "CC=gcc" (string-append "PREFIX=" %output)) - #:phases - (modify-phases %standard-phases - (delete 'configure) - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bin (string-append out "/bin"))) - (install-file "teensy_loader_cli" bin))))))) + (list + #:tests? #f ;; Makefile has no test target + #:make-flags #~(list "CC=gcc" (string-append "PREFIX=" #$output)) + #:phases #~(modify-phases %standard-phases + (delete 'configure) + (replace 'install + (lambda _ + (install-file "teensy_loader_cli" + (string-append #$output "/bin"))))))) (inputs (list libusb-compat)) ;only compatible with libusb 0.1 (synopsis "Command line firmware uploader for Teensy development boards") (description From patchwork Tue Sep 26 19:04:44 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxim Cournoyer X-Patchwork-Id: 54330 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 0E19C27BBE9; Tue, 26 Sep 2023 20:40:00 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI, SPF_HELO_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 4274C27BBE2 for ; Tue, 26 Sep 2023 20:39:58 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlDtl-00070g-KB; Tue, 26 Sep 2023 15:39:09 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlDtZ-0006mD-To for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:57 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qlDtZ-0006Oi-M0 for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:57 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qlDtm-00013n-Pp for guix-patches@gnu.org; Tue, 26 Sep 2023 15:39:10 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#66217] [PATCH 21/22] gnu: teensy-loader-cli: Fix license. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Tue, 26 Sep 2023 19:39:10 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66217 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 66217@debbugs.gnu.org Cc: Maxim Cournoyer Received: via spool by 66217-submit@debbugs.gnu.org id=B66217.16957571213840 (code B ref 66217); Tue, 26 Sep 2023 19:39:10 +0000 Received: (at 66217) by debbugs.gnu.org; 26 Sep 2023 19:38:41 +0000 Received: from localhost ([127.0.0.1]:49853 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDtJ-0000zq-44 for submit@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:41 -0400 Received: from mail-qk1-x735.google.com ([2607:f8b0:4864:20::735]:42305) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDtA-0000xJ-LG for 66217@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:33 -0400 Received: by mail-qk1-x735.google.com with SMTP id af79cd13be357-77428510fe7so297299585a.1 for <66217@debbugs.gnu.org>; Tue, 26 Sep 2023 12:38:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1695757094; x=1696361894; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=s5oJ4FdS7jU75LvQIxCLa0Q28ckkExVpQIjydnFnkvA=; b=QK6T5pXZWyaA8LXneQM9zN0mW9YADS4gPHafGaXriqcQtpsF4hF03cOc62NJn4Hbz6 GLtrqm9pqjaKq+T/8RgG2VdfTubxvxO8vKRMZzdeqzGfsCmdfyrX4MnK9QMoNeChuErs Wavv6rnv7+c1sRI0RWqg3dSa6vRQAgp+a4Xv4KRfvwhG2s8AuBZ5A9OJ7VM8co8+Cy92 h9WqmUAhSRiVjaSj/AhCHXnhOmV21qBDQzAkGDE3oxQa8I7sqlH9XJ+AelQncbV2PzVc +Kof+xJs/uPSDCRYLdUo1gbYQ6YDzFd8cWcgHNTltPLdTVQotpdl2NVenp1kqvioOBX9 t9fQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695757094; x=1696361894; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=s5oJ4FdS7jU75LvQIxCLa0Q28ckkExVpQIjydnFnkvA=; b=BSfuvunc6+HRd3wndWFf+yl+RVY/TEXxOocmBhDKVhKR04u8thWV4ofX6mT6RW/FkY tvTLcEEA7VUz9vPJc1ORsA419taVDkOa2j8m6dEkHV4Wq2IglKddztThuZhSXuP4qik9 qKn+harybNzJJG1iSy22EAsC/sMhialAknvgqL1295TtKRO7Gi/YyshdKWmaLBgb5CMN gHW2U46YpBK/EFWI3VsBMSAJhBwgcKl4856C1FOnWck8WacQeKTv8bincuMlPHDvjqs0 4j85uZDOtp3Fa9K31BRJV3jHW3LtwsGtCwGVOjfEgeyOdkv9ELgUqmj497rikbElrgeW Gm2g== X-Gm-Message-State: AOJu0YyQsCelWhO9XbzGX3mHyzMQ7pVjsQFJQ32AgUl28M8L2uzqPxj5 UbF342yPrylljIrXB+qkOceNFJvUlsc= X-Google-Smtp-Source: AGHT+IEi6DDMjlt8Hd1uLbK91T9ZBYZKt4M09oBsFDQOBcgEmt8RIiTZdLpcLjl9NquRlAJDES5iDA== X-Received: by 2002:a05:620a:4512:b0:76e:f3a9:1e12 with SMTP id t18-20020a05620a451200b0076ef3a91e12mr4042243qkp.1.1695757093774; Tue, 26 Sep 2023 12:38:13 -0700 (PDT) Received: from localhost.localdomain (dsl-10-130-229.b2b2c.ca. [72.10.130.229]) by smtp.gmail.com with ESMTPSA id a13-20020a05620a16cd00b0076cbcf8ad3bsm2887595qkn.55.2023.09.26.12.38.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 12:38:13 -0700 (PDT) From: Maxim Cournoyer Date: Tue, 26 Sep 2023 15:04:44 -0400 Message-ID: X-Mailer: git-send-email 2.41.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/flashing-tools.scm (teensy-loader-cli) [license]: Adjust to license:gpl3+. --- gnu/packages/flashing-tools.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/flashing-tools.scm b/gnu/packages/flashing-tools.scm index a17547cbcd7..5142a993cf9 100644 --- a/gnu/packages/flashing-tools.scm +++ b/gnu/packages/flashing-tools.scm @@ -252,7 +252,7 @@ (define-public teensy-loader-cli You need to add the udev rules to make the Teensy update available for non-root users.") (home-page "https://www.pjrc.com/teensy/loader_cli.html") - (license license:gpl3))) + (license license:gpl3+))) (define-public rkflashtool (let ((commit "8966c4e277de8148290554aaaa4146a3a84a3c53") From patchwork Tue Sep 26 19:04:45 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Maxim Cournoyer X-Patchwork-Id: 54325 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 8263D27BBE9; Tue, 26 Sep 2023 20:39:38 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI, SPF_HELO_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 5304827BBEA for ; Tue, 26 Sep 2023 20:39:35 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qlDtg-0006wj-Ky; Tue, 26 Sep 2023 15:39:04 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qlDta-0006n7-Bz for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:58 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qlDta-0006Ot-3i for guix-patches@gnu.org; Tue, 26 Sep 2023 15:38:58 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qlDtn-00013u-6K for guix-patches@gnu.org; Tue, 26 Sep 2023 15:39:11 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#66217] [PATCH 22/22] gnu: Add teensy-udev-rules. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Tue, 26 Sep 2023 19:39:11 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66217 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 66217@debbugs.gnu.org Cc: Maxim Cournoyer Received: via spool by 66217-submit@debbugs.gnu.org id=B66217.16957571213847 (code B ref 66217); Tue, 26 Sep 2023 19:39:11 +0000 Received: (at 66217) by debbugs.gnu.org; 26 Sep 2023 19:38:41 +0000 Received: from localhost ([127.0.0.1]:49855 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDtJ-0000zt-Dk for submit@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:41 -0400 Received: from mail-qk1-x730.google.com ([2607:f8b0:4864:20::730]:55338) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qlDtB-0000xT-N3 for 66217@debbugs.gnu.org; Tue, 26 Sep 2023 15:38:34 -0400 Received: by mail-qk1-x730.google.com with SMTP id af79cd13be357-7740c520847so614062785a.2 for <66217@debbugs.gnu.org>; Tue, 26 Sep 2023 12:38:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1695757095; x=1696361895; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=+s4hMVNWsW7jakooLp+gKFG8iczOS51SMJzgbpr/iuM=; b=NKo7vRxoSVg9LaXBAxYKukngL43G+IUYTPatihBsC3YlgDFmjeNwDrS3q+YkjzggZq 9bo+jVZ0NsXajWaO1xL96USLo0GAOO6qX3R7GUaAwtXq5BaP7Fm1gYYkVIj4turnCpG+ x7+UZ8o75ewPBijkE7uKkOfHXk9eVLD9YNKJaN+55l5Bu9zS8M3V92Q1KEcP2dMqVNbm j/eqg2T3m4r8gyyy1wXK8MwuoamDr4g/WV4erfB9DxXyZw/pG2WPjqIGbsy2C+y2Y9OM ns8uyikmq2w6fBs6bfNWdUsg8Ko89cA4kQmGLYsiU7/WplPqXy2lVbACqUxW8Vsd+dGr YepA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695757095; x=1696361895; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=+s4hMVNWsW7jakooLp+gKFG8iczOS51SMJzgbpr/iuM=; b=wOPxE6nvbDWLcAyvsG6RAieirJSz6tkhX1rkY3lOqF09tWGf1kuW5FvAeTKmn1Py1x xmMZFAlKDqhfmrkvBDUXtNOdgQIxP/hxKXK4Q48EU27dDZomdRbtfMwlpQZ9nB5k0eL7 wwN/H7p601PNjs0E1hU52fFDQsznK+f7wS4aZOaCrvgU+hkpa70DqQiqaUKi1yHyKt57 rKDJ71xYh7xfEiFtrpQLNxwFGx/deE9Y/pTqEK9Rt3GDZ0/tEProNvCpba7/WM8AqPaO TKZjTIujNnR9CaeYFRmJ4Ly/HoN5YNXClUugNOk0R0TwMAvaIS7RlZkQ9sxdrriO9lcz GUPw== X-Gm-Message-State: AOJu0YxSyFKrh5OLIiwdYr7pmFRaJsoz7EHhg1jTHSjCyzaWuYI5v2Vf GDUrav8I1qQ7HAEsxqFb7ZnT/2N+4Nw= X-Google-Smtp-Source: AGHT+IGG/uGyr/YTBY0/sYBvca9Hm8M2SMZ4alWokkgUHTIrP01VCoSBG7hM+7LMpYPbfBhVqYl4xQ== X-Received: by 2002:a05:620a:a1e:b0:76c:ba61:f8b with SMTP id i30-20020a05620a0a1e00b0076cba610f8bmr10277890qka.23.1695757094837; Tue, 26 Sep 2023 12:38:14 -0700 (PDT) Received: from localhost.localdomain (dsl-10-130-229.b2b2c.ca. [72.10.130.229]) by smtp.gmail.com with ESMTPSA id a13-20020a05620a16cd00b0076cbcf8ad3bsm2887595qkn.55.2023.09.26.12.38.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 12:38:14 -0700 (PDT) From: Maxim Cournoyer Date: Tue, 26 Sep 2023 15:04:45 -0400 Message-ID: X-Mailer: git-send-email 2.41.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/flashing-tools.scm (teensy-udev-rules): New variable. --- gnu/packages/flashing-tools.scm | 43 ++++++++++++++++++++++++++++++++- 1 file changed, 42 insertions(+), 1 deletion(-) diff --git a/gnu/packages/flashing-tools.scm b/gnu/packages/flashing-tools.scm index 5142a993cf9..fb48b2a366c 100644 --- a/gnu/packages/flashing-tools.scm +++ b/gnu/packages/flashing-tools.scm @@ -10,6 +10,7 @@ ;;; Copyright © 2021 Ricardo Wurmus ;;; Copyright © 2021 Mathieu Othacehe ;;; Copyright © 2022 Peter Polidoro +;;; Copyright © 2023 Maxim Cournoyer ;;; ;;; This file is part of GNU Guix. ;;; @@ -35,6 +36,7 @@ (define-module (gnu packages flashing-tools) #:use-module (guix utils) #:use-module (gnu packages) #:use-module (guix build-system cmake) + #:use-module (guix build-system copy) #:use-module (guix build-system gnu) #:use-module (guix build-system meson) #:use-module (guix build-system python) @@ -61,7 +63,8 @@ (define-module (gnu packages flashing-tools) #:use-module (gnu packages libftdi) #:use-module (gnu packages pciutils) #:use-module (gnu packages qt) - #:use-module (gnu packages tls)) + #:use-module (gnu packages tls) + #:use-module (srfi srfi-26)) (define-public flashrom (package @@ -254,6 +257,44 @@ (define-public teensy-loader-cli (home-page "https://www.pjrc.com/teensy/loader_cli.html") (license license:gpl3+))) +(define-public teensy-udev-rules + (package + (name "teensy-udev-rules") + (version "2023-09-13") ;no version whatsoever -- use the current date + (source (origin + (method url-fetch) + (uri "https://www.pjrc.com/teensy/00-teensy.rules") + (sha256 + (base32 + "1yxczxvwi0s31g7lfa4v13yvvpv6gcsfs7r9mv6y4w9jc1inpx8p")))) + (build-system copy-build-system) + (arguments + (let ((rules-file "lib/udev/rules.d/70-teensy.rules")) + (list + #:install-plan + #~(list `(,#$source #$rules-file)) + #:phases + #~(modify-phases %standard-phases + (add-after 'install 'patch-paths + (lambda* (#:key inputs #:allow-other-keys) + (substitute* (string-append #$output "/" #$rules-file) + (("/bin/stty") + (search-input-file inputs "bin/stty"))))))))) + (inputs (list coreutils-minimal)) + (home-page "https://www.pjrc.com/teensy/loader_cli.html") + (synopsis "udev rules for the Teensy family of micro-controllers") + (description "This package provides a udev rules file that allows +unprivileged users communication with the Teensy family of micro-controllers. +ModemManager (part of NetworkManager) can interfere with USB Serial devices, +which includes the Teensy. In case of problems, see the @file{.rules} file +for possible workarounds.") + ;; FIXME: The file lacks an explicit license, so the license of + ;; teensy-cli-loader is *assumed* to hold (see: + ;; https://github.com/PaulStoffregen/teensy_loader_cli/issues/84). + (license license:gpl3+) + (supported-systems (filter (cut string-suffix? "-linux" <>) + %supported-systems)))) + (define-public rkflashtool (let ((commit "8966c4e277de8148290554aaaa4146a3a84a3c53") (revision "1"))