Commit | Line | Data |
---|---|---|
3e424f25 | 1 | ;;; GNU Guix --- Functional package management for GNU |
189be331 | 2 | ;;; Copyright © 2014, 2017, 2018 Ludovic Courtès <ludo@gnu.org> |
7e348e6c | 3 | ;;; Copyright © 2016 John Darrington <jmd@gnu.org> |
e5227712 | 4 | ;;; Copyright © 2017, 2018 Leo Famulari <leo@famulari.name> |
c72c83ab | 5 | ;;; Copyright © 2018, 2021 Tobias Geerinckx-Rice <me@tobias.gr> |
56174ade | 6 | ;;; Copyright © 2019 Marius Bakke <mbakke@fastmail.com> |
3dbfab47 | 7 | ;;; Copyright © 2020 Ricardo Wurmus <rekado@elephly.net> |
3e424f25 LC |
8 | ;;; |
9 | ;;; This file is part of GNU Guix. | |
10 | ;;; | |
11 | ;;; GNU Guix is free software; you can redistribute it and/or modify it | |
12 | ;;; under the terms of the GNU General Public License as published by | |
13 | ;;; the Free Software Foundation; either version 3 of the License, or (at | |
14 | ;;; your option) any later version. | |
15 | ;;; | |
16 | ;;; GNU Guix is distributed in the hope that it will be useful, but | |
17 | ;;; WITHOUT ANY WARRANTY; without even the implied warranty of | |
18 | ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
19 | ;;; GNU General Public License for more details. | |
20 | ;;; | |
21 | ;;; You should have received a copy of the GNU General Public License | |
22 | ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. | |
23 | ||
24 | (define-module (gnu packages onc-rpc) | |
25 | #:use-module (guix licenses) | |
26 | #:use-module (guix packages) | |
27 | #:use-module (guix download) | |
fd641a23 | 28 | #:use-module (guix git-download) |
c39a54f4 | 29 | #:use-module (gnu packages) |
0f7db1d3 LF |
30 | #:use-module (gnu packages autotools) |
31 | #:use-module (gnu packages gettext) | |
89e34644 | 32 | #:use-module (gnu packages kerberos) |
7e348e6c | 33 | #:use-module (gnu packages pkg-config) |
3dbfab47 RW |
34 | #:use-module (guix build-system gnu) |
35 | #:use-module (guix utils)) | |
3e424f25 LC |
36 | |
37 | (define-public libtirpc | |
38 | (package | |
39 | (name "libtirpc") | |
26e89a33 | 40 | (version "1.3.1") |
3e424f25 LC |
41 | (source (origin |
42 | (method url-fetch) | |
de67e922 | 43 | (uri (string-append "mirror://sourceforge/libtirpc/libtirpc/" |
3e424f25 LC |
44 | version "/libtirpc-" |
45 | version ".tar.bz2")) | |
46 | (sha256 | |
47 | (base32 | |
26e89a33 | 48 | "05zf16ilwwkzv4cccaac32nssrj3rg444n9pskiwbgk6y359an14")))) |
3e424f25 LC |
49 | (build-system gnu-build-system) |
50 | (arguments | |
6002a0b6 MB |
51 | `(#:configure-flags '("--disable-static") |
52 | #:phases | |
1da82dbb | 53 | (modify-phases %standard-phases |
26e89a33 MB |
54 | (add-after 'unpack 'adjust-netconfig-reference |
55 | (lambda* (#:key outputs #:allow-other-keys) | |
7b706a49 JD |
56 | (substitute* '("man/netconfig.5" |
57 | "man/getnetconfig.3t" | |
58 | "man/getnetpath.3t" | |
59 | "man/rpc.3t" | |
60 | "src/getnetconfig.c" | |
61 | "tirpc/netconfig.h") | |
26e89a33 MB |
62 | (("/etc/netconfig") (string-append (assoc-ref outputs "out") |
63 | "/etc/netconfig")))))))) | |
8394619b | 64 | (inputs (list mit-krb5)) |
3b3b60d0 | 65 | (home-page "https://sourceforge.net/projects/libtirpc/") |
3e424f25 LC |
66 | (synopsis "Transport-independent Sun/ONC RPC implementation") |
67 | (description | |
68 | "This package provides a library that implements the Sun/ONC RPC (remote | |
69 | procedure calls) protocol in a transport-independent manner. It supports both | |
70 | IPv4 and IPv6. ONC RPC is notably used by the network file system (NFS).") | |
71 | (license bsd-3))) | |
7e348e6c | 72 | |
3dbfab47 | 73 | (define-public libtirpc/hurd |
1a265842 | 74 | (package/inherit libtirpc |
3dbfab47 RW |
75 | (name "libtirpc-hurd") |
76 | (source (origin (inherit (package-source libtirpc)) | |
26e89a33 | 77 | (patches (search-patches "libtirpc-hurd.patch")))) |
3dbfab47 RW |
78 | (arguments |
79 | (substitute-keyword-arguments (package-arguments libtirpc) | |
80 | ((#:configure-flags flags ''()) | |
81 | ;; When cross-building the target system's krb5-config should be used. | |
82 | `(list (string-append "ac_cv_prog_KRB5_CONFIG=" | |
83 | (assoc-ref %build-inputs "mit-krb5") | |
84 | "/bin/krb5-config"))))))) | |
85 | ||
7e348e6c JD |
86 | (define-public rpcbind |
87 | (package | |
88 | (name "rpcbind") | |
c72c83ab | 89 | (version "1.2.6") |
7e348e6c JD |
90 | (source |
91 | (origin | |
92 | (method url-fetch) | |
93 | (uri (string-append "mirror://sourceforge/" name "/" name "/" | |
94 | version "/" | |
95 | name "-" version ".tar.bz2")) | |
c39a54f4 | 96 | (patches (search-patches "rpcbind-CVE-2017-8779.patch")) |
7e348e6c | 97 | (sha256 |
c72c83ab | 98 | (base32 "1pp8xvprsfz8nlmmvxf829gilx0ibb08bfs3lhisxrfai5j784sn")))) |
7e348e6c JD |
99 | (build-system gnu-build-system) |
100 | (arguments | |
101 | `(#:configure-flags | |
db8b5f52 | 102 | `("--with-systemdsystemunitdir=no" "--enable-warmstarts"))) |
7e348e6c | 103 | (inputs |
8394619b | 104 | (list libnsl libtirpc)) |
7e348e6c | 105 | (native-inputs |
8394619b | 106 | (list pkg-config)) |
7e348e6c JD |
107 | (home-page "http://rpcbind.sourceforge.net/") |
108 | (synopsis "Server to convert RPC program numbers into universal addresses") | |
109 | (description | |
110 | "@command{Rpcbind} is a server that converts RPC program numbers into | |
111 | universal addresses.") | |
112 | (license bsd-3))) | |
113 | ||
56174ade MB |
114 | (define-public rpcsvc-proto |
115 | (package | |
116 | (name "rpcsvc-proto") | |
117 | (version "1.4") | |
118 | (home-page "https://github.com/thkukuk/rpcsvc-proto") | |
119 | (source (origin | |
120 | (method url-fetch) | |
121 | (uri (string-append home-page "/releases/download/v" version | |
122 | "/rpcsvc-proto-" version ".tar.xz")) | |
123 | (sha256 | |
124 | (base32 | |
125 | "0i93wbpw5dk2gf5v4a5hq6frh814wzgjydh7saj28wlgbpqdaja1")))) | |
126 | (build-system gnu-build-system) | |
127 | (synopsis "RPCSVC protocol definitions") | |
128 | (description | |
129 | "This package provides @code{rpcsvc} @file{protocol.x} files and headers | |
130 | that are not included with the @code{libtirpc} package. Additionally it | |
131 | contains @command{rpcgen}, which is used to produce header files and sources | |
132 | from the protocol files.") | |
133 | (license bsd-3))) | |
0f7db1d3 LF |
134 | |
135 | (define-public libnsl | |
136 | (package | |
137 | (name "libnsl") | |
1e99f1bc | 138 | (version "1.3.0") |
0f7db1d3 | 139 | (source (origin |
fd641a23 MB |
140 | (method git-fetch) |
141 | (uri (git-reference | |
b0e7b699 | 142 | (url "https://github.com/thkukuk/libnsl") |
fd641a23 MB |
143 | (commit (string-append "v" version)))) |
144 | (file-name (git-file-name name version)) | |
0f7db1d3 LF |
145 | (sha256 |
146 | (base32 | |
1e99f1bc | 147 | "1dayj5i4bh65gn7zkciacnwv2a0ghm6nn58d78rsi4zby4lyj5w5")))) |
0f7db1d3 | 148 | (build-system gnu-build-system) |
4b70b776 | 149 | (arguments |
1e99f1bc | 150 | `(#:configure-flags '("--disable-static"))) |
0f7db1d3 LF |
151 | (native-inputs |
152 | `(("autoconf" ,autoconf) | |
153 | ("automake" ,automake) | |
154 | ("gettext" ,gettext-minimal) | |
155 | ("libtool" ,libtool) | |
156 | ("pkg-config" ,pkg-config))) | |
157 | (inputs | |
8394619b | 158 | (list libtirpc)) |
0f7db1d3 LF |
159 | (synopsis "Public client interface for NIS(YP) and NIS+") |
160 | (description "Libnsl is the public client interface for the Network | |
161 | Information Service / Yellow Pages (NIS/YP) and NIS+. It includes IPv6 support. | |
162 | This library was part of glibc < 2.26, but is now distributed separately.") | |
163 | (home-page "https://github.com/thkukuk/libnsl") | |
164 | ;; The package is distributed under the LGPL 2.1. Some files in | |
165 | ;; 'src/nisplus/' are LGPL 2.1+, and some files in 'src/rpcsvc/' are BSD-3. | |
166 | (license lgpl2.1))) |