[PATCH] gnu: Add libiscsi.

  • Done
  • quality assurance status badge
Details
2 participants
  • Maxim Cournoyer
  • Ron Nazarov
Owner
unassigned
Submitted by
Ron Nazarov
Severity
normal
R
R
Ron Nazarov wrote on 4 Aug 2021 01:04
(address . guix-patches@gnu.org)(name . Ron Nazarov)(address . noisytoot@disroot.org)
20210803230454.8933-1-noisytoot@disroot.org
* gnu/packages/scsi.scm (libiscsi): New variable.
---
gnu/packages/scsi.scm | 34 ++++++++++++++++++++++++++++++++--
1 file changed, 32 insertions(+), 2 deletions(-)

Toggle diff (60 lines)
diff --git a/gnu/packages/scsi.scm b/gnu/packages/scsi.scm
index 4c3bfd7e33..ae4f60c10d 100644
--- a/gnu/packages/scsi.scm
+++ b/gnu/packages/scsi.scm
@@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 Chris Marusich <cmmarusich@gmail.com>
;;; Copyright © 2018, 2020, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2021 Noisytoot <noisytoot@disroot.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -19,10 +20,12 @@
(define-module (gnu packages scsi)
#:use-module ((guix licenses)
- #:select (gpl2+ bsd-2 bsd-3))
+ #:select (gpl2+ bsd-2 bsd-3 lgpl2.1+))
#:use-module (guix packages)
#:use-module (guix download)
- #:use-module (guix build-system gnu))
+ #:use-module (guix git-download)
+ #:use-module (guix build-system gnu)
+ #:use-module (gnu packages autotools))
(define-public sg3-utils
(package
@@ -65,3 +68,30 @@ used in C and C++ programs to interact with SCSI devices.")
;; various source code files refer to a file called "BSD_LICENSE" [...]."
;; Some files (like sg_compare_and_write.c) retain their 3-clause headers!
(license (list gpl2+ bsd-2 bsd-3))))
+
+(define-public libiscsi
+ (package
+ (name "libiscsi")
+ (version "1.19.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sahlberg/libiscsi")
+ (commit version)))
+ (sha256
+ (base32
+ "0ajrkkg5awmi8m4b3mha7h07ylg18k252qprvk1sgq0qbyd66zy7"))
+ (file-name (git-file-name name version))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("libtool" ,libtool)))
+ (synopsis "Client-side library for iSCSI")
+ (description "Libiscsi is a client-side library to implement
+the iSCSI protocol that can be used to access the resources of an iSCSI target.
+It is fully asynchronous with regards to iSCSI commands and SCSI tasks,
+but a synchronous layer is also provided for ease of use for simpler applications.")
+ (home-page "https://github.com/sahlberg/libiscsi")
+ (license (list gpl2+ lgpl2.1+))))
--
2.32.0
M
M
Maxim Cournoyer wrote on 24 Feb 2022 06:10
(name . Ron Nazarov)(address . noisytoot@disroot.org)(address . 49851-done@debbugs.gnu.org)
871qzsluhq.fsf@gmail.com
Hello!

Ron Nazarov <noisytoot@disroot.org> writes:

Toggle quote (64 lines)
> * gnu/packages/scsi.scm (libiscsi): New variable.
> ---
> gnu/packages/scsi.scm | 34 ++++++++++++++++++++++++++++++++--
> 1 file changed, 32 insertions(+), 2 deletions(-)
>
> diff --git a/gnu/packages/scsi.scm b/gnu/packages/scsi.scm
> index 4c3bfd7e33..ae4f60c10d 100644
> --- a/gnu/packages/scsi.scm
> +++ b/gnu/packages/scsi.scm
> @@ -1,6 +1,7 @@
> ;;; GNU Guix --- Functional package management for GNU
> ;;; Copyright © 2016 Chris Marusich <cmmarusich@gmail.com>
> ;;; Copyright © 2018, 2020, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
> +;;; Copyright © 2021 Noisytoot <noisytoot@disroot.org>
> ;;;
> ;;; This file is part of GNU Guix.
> ;;;
> @@ -19,10 +20,12 @@
>
> (define-module (gnu packages scsi)
> #:use-module ((guix licenses)
> - #:select (gpl2+ bsd-2 bsd-3))
> + #:select (gpl2+ bsd-2 bsd-3 lgpl2.1+))
> #:use-module (guix packages)
> #:use-module (guix download)
> - #:use-module (guix build-system gnu))
> + #:use-module (guix git-download)
> + #:use-module (guix build-system gnu)
> + #:use-module (gnu packages autotools))
>
> (define-public sg3-utils
> (package
> @@ -65,3 +68,30 @@ used in C and C++ programs to interact with SCSI devices.")
> ;; various source code files refer to a file called "BSD_LICENSE" [...]."
> ;; Some files (like sg_compare_and_write.c) retain their 3-clause headers!
> (license (list gpl2+ bsd-2 bsd-3))))
> +
> +(define-public libiscsi
> + (package
> + (name "libiscsi")
> + (version "1.19.0")
> + (source
> + (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://github.com/sahlberg/libiscsi")
> + (commit version)))
> + (sha256
> + (base32
> + "0ajrkkg5awmi8m4b3mha7h07ylg18k252qprvk1sgq0qbyd66zy7"))
> + (file-name (git-file-name name version))))
> + (build-system gnu-build-system)
> + (native-inputs
> + `(("autoconf" ,autoconf)
> + ("automake" ,automake)
> + ("libtool" ,libtool)))
> + (synopsis "Client-side library for iSCSI")
> + (description "Libiscsi is a client-side library to implement
> +the iSCSI protocol that can be used to access the resources of an iSCSI target.
> +It is fully asynchronous with regards to iSCSI commands and SCSI tasks,
> +but a synchronous layer is also provided for ease of use for simpler applications.")
> + (home-page "https://github.com/sahlberg/libiscsi")
> + (license (list gpl2+ lgpl2.1+))))

Well done! I've modified it a bit like so:

modified gnu/packages/scsi.scm
@@ -87,14 +87,16 @@ (define-public libiscsi
"0ajrkkg5awmi8m4b3mha7h07ylg18k252qprvk1sgq0qbyd66zy7"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
- (native-inputs
- `(("autoconf" ,autoconf)
- ("automake" ,automake)
- ("libtool" ,libtool)))
+ (native-inputs (list autoconf automake libtool))

For the new style inputs.

(synopsis "Client-side library for iSCSI")
- (description "Libiscsi is a client-side library to implement
-the iSCSI protocol that can be used to access the resources of an iSCSI target.
-It is fully asynchronous with regards to iSCSI commands and SCSI tasks,
-but a synchronous layer is also provided for ease of use for simpler applications.")
+ (description "Libiscsi is a client-side library to implement the iSCSI
+protocol that can be used to access the resources of an iSCSI target. It is
+fully asynchronous with regards to iSCSI commands and SCSI tasks, but a
+synchronous layer is also provided for ease of use for simpler
applications.")

Re-flowed the text in Emacs.

- (license (list gpl2+ lgpl2.1+))))
+ (license (list
+ ;; For the src, examples and test-tool directories, except
+ ;; src/ld_iscsi.c.
+ gpl2+
+ ;; For the lib and include directories.
+ lgpl2.1+))))

Added explanatory comments for the licenses.

And pushed as bf827d6465.

Thank you!

Maxim
Closed
?