Commit | Line | Data |
---|---|---|
4e2bd414 CW |
1 | ;;; GNU Guix --- Functional package management for GNU |
2 | ;;; Copyright © 2015 Claes Wallin <claes.wallin@greatsinodevelopment.com> | |
918cee46 | 3 | ;;; Copyright © 2016 Eric Le Bihan <eric.le.bihan.dev@free.fr> |
4e2bd414 CW |
4 | ;;; |
5 | ;;; This file is part of GNU Guix. | |
6 | ;;; | |
7 | ;;; GNU Guix is free software; you can redistribute it and/or modify it | |
8 | ;;; under the terms of the GNU General Public License as published by | |
9 | ;;; the Free Software Foundation; either version 3 of the License, or (at | |
10 | ;;; your option) any later version. | |
11 | ;;; | |
12 | ;;; GNU Guix is distributed in the hope that it will be useful, but | |
13 | ;;; WITHOUT ANY WARRANTY; without even the implied warranty of | |
14 | ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
15 | ;;; GNU General Public License for more details. | |
16 | ;;; | |
17 | ;;; You should have received a copy of the GNU General Public License | |
18 | ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. | |
19 | ||
20 | (define-module (gnu packages skarnet) | |
21 | #:use-module (gnu packages) | |
22 | #:use-module (guix licenses) | |
23 | #:use-module (guix packages) | |
24 | #:use-module (guix download) | |
25 | #:use-module (guix build-system gnu)) | |
26 | ||
27 | (define-public skalibs | |
28 | (package | |
29 | (name "skalibs") | |
892aa894 | 30 | (version "2.3.10.0") |
4e2bd414 CW |
31 | (source |
32 | (origin | |
33 | (method url-fetch) | |
34 | (uri (string-append "http://skarnet.org/software/skalibs/skalibs-" | |
35 | version ".tar.gz")) | |
36 | (sha256 | |
37 | (base32 | |
892aa894 | 38 | "0i7af224kl1crxgml09wx0x6q8ab79vnyrllfwv2lnq585wi9mg4")))) |
4e2bd414 CW |
39 | (build-system gnu-build-system) |
40 | (arguments | |
41 | '(#:configure-flags '("--enable-force-devr") ; do not analyze /dev/random | |
42 | #:tests? #f)) ; no tests exist | |
43 | (home-page "http://skarnet.org/software/skalibs/") | |
44 | (synopsis "Platform abstraction libraries for skarnet.org software") | |
45 | (description | |
46 | "This package provides lightweight C libraries isolating the developer | |
47 | from portability issues, providing a unified systems API on all platforms, | |
48 | including primitive data types, cryptography, and POSIX concepts like sockets | |
49 | and file system operations. It is used by all skarnet.org software.") | |
50 | (license isc))) | |
e662d644 CW |
51 | |
52 | (define-public execline | |
53 | (package | |
54 | (name "execline") | |
2f016ac1 | 55 | (version "2.1.5.0") |
e662d644 CW |
56 | (source |
57 | (origin | |
58 | (method url-fetch) | |
59 | (uri (string-append "http://skarnet.org/software/execline/execline-" | |
60 | version ".tar.gz")) | |
61 | (sha256 | |
62 | (base32 | |
2f016ac1 | 63 | "0hhirdmyh3sj9qagkis7addmmdvyic717wkb6ym3n63kvfk0adla")))) |
e662d644 CW |
64 | (build-system gnu-build-system) |
65 | (inputs `(("skalibs" ,skalibs))) | |
66 | (arguments | |
67 | '(#:configure-flags (list | |
68 | (string-append "--with-lib=" | |
69 | (assoc-ref %build-inputs "skalibs") | |
70 | "/lib/skalibs") | |
71 | (string-append "--with-sysdeps=" | |
72 | (assoc-ref %build-inputs "skalibs") | |
73 | "/lib/skalibs/sysdeps")) | |
74 | #:phases (modify-phases %standard-phases | |
75 | (add-after | |
76 | 'install 'post-install | |
77 | (lambda* (#:key inputs outputs #:allow-other-keys) | |
78 | (let* ((out (assoc-ref outputs "out")) | |
79 | (bin (string-append out "/bin"))) | |
80 | (wrap-program (string-append bin "/execlineb") | |
81 | `("PATH" ":" prefix (,bin))))))) | |
82 | #:tests? #f)) ; No tests exist. | |
83 | (home-page "http://skarnet.org/software/execline/") | |
84 | (license isc) | |
85 | (synopsis "Non-interactive shell-like language with minimal overhead") | |
86 | (description | |
87 | "Execline is a (non-interactive) scripting language, separated into a | |
88 | parser (execlineb) and a set of commands meant to execute one another in a | |
89 | chain-execution fashion, storing the whole script in the argument array. | |
90 | It features conditional loops, getopt-style option handling, file name | |
91 | globbing, redirection and other shell concepts, expressed as discrete commands | |
92 | rather than in special syntax, minimizing runtime footprint and | |
93 | complexity."))) | |
918cee46 ELB |
94 | |
95 | (define-public s6 | |
96 | (package | |
97 | (name "s6") | |
98 | (version "2.3.0.0") | |
99 | (source | |
100 | (origin | |
101 | (method url-fetch) | |
102 | (uri (string-append "http://skarnet.org/software/s6/s6-" | |
103 | version ".tar.gz")) | |
104 | (sha256 | |
105 | (base32 | |
106 | "1rp8i228zxzbia1799pdav1kkzdk96fax9bcfyf2gilkdm3s1ja9")))) | |
107 | (build-system gnu-build-system) | |
108 | (inputs `(("skalibs" ,skalibs) | |
109 | ("execline" ,execline))) | |
110 | (arguments | |
111 | '(#:configure-flags (list | |
112 | (string-append "--with-lib=" | |
113 | (assoc-ref %build-inputs "skalibs") | |
114 | "/lib/skalibs") | |
115 | (string-append "--with-lib=" | |
116 | (assoc-ref %build-inputs "execline") | |
117 | "/lib/execline") | |
118 | (string-append "--with-sysdeps=" | |
119 | (assoc-ref %build-inputs "skalibs") | |
120 | "/lib/skalibs/sysdeps")) | |
121 | #:tests? #f)) | |
122 | (home-page "http://skarnet.org/software/s6") | |
123 | (license isc) | |
124 | (synopsis "Small suite of programs for process supervision") | |
125 | (description | |
126 | "s6 is a small suite of programs for UNIX, designed to allow process | |
127 | supervision (a.k.a. service supervision), in the line of daemontools and | |
128 | runit, as well as various operations on processes and daemons. It is meant to | |
129 | be a toolbox for low-level process and service administration, providing | |
130 | different sets of independent tools that can be used within or without the | |
131 | framework, and that can be assembled together to achieve powerful | |
132 | functionality with a very small amount of code."))) | |
133 | ||
798b776d ELB |
134 | (define-public s6-dns |
135 | (package | |
136 | (name "s6-dns") | |
137 | (version "2.0.1.0") | |
138 | (source | |
139 | (origin | |
140 | (method url-fetch) | |
141 | (uri (string-append "http://skarnet.org/software/s6-dns/s6-dns-" | |
142 | version ".tar.gz")) | |
143 | (sha256 | |
144 | (base32 | |
145 | "1ji47iy8czx4jmi763dxd6lgjbnp4vqqgcijh46ym65l0a97z04w")))) | |
146 | (build-system gnu-build-system) | |
147 | (inputs `(("skalibs" ,skalibs))) | |
148 | (arguments | |
149 | '(#:configure-flags (list | |
150 | (string-append "--with-lib=" | |
151 | (assoc-ref %build-inputs "skalibs") | |
152 | "/lib/skalibs") | |
153 | (string-append "--with-sysdeps=" | |
154 | (assoc-ref %build-inputs "skalibs") | |
155 | "/lib/skalibs/sysdeps")) | |
156 | #:tests? #f)) | |
157 | (home-page "http://skarnet.org/software/s6-dns") | |
158 | (license isc) | |
159 | (synopsis "Suite of DNS client programs") | |
160 | (description | |
161 | "s6-dns is a suite of DNS client programs and libraries for Unix systems, | |
162 | as an alternative to the BIND, djbdns or other DNS clients."))) | |
163 | ||
7c6bdeec ELB |
164 | (define-public s6-networking |
165 | (package | |
166 | (name "s6-networking") | |
167 | (version "2.1.1.0") | |
168 | (source | |
169 | (origin | |
170 | (method url-fetch) | |
171 | (uri (string-append "http://skarnet.org/software/s6-networking/s6-networking-" | |
172 | version ".tar.gz")) | |
173 | (sha256 | |
174 | (base32 | |
175 | "0r8gfv0l2k449nacjy919gqlgn25q7fjxaqra5r37k7kiikkgqfw")))) | |
176 | (build-system gnu-build-system) | |
177 | (inputs `(("skalibs" ,skalibs) | |
178 | ("execline" ,execline) | |
179 | ("s6" ,s6) | |
180 | ("s6-dns" ,s6-dns))) | |
181 | (arguments | |
182 | '(#:configure-flags (list | |
183 | (string-append "--with-lib=" | |
184 | (assoc-ref %build-inputs "skalibs") | |
185 | "/lib/skalibs") | |
186 | (string-append "--with-lib=" | |
187 | (assoc-ref %build-inputs "execline") | |
188 | "/lib/execline") | |
189 | (string-append "--with-lib=" | |
190 | (assoc-ref %build-inputs "s6") | |
191 | "/lib/s6") | |
192 | (string-append "--with-lib=" | |
193 | (assoc-ref %build-inputs "s6-dns") | |
194 | "/lib/s6-dns") | |
195 | (string-append "--with-sysdeps=" | |
196 | (assoc-ref %build-inputs "skalibs") | |
197 | "/lib/skalibs/sysdeps")) | |
198 | #:tests? #f)) | |
199 | (home-page "http://skarnet.org/software/s6-networking") | |
200 | (license isc) | |
201 | (synopsis "Suite of network utilities for Unix systems") | |
202 | (description | |
203 | "s6-networking is a suite of small networking utilities for Unix systems. | |
204 | It includes command-line client and server management, TCP access control, | |
205 | privilege escalation across UNIX domain sockets, IDENT protocol management and | |
206 | clock synchronization."))) | |
35977a88 ELB |
207 | |
208 | (define-public s6-rc | |
209 | (package | |
210 | (name "s6-rc") | |
211 | (version "0.0.3.0") | |
212 | (source | |
213 | (origin | |
214 | (method url-fetch) | |
215 | (uri (string-append "http://skarnet.org/software/s6-rc/s6-rc-" | |
216 | version ".tar.gz")) | |
217 | (sha256 | |
218 | (base32 | |
219 | "0bl94lbaphbpaaj4wbb86xqgp5bcgrf3m7p80mimw1qsjrvlxfay")))) | |
220 | (build-system gnu-build-system) | |
221 | (inputs `(("skalibs" ,skalibs) | |
222 | ("execline" ,execline) | |
223 | ("s6" ,s6))) | |
224 | (arguments | |
225 | '(#:configure-flags (list | |
226 | (string-append "--with-lib=" | |
227 | (assoc-ref %build-inputs "skalibs") | |
228 | "/lib/skalibs") | |
229 | (string-append "--with-lib=" | |
230 | (assoc-ref %build-inputs "execline") | |
231 | "/lib/execline") | |
232 | (string-append "--with-lib=" | |
233 | (assoc-ref %build-inputs "s6") | |
234 | "/lib/s6") | |
235 | (string-append "--with-sysdeps=" | |
236 | (assoc-ref %build-inputs "skalibs") | |
237 | "/lib/skalibs/sysdeps")) | |
238 | #:tests? #f)) | |
239 | (home-page "http://skarnet.org/software/s6-rc") | |
240 | (license isc) | |
241 | (synopsis "Service manager for s6-based systems") | |
242 | (description | |
243 | "s6-rc is a service manager for s6-based systems, i.e. a suite of | |
244 | programs that can start and stop services, both long-running daemons and | |
245 | one-time initialization scripts, in the proper order according to a dependency | |
246 | tree. It ensures that long-running daemons are supervised by the s6 | |
247 | infrastructure, and that one-time scripts are also run in a controlled | |
248 | environment."))) |