Update passthrough.func
Some checks failed
Bump build.func Revision / bump-revision (push) Has been cancelled
Some checks failed
Bump build.func Revision / bump-revision (push) Has been cancelled
This commit is contained in:
parent
333ac1edcd
commit
821c4f36f6
@ -276,116 +276,3 @@ nvidia_handle_passthrough() {
|
|||||||
'
|
'
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
# ------------------------------------------------------------------------------
|
|
||||||
# Hardware acceleration setup inside container (Intel/AMD via VAAPI)
|
|
||||||
# Debian 12 (bookworm), Debian 13 (trixie), Ubuntu 24.04 (noble)
|
|
||||||
# Usage: hwaccel_setup_in_ct <CTTYPE 0|1> [--nonfree-intel]
|
|
||||||
# ------------------------------------------------------------------------------
|
|
||||||
hwaccel_setup_in_ct() {
|
|
||||||
local CTTYPE="$1" NONFREE=0
|
|
||||||
[[ "$2" == "--nonfree-intel" ]] && NONFREE=1
|
|
||||||
|
|
||||||
local ID VERSION_CODENAME
|
|
||||||
if [[ -r /etc/os-release ]]; then . /etc/os-release; fi
|
|
||||||
ID="${ID:-debian}"
|
|
||||||
VERSION_CODENAME="${VERSION_CODENAME:-bookworm}"
|
|
||||||
|
|
||||||
msg_info "Setting up VAAPI userland for ${ID^} ($VERSION_CODENAME)"
|
|
||||||
|
|
||||||
case "$ID" in
|
|
||||||
debian | ubuntu)
|
|
||||||
if ((NONFREE)) && [[ "$VERSION_CODENAME" =~ (trixie|noble) ]]; then
|
|
||||||
# Debian 13 / Ubuntu 24.04 — enable non-free Intel media (Debian deb822)
|
|
||||||
if [[ "$VERSION_CODENAME" == "trixie" ]]; then
|
|
||||||
cat >/etc/apt/sources.list.d/non-free.sources <<'SRC'
|
|
||||||
Types: deb deb-src
|
|
||||||
URIs: http://deb.debian.org/debian
|
|
||||||
Suites: trixie
|
|
||||||
Components: non-free non-free-firmware
|
|
||||||
|
|
||||||
Types: deb deb-src
|
|
||||||
URIs: http://deb.debian.org/debian-security
|
|
||||||
Suites: trixie-security
|
|
||||||
Components: non-free non-free-firmware
|
|
||||||
|
|
||||||
Types: deb deb-src
|
|
||||||
URIs: http://deb.debian.org/debian
|
|
||||||
Suites: trixie-updates
|
|
||||||
Components: non-free non-free-firmware
|
|
||||||
SRC
|
|
||||||
fi
|
|
||||||
|
|
||||||
$STD apt-get update
|
|
||||||
$STD apt-get install -y \
|
|
||||||
intel-media-va-driver-non-free \
|
|
||||||
ocl-icd-libopencl1 \
|
|
||||||
mesa-opencl-icd \
|
|
||||||
mesa-va-drivers \
|
|
||||||
libvpl2 \
|
|
||||||
vainfo \
|
|
||||||
intel-gpu-tools
|
|
||||||
else
|
|
||||||
$STD apt-get update
|
|
||||||
$STD apt-get install -y \
|
|
||||||
va-driver-all \
|
|
||||||
ocl-icd-libopencl1 \
|
|
||||||
mesa-opencl-icd \
|
|
||||||
mesa-va-drivers \
|
|
||||||
vainfo \
|
|
||||||
intel-gpu-tools
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
msg_warn "Unsupported distro ($ID $VERSION_CODENAME) – skipping VAAPI setup."
|
|
||||||
return 0
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
if [[ "$CTTYPE" == "0" ]]; then
|
|
||||||
$STD adduser "$(id -un)" video || true
|
|
||||||
$STD adduser "$(id -un)" render || true
|
|
||||||
fi
|
|
||||||
|
|
||||||
msg_ok "VAAPI userland ready"
|
|
||||||
}
|
|
||||||
|
|
||||||
# ------------------------------------------------------------------------------
|
|
||||||
# NVIDIA userland inside container
|
|
||||||
# Debian 12/13, Ubuntu 24.04
|
|
||||||
# Usage: nvidia_setup_in_ct <CTTYPE 0|1>
|
|
||||||
# ------------------------------------------------------------------------------
|
|
||||||
nvidia_setup_in_ct() {
|
|
||||||
local CTTYPE="$1"
|
|
||||||
|
|
||||||
local ID VERSION_CODENAME
|
|
||||||
if [[ -r /etc/os-release ]]; then . /etc/os-release; fi
|
|
||||||
ID="${ID:-debian}"
|
|
||||||
VERSION_CODENAME="${VERSION_CODENAME:-bookworm}"
|
|
||||||
|
|
||||||
msg_info "Installing NVIDIA userland on ${ID^} ($VERSION_CODENAME)"
|
|
||||||
|
|
||||||
case "$ID" in
|
|
||||||
debian | ubuntu)
|
|
||||||
$STD apt-get update
|
|
||||||
$STD apt-get install -y \
|
|
||||||
nvidia-driver \
|
|
||||||
nvidia-utils \
|
|
||||||
libnvidia-encode1 \
|
|
||||||
libcuda1 || {
|
|
||||||
msg_error "Failed to install NVIDIA packages"
|
|
||||||
return 1
|
|
||||||
}
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
msg_warn "Unsupported distro ($ID $VERSION_CODENAME) – skipping NVIDIA setup."
|
|
||||||
return 0
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
if [[ "$CTTYPE" == "0" ]]; then
|
|
||||||
$STD adduser "$(id -un)" video || true
|
|
||||||
fi
|
|
||||||
|
|
||||||
msg_ok "NVIDIA userland ready"
|
|
||||||
}
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user