* [gentoo-commits] repo/gentoo:master commit in: app-containers/nvidia-container-toolkit/, ...
@ 2024-12-09 22:27 Sam James
0 siblings, 0 replies; only message in thread
From: Sam James @ 2024-12-09 22:27 UTC (permalink / raw
To: gentoo-commits
commit: d14ef4c688248a08314575c5d9d9b733261c2884
Author: Z. Liu <zhixu.liu <AT> gmail <DOT> com>
AuthorDate: Thu Dec 5 09:10:00 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Dec 9 22:27:13 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d14ef4c6
app-containers/nvidia-container-toolkit: new package (from ::guru)
based on the ::guru ebuild by Huang Rui <vowstar <AT> gmail.com> and many
others, thanks. Changes:
- update version to 1.17.3
- remove extldflags patch, applied by upstream
Signed-off-by: Z. Liu <zhixu.liu <AT> gmail.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>
app-containers/nvidia-container-toolkit/Manifest | 1 +
.../nvidia-container-toolkit/files/config.toml | 39 +++++++++++++++
.../nvidia-container-toolkit/metadata.xml | 35 +++++++++++++
.../nvidia-container-toolkit-1.17.3.ebuild | 57 ++++++++++++++++++++++
.../nvidia-container-toolkit-9999.ebuild | 57 ++++++++++++++++++++++
5 files changed, 189 insertions(+)
diff --git a/app-containers/nvidia-container-toolkit/Manifest b/app-containers/nvidia-container-toolkit/Manifest
new file mode 100644
index 000000000000..6fa03184a094
--- /dev/null
+++ b/app-containers/nvidia-container-toolkit/Manifest
@@ -0,0 +1 @@
+DIST nvidia-container-toolkit-1.17.3.tar.gz 2718001 BLAKE2B 455a4159c45846951e8ebaee94393e20764e9e6cac10247dcbd4d9a16431a529ebe9bd6146fb590c1ea92f2e5f4c5561adfa6b8b495fe79f761e5664661acad4 SHA512 8c7a4290a1decc448c72e9a09213e0dc4e418ec633cefb16bb6b01fef7c502d23ed72cc1f3cc6583cad07feae5ca3cf44dad73e1274e042e3b26bdc7a4152b95
diff --git a/app-containers/nvidia-container-toolkit/files/config.toml b/app-containers/nvidia-container-toolkit/files/config.toml
new file mode 100644
index 000000000000..cf5c0a8fe979
--- /dev/null
+++ b/app-containers/nvidia-container-toolkit/files/config.toml
@@ -0,0 +1,39 @@
+#accept-nvidia-visible-devices-as-volume-mounts = false
+#accept-nvidia-visible-devices-envvar-when-unprivileged = true
+disable-require = false
+supported-driver-capabilities = "compat32,compute,display,graphics,ngx,utility,video"
+#swarm-resource = "DOCKER_RESOURCE_GPU"
+
+[nvidia-container-cli]
+#debug = "/var/log/nvidia-container-toolkit.log"
+environment = []
+#ldcache = "/etc/ld.so.cache"
+ldconfig = "@/sbin/ldconfig"
+load-kmods = true
+#no-cgroups = false
+#path = "/usr/bin/nvidia-container-cli"
+#root = "/run/nvidia/driver"
+user = "root:video"
+
+[nvidia-container-runtime]
+#debug = "/var/log/nvidia-container-runtime.log"
+log-level = "info"
+mode = "auto"
+runtimes = ["docker-runc", "runc", "crun"]
+
+[nvidia-container-runtime.modes]
+
+[nvidia-container-runtime.modes.cdi]
+annotation-prefixes = ["cdi.k8s.io/"]
+default-kind = "nvidia.com/gpu"
+spec-dirs = ["/etc/cdi", "/var/run/cdi"]
+
+[nvidia-container-runtime.modes.csv]
+mount-spec-path = "/etc/nvidia-container-runtime/host-files-for-container.d"
+
+[nvidia-container-runtime-hook]
+path = "nvidia-container-runtime-hook"
+skip-mode-detection = false
+
+[nvidia-ctk]
+path = "nvidia-ctk"
diff --git a/app-containers/nvidia-container-toolkit/metadata.xml b/app-containers/nvidia-container-toolkit/metadata.xml
new file mode 100644
index 000000000000..37403bfe0760
--- /dev/null
+++ b/app-containers/nvidia-container-toolkit/metadata.xml
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>vowstar@gmail.com</email>
+ <name>Huang Rui</name>
+ </maintainer>
+ <maintainer type="person" proxied="yes">
+ <email>zhixu.liu@gmail.com</email>
+ <name>Z. Liu</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">NVIDIA/container-toolkit</remote-id>
+ </upstream>
+ <longdescription lang="en">
+ NVIDIA container runtime toolkit, build and run containers leveraging
+ NVIDIA GPUs. tl;dr: nvidia-docker is deprecated because docker now has
+ native gpu support, which this package is required to use. The NVIDIA
+ Container Toolkit (formerly known as NVIDIA Docker) allows containers to
+ access full GPU acceleration. OpenGL, OpenCL and CUDA are supported for
+ production use. Vulkan support is currently in beta. This only works for
+ Linux containers running on Linux host systems with NVIDIA GPUs.
+ </longdescription>
+ <longdescription lang="zh">
+ NVIDIA容器运行时工具包,构建和运行利用NVIDIA GPU的容器。简而言之:
+ nvidia-docker已经过时,因为docker现在具有原生的GPU支持,而这个包是使用它
+ 所必需的。NVIDIA容器工具包(以前称为NVIDIA Docker)允许容器访问完整的
+ GPU加速。OpenGL、OpenCL和CUDA支持生产使用。Vulkan支持目前处于测试阶段。
+ 这只适用于在配备NVIDIA GPU的Linux主机系统上运行的Linux容器。
+ </longdescription>
+</pkgmetadata>
diff --git a/app-containers/nvidia-container-toolkit/nvidia-container-toolkit-1.17.3.ebuild b/app-containers/nvidia-container-toolkit/nvidia-container-toolkit-1.17.3.ebuild
new file mode 100644
index 000000000000..dadbd1fc8907
--- /dev/null
+++ b/app-containers/nvidia-container-toolkit/nvidia-container-toolkit-1.17.3.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+EGO_PN="github.com/NVIDIA/${PN}"
+
+inherit go-module
+
+DESCRIPTION="NVIDIA container runtime toolkit"
+HOMEPAGE="https://github.com/NVIDIA/container-toolkit"
+
+if [[ "${PV}" == "9999" ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/NVIDIA/${PN}.git"
+else
+ SRC_URI="
+ https://github.com/NVIDIA/${PN}/archive/v${PV/_rc/-rc.}.tar.gz -> ${P}.tar.gz
+ "
+ S="${WORKDIR}/${PN}-${PV/_rc/-rc.}"
+ KEYWORDS="~amd64"
+fi
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+
+# Some tests may require specific environmental setups or additional hardware.
+RESTRICT="test" # Bug 831702
+
+RDEPEND="
+ >=sys-libs/libnvidia-container-$(ver_cut 1-2)
+"
+
+src_compile() {
+ emake binaries
+}
+
+src_install() {
+ dobin nvidia-cdi-hook \
+ nvidia-container-runtime \
+ nvidia-container-runtime.cdi \
+ nvidia-container-runtime.legacy \
+ nvidia-container-runtime-hook \
+ nvidia-ctk
+ insinto "/etc/nvidia-container-runtime"
+ doins "${FILESDIR}/config.toml"
+}
+
+pkg_postinst() {
+ elog "Your docker or containerd (if applicable) service may need restart"
+ elog "after install this package:"
+ elog "OpenRC: rc-service containerd restart; rc-service docker restart"
+ elog "systemd: systemctl restart containerd; systemctl restart docker"
+ elog "You may need to edit your /etc/nvidia-container-runtime/config.toml"
+ elog "file before running ${PN} for the first time."
+ elog "For details, please see the NVIDIA docker manual page."
+}
diff --git a/app-containers/nvidia-container-toolkit/nvidia-container-toolkit-9999.ebuild b/app-containers/nvidia-container-toolkit/nvidia-container-toolkit-9999.ebuild
new file mode 100644
index 000000000000..b11ae45b1ca4
--- /dev/null
+++ b/app-containers/nvidia-container-toolkit/nvidia-container-toolkit-9999.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+EGO_PN="github.com/NVIDIA/${PN}"
+
+inherit go-module
+
+DESCRIPTION="NVIDIA container runtime toolkit"
+HOMEPAGE="https://github.com/NVIDIA/container-toolkit"
+
+if [[ "${PV}" == "9999" ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/NVIDIA/${PN}.git"
+else
+ SRC_URI="
+ https://github.com/NVIDIA/${PN}/archive/v${PV/_rc/-rc.}.tar.gz -> ${P}.tar.gz
+ "
+ S="${WORKDIR}/${PN}-${PV/_rc/-rc.}"
+ KEYWORDS="~amd64"
+fi
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+
+# Some tests may require specific environmental setups or additional hardware.
+RESTRICT="test" # Bug 831702
+
+RDEPEND="
+ sys-libs/libnvidia-container
+"
+
+src_compile() {
+ emake binaries
+}
+
+src_install() {
+ dobin nvidia-cdi-hook \
+ nvidia-container-runtime \
+ nvidia-container-runtime.cdi \
+ nvidia-container-runtime.legacy \
+ nvidia-container-runtime-hook \
+ nvidia-ctk
+ insinto "/etc/nvidia-container-runtime"
+ doins "${FILESDIR}/config.toml"
+}
+
+pkg_postinst() {
+ elog "Your docker or containerd (if applicable) service may need restart"
+ elog "after install this package:"
+ elog "OpenRC: rc-service containerd restart; rc-service docker restart"
+ elog "systemd: systemctl restart containerd; systemctl restart docker"
+ elog "You may need to edit your /etc/nvidia-container-runtime/config.toml"
+ elog "file before running ${PN} for the first time."
+ elog "For details, please see the NVIDIA docker manual page."
+}
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2024-12-09 22:27 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-12-09 22:27 [gentoo-commits] repo/gentoo:master commit in: app-containers/nvidia-container-toolkit/, Sam James
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox