diff mbox series

[bug#64375,4/4] gnu: Add platformio.

Message ID b3551fe1b17622516e115dbe404ab37803c3e877.1693317569.git.peter@polidoro.io
State New
Headers show
Series [bug#64375,1/4] gnu: python-semantic-version: Update to 2.10.0. | expand

Commit Message

Peter Polidoro Aug. 29, 2023, 2:01 p.m. UTC
From: Peter Polidoro <peter@polidoro.io>

* gnu/packages/embedded.scm (platformio): New variable.
---
 gnu/packages/embedded.scm | 58 ++++++++++++++++++++++++++++++++-------
 1 file changed, 48 insertions(+), 10 deletions(-)

Comments

Ludovic Courtès Oct. 2, 2023, 3:08 p.m. UTC | #1
Hi Peter,

Overall the patch series LGTM, with one nitpick:

peter@polidoro.io skribis:


[...]

> +    (build-system pyproject-build-system)
> +    (arguments
> +     `(#:tests? #f)) ; FIXME: PermissionError: [Errno 13] Permission denied: '/homeless-shelter'

Consider adding a phase that does (setenv "HOME" (getcwd)) or similar to
address this issue so you can run the test.  Shipping an untested
package is something we try to avoid.

> +    (home-page "https://platformio.org")
> +    (synopsis
> +     "Your Gateway to Embedded Software Development Excellence. Unlock the true potential of embedded software development with PlatformIO's collaborative ecosystem, embracing declarative principles, test-driven methodologies, and modern toolchains for unrivaled success.")
> +    (description
> +     "Your Gateway to Embedded Software Development Excellence.  Unlock the true
> +potential of embedded software development with @code{PlatformIO's}
> +collaborative ecosystem, embracing declarative principles, test-driven
> +methodologies, and modern toolchains for unrivaled success.")
> +    (license license:asl2.0)))

Please replace the marketing language with an actual synopsis and a
description, following the guidelines at:

  https://guix.gnu.org/manual/devel/en/html_node/Synopses-and-Descriptions.html

‘guix lint’ may also diagnose obvious issues.

> -                     (url "https://github.com/john30/ebusd")
> -                     (commit version)))
> +                    (url "https://github.com/john30/ebusd")
> +                    (commit version)))
>                (file-name (string-append name "-" version "-checkout"))
>                (sha256
>                 (base32
> @@ -1491,14 +1529,14 @@ (define-public ebusd
>         ("autoconf" ,autoconf)
>         ("config"
>          ,(origin
> -              (method git-fetch)
> -              (uri (git-reference
> -                     (url "https://github.com/john30/ebusd-configuration")
> -                     (commit "666c0f6b9c4d7545eff7f43ab28a1c7baeab7913")))
> -              (file-name "config-checkout")
> -              (sha256
> -               (base32
> -                "0yxnx8p4lbk614l16854r9s9d8s9c7ixgczfs8mph94xz0wkda7x"))))))
> +           (method git-fetch)
> +           (uri (git-reference
> +                 (url "https://github.com/john30/ebusd-configuration")
> +                 (commit "666c0f6b9c4d7545eff7f43ab28a1c7baeab7913")))
> +           (file-name "config-checkout")
> +           (sha256
> +            (base32
> +             "0yxnx8p4lbk614l16854r9s9d8s9c7ixgczfs8mph94xz0wkda7x"))))))

Looks like these were unintended changes.

Could you please send an updated patch series?

Thanks,
Ludo’.
Peter Polidoro Oct. 4, 2023, 1:57 p.m. UTC | #2
Thank you.

I am attempting to update the patch series, but now multiple 
dependencies are failing to build due to version incompatibilities 
or failing tests.

I will try again when I have more time to track down all of these 
issues.


Ludovic Courtès <ludo@gnu.org> writes:

> Hi Peter,
>
> Overall the patch series LGTM, with one nitpick:
>
> peter@polidoro.io skribis:
>
>
> [...]
>
>> +    (build-system pyproject-build-system)
>> +    (arguments
>> +     `(#:tests? #f)) ; FIXME: PermissionError: [Errno 13] 
>> Permission denied: '/homeless-shelter'
>
> Consider adding a phase that does (setenv "HOME" (getcwd)) or 
> similar to
> address this issue so you can run the test.  Shipping an 
> untested
> package is something we try to avoid.
>
>> +    (home-page "https://platformio.org")
>> +    (synopsis
>> + "Your Gateway to Embedded Software Development Excellence. 
>> Unlock the true
>> potential of embedded software development with PlatformIO's 
>> collaborative
>> ecosystem, embracing declarative principles, test-driven 
>> methodologies, and
>> modern toolchains for unrivaled success.")
>> +    (description
>> +     "Your Gateway to Embedded Software Development 
>> Excellence.  Unlock the true
>> +potential of embedded software development with 
>> @code{PlatformIO's}
>> +collaborative ecosystem, embracing declarative principles, 
>> test-driven
>> +methodologies, and modern toolchains for unrivaled success.")
>> +    (license license:asl2.0)))
>
> Please replace the marketing language with an actual synopsis 
> and a
> description, following the guidelines at:
>
>   https://guix.gnu.org/manual/devel/en/html_node/Synopses-and-Descriptions.html
>
> ‘guix lint’ may also diagnose obvious issues.
>
>> -                     (url "https://github.com/john30/ebusd")
>> -                     (commit version)))
>> +                    (url "https://github.com/john30/ebusd")
>> +                    (commit version)))
>>                (file-name (string-append name "-" version 
>>                "-checkout"))
>>                (sha256
>>                 (base32
>> @@ -1491,14 +1529,14 @@ (define-public ebusd
>>         ("autoconf" ,autoconf)
>>         ("config"
>>          ,(origin
>> -              (method git-fetch)
>> -              (uri (git-reference
>> -                     (url 
>> "https://github.com/john30/ebusd-configuration")
>> -                     (commit 
>> "666c0f6b9c4d7545eff7f43ab28a1c7baeab7913")))
>> -              (file-name "config-checkout")
>> -              (sha256
>> -               (base32
>> - 
>> "0yxnx8p4lbk614l16854r9s9d8s9c7ixgczfs8mph94xz0wkda7x"))))))
>> +           (method git-fetch)
>> +           (uri (git-reference
>> +                 (url 
>> "https://github.com/john30/ebusd-configuration")
>> +                 (commit 
>> "666c0f6b9c4d7545eff7f43ab28a1c7baeab7913")))
>> +           (file-name "config-checkout")
>> +           (sha256
>> +            (base32
>> + 
>> "0yxnx8p4lbk614l16854r9s9d8s9c7ixgczfs8mph94xz0wkda7x"))))))
>
> Looks like these were unintended changes.
>
> Could you please send an updated patch series?
>
> Thanks,
> Ludo’.
diff mbox series

Patch

diff --git a/gnu/packages/embedded.scm b/gnu/packages/embedded.scm
index 325013a627..e547e6cbe6 100644
--- a/gnu/packages/embedded.scm
+++ b/gnu/packages/embedded.scm
@@ -13,6 +13,7 @@ 
 ;;; Copyright © 2022 Mathieu Othacehe <othacehe@gnu.org>
 ;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
+;;; Copyright © 2023 Peter Polidoro <peter@polidoro.io>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -40,6 +41,7 @@  (define-module (gnu packages embedded)
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system python)
+  #:use-module (guix build-system pyproject)
   #:use-module (guix build-system trivial)
   #:use-module ((guix build utils) #:select (alist-replace delete-file-recursively))
   #:use-module (gnu packages)
@@ -1457,6 +1459,42 @@  (define-public west
 debugging them, and more.")
     (license license:expat)))
 
+(define-public platformio
+  (package
+    (name "platformio")
+    (version "6.1.10")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "platformio" version))
+              (sha256
+               (base32
+                "0n7yz19ckyq1x3q7lm3cvj2xsmzx3kvnxkwqzkq9hfkj1yzxash4"))))
+    (build-system pyproject-build-system)
+    (arguments
+     `(#:tests? #f)) ; FIXME: PermissionError: [Errno 13] Permission denied: '/homeless-shelter'
+    (propagated-inputs (list python-ajsonrpc
+                             python-bottle
+                             python-click
+                             python-colorama
+                             python-marshmallow
+                             python-pyelftools
+                             python-pyserial
+                             python-requests
+                             python-semantic-version
+                             python-starlette
+                             python-tabulate
+                             python-uvicorn
+                             python-wsproto))
+    (home-page "https://platformio.org")
+    (synopsis
+     "Your Gateway to Embedded Software Development Excellence. Unlock the true potential of embedded software development with PlatformIO's collaborative ecosystem, embracing declarative principles, test-driven methodologies, and modern toolchains for unrivaled success.")
+    (description
+     "Your Gateway to Embedded Software Development Excellence.  Unlock the true
+potential of embedded software development with @code{PlatformIO's}
+collaborative ecosystem, embracing declarative principles, test-driven
+methodologies, and modern toolchains for unrivaled success.")
+    (license license:asl2.0)))
+
 (define-public ebusd
   (package
     (name "ebusd")
@@ -1464,8 +1502,8 @@  (define-public ebusd
     (source (origin
               (method git-fetch)
               (uri (git-reference
-                     (url "https://github.com/john30/ebusd")
-                     (commit version)))
+                    (url "https://github.com/john30/ebusd")
+                    (commit version)))
               (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
@@ -1491,14 +1529,14 @@  (define-public ebusd
        ("autoconf" ,autoconf)
        ("config"
         ,(origin
-              (method git-fetch)
-              (uri (git-reference
-                     (url "https://github.com/john30/ebusd-configuration")
-                     (commit "666c0f6b9c4d7545eff7f43ab28a1c7baeab7913")))
-              (file-name "config-checkout")
-              (sha256
-               (base32
-                "0yxnx8p4lbk614l16854r9s9d8s9c7ixgczfs8mph94xz0wkda7x"))))))
+           (method git-fetch)
+           (uri (git-reference
+                 (url "https://github.com/john30/ebusd-configuration")
+                 (commit "666c0f6b9c4d7545eff7f43ab28a1c7baeab7913")))
+           (file-name "config-checkout")
+           (sha256
+            (base32
+             "0yxnx8p4lbk614l16854r9s9d8s9c7ixgczfs8mph94xz0wkda7x"))))))
     (synopsis "Daemon for communicating with eBUS devices")
     (description "This package provides @command{ebusd}, a daemon for
 handling communication with eBUS devices connected to a 2-wire bus system