mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-24 05:18:07 -05:00
distro: Add libsigsegv and GNU Awk.
* guix/packages.scm (<package>)[arguments]: Default to '(). * distro/base.scm (libsigsegv, gawk): New packages. (hello): Use GAWK instead of (nixpkgs-derivation "gawk").
This commit is contained in:
parent
d26ad5e45b
commit
64fddd74f0
2 changed files with 57 additions and 2 deletions
|
@ -28,6 +28,60 @@ (define-module (distro base)
|
||||||
;;;
|
;;;
|
||||||
;;; Code:
|
;;; Code:
|
||||||
|
|
||||||
|
(define-public libsigsegv
|
||||||
|
(package
|
||||||
|
(name "libsigsegv")
|
||||||
|
(version "2.10")
|
||||||
|
(source (source
|
||||||
|
(method http-fetch)
|
||||||
|
(uri "http://ftp.gnu.org/gnu/libsigsegv/libsigsegv-2.10.tar.gz")
|
||||||
|
(sha256
|
||||||
|
(nix-base32-string->bytevector ; TODO: make conversion implicit
|
||||||
|
"16hrs8k3nmc7a8jam5j1fpspd6sdpkamskvsdpcw6m29vnis8q44"))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(home-page "http://www.gnu.org/software/libsigsegv/")
|
||||||
|
(description "GNU libsigsegv, a library to handle page faults in user mode")
|
||||||
|
(long-description
|
||||||
|
"GNU libsigsegv is a library for handling page faults in user mode. A page
|
||||||
|
fault occurs when a program tries to access to a region of memory that is
|
||||||
|
currently not available. Catching and handling a page fault is a useful
|
||||||
|
technique for implementing pageable virtual memory, memory-mapped access to
|
||||||
|
persistent databases, generational garbage collectors, stack overflow
|
||||||
|
handlers, distributed shared memory, and more.")
|
||||||
|
(license "GPLv2+")))
|
||||||
|
|
||||||
|
(define-public gawk
|
||||||
|
(package
|
||||||
|
(name "gawk")
|
||||||
|
(version "4.0.0")
|
||||||
|
(source (source
|
||||||
|
(method http-fetch)
|
||||||
|
(uri "http://ftp.gnu.org/gnu/gawk/gawk-4.0.0.tar.bz2")
|
||||||
|
(sha256
|
||||||
|
(nix-base32-string->bytevector
|
||||||
|
"0sss7rhpvizi2a88h6giv0i7w5h07s2fxkw3s6n1hqvcnhrfgbb0"))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(arguments '(#:configure-flags
|
||||||
|
`(,(string-append "--with-libsigsegv-prefix="
|
||||||
|
(assoc-ref %build-inputs "libsigsegv"))))
|
||||||
|
;; TODO: disable tests on Cygwin
|
||||||
|
)
|
||||||
|
(inputs `(("libsigsegv" ,libsigsegv)))
|
||||||
|
(home-page "http://www.gnu.org/software/gawk/")
|
||||||
|
(description "GNU implementation of the Awk programming language")
|
||||||
|
(long-description
|
||||||
|
"Many computer users need to manipulate text files: extract and then
|
||||||
|
operate on data from parts of certain lines while discarding the rest, make
|
||||||
|
changes in various text files wherever certain patterns appear, and so on.
|
||||||
|
To write a program to do these things in a language such as C or Pascal is a
|
||||||
|
time-consuming inconvenience that may take many lines of code. The job is
|
||||||
|
easy with awk, especially the GNU implementation: Gawk.
|
||||||
|
|
||||||
|
The awk utility interprets a special-purpose programming language that makes
|
||||||
|
it possible to handle many data-reformatting jobs with just a few lines of
|
||||||
|
code.")
|
||||||
|
(license "GPLv3+")))
|
||||||
|
|
||||||
(define-public hello
|
(define-public hello
|
||||||
(package
|
(package
|
||||||
(name "hello")
|
(name "hello")
|
||||||
|
@ -43,7 +97,7 @@ (define-public hello
|
||||||
`("--disable-dependency-tracking"
|
`("--disable-dependency-tracking"
|
||||||
,(string-append "--with-gawk=" ; for illustration purposes
|
,(string-append "--with-gawk=" ; for illustration purposes
|
||||||
(assoc-ref %build-inputs "gawk")))))
|
(assoc-ref %build-inputs "gawk")))))
|
||||||
(inputs `(("gawk" ,(nixpkgs-derivation "gawk"))))
|
(inputs `(("gawk" ,gawk)))
|
||||||
(description "GNU Hello")
|
(description "GNU Hello")
|
||||||
(long-description "Yeah...")
|
(long-description "Yeah...")
|
||||||
(home-page "http://www.gnu.org/software/hello/")
|
(home-page "http://www.gnu.org/software/hello/")
|
||||||
|
|
|
@ -107,7 +107,8 @@ (define-record-type* <package>
|
||||||
(version package-version) ; string
|
(version package-version) ; string
|
||||||
(source package-source) ; <package-source> instance
|
(source package-source) ; <package-source> instance
|
||||||
(build-system package-build-system) ; build system
|
(build-system package-build-system) ; build system
|
||||||
(arguments package-arguments) ; arguments for the build method
|
(arguments package-arguments ; arguments for the build method
|
||||||
|
(default '()))
|
||||||
(inputs package-inputs ; input packages or derivations
|
(inputs package-inputs ; input packages or derivations
|
||||||
(default '()))
|
(default '()))
|
||||||
(native-inputs package-native-inputs ; native input packages/derivations
|
(native-inputs package-native-inputs ; native input packages/derivations
|
||||||
|
|
Loading…
Reference in a new issue