gnu: Add tini.

* gnu/packages/docker.scm (tini): New variable.
This commit is contained in:
Maxim Cournoyer 2019-08-29 10:01:11 +09:00
parent 9bf589867b
commit 92086eeda3
No known key found for this signature in database
GPG key ID: 1260E46482E63562

View file

@ -25,6 +25,7 @@ (define-module (gnu packages docker)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system go)
#:use-module (guix build-system python)
@ -655,3 +656,36 @@ (define-public cqfd
way to run commands in the current directory, but within a Docker container
defined in a per-project configuration file.")
(license license:gpl3+)))
(define-public tini
(package
(name "tini")
(version "0.18.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/krallin/tini.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1h20i3wwlbd8x4jr2gz68hgklh0lb0jj7y5xk1wvr8y58fip1rdn"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ;tests require a Docker daemon
#:phases (modify-phases %standard-phases
(add-after 'unpack 'disable-static-build
;; Disable the static build as it fails to install, with
;; the error: "No valid ELF RPATH or RUNPATH entry exists
;; in the file".
(lambda _
(substitute* "CMakeLists.txt"
((".*tini-static.*") ""))
#t)))))
(home-page "https://github.com/krallin/tini")
(synopsis "Tiny but valid init for containers")
(description "Tini is an init program specifically designed for use with
containers. It manages a single child process and ensures that any zombie
processes produced from it are reaped and that signals are properly forwarded.
Tini is integrated with Docker.")
(license license:expat)))