summaryrefslogtreecommitdiff
path: root/gnu/packages/electronics.scm
diff options
context:
space:
mode:
authorSharlatan Hellseher <sharlatanus@gmail.com>2025-04-15 09:41:51 +0100
committerSharlatan Hellseher <sharlatanus@gmail.com>2025-04-15 11:48:48 +0100
commitcd5cdb1d4615b4301de63500ccadf2c81b7d7d0e (patch)
tree48fd5bbff81dda7d026aec73b47e101ae99f1722 /gnu/packages/electronics.scm
parent048a97cae78609a2bc0294db0145d606afb83ed2 (diff)
gnu: packages/electronics: Sort variables.
* gnu/packages/electronics.scm: (comedilib, libsigrok, m8c, xoscope): Sort variables alphabetically. Change-Id: Ia994ba024aaa7a1367b7ecc69453cce32620cb39
Diffstat (limited to 'gnu/packages/electronics.scm')
-rw-r--r--gnu/packages/electronics.scm314
1 files changed, 157 insertions, 157 deletions
diff --git a/gnu/packages/electronics.scm b/gnu/packages/electronics.scm
index f151bbb7cea..483a31213e2 100644
--- a/gnu/packages/electronics.scm
+++ b/gnu/packages/electronics.scm
@@ -69,6 +69,27 @@
#:use-module (gnu packages toolkits)
#:use-module (gnu packages version-control))
+(define-public comedilib
+ (package
+ (name "comedilib")
+ (version "0.12.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://www.comedi.org/download/comedilib-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "0wzh23iyix4xj211fsd8hwrdcjhg2w5jswk9kywb1gpd3h8afajj"))))
+ (build-system gnu-build-system)
+ (synopsis "Library for Comedi")
+ (description "Comedilib is a user-space library that provides a
+developer-friendly interface to Comedi devices. Comedi is a collection of
+drivers for a variety of common data acquisition plug-in boards. The drivers
+are implemented as a core Linux kernel module providing common functionality and
+individual low-level driver modules.")
+ (home-page "https://www.comedi.org/")
+ (license license:lgpl2.1)))
+
(define-public libserialport
(package
(name "libserialport")
@@ -90,6 +111,79 @@
to take care of the OS-specific details when writing software that uses serial ports.")
(license license:lgpl3+)))
+(define-public libsigrok
+ (let ((commit "f06f788118191d19fdbbb37046d3bd5cec91adb1")
+ (revision "2"))
+ (package
+ (name "libsigrok")
+ (version (git-version "0.5.2" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "git://sigrok.org/libsigrok")
+ (commit commit)))
+ (sha256
+ (base32 "1ahgpa0gaa4fl8c6frpgamvgxg0fisfwlqddr5x25456vkk2i9zi"))
+ (file-name (git-file-name name version))))
+ (outputs '("out" "doc"))
+ (arguments
+ `(#:tests? #f ; tests need USB access
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'configure 'change-udev-group
+ (lambda _
+ (substitute* (find-files "contrib" "\\.rules$")
+ (("plugdev") "dialout"))))
+ (add-after 'build 'build-doc
+ (lambda _
+ (invoke "doxygen")))
+ (add-after 'install 'install-doc
+ (lambda* (#:key outputs #:allow-other-keys)
+ (copy-recursively "doxy/html-api"
+ (string-append (assoc-ref outputs "doc")
+ "/share/doc/libsigrok"))))
+ (add-after 'install-doc 'install-udev-rules
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (rules (string-append out "/lib/udev/rules.d/")))
+ (for-each (lambda (file)
+ (install-file file rules))
+ (find-files "contrib" "\\.rules$")))))
+ (add-after 'install-udev-rules 'install-fw
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((fx2lafw (assoc-ref inputs "sigrok-firmware-fx2lafw"))
+ (out (assoc-ref outputs "out"))
+ (dir-suffix "/share/sigrok-firmware/")
+ (input-dir (string-append fx2lafw dir-suffix))
+ (output-dir (string-append out dir-suffix)))
+ (for-each
+ (lambda (file)
+ (install-file file output-dir))
+ (find-files input-dir "."))))))))
+ (native-inputs
+ (list autoconf automake doxygen graphviz libtool
+ sigrok-firmware-fx2lafw pkg-config))
+ (inputs
+ (list python zlib))
+ ;; libsigrokcxx.pc lists "glibmm" in Requires libsigrok.pc lists
+ ;; "libserialport", "libusb", "libftdi" and "libzip" in Requires.private
+ ;; and "glib" in Requires
+ (propagated-inputs
+ (list glib
+ glibmm-2.66
+ libserialport
+ libusb
+ libftdi
+ libzip))
+ (build-system gnu-build-system)
+ (home-page "https://www.sigrok.org/wiki/Libsigrok")
+ (synopsis "Basic hardware access drivers for logic analyzers")
+ (description "@code{libsigrok} is a shared library written in C which
+provides the basic hardware access drivers for logic analyzers and other
+supported devices, as well as input/output file format support.")
+ (license license:gpl3+))))
+
(define-public libsigrokdecode
(let ((commit "71f451443029322d57376214c330b518efd84f88")
(revision "1"))
@@ -134,6 +228,46 @@ to take care of the OS-specific details when writing software that uses serial p
(streaming) protocol decoding functionality.")
(license license:gpl3+))))
+(define-public m8c
+ (package
+ (name "m8c")
+ (version "1.7.10")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/laamaa/m8c")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "18bx6jf0jbgnd6cfydh4iknh25rrpyc8awma4a1hkia57fyjy2gi"))))
+ (build-system gnu-build-system)
+ (arguments
+ (list
+ #:make-flags #~(list (string-append "PREFIX=" #$output))
+ #:phases
+ #~(modify-phases %standard-phases
+ (delete 'configure))
+ #:tests? #f)) ;no tests
+ (native-inputs (list pkg-config))
+ (inputs (list libserialport
+ sdl2))
+ (home-page "https://github.com/laamaa/m8c")
+ (synopsis "Cross-platform M8 tracker headless client")
+ (description
+ "The @url{https://dirtywave.com/products/m8-tracker,Dirtywave M8 Tracker}
+is a portable sequencer and synthesizer, featuring 8 tracks of assignable
+instruments such as FM, waveform synthesis, virtual analog, sample playback, and
+MIDI output. It is powered by a @url{https://www.pjrc.com/teensy/,Teensy}
+micro-controller and inspired by the Gameboy tracker
+@url{https://www.littlesounddj.com/lsd/index.php,Little Sound DJ}. m8c is a
+client for @url{https://github.com/Dirtywave/M8HeadlessFirmware,M8 Headless}
+which allows one to install the M8 firmware on any Teensy.")
+ (license (list license:cc-by-sa3.0
+ license:expat
+ license:public-domain
+ license:zlib))))
+
(define-public sigrok-firmware-fx2lafw
;; The project's last formal release was in 2019.
;;
@@ -164,79 +298,6 @@ to take care of the OS-specific details when writing software that uses serial p
them usable as simple logic analyzer and/or oscilloscope hardware.")
(license license:gpl2+))))
-(define-public libsigrok
- (let ((commit "f06f788118191d19fdbbb37046d3bd5cec91adb1")
- (revision "2"))
- (package
- (name "libsigrok")
- (version (git-version "0.5.2" revision commit))
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "git://sigrok.org/libsigrok")
- (commit commit)))
- (sha256
- (base32 "1ahgpa0gaa4fl8c6frpgamvgxg0fisfwlqddr5x25456vkk2i9zi"))
- (file-name (git-file-name name version))))
- (outputs '("out" "doc"))
- (arguments
- `(#:tests? #f ; tests need USB access
- #:phases
- (modify-phases %standard-phases
- (add-before 'configure 'change-udev-group
- (lambda _
- (substitute* (find-files "contrib" "\\.rules$")
- (("plugdev") "dialout"))))
- (add-after 'build 'build-doc
- (lambda _
- (invoke "doxygen")))
- (add-after 'install 'install-doc
- (lambda* (#:key outputs #:allow-other-keys)
- (copy-recursively "doxy/html-api"
- (string-append (assoc-ref outputs "doc")
- "/share/doc/libsigrok"))))
- (add-after 'install-doc 'install-udev-rules
- (lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (rules (string-append out "/lib/udev/rules.d/")))
- (for-each (lambda (file)
- (install-file file rules))
- (find-files "contrib" "\\.rules$")))))
- (add-after 'install-udev-rules 'install-fw
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let* ((fx2lafw (assoc-ref inputs "sigrok-firmware-fx2lafw"))
- (out (assoc-ref outputs "out"))
- (dir-suffix "/share/sigrok-firmware/")
- (input-dir (string-append fx2lafw dir-suffix))
- (output-dir (string-append out dir-suffix)))
- (for-each
- (lambda (file)
- (install-file file output-dir))
- (find-files input-dir "."))))))))
- (native-inputs
- (list autoconf automake doxygen graphviz libtool
- sigrok-firmware-fx2lafw pkg-config))
- (inputs
- (list python zlib))
- ;; libsigrokcxx.pc lists "glibmm" in Requires libsigrok.pc lists
- ;; "libserialport", "libusb", "libftdi" and "libzip" in Requires.private
- ;; and "glib" in Requires
- (propagated-inputs
- (list glib
- glibmm-2.66
- libserialport
- libusb
- libftdi
- libzip))
- (build-system gnu-build-system)
- (home-page "https://www.sigrok.org/wiki/Libsigrok")
- (synopsis "Basic hardware access drivers for logic analyzers")
- (description "@code{libsigrok} is a shared library written in C which
-provides the basic hardware access drivers for logic analyzers and other
-supported devices, as well as input/output file format support.")
- (license license:gpl3+))))
-
(define-public sigrok-cli
(package
(name "sigrok-cli")
@@ -394,90 +455,6 @@ such as:
for sigrok.")
(license license:gpl3+)))
-(define-public comedilib
- (package
- (name "comedilib")
- (version "0.12.0")
- (source (origin
- (method url-fetch)
- (uri (string-append "https://www.comedi.org/download/comedilib-"
- version ".tar.gz"))
- (sha256
- (base32
- "0wzh23iyix4xj211fsd8hwrdcjhg2w5jswk9kywb1gpd3h8afajj"))))
- (build-system gnu-build-system)
- (synopsis "Library for Comedi")
- (description "Comedilib is a user-space library that provides a
-developer-friendly interface to Comedi devices. Comedi is a collection of
-drivers for a variety of common data acquisition plug-in boards. The drivers
-are implemented as a core Linux kernel module providing common functionality and
-individual low-level driver modules.")
- (home-page "https://www.comedi.org/")
- (license license:lgpl2.1)))
-
-(define-public xoscope
- (package
- (name "xoscope")
- (version "2.3")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://sourceforge/xoscope/xoscope/"
- version "/xoscope-" version ".tar.gz"))
- (sha256
- (base32
- "0a5ycfc1qdmibvagc82r2mhv2i99m6pndy5i6ixas3j2297g6pgq"))))
- (build-system gnu-build-system)
- (native-inputs
- (list m4 pkg-config))
- (inputs
- (list alsa-lib comedilib fftw gtk+ gtkdatabox))
- (synopsis "Digital oscilloscope")
- (description "Xoscope is a digital oscilloscope that can acquire signals
-from ALSA, ESD, and COMEDI sources. This package currently does not include
-support for ESD sources.")
- (home-page "https://xoscope.sourceforge.net/")
- (license license:gpl2+)))
-
-(define-public m8c
- (package
- (name "m8c")
- (version "1.7.10")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/laamaa/m8c")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32 "18bx6jf0jbgnd6cfydh4iknh25rrpyc8awma4a1hkia57fyjy2gi"))))
- (build-system gnu-build-system)
- (arguments
- (list
- #:make-flags #~(list (string-append "PREFIX=" #$output))
- #:phases
- #~(modify-phases %standard-phases
- (delete 'configure))
- #:tests? #f)) ;no tests
- (native-inputs (list pkg-config))
- (inputs (list libserialport
- sdl2))
- (home-page "https://github.com/laamaa/m8c")
- (synopsis "Cross-platform M8 tracker headless client")
- (description
- "The @url{https://dirtywave.com/products/m8-tracker,Dirtywave M8 Tracker}
-is a portable sequencer and synthesizer, featuring 8 tracks of assignable
-instruments such as FM, waveform synthesis, virtual analog, sample playback, and
-MIDI output. It is powered by a @url{https://www.pjrc.com/teensy/,Teensy}
-micro-controller and inspired by the Gameboy tracker
-@url{https://www.littlesounddj.com/lsd/index.php,Little Sound DJ}. m8c is a
-client for @url{https://github.com/Dirtywave/M8HeadlessFirmware,M8 Headless}
-which allows one to install the M8 firmware on any Teensy.")
- (license (list license:cc-by-sa3.0
- license:expat
- license:public-domain
- license:zlib))))
-
(define-public minipro
;; Information needed to fix Makefile
(let* ((date "2024-09-20 20:55:06 -0700"))
@@ -696,3 +673,26 @@ digital design. It provides implementation modules compatible with FPGA and ASI
design.")
(license (license:non-copyleft "file://LICENSE.txt"
"See LICENSE.txt in the distribution."))))
+
+(define-public xoscope
+ (package
+ (name "xoscope")
+ (version "2.3")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://sourceforge/xoscope/xoscope/"
+ version "/xoscope-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0a5ycfc1qdmibvagc82r2mhv2i99m6pndy5i6ixas3j2297g6pgq"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ (list m4 pkg-config))
+ (inputs
+ (list alsa-lib comedilib fftw gtk+ gtkdatabox))
+ (synopsis "Digital oscilloscope")
+ (description "Xoscope is a digital oscilloscope that can acquire signals
+from ALSA, ESD, and COMEDI sources. This package currently does not include
+support for ESD sources.")
+ (home-page "https://xoscope.sourceforge.net/")
+ (license license:gpl2+)))