[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#51838] [PATCH v6 34/41] gnu: Add node-serialport-bindings.
From: |
Philip McGrath |
Subject: |
[bug#51838] [PATCH v6 34/41] gnu: Add node-serialport-bindings. |
Date: |
Thu, 30 Dec 2021 02:39:12 -0500 |
* gnu/packages/node-xyz.scm (node-serialport-bindings): New variable.
---
gnu/packages/node-xyz.scm | 56 +++++++++++++++++++++++++++++++++++++++
1 file changed, 56 insertions(+)
diff --git a/gnu/packages/node-xyz.scm b/gnu/packages/node-xyz.scm
index e33a35a0a0..fe1a2d4e5f 100644
--- a/gnu/packages/node-xyz.scm
+++ b/gnu/packages/node-xyz.scm
@@ -1149,3 +1149,59 @@ (define-public node-serialport-parser-readline
Parsers are used to take raw binary data and transform them into usable
messages. This package provides @code{Readline}, a parser that emits data
after a (configurable) newline delimiter is received.")))
+
+(define-public node-serialport-bindings
+ (package
+ (inherit node-serialport-binding-abstract)
+ (name "node-serialport-bindings")
+ (version "9.2.7")
+ (native-inputs
+ (list python))
+ (inputs
+ (list node-nan node-bindings node-serialport-binding-abstract
+ node-serialport-parser-readline node-debug))
+ (arguments
+ `(#:modules
+ ((guix build node-build-system)
+ (srfi srfi-1)
+ (ice-9 match)
+ (guix build utils))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'chdir
+ (lambda args
+ (chdir "packages/bindings")))
+ (add-after 'patch-dependencies 'delete-dependencies
+ (lambda args
+ (with-atomic-json-file-replacement "package.json"
+ (lambda (pkg-meta)
+ (delete-dependencies pkg-meta `("prebuild-install"
+ ;; devDependencies
+ "@serialport/binding-mock"
+ "node-abi"))))))
+ (add-after 'chdir 'avoid-prebuild-install
+ (lambda args
+ (with-atomic-json-file-replacement "package.json"
+ (match-lambda
+ (('@ . pkg-meta-alist)
+ (cons '@ (map (match-lambda
+ (("scripts" @ . scripts-alist)
+ `("scripts" @ ,@(filter (match-lambda
+ (("install" . _)
+ #f)
+ (_
+ #t))
+ scripts-alist)))
+ (other
+ other))
+ pkg-meta-alist))))))))
+ #:tests? #f))
+ (synopsis "Abstract base class for Node SerialPort bindings")
+ (description "Node SerialPort is a modular suite of Node.js packages for
+accessing serial ports. The Guix package @code{node-serialport} provides the
+recommended high-level interface.
+
+This package provides the @code{Binding} class, which uses a native addon to
+talk to the underlying system. You never have to use @code{Binding} objects
+directly. There is also a @code{MockBinding} available (but not yet packaged
+for Guix) to assist with testing.")))
--
2.32.0
- [bug#51838] [PATCH v6 26/41] gnu: Add node-file-uri-to-path., (continued)
- [bug#51838] [PATCH v6 26/41] gnu: Add node-file-uri-to-path., Philip McGrath, 2021/12/30
- [bug#51838] [PATCH v6 22/41] gnu: Add node-nan., Philip McGrath, 2021/12/30
- [bug#51838] [PATCH v6 32/41] gnu: Add node-serialport-parser-delimiter., Philip McGrath, 2021/12/30
- [bug#51838] [PATCH v6 27/41] gnu: Add node-bindings., Philip McGrath, 2021/12/30
- [bug#51838] [PATCH v6 31/41] gnu: Add node-serialport-binding-abstract., Philip McGrath, 2021/12/30
- [bug#51838] [PATCH v6 28/41] gnu: Add node-segfault-handler., Philip McGrath, 2021/12/30
- [bug#51838] [PATCH v6 29/41] gnu: Add node-ms., Philip McGrath, 2021/12/30
- [bug#51838] [PATCH v6 30/41] gnu: Add node-debug., Philip McGrath, 2021/12/30
- [bug#51838] [PATCH v6 35/41] gnu: Add node-serialport-parser-regex., Philip McGrath, 2021/12/30
- [bug#51838] [PATCH v6 33/41] gnu: Add node-serialport-parser-readline., Philip McGrath, 2021/12/30
- [bug#51838] [PATCH v6 34/41] gnu: Add node-serialport-bindings.,
Philip McGrath <=
- [bug#51838] [PATCH v6 36/41] gnu: Add node-serialport-parser-ready., Philip McGrath, 2021/12/30
- [bug#51838] [PATCH v6 37/41] gnu: Add node-serialport-parser-inter-byte-timeout., Philip McGrath, 2021/12/30
- [bug#51838] [PATCH v6 39/41] gnu: Add node-serialport-parser-byte-length., Philip McGrath, 2021/12/30
- [bug#51838] [PATCH v6 41/41] gnu: Add node-serialport., Philip McGrath, 2021/12/30
- [bug#51838] [PATCH v7 00/41] guix: node-build-system: Support compiling add-ons with node-gyp., Philip McGrath, 2021/12/30
- [bug#51838] [PATCH v7 04/41] guix: node-build-system: Add avoid-node-gyp-rebuild phase., Philip McGrath, 2021/12/30
- [bug#51838] [PATCH v7 01/41] guix: node-build-system: Add delete-lockfiles phase., Philip McGrath, 2021/12/30
- [bug#51838] [PATCH v7 02/41] guix: node-build-system: Add implicit libuv input., Philip McGrath, 2021/12/30
- [bug#51838] [PATCH v7 06/41] gnu: node-semver-bootstrap: Use #:absent-dependencies., Philip McGrath, 2021/12/30
- [bug#51838] [PATCH v7 03/41] guix: node-build-system: Add JSON utilities., Philip McGrath, 2021/12/30