summary refs log tree commit diff
diff options
context:
space:
mode:
authorTobias Geerinckx-Rice <me@tobias.gr>2019-02-17 23:26:07 +0100
committerTobias Geerinckx-Rice <me@tobias.gr>2019-02-18 00:47:02 +0100
commit231908d9adc1e1edc22940faf10a0aaf9610db14 (patch)
tree85c0856b9a169141886e775d0608b64ff4dd9392
parent2f49edaa79e8ed617d7f4c818363675a2e590f33 (diff)
downloadguix-231908d9adc1e1edc22940faf10a0aaf9610db14.tar.gz
gnu: beep: Update to 1.4.3.
* gnu/packages/terminals.scm (beep): Update to 1.4.3.
[source, home-page]: Switch to maintained fork.
[arguments]: Use #:make-flags instead of SUBSTITUTE*.
-rw-r--r--gnu/packages/terminals.scm41
1 files changed, 22 insertions, 19 deletions
diff --git a/gnu/packages/terminals.scm b/gnu/packages/terminals.scm
index 4154c2d9af..0a3d616ac3 100644
--- a/gnu/packages/terminals.scm
+++ b/gnu/packages/terminals.scm
@@ -47,6 +47,7 @@
   #:use-module (gnu packages docbook)
   #:use-module (gnu packages fontutils)
   #:use-module (gnu packages freedesktop)
+  #:use-module (gnu packages gcc)
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages gl)
   #:use-module (gnu packages glib)
@@ -372,36 +373,38 @@ types of devices that provide serial consoles.")
 (define-public beep
   (package
     (name "beep")
-    (version "1.3")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append "http://www.johnath.com/beep/"
-                                  "beep-" version ".tar.gz"))
-              (sha256
-               (base32
-                "0bgch6jq5cahakk3kbr9549iysf2dik09afixxy5brbxk1xfzb2r"))))
+    (version "1.4.3")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             ;; The original beep 1.3 at <http://www.johnath.com/beep> has been
+             ;; unmaintained for some time, and vulnerable to at least two CVEs:
+             ;; https://github.com/johnath/beep/issues/11#issuecomment-454056858
+             ;; Use this maintained fork instead.
+             (url "https://github.com/spkr-beep/beep.git")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1gramwa2zm59kqjhv96fi8vg7l6lyffv02h0310vb90naschi99g"))))
     (build-system gnu-build-system)
     (arguments
      `(#:tests? #f                      ; no tests
+       #:make-flags
+       (list (string-append "prefix=" (assoc-ref %outputs "out"))
+             (string-append "pkgdocdir=$(docdir)/" ,name "-" ,version))
        #:phases
        (modify-phases %standard-phases
-         (delete 'configure)
-         (add-after 'unpack 'patch-makefile
-           (lambda* (#:key outputs #:allow-other-keys)
-             (substitute* "Makefile" (("/usr") (assoc-ref outputs "out")))
-             #t))
-         (add-before 'install 'create-output-directories
-           (lambda* (#:key outputs #:allow-other-keys)
-             (let ((out (assoc-ref %outputs "out")))
-               (mkdir-p (string-append out "/bin"))
-               (mkdir-p (string-append out "/man/man1"))))))))
+         (delete 'configure))))         ; no configure script
+    (native-inputs
+     `(("gcc" ,gcc-8)))                 ; for ‘-fstack-clash-protection’
     (synopsis "Linux command-line utility to control the PC speaker")
     (description "beep allows the user to control the PC speaker with precision,
 allowing different sounds to indicate different events.  While it can be run
 quite happily on the command line, its intended place of residence is within
 scripts, notifying the user when something interesting occurs.  Of course, it
 has no notion of what's interesing, but it's very good at that notifying part.")
-    (home-page "http://www.johnath.com/beep")
+    (home-page "https://github.com/spkr-beep/beep")
     (license license:gpl2+)))
 
 (define-public unibilium