aboutsummaryrefslogtreecommitdiff
;;; 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.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.

(define-module (gnu packages scsi)
  #:use-module ((guix licenses) #:prefix license:)
  #:use-module (guix packages)
  #:use-module (guix download)
  #:use-module (guix git-download)
  #:use-module (guix build-system gnu)
  #:use-module (gnu packages autotools))

(define-public sg3-utils
  (package
    (name "sg3-utils")
    (version "1.48")
    (source (origin
              (method url-fetch)
              (uri (string-append "https://sg.danny.cz/sg/p/sg3_utils-"
                                  version ".tar.xz"))
              (sha256
               (base32
                "1ynv6kijzjj8xab3z87nks26qcrpvg46mhlr3s6yah6mj0ba9ffn"))))
    (build-system gnu-build-system)
    (arguments
     `(#:configure-flags
       (list "--disable-static")))
    (home-page "https://sg.danny.cz/sg/sg3_utils.html")
    (synopsis "SCSI device utilities")
    (description
     "sg3-utils is a collection of utilities for devices that use the Small
Computer System Interface (@dfn{SCSI}) command set.  It includes utilities to
read data from, write data to, control, modify, and query the state of SCSI
devices.

For example, this package provides command-line tools to:
@itemize
@item copy data based on @code{dd} syntax and semantics (called @command{sg_dd},
@command{sgp_dd}, and @command{sgm_dd})
@item check @code{INQUIRY} data and @code{VPD pages} (@command{sg_inq})
@item check mode and log pages (@command{sginfo}, @command{sg_modes}, and
@command{sg_logs})
@item spin up and down disks (@command{sg_start})
@item do self-tests (@code{sg_senddiag})
@item parse sense data (@code{sg_decode_sense})
@item and perform various other functions.
@end itemize

In addition, this package includes a library, called libsgutils, which can be
used in C and C++ programs to interact with SCSI devices.")
    ;; See README: "All utilities and libraries have either a "2 clause" BSD
    ;;   license or are "GPL-2ed". [...] That BSD license was updated from the
    ;;   "3 clause" to the newer "2 clause" version on 20180119. To save space
    ;;   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 license:gpl2+ license:bsd-2 license: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 (list autoconf automake 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
              ;; For the src, examples and test-tool directories, except
              ;; src/ld_iscsi.c.
              license:gpl2+
              ;; For the lib and include directories.
              license:lgpl2.1+))))

(define-public lsscsi
  (package
    (name "lsscsi")
    (version "0.32")
    (source (origin
             (method url-fetch)
             (uri (string-append
                   "http://sg.danny.cz/scsi/lsscsi-" version ".tar.xz"))
             (sha256
              (base32
               "0jp458m2b3wckr18qkln69i01152qlwz33zm49103lq8fgx0n6d4"))))
    (build-system gnu-build-system)
    (synopsis "Lists information about SCSI or NVMe devices in Linux")
    (home-page "https://sg.danny.cz/scsi/lsscsi.html")
    (description
     "@command{lsscsi} lists SCSI logical units or SCSI targets.  It can
also list NVMe namespaces or controllers and show the relationship between a
device's primary node name, its SCSI generic (sg) node name and its kernel
name.")
    (license license:gpl2)))
ass='msg-avail'>...* gnu/packages/haskell-web.scm (ghc-snap-server): Update to 1.1.1.1. [arguments]: Set Cabal file to r1. Timothy Sample 2019-11-20gnu: ghc-wai: Update to 3.2.2.1....* gnu/packages/haskell-web.scm (ghc-wai): Update to 3.2.2.1. Timothy Sample 2019-11-20gnu: ghc-bsb-http-chunked: Update to 0.0.0.4....* gnu/packages/haskell-web.scm (ghc-bsb-http-chunked): Update to 0.0.0.4. [inputs]: Remove 'ghc-bytestring-builder'. [native-inputs]: Add 'ghc-attoparsec', 'ghc-blaze-builder', 'ghc-hedgehog', 'ghc-tasty', 'ghc-tasty-hedgehog', 'ghc-tasty-hunit', and 'ghc-doctest'. Timothy Sample 2019-11-20gnu: ghc-http2: Update to 1.6.5....* gnu/packages/haskell-web.scm (ghc-http2): Update to 1.6.5. [inputs]: Remove 'ghc-bytestring-builder' and 'ghc-hex'; add 'ghc-network-byte-order' and 'ghc-base16-bytestring'. Timothy Sample 2019-11-20gnu: ghc-aeson-pretty: Update to 0.8.8....* gnu/packages/haskell-web.scm (ghc-aeson-pretty): Update to 0.8.8. Timothy Sample 2019-11-20gnu: ghc-http-client: Update to 0.6.4....* gnu/packages/haskell-web.scm (ghc-http-client): Update to 0.6.4. Timothy Sample 2019-11-20gnu: ghc-snap-core: Update to 1.0.4.0....* gnu/packages/haskell-web.scm (ghc-snap-core): Update to 1.0.4.0. [arguments]: Remove '#:cabal-revision'. Timothy Sample 2019-11-20gnu: ghc-tls-session-manager: Update to 0.0.3....* gnu/packages/haskell-web.scm (ghc-tls-session-manager): Update to 0.0.3. Timothy Sample 2019-11-20gnu: ghc-hxt: Update to 9.3.1.18....* gnu/packages/haskell-web.scm (ghc-hxt): Update to 9.3.1.18. Timothy Sample 2019-11-20gnu: ghc-httpd-shed: Update to 0.4.1.1....* gnu/packages/haskell-web.scm (ghc-httpd-shed): Update to 0.4.1.1. [inputs]: Add 'ghc-network-bsd'. Timothy Sample 2019-11-20gnu: ghc-aeson: Update to 1.4.5.0....* gnu/packages/haskell-web.scm (ghc-aeson): Update to 1.4.5.0. Timothy Sample 2019-11-20gnu: ghc-blaze-html: Update to 0.9.1.2....* gnu/packages/haskell-web.scm (ghc-blaze-html): Update to 0.9.1.2. Timothy Sample 2019-11-20gnu: ghc-tagsoup: Update to 0.14.8....* gnu/packages/haskell-web.scm (ghc-tagsoup): Update to 0.14.8. Timothy Sample 2019-11-20gnu: ghc-hxt-charproperties: Update to 9.4.0.0....* gnu/packages/haskell-web.scm (ghc-hxt-charproperties): Update to 9.4.0.0. Timothy Sample 2019-11-20gnu: ghc-mime-types: Update to 0.1.0.9....* gnu/packages/haskell-web.scm (ghc-mime-types): Update to 0.1.0.9. Timothy Sample 2019-09-02gnu: Add ghc-js-flot....* gnu/packages/haskell-web.scm (ghc-js-flot): New variable. Signed-off-by: Timothy Sample <samplet@ngyro.com> John Soo 2019-09-02gnu: Add ghc-js-jquery....* gnu/packages/haskell-web.scm (ghc-js-jquery): New variable. Signed-off-by: Timothy Sample <samplet@ngyro.com> John Soo 2019-08-07gnu: Add ghc-snap-server....* gnu/packages/haskell-web.scm (ghc-snap-server): New variable. Robert Vollmert 2019-08-07gnu: Add ghc-snap-core....* gnu/packages/haskell-web.scm (ghc-snap-core): New variable. Robert Vollmert 2019-08-07gnu: Add ghc-http-streams....* gnu/packages/haskell-web.scm (ghc-http-streams): New variable. Robert Vollmert 2019-08-07gnu: Add ghc-http-common....* gnu/packages/haskell-web.scm (ghc-http-common): New variable. Robert Vollmert 2019-08-07gnu: Remove ghc-parsec, ghc-stm, ghc-text, ghc-xhtml....These are ghc-8.4-bundled packages, removing to avoid build conflicts. * gnu/packages/haskell.scm (ghc-parsec, ghc-stm, ghc-text): Remove. * gnu/packages/haskell-web.scm (ghc-xhtml): Remove. * gnu/packages/agda.scm (agda)[inputs]: Remove ghc-stm and ghc-text. * gnu/packages/bioinformatics.scm (ngless)[inputs]: Remove ghc-parsec and ghc-text. * gnu/packages/haskell-apps.scm (darcs)[inputs]: Remove ghc-parsec. (git-annex)[inputs]: Remove ghc-stm and ghc-text. (ghc-sdl2)[inputs]: Remove ghc-text. (ghc-sdl2-image)[inputs]: Remove ghc-text. * gnu/packages/haskell-check.scm (ghc-tasty-ant-xml)[inputs]: Remove ghc-stm. (ghc-tasty)[inputs]: Remove ghc-stm. (ghc-tasty-rerun)[inputs]: Same. (ghc-quickcheck-instances)[inputs]: Remove ghc-text. (ghc-hedgehog)[inputs]: Remove ghc-stm. * gnu/packages/haskell-crypto.scm (ghc-asn1-encoding)[inputs]: Remove ghc-text. * gnu/packages/haskell-web.scm (ghc-tagsoup)[inputs]: Remove ghc-text. (ghc-cookie)[inputs]: Same. (ghc-http-types)[inputs]: Same. (ghc-http)[inputs]: Remove ghc-parsec. (ghc-http-client)[inputs]: Remove ghc-text. (ghc-http2)[inputs]: Remove ghc-stm. (ghc-http-conduit)[native-inputs]: Remove ghc-text. (ghc-wai)[inputs]: Same. (ghc-wai-extra)[inputs]: Same. (ghc-warp)[inputs]: Remove ghc-stm and ghc-text. (ghc-xss-sanitize)[native-inputs]: Remove ghc-text. (ghc-css-text)[inputs]: Same. (ghc-mime-types)[inputs]: Same. (ghc-blaze-html)[inputs]: Same. (ghc-aeson)[inputs]: Same. (ghc-aeson-pretty)[inputs]: Same. (ghc-aeson-qq)[inputs]: Remove ghc-text and ghc-parsec. (ghc-multipart)[inputs]: Remove ghc-parsec. (ghc-uri-encode)[inputs]: Remove ghc-text. (ghc-path-pieces)[inputs]: Same. (ghc-yesod-core)[inputs]: Remove ghc-text and ghc-parsec. (ghc-yesod-persistent)[inputs]: Remove ghc-text. (ghc-yesod-form)[inputs]: Same. (ghc-yesod)[inputs]: Same. (ghc-hxt-regex-xmlschema)[inputs]: Remove ghc-parsec and ghc-text. (ghc-hxt)[inputs]: Remove ghc-parsec. * gnu/packages/haskell.scm (ghc-convertible)[inputs]: Remove ghc-text. (ghc-double-conversion)[inputs]: Same. (ghc-tree-diff)[inputs]: Remove ghc-parsec and ghc-text. [native-inputs]: Remove ghc-parsec. (ghc-cgi)[inputs]: Remove ghc-parsec. (hlint)[inputs]: Remove ghc-text. (ghc-openglraw)[inputs]: Remove ghc-text. (ghc-opengl)[inputs]: Same. (ghc-streaming-commons)[inputs]: Remove ghc-stm and ghc-text. (ghc-hackage-security)[inputs]: Remove ghc-parsec. (cabal-install)[inputs]: Remove ghc-stm. (ghc-parsec-numbers)[inputs]: Remove ghc-parsec. (ghc-safesemaphore)[inputs]: Remove ghc-stm. (ghc-text-binary)[inputs]: Remove ghc-text. (ghc-hashable)[inputs]: Remove ghc-text. (ghc-transformers-base)[inputs]: Remove ghc-stm. (ghc-indents)[inputs]: Remove ghc-parsec. (ghc-regex-tdfa-rc)[inputs]: Same. (ghc-regex-tdfa-text)[inputs]: Same. (ghc-regex)[inputs]: Remove ghc-text. (ghc-parsers)[inputs]: Remove ghc-parsec and ghc-text. (ghc-attoparsec)[inputs]: Remove ghc-text. (ghc-attoparsec-bootstrap)[inputs]: Same. (ghc-zip-archive)[inputs]: Same. (ghc-polyparse)[inputs]: Same. (ghc-reducers)[inputs]: Same. (ghc-xml)[inputs]: Same. (ghc-feed)[inputs]: Same. (ghc-exceptions)[inputs]: Remove ghc-stm. (ghc-case-insensitive)[inputs]: Remove ghc-text. (ghc-megaparsec)[inputs]: Same. (ghc-network-uri)[inputs]: Remove ghc-parsec. (ghc-monad-control)[inputs]: Remove ghc-stm. (ghc-blaze-builder)[inputs]: Remove ghc-text. (ghc-blaze-markup)[inputs]: Same. (ghc-async)[inputs]: Remove ghc-stm. (ghc-invariant)[inputs]: Same. (ghc-statevar)[inputs]: Same. (ghc-lens)[inputs]: Remove ghc-text. (ghc-cheapskate)[inputs]: Same. (ghc-semigroups)[inputs]: Same. (ghc-semigroups-bootstrap)[inputs]: Same. (ghc-fast-logger)[inputs]: Same. (ghc-scientific)[inputs]: Same. (ghc-scientific-bootstrap)[inputs]: Same. (ghc-texmath)[inputs]: Remove ghc-parsec. (ghc-highlighting-kate)[inputs]: Same. (ghc-cmark)[inputs]: Remove ghc-text. (ghc-cmark-gfm)[inputs]: Same. (ghc-th-lift-instances)[inputs]: Same. (ghc-yaml)[inputs]: Same. (ghc-hslua)[inputs]: Same. (ghc-hslua-module-text)[inputs]: Same. (ghc-skylighting-core)[inputs]: Same. (ghc-doctemplates)[inputs]: Remove ghc-text and ghc-parsec. (ghc-pandoc)[inputs]: Same. (ghc-typed-process)[inputs]: Remove ghc-stm. (ghc-conduit-extra)[inputs]: Remove ghc-stm and ghc-text. (ghc-xml-types)[inputs]: Remove ghc-text. (ghc-xml-conduit)[inputs]: Same. (ghc-pandoc-citeproc)[inputs]: Remove ghc-text and ghc-parsec. (ghc-regex-tdfa)[inputs]: Remove ghc-parsec. (ghc-wl-pprint-text)[inputs]: Remove ghc-text. (ghc-graphviz)[inputs]: Same. (ghc-system-filepath-bootstrap)[inputs]: Same. (ghc-system-fileio-bootstrap)[inputs]: Same. (ghc-shelly)[inputs]: Same. (ghc-chell)[inputs]: Same. (ghc-system-filepath)[inputs]: Same. (ghc-system-fileio)[inputs]: Same. (ghc-fsnotify)[inputs]: Same. (ghc-json)[inputs]: Remove ghc-text and ghc-parsec. (ghc-esqueleto)[inputs]: Remove ghc-text. (shellcheck)[inputs]: Remove ghc-parsec. (ghc-errors)[inputs]: Remove ghc-text. (ghc-chunked-data)[inputs]: Same. (ghc-uuid-types)[inputs]: Same. (ghc-uuid)[inputs]: Same. (ghc-rebase)[inputs]: Remove ghc-stm and ghc-text. (ghc-foldl)[inputs]: Remove ghc-text. (ghc-mono-traversable)[inputs]: Same. (ghc-conduit-combinators)[inputs]: Same. (ghc-aws)[inputs]: Same. (ghc-stm-chans)[inputs]: Remove ghc-stm. (ghc-monad-logger)[inputs]: Remove ghc-text and ghc-stm. (ghc-shakespeare)[inputs]: Remove ghc-parsec and ghc-text. (ghc-resource-pool)[inputs]: Remove ghc-stm. (ghc-attoparsec-iso8601)[inputs]: Remove ghc-text. (ghc-http-api-data)[inputs]: Same. (ghc-persistent)[inputs]: Same. (ghc-aeson-compat)[inputs]: Same. (ghc-persistent-template)[inputs]: Same. (ghc-unliftio)[inputs]: Remove ghc-stm. (ghc-persistent-sqlite)[native-inputs]: Remove ghc-text. (ghc-bytes)[inputs]: Same. (ghc-missingh)[inputs]: Remove ghc-parsec. (ghc-rio)[inputs]: Remove ghc-text. (ghc-cairo)[inputs]: Same. (ghc-atomic-write)[inputs]: Remove ghc-text. [native-inputs]: Same. (ghc-stm-conduit)[inputs]: Remove ghc-stm. (ghc-conduit-algorithms)[inputs]: Same. (ghc-interpolate)[native-inputs]: Remove ghc-text. (ghc-hpack)[inputs]: Same. (ghc-inline-c)[inputs]: Remove ghc-parsec. (ghc-configurator)[inputs]: Remove ghc-text. (ghc-c2hs)[native-inputs]: Same. (ghc-libmpd)[inputs]: Same. (ghc-concurrent-output)[inputs]: Remove ghc-stm. * gnu/packages/idris.scm (idris)[inputs]: Remove ghc-text. * gnu/packages/wm.scm (xmobar)[inputs]: Remove ghc-parsec and ghc-stm. Signed-off-by: Ricardo Wurmus <rekado@elephly.net> Robert Vollmert 2019-06-07gnu: ghc-http-types: Update to 0.12.3....* gnu/packages/haskell-web.scm (ghc-http-types): Update to 0.12.3. [inputs]: Remove ghc-blaze-builder. Signed-off-by: Arun Isaac <arunisaac@systemreboot.net> Robert Vollmert 2019-06-06gnu: ghc-warp: Update to 3.2.27....This fixes a sporadic test failure: https://github.com/yesodweb/wai/issues/751 * gnu/packages/haskell-web.scm (ghc-warp): Update to 3.2.27. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Robert Vollmert 2019-05-22gnu: ghc-aeson-pretty: Fix typo "readability"....* gnu/packages/haskell-web (ghc-aeson-pretty)[description]: Fix typo. Vagrant Cascadian 2019-04-04gnu: ghc-tls: Move to haskell-crypto.scm....* gnu/packages/tls.scm (ghc-tls): Move to... * gnu/packages/haskell-crypto.scm (ghc-tls): ... here. * gnu/packages/haskell-web.scm: Remove now unneeded import. Ludovic Courtès 2019-04-04gnu: Move ghc-hxt & co. to haskell-web.scm....* gnu/packages/xml.scm (ghc-hxt-charproperties, ghc-hxt-unicode) (ghc-hxt-regex-xmlschema, ghc-hxt): Move to... * gnu/packages/haskell-web.scm: ... here. Ludovic Courtès