GithubHelp home page GithubHelp logo

Comments (6)

ehough avatar ehough commented on September 27, 2024 2

Maybe providing a dummy modprobe could fool the installer.

I think that might have worked! I did this (essentially):

$ docker run -it --rm debian:stable-slim
# apt-get update && apt-get install wget ca-certificates
# wget "https://http.download.nvidia.com/XFree86/Linux-x86_64/415.25/NVIDIA-Linux-x86_64-415.25.run"
# touch /sbin/modprobe /sbin/rmmod /bin/lsmod /sbin/depmod
# chmod +x /sbin/modprobe /sbin/rmmod /bin/lsmod /sbin/depmod
# sh ./NVIDIA-Linux-x86_64-415.25.run --tmpdir ./tmp2 --accept-license --no-runlevel-check --no-questions --no-backup --ui=none --no-kernel-module --no-kernel-module-source --no-nouveau-check --no-nvidia-modprobe

and it seemed to run without errors. It's a little hacky, but creating 4 dummy files sure beats installing kmod, in my opinion.

Do you think that's something you might want to integrate into x11docker?

from docker-kodi.

ehough avatar ehough commented on September 27, 2024 1

@mviereck in my testing, you can skip the installation of xz-utils (or xz) as it seems that the NVIDIA installer falls back to an embedded decompressor if xz is missing.

Check out line 747 of https://http.download.nvidia.com/XFree86/Linux-x86_64/415.25/NVIDIA-Linux-x86_64-415.25.run.

from docker-kodi.

ehough avatar ehough commented on September 27, 2024 1

@mviereck Super cool! Keep up the great work!

from docker-kodi.

mviereck avatar mviereck commented on September 27, 2024

it seems that the NVIDIA installer falls back to an embedded decompressor if xz is missing.

Indeed, that is interesting. That has not been the case in earlier versions of the installer. If I find out at which point this was included, I can skip xz installation after a version check. Or x11docker just parses the installer for this fallback check (but that might fail if the installer code changes).

I believe that modprobe from kmod should be needless, too. It is important for kernel module creating, but that is skipped in x11docker with --no-nvidia-modprobe and related options. However, the installer fails without it. Maybe providing a dummy modprobe could fool the installer.
Compare:

sh /tmp/NVIDIA-installer.run \
        --accept-license --ui=none --no-questions --no-backup \
        --no-runlevel-check --no-kernel-module --no-kernel-module-source \
        --no-nouveau-check --no-nvidia-modprobe

from docker-kodi.

mviereck avatar mviereck commented on September 27, 2024

I think that might have worked!

Great! Thank you for checking that out.

Do you think that's something you might want to integrate into x11docker?

Yes, I am already integrating it in a similar way using softlinks to /bin/true that are removed later.

Re: xz
I'll check older driver versions for xz dependency. However, as some NVIDIA cards need older driver versions, this dependency might not be dropped. If there is a statically linked version of xz available for download anywhere, that could be a faster alternative compared to the package managers.

from docker-kodi.

mviereck avatar mviereck commented on September 27, 2024

Success!

Latest release x11docker 5.4.3 does not need xz and kmod anymore for NVIDIA driver installation.
Old driver versions can self-extract, too, not sure why I thought something different. (At least down to 390.48).

from docker-kodi.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.