#! /bin/sh
CRCsum=3675139043
MD5=7b24e5a39e86c6d002b362d0c3e099c8
skip=847
skip_decompress=812
size_decompress=35
label="NVIDIA Accelerated Graphics Driver for Linux-x86_64 470.256.02"
version_string=470.256.02
pkg_version=0
script=./nvidia-installer
targetdir=NVIDIA-Linux-x86_64-470.256.02
scriptargs=""
keep=n
add_this_kernel=n
apply_patch=n
TMPROOT=${TMPDIR:=/tmp}
TARGET_OS="Linux"
TARGET_ARCH="x86_64"
#
# NVIDIA Accelerated Graphics Driver for Linux-x86_64 470.256.02
# Generated by Makeself 1.6.0-nv4
# Do not edit by hand.
# NVIDIA Driver Installation .run file
#
# If you were trying to download this file through a web browser, and
# instead are seeing this, please click your browser's back button,
# left click on the link, and select "Save as..." (or do whatever is
# appropriate for your web browser to download a file, rather than view
# it).
# print usage information
if [ "$1" = "-help" -o "$1" = "--help" -o "$1" = "-h" ]; then
echo ""
echo "$0 [options]"
echo ""
echo "This program will install the NVIDIA Accelerated Graphics Driver"
echo "for Linux-x86_64 470.256.02 by unpacking the embedded tarball and"
echo "executing the ./nvidia-installer installation utility."
echo ""
echo "Below are the most common options; for a complete list use"
echo "'--advanced-options'."
echo ""
echo "--info"
echo " Print embedded info (title, default target directory) and exit."
echo ""
echo "--check"
echo " Check integrity of the archive and exit."
echo ""
echo "-x, --extract-only"
echo " Extract the contents of $0, but do not"
echo " run 'nvidia-installer'."
echo ""
echo ""
echo "The following arguments will be passed on to the ./nvidia-installer"
echo "utility:"
echo ""
echo " -v, --version"
echo " Print the nvidia-installer version and exit."
echo ""
echo " -h, --help"
echo " Print usage information for the common commandline options and exit."
echo ""
echo " -A, --advanced-options"
echo " Print usage information for the common commandline options as well as the advanced options, and then exit."
echo ""
echo ""
exit 0;
fi
if [ "$1" = "-A" -o "$1" = "--advanced-options" ]; then
echo ""
echo "$0 [options]"
echo ""
echo "This program will install the NVIDIA Accelerated Graphics Driver"
echo "for Linux-x86_64 470.256.02 by unpacking the embedded tarball and"
echo "executing the ./nvidia-installer installation utility."
echo ""
echo "--info"
echo " Print embedded info (title, default target directory) and exit."
echo ""
echo "--lsm"
echo " Print embedded lsm entry (or no LSM) and exit."
echo ""
echo "--pkg-history"
echo " Print the package history of this file and exit."
echo ""
echo "--list"
echo " Print the list of files in the archive and exit."
echo ""
echo "--check"
echo " Check integrity of the archive and exit."
echo ""
echo "-x, --extract-only"
echo " Extract the contents of $0, but do not"
echo " run 'nvidia-installer'."
echo ""
echo "--add-this-kernel"
echo " Build a precompiled kernel interface for the currently running"
echo " kernel and repackage the .run file to include this newly built"
echo " precompiled kernel interface. The new .run file will be placed"
echo " in the current directory and the string \"-custom\" appended"
echo " to its name, unless already present, to distinguish it from the"
echo " original .run file."
echo ""
echo "--apply-patch [Patch]"
echo " Apply the patch 'Patch' to the kernel interface files included"
echo " in the .run file, remove any precompiled kernel interfaces"
echo " and then repackage the .run file. The new .run file will be"
echo " placed in the current directory and the string \"-custom\""
echo " appended to its name, unless already present, to distinguish it"
echo " from the original .run file."
echo ""
echo "--keep"
echo " Do not delete target directory when done."
echo ""
echo "--target [NewDirectory]"
echo " Extract contents in 'NewDirectory'"
echo ""
echo "--extract-decompress"
echo " Extract the embedded decompression program to stdout"
echo ""
echo ""
echo "The following arguments will be passed on to the ./nvidia-installer"
echo "utility:"
echo ""
echo "COMMON OPTIONS:"
echo ""
echo " -v, --version"
echo " Print the nvidia-installer version and exit."
echo ""
echo " -h, --help"
echo " Print usage information for the common commandline options and exit."
echo ""
echo " -A, --advanced-options"
echo " Print usage information for the common commandline options as well as the advanced options, and then exit."
echo ""
echo ""
echo "ADVANCED OPTIONS:"
echo ""
echo " -v, --version"
echo " Print the nvidia-installer version and exit."
echo ""
echo " -h, --help"
echo " Print usage information for the common commandline options and exit."
echo ""
echo " -A, --advanced-options"
echo " Print usage information for the common commandline options as well as the advanced options, and then exit."
echo ""
echo " -a, --accept-license"
echo " This option is obsolete and ignored by nvidia-installer. It is provided for compatibility with older versions of nvidia-installer, which required this option for explicit license acceptance. Use of the NVIDIA driver implies acceptance of the NVIDIA Software License Agreement, contained in the file 'LICENSE' (in the top level directory of the driver package)."
echo ""
echo " -i, --driver-info"
echo " Print information about the currently installed NVIDIA driver version."
echo ""
echo " --uninstall"
echo " Uninstall the currently installed NVIDIA driver."
echo ""
echo " --skip-module-unload"
echo " When uninstalling the driver, skip unloading of the NVIDIA kernel module. This option is ignored when the driver is being installed."
echo ""
echo " --sanity"
echo " Perform basic sanity tests on an existing NVIDIA driver installation."
echo ""
echo " -e, --expert"
echo " Enable 'expert' installation mode; more detailed questions will be asked, and more verbose output will be printed; intended for expert users. The questions may be suppressed with the '--no-questions' commandline option."
echo ""
echo " -q, --no-questions"
echo " Do not ask any questions; the default (normally 'yes') is assumed for all yes/no questions, and the default string is assumed in any situation where the user is prompted for string input."
echo ""
echo " -s, --silent"
echo " Run silently; no questions are asked and no output is printed, except for error messages to stderr. This option implies '--ui=none --no-questions'."
echo ""
echo " --x-prefix=X-PREFIX"
echo " The prefix under which the X components of the NVIDIA driver will be installed; the default is '/usr/X11R6' unless nvidia-installer detects that X.Org >= 7.0 is installed, in which case the default is '/usr'. Only under rare circumstances should this option be used."
echo ""
echo " --xfree86-prefix=XFREE86-PREFIX"
echo " This is a deprecated synonym for --x-prefix."
echo ""
echo " --x-module-path=X-MODULE-PATH"
echo " The path under which the NVIDIA X server modules will be installed. If this option is not specified, nvidia-installer uses the following search order and selects the first valid directory it finds: 1) \`X -showDefaultModulePath\`, 2) \`pkg-config --variable=moduledir xorg-server\`, or 3) the X library path (see the '--x-library-path' option) plus either 'modules' (for X servers older than X.Org 7.0) or 'xorg/modules' (for X.Org 7.0 or later)."
echo ""
echo " --x-library-path=X-LIBRARY-PATH"
echo " The path under which the NVIDIA X libraries will be installed. If this option is not specified, nvidia-installer uses the following search order and selects the first valid directory it finds: 1) \`X -showDefaultLibPath\`, 2) \`pkg-config --variable=libdir xorg-server\`, or 3) the X prefix (see the '--x-prefix' option) plus 'lib' on 32bit systems, and either 'lib64' or 'lib' on 64bit systems, depending on the installed Linux distribution."
echo ""
echo " --x-sysconfig-path=X-SYSCONFIG-PATH"
echo " The path under which X system configuration files will be installed. If this option is not specified, nvidia-installer uses the following search order and selects the first valid directory it finds: 1) \`pkg-config --variable=sysconfigdir xorg-server\`, or 2) /usr/share/X11/xorg.conf.d."
echo ""
echo " --opengl-prefix=OPENGL-PREFIX"
echo " The prefix under which the OpenGL components of the NVIDIA driver will be installed; the default is: '/usr'. Only under rare circumstances should this option be used. The Linux OpenGL ABI (
http://oss.sgi.com/projects/ogl-sample/ABI/) mandates this default value."
echo ""
echo " --opengl-libdir=OPENGL-LIBDIR"
echo " The path relative to the OpenGL library installation prefix under which the NVIDIA OpenGL components will be installed. The default is 'lib' on 32bit systems, and 'lib64' or 'lib' on 64bit systems, depending on the installed Linux distribution. Only under very rare circumstances should this option be used."
echo ""
echo " --wine-prefix=WINE-PREFIX"
echo " The prefix under which Wine components of the NVIDIA driver will be installed. The default is '/usr'."
echo ""
echo " --wine-libdir=WINE-LIBDIR"
echo " The path relative to the Wine installation prefix under which Wine components of the NVIDIA driver will be installed. The default is '<opengl-libdir>/nvidia/wine', where <opengl-libdir> is the path determined for --opengl-libdir above."
echo ""
echo " --installer-prefix=INSTALLER-PREFIX"
echo " The prefix under which the installer binary will be installed; the default is: '/usr'. Note: please use the '--utility-prefix' option instead."
echo ""
echo " --utility-prefix=UTILITY-PREFIX"
echo " The prefix under which the NVIDIA utilities (nvidia-installer, nvidia-settings, nvidia-xconfig, nvidia-bug-report.sh) and the NVIDIA utility libraries will be installed; the default is: '/usr'."
echo ""
echo " --utility-libdir=UTILITY-LIBDIR"
echo " The path relative to the utility installation prefix under which the NVIDIA utility libraries will be installed. The default is 'lib' on 32bit systems, and 'lib64' or 'lib' on 64bit systems, depending on the installed Linux distribution."
echo ""
echo " --documentation-prefix=DOCUMENTATION-PREFIX"
echo " The prefix under which the documentation files for the NVIDIA driver will be installed. The default is: '/usr'."
echo ""
echo " --application-profile-path=APPLICATION-PROFILE-PATH"
echo " The directory under which default application profiles for the NVIDIA driver will be installed. The default is: '/usr/share/nvidia'."
echo ""
echo " --kernel-include-path=KERNEL-INCLUDE-PATH"
echo " The directory containing the kernel include files that should be used when compiling the NVIDIA kernel module. This option is deprecated; please use '--kernel-source-path' instead."
echo ""
echo " --kernel-source-path=KERNEL-SOURCE-PATH"
echo " The directory containing the kernel source files that should be used when compiling the NVIDIA kernel module. When not specified, the installer will use '/lib/modules/\`uname -r\`/build', if that directory exists. Otherwise, it will use '/usr/src/linux'."
echo ""
echo " --kernel-output-path=KERNEL-OUTPUT-PATH"
echo " The directory containing any KBUILD output files if either one of the 'KBUILD_OUTPUT' or 'O' parameters were passed to KBUILD when building the kernel image/modules. When not specified, the installer will assume that no separate output directory was used."
echo ""
echo " --kernel-install-path=KERNEL-INSTALL-PATH"
echo " The directory in which the NVIDIA kernel module should be installed. The default value is either '/lib/modules/\`uname -r\`/kernel/drivers/video' (if '/lib/modules/\`uname -r\`/kernel' exists) or '/lib/modules/\`uname -r\`/video'."
echo ""
echo " --proc-mount-point=PROC-MOUNT-POINT"
echo " The mount point for the proc file system; if not specified, then this value defaults to '/proc' (which is normally correct). The mount point of the proc filesystem is needed because the contents of '<proc filesystem>/version' is used when identifying if a precompiled kernel interface is available for the currently running kernel. This option should only be needed in very rare circumstances."
echo ""
echo " --log-file-name=LOG-FILE-NAME"
echo " File name of the installation log file (the default is: '/var/log/nvidia-installer.log')."
echo ""
echo " --tmpdir=TMPDIR"
echo " Use the specified directory as a temporary directory when generating transient files used by the installer; if not given, then the following list will be searched, and the first one that exists will be used: $TMPDIR, /tmp, ., $HOME."
echo ""
echo " --ui=UI"
echo " Specify what user interface to use, if available. Valid values for UI are 'ncurses' (the default) or 'none'. If the ncurses interface fails to initialize, or 'none' is specified, then a simple printf/scanf interface will be used."
echo ""
echo " -c, --no-ncurses-color"
echo " Disable use of color in the ncurses user interface."
echo ""
echo " --no-nvidia-modprobe"
echo " Skip installation of 'nvidia-modprobe', a setuid root utility which nvidia-installer installs by default. nvidia-modprobe can be used by user-space NVIDIA driver components to load the NVIDIA kernel module, and create the NVIDIA device files, when those components run without sufficient privileges to do so on their own, e.g., the CUDA driver run within the permissions of a non-privileged user. This utility is only needed if other means of loading the NVIDIA kernel module and creating the NVIDIA device files are unavailable."
echo ""
echo " -k KERNEL-NAME, --kernel-name=KERNEL-NAME"
echo " Build and install the NVIDIA kernel module for the non-running kernel specified by KERNEL-NAME (KERNEL-NAME should be the output of \`uname -r\` when the target kernel is actually running). This option implies '--no-precompiled-interface'. If the options '--kernel-install-path' and '--kernel-source-path' are not given, then they will be inferred from KERNEL-NAME; eg: '/lib/modules/KERNEL-NAME/kernel/drivers/video/' and '/lib/modules/KERNEL-NAME/build/', respectively."
echo ""
echo " -n, --no-precompiled-interface"
echo " Disable use of precompiled kernel interfaces."
echo ""
echo " --no-abi-note"
echo " The NVIDIA OpenGL libraries contain an OS ABI note tag, which identifies the minimum kernel version needed to use the library. This option causes the installer to remove this note from the OpenGL libraries during installation."
echo ""
echo " --no-rpms"
echo " Normally, the installer will check for several rpms that conflict with the driver (specifically: NVIDIA_GLX and NVIDIA_kernel), and remove them if present. This option disables this check."
echo ""
echo " -b, --no-backup"
echo " During driver installation, conflicting files are backed up, so that they can be restored when the driver is uninstalled. This option causes the installer to simply delete conflicting files, rather than back them up."
echo ""
echo " -r, --no-recursion"
echo " Normally, nvidia-installer will recursively search for potentially conflicting libraries under the default OpenGL and X server installation locations. With this option set, the installer will only search in the top-level directories."
echo ""
echo " -K, --kernel-module-only"
echo " Install a kernel module only, and do not uninstall the existing driver. This is intended to be used to install kernel modules for additional kernels (in cases where you might boot between several different kernels). To use this option, you must already have a driver installed, and the version of the installed driver must match the version of this kernel module."
echo ""
echo " --no-kernel-module"
echo " Install everything but the kernel module, and do not remove any existing, possibly conflicting kernel modules. This can be useful in some DEBUG environments. If you use this option, you must be careful to ensure that a NVIDIA kernel module matching this driver version is installed separately."
echo ""
echo " --no-x-check"
echo " Do not abort the installation if nvidia-installer detects that an X server is running. Only under very rare circumstances should this option be used."
echo ""
echo " --precompiled-kernel-interfaces-path=PRECOMPILED-KERNEL-INTERFACES-PATH"
echo " Before searching for a precompiled kernel interface in the .run file, search in the specified directory."
echo ""
echo " -z, --no-nouveau-check"
echo " Normally, nvidia-installer aborts installation if the nouveau kernel driver is in use. Use this option to disable this check."
echo ""
echo " -Z, --disable-nouveau"
echo " If the nouveau kernel module is detected by nvidia-installer, the installer offers to attempt to disable nouveau. The default action is to not attempt to disable nouveau; use this option to change the default action to attempt to disable nouveau."
echo ""
echo " -X, --run-nvidia-xconfig"
echo " nvidia-installer can optionally invoke the nvidia-xconfig utility. This will update the system X configuration file so that the NVIDIA X driver is used. The pre-existing X configuration file will be backed up. At the end of installation, nvidia-installer will ask the user if they wish to run nvidia-xconfig; the default response is 'no'. Use this option to make the default response 'yes'. This is useful with the '--no-questions' or '--silent' options, which assume the default values for all questions."
echo ""
echo " --force-selinux=FORCE-SELINUX"
echo " Linux installations using SELinux (Security-Enhanced Linux) require that the security type of all shared libraries be set to 'shlib_t' or 'textrel_shlib_t', depending on the distribution. nvidia-installer will detect when to set the security type, and set it using chcon(1) on the shared libraries it installs. If the execstack(8) system utility is present, nvidia-installer will use it to also clear the executable stack flag of the libraries. Use this option to override nvidia-installer's detection of when to set the security type. Valid values for FORCE-SELINUX are 'yes' (force setting of the security type), 'no' (prevent setting of the security type), and 'default' (let nvidia-installer decide when to set the security type)."
echo ""
echo " --selinux-chcon-type=SELINUX-CHCON-TYPE"
echo " When SELinux support is enabled, nvidia-installer will try to determine which chcon argument to use by first trying 'textrel_shlib_t', then 'texrel_shlib_t', then 'shlib_t'. Use this option to override this detection logic."
echo ""
echo " --no-sigwinch-workaround"
echo " Normally, nvidia-installer ignores the SIGWINCH signal before it forks to execute commands, e.g. to build the kernel module, and restores the SIGWINCH signal handler after the child process has terminated. This option disables this behavior."
echo ""
echo " --no-cc-version-check"
echo " The NVIDIA kernel module should be compiled with the same compiler that was used to compile the currently running kernel. The layout of some Linux kernel data structures may be dependent on the version of gcc used to compile it. The Linux 2.6 kernel modules are tagged with information about the compiler and the Linux kernel's module loader performs a strict version match check. nvidia-installer checks for mismatches prior to building the NVIDIA kernel module and aborts the installation in case of failures. Use this option to override this check."
echo ""
echo " --no-distro-scripts"
echo " Normally, nvidia-installer will run scripts from /usr/lib/nvidia before and after installing or uninstalling the driver. Use this option to disable execution of these scripts."
echo ""
echo " --no-opengl-files"
echo " Do not install any of the OpenGL-related driver files."
echo ""
echo " --no-wine-files"
echo " Do not install any of the Wine driver files."
echo ""
echo " --kernel-module-source-prefix=KERNEL-MODULE-SOURCE-PREFIX"
echo " Specify a path where the source directory for the kernel module will be installed. Default: install source directory at /usr/src"
echo ""
echo " --kernel-module-source-dir=KERNEL-MODULE-SOURCE-DIR"
echo " Specify the name of the directory where the kernel module sources will be installed. Default: directory name is "nvidia-VERSION""
echo ""
echo " --no-kernel-module-source"
echo " Skip installation of the kernel module source."
echo ""
echo " --dkms"
echo " nvidia-installer can optionally register the NVIDIA kernel module sources, if installed, with DKMS, then build and install a kernel module using the DKMS-registered sources. This will allow the DKMS infrastructure to automatically build a new kernel module when changing kernels. During installation, if DKMS is detected, nvidia-installer will ask the user if they wish to register the module with DKMS; the default response is 'no'. This option will bypass the detection of DKMS, and cause the installer to attempt a DKMS-based installation regardless of whether DKMS is present."
echo ""
echo " --module-signing-secret-key=MODULE-SIGNING-SECRET-KEY"
echo " Specify a path to a private key to use for signing the NVIDIA kernel module. The corresponding public key must also be provided."
echo ""
echo " --module-signing-public-key=MODULE-SIGNING-PUBLIC-KEY"
echo " Specify a path to a public key to use for verifying the signature of the NVIDIA kernel module. The corresponding private key must also be provided."
echo ""
echo " --module-signing-script=MODULE-SIGNING-SCRIPT"
echo " Specify a path to a program to use for signing the NVIDIA kernel module. The program will be called with the arguments: program-name <HASH> <PRIVATEKEY> <PUBLICKEY> <MODULE>; if the program returns an error status, it will be called again with the arguments: program-name <PRIVATEKEY> <PUBLICKEY> <MODULE>. Default: use the "sign-file" script in the kernel source directory."
echo ""
echo " --module-signing-key-path=MODULE-SIGNING-KEY-PATH"
echo " Specify a path where signing keys generated by nvidia-installer will be installed. Default: install keys to '/usr/share/nvidia'."
echo ""
echo " --module-signing-hash=MODULE-SIGNING-HASH"
echo " Specify a cryptographic hash algorithm to use for signing kernel modules. This requires a module signing tool that allows explicit selection of the hash algorithm, and the hash algorithm name must be recognizable by the module signing tool. Default: select a hash algorithm automatically, based on the kernel's configuration."
echo ""
echo " --module-signing-x509-hash=MODULE-SIGNING-X509-HASH"
echo " Specify a cryptographic hash algorithm to use for signing X.509 certificates generated by nvidia-installer. The hash algorithm name must be one of the message digest algorithms recognized by the x509(1) command."
echo ""
echo " --no-check-for-alternate-installs"
echo " Maintainers of alternate driver installation methods can report the presence and/or availability of an alternate driver installation to nvidia-installer. Setting this option skips the check for alternate driver installations."
echo ""
echo " --no-unified-memory"
echo " Do not install the NVIDIA Unified Memory kernel module. This kernel module is required for CUDA on 64-bit systems, and if it is not installed, the CUDA driver and CUDA applications will not be able to run. The '--no-unified-memory' option should only be used to work around failures to build or install the Unified Memory kernel module on systems that do not need to run CUDA."
echo ""
echo " --no-drm"
echo " Do not install the nvidia-drm kernel module. This kernel module provides several features, including X11 autoconfiguration, support for PRIME, and DRM-KMS. The latter is used to support modesetting on windowing systems that run independently of X11. The '--no-drm' option should only be used to work around failures to build or install the nvidia-drm kernel module on systems that do not need these features."
echo ""
echo " --no-peermem"
echo " Do not install the nvidia-peermem kernel module. This kernel module provides support for peer-to-peer memory sharing with Mellanox HCAs (Host Channel Adapters) via GPUDirect RDMA (Remote Direct Memory Access)."
echo ""
echo " -j CONCURRENCY-LEVEL, --concurrency-level=CONCURRENCY-LEVEL"
echo " Set the concurrency level for operations such as building the kernel module which may be parallelized on SMP systems. By default, this will be set to the number of detected CPUs, or to '1', if nvidia-installer fails to detect the number of CPUs. Systems with a large number of CPUs will have the default concurrency level limited to 32; setting a higher level on the command line will override this limit."
echo ""
echo " --force-libglx-indirect"
echo " Always install a libGLX_indirect.so.0 symlink, overwriting one if it exists."
echo ""
echo " --no-libglx-indirect"
echo " Do not install a libGLX_indirect.so.0 symlink."
echo ""
echo " --install-libglvnd, --no-install-libglvnd"
echo " The installer will try to determine whether the libglvnd libraries are already available, and will install them if they're not. Use --install-libglvnd to always install the libglvnd libraries, overwriting any that already exist. Use --no-install-libglvnd to exclude the libglvnd libraries, even if they appear to be missing."
echo ""
echo " --glvnd-egl-config-path=GLVND-EGL-CONFIG-PATH"
echo " Install the EGL vendor library config file to this directory. If the libglvnd libraries are already present, then by default the installer will try to determine the path by running \`pkg-config --variable=datadir libglvnd\`. If that fails, then it will default to /usr/share/glvnd/egl_vendor.d."
echo ""
echo " --egl-external-platform-config-path=EGL-EXTERNAL-PLATFORM-CONFIG-PATH"
echo " If the package includes an EGL external platform library, then install the EGL external platform library config file to this directory. Defaults to /usr/share/egl/egl_external_platform.d."
echo ""
echo " --override-file-type-destination=OVERRIDE-FILE-TYPE-DESTINATION"
echo " Override the default destination for a file type. This option takes an argument in the form of '<FILE_TYPE>:<destination>', where <FILE_TYPE> is a file type from the installer .manifest file, and <destination> is an absolute path to the directory where files of that type should be installed. This option may be given multiple times in order to override the destinations for multiple file types. Use of this option takes precedence over any other options that might otherwise influence the destination of the specified file type."
echo ""
echo " --skip-depmod"
echo " Don't run the depmod(1) utility after modifying kernel modules. This should only be used in cases where depmod(1) will be run separately after running nvidia-installer."
echo ""
echo " --systemd, --no-systemd"
echo " By default, the installer will install systemd unit files if systemctl is detected. Specifying --no-systemd will disable installation of systemd units."
echo ""
echo " --systemd-unit-prefix=SYSTEMD-UNIT-PREFIX"
echo " The path to which systemd unit files should be installed. By default, the installer uses \`pkg-config --variable=systemdsystemunitdir systemd\` to determine the location to install systemd unit files, or '/usr/lib/systemd/system' if pkg-config is not available. Ignored if --no-systemd is specified."
echo ""
echo " --systemd-sleep-prefix=SYSTEMD-SLEEP-PREFIX"
echo " The path to which systemd-sleep script files should be installed. By default, the installer uses \`pkg-config --variable=systemdsleepdir systemd\` to determine the location to install systemd-sleep script files, or '/usr/lib/systemd/system-sleep' if pkg-config is not available. Ignored if --no-systemd is specified."
echo ""
echo " --systemd-sysconf-prefix=SYSTEMD-SYSCONF-PREFIX"
echo " The path to which systemd unit enable symlinks should be installed. By default, the installer uses \`pkg-config --variable=systemdsystemconfdir systemd\` to determine the location to install these symlinks, or '/etc/systemd/system' if pkg-config is not available. Ignored if --no-systemd is specified."
echo ""
echo " -m KERNEL-MODULE-BUILD-DIRECTORY, --kernel-module-build-directory=KERNEL-MODULE-BUILD-DIRECTORY"
echo " The path within the driver package that contains the kernel module build files is normally 'kernel/'. This option can be used to override this value."
echo ""
echo ""
exit 0;
fi
if [ "$1" = "-lsm" -o "$1" = "--lsm" ]; then
cat << EOF_LSM
Begin3
Title: NVIDIA Accelerated Graphics Driver Set for Linux-x86_64
Version: 470.256.02
Description: The NVIDIA Accelerated Graphics Driver Set for Linux-x86_64
provides accelerated 2D and 3D support for Linux-x86_64
using NVIDIA GPUs.
Keywords: OpenGL XFree86 NVIDIA
Author: NVIDIA Corporation Linux Development Team (linux-bugs 'at' nvidia.com)
Maintained-by: NVIDIA Corporation Linux Development Team (linux-bugs 'at' nvidia.com)
Original-site:
http://www.nvidia.com
Platform: Linux
Copying-policy: NVIDIA Software License
End
EOF_LSM
exit 0;
fi
if [ "$1" = "--pkg-history" ]; then
cat << EOF_PKG_HISTORY
Package history for NVIDIA-Linux-x86_64-470.256.02-internal:
NVIDIA-Linux-x86_64-470.256.02-internal: Initial package
NVIDIA-Linux-x86_64-470.256.02: Added 32 bit compatibility libraries
NVIDIA-Linux-x86_64-470.256.02: Added Wine files
EOF_PKG_HISTORY
exit 0;
fi
if [ "$1" = "--label" ]; then
echo "$label";
exit 0;
fi
if [ "$1" = "--version-string" ]; then
echo "$version_string";
exit 0;
fi
if [ "$1" = "--pkg-version" ]; then
echo "$pkg_version";
exit 0;
fi
if [ "$1" = "--target-os" ]; then
echo "$TARGET_OS";
exit 0;
fi
if [ "$1" = "--target-arch" ]; then
echo "$TARGET_ARCH";
exit 0;
fi
if [ "$1" = "--target-directory" ]; then
echo "$targetdir";
exit 0;
fi
if [ "$1" = "--script" ]; then
echo "$script $scriptargs"
exit 0
fi
if [ "$1" = "--info" ]; then
echo
echo " Identification : $label"
echo " Target directory : $targetdir"
echo " Uncompressed size : 775192 KB"
echo " Compression : xz"
echo " Date of packaging : Thu May 2 15:38:13 UTC 2024"
echo " Application run after extraction : $script $scriptargs"
echo
if [ x"$keep" = xy ]; then
echo " The directory $targetdir will not be removed after extraction."
else
echo " The directory $targetdir will be removed after extraction."
fi
echo
exit 0;
fi
location="`pwd`"
catDecompress() {
tail -n +${skip_decompress} $0 | head -n ${size_decompress}
}
if ! which "xz" > /dev/null 2>&1; then
decompressDir=`mktemp -d "$TMPDIR/makeself.XXXXXXXX" 2> /dev/null`
decompress="$decompressDir/xz"
(cd "$location"; catDecompress) > "$decompress"
chmod +x "$decompress"
PATH="$decompressDir:$PATH"
trap cleanupDecompress EXIT
fi
cleanupDecompress() {
if [ -d "$decompressDir" ]; then
rm -r "$decompressDir"
fi
decompressDir=""
}
if [ "$1" = "--list" ]; then
echo "Target directory: $targetdir"
tail -n +$skip $0 | xz -d | tar tvf - 2> /dev/null
exit 0;
fi
if [ "$1" = "--extract-decompress" ]; then
catDecompress
exit 0
fi
if [ "$1" = "--check" ]; then
sum1=`tail -n +4 $0 | cksum | awk '{print $1}'`
[ "$sum1" != "$CRCsum" ] && {
echo "Error in checksums $sum1 $CRCsum"
exit 2;
}
if [ $MD5 != "00000000000000000000000000000000" ]; then
# space separated list of directories
[ x"$GUESS_MD5_PATH" = "x" ] && GUESS_MD5_PATH="/usr/local/ssl/bin /usr/local/bin /usr/bin /bin"
MD5_PATH=""
for a in $GUESS_MD5_PATH; do
#if which $a/md5 >/dev/null 2>&1 ; then
if [ -x "$a/md5sum" ]; then
MD5_PATH=$a;
fi
done
if [ -x $MD5_PATH/md5sum ]; then
md5sum=`tail -n +4 $0 | $MD5_PATH/md5sum | cut -b-32`;
[ $md5sum != $MD5 ] && {
echo "Error in md5 sums $md5sum $MD5"
exit 2
} || { echo "check sums and md5 sums are ok"; exit 0; }
fi
if [ ! -x $MD5_PATH/md5sum ]; then
echo "an embedded md5 sum of the archive exists but no md5 program was found in $GUESS_MD5_PATH"
echo "if you have md5 on your system, you should try :"
echo "env GUESS_MD5_PATH=\"FirstDirectory SecondDirectory ...\" $0 -check"
fi
else
echo "check sums are OK ; echo $0 does not contain embedded md5 sum" ;
fi
exit 0;
fi
run_script=y
keep=n
apply_patch=n
while [ "$1" ]; do
case "$1" in
"--extract-only"|"-x")
run_script=n;
keep=y;
;;
"--keep")
keep=y;
;;
"--target")
if [ "$2" ]; then
targetdir="$2";
keep=y;
shift;
else
echo "ERROR: --target: no target directory specified."
exit 1;
fi
;;
"--add-this-kernel")
add_this_kernel=y;
scriptargs="$scriptargs $1"
;;
"--tmpdir")
scriptargs="$scriptargs $1 $2"
if [ "$2" ]; then
TMPROOT="$2";
shift;
else
echo "ERROR: --tmpdir: no temporary directory specified."
exit 1;
fi
;;
"--apply-patch")
if [ "$2" ]; then
if [ "`dirname $2`" != "." ]; then
patchfile="$2";
else
patchfile="`pwd`/$2"
fi
run_script=n;
apply_patch=y;
shift;
else
echo "ERROR: --apply-patch: no patch file specified."
exit 1;
fi
;;
*)
scriptargs="$scriptargs $1"
;;
esac
shift
done
# Check that the tmp directory is executable
# Make path absolute if not already
if ! echo "$TMPROOT" | grep -q "^/"; then
TMPROOT=`pwd`/"$TMPROOT";
fi
if [ ! -d "$TMPROOT" ]; then
mkdir -p "$TMPROOT" || {
echo "Unable to create temp directory $TMPROOT"
exit 1
}
fi
TMPDIR="$TMPROOT"
TMPFILE=`mktemp "$TMPDIR/makeself.XXXXXXXX" 2> /dev/null`
if [ "a$TMPFILE" = "a" ]; then
echo "Unable to create temporary file in $TMPDIR"
exit 1
fi
chmod +x "$TMPFILE"
# Try to execute, see what happens
"$TMPFILE" > /dev/null 2>&1 || {
echo "ERROR: Temporary directory $TMPDIR is not executable - use the " \
"--tmpdir option to specify a different one."
rm "$TMPFILE"
exit 1;
}
rm "$TMPFILE"
# Perform a platform check
LOCAL_OS=`uname 2> /dev/null`
LOCAL_ARCH=`uname -m 2> /dev/null`
[ "$LOCAL_ARCH" = "i386" ] && LOCAL_ARCH="x86"
[ "$LOCAL_ARCH" = "i486" ] && LOCAL_ARCH="x86"
[ "$LOCAL_ARCH" = "i586" ] && LOCAL_ARCH="x86"
[ "$LOCAL_ARCH" = "i686" ] && LOCAL_ARCH="x86"
if [ -z "$LOCAL_OS" -o -z "$LOCAL_ARCH" ]; then
echo "ERROR: missing/broken uname. Cannot perform platform check."
exit 1;
fi
if [ "$LOCAL_ARCH" != "$TARGET_ARCH" -o "$LOCAL_OS" != "$TARGET_OS" ]; then
if [ "$run_script" = "y" ]; then
echo ""
echo "ERROR: this .run file is intended for the"
echo "${TARGET_OS}-${TARGET_ARCH} platform, but you appear to be"
echo "running on ${LOCAL_OS}-${LOCAL_ARCH}. Aborting installation."
echo ""
exit 1;
fi
fi
if [ "$keep" = "y" ]; then
echo "Creating directory $targetdir"; tmpdir=$targetdir;
else
workingdir="$TMPROOT/selfgz$$"
tmpdir="$workingdir/$targetdir";
rm -rf $tmpdir
fi
if [ -d "$tmpdir" -o -f "$tmpdir" ]; then
echo "The directory '$tmpdir' already exists. Please either"
echo "move the existing directory out of the way, or specify a"
echo "different directory with the '--target' option."
exit 1
fi
mkdir -p $tmpdir || {
echo "Unable to create the target directory '$tmpdir'."
exit 1
}
echo=echo; [ -x /usr/ucb/echo ] && echo=/usr/ucb/echo
if [ x$SETUP_NOCHECK != x1 ]; then
$echo -n "Verifying archive integrity... "
sum1=`tail -n +4 $0 | cksum | awk '{print $1}'`
[ $sum1 != $CRCsum ] && {
$echo "Error in check sums $sum1 $CRCsum"
exit 2;
}
echo "OK"
fi
if [ $MD5 != \"00000000000000000000000000000000\" ]; then
# space separated list of directories
[ x"$GUESS_MD5_PATH" = "x" ] && GUESS_MD5_PATH="/usr/local/ssl/bin /usr/local/bin /usr/bin /bin"
MD5_PATH=""
for a in $GUESS_MD5_PATH; do
#if which $a/md5 >/dev/null 2>&1 ; then
if [ -x "$a/md5sum" ]; then
MD5_PATH=$a;
fi
done
if [ -x $MD5_PATH/md5sum ]; then
md5sum=`tail -n +4 $0 | $MD5_PATH/md5sum | cut -b-32`;
[ $md5sum != $MD5 ] && {
$echo "Error in md5 sums $md5sum $MD5"
exit 2;
}
fi
fi
UnTAR() {
tar xvf - 2> /dev/null || {
echo "Extraction failed." > /dev/tty; kill -15 $$;
};
}
$echo -n "Uncompressing $label"
cd $tmpdir ; res=3
[ "$keep" = "y" ] || trap '$echo "Signal caught, cleaning up" > /dev/tty; cd $TMPROOT; rm -rf $tmpdir; exit 15' 1 2 15
if (cd "$location"; tail -n +$skip $0; ) | xz -d | UnTAR | (while read a; do $echo -n "."; done; $echo; ); then
chown -Rf `id -u`:`id -g` .
res=0;
if [ "$script" -a "$run_script" = "y" ]; then
$script $scriptargs $*; res=$?
fi
if [ "$add_this_kernel" = "y" -a "$res" = "0" ]; then
repackage_file=y;
fi
if [ "$apply_patch" = "y" ]; then
patch=`which patch 2> /dev/null | head -n 1`
if [ $? -eq 0 -a "$patch" ]; then
if [ "$keep" = "y" ]; then
cp -pR usr/src/nv usr/src/nv.orig
fi
$patch -p0 < "$patchfile"
if [ $? -ne 0 ]; then
$echo "Failed to apply patch file \"$patchfile\"."
if [ "$keep" = "y" ]; then
rm -rf usr/src/nv
mv usr/src/nv.orig usr/src/nv
fi
else
if [ "$keep" = "y" ]; then
rm -rf usr/src/nv.orig
fi
rm -rf usr/src/nv/*.orig usr/src/nv/precompiled
repackage_file=y
fi
else
$echo "Couldn't locate the 'patch' utility."
fi
fi
if [ "$repackage_file" = "y" ]; then
cd ..
new_targetdir="`basename $targetdir | sed -e \"s/-custom//\"`"
new_targetdir="${new_targetdir}-custom"
if [ "$targetdir" != "$new_targetdir" ]; then
mv $targetdir $new_targetdir
fi
# update the pkg-history.txt file
chmod 644 ./$new_targetdir/pkg-history.txt
if [ "$add_this_kernel" = "y" ]; then
$echo "$new_targetdir: Added precompiled kernel interface for: " >> ./$new_targetdir/pkg-history.txt
$echo "`uname -s -r -v -m 2> /dev/null`" >> ./$new_targetdir/pkg-history.txt
else
$echo "$new_targetdir: Applied patch file: $patchfile" >> ./$new_targetdir/pkg-history.txt
fi
$echo "" >> ./$new_targetdir/pkg-history.txt
# retrieve the lsm file
tmplsm="$TMPDIR/nvidia.lsm.$$"
if [ "`dirname $0`" != "." ]; then
sh $0 --lsm > $tmplsm
else
sh $location/$0 --lsm > $tmplsm
fi
sh ./$new_targetdir/makeself.sh --lsm $tmplsm --version-string $version_string --pkg-version $pkg_version --pkg-history ./$new_targetdir/pkg-history.txt --target-os $TARGET_OS --target-arch $TARGET_ARCH $new_targetdir $new_targetdir.run "$label" "$script"
rm -f $tmplsm
[ "$keep" = "y" ] || mv $new_targetdir.run $location
fi
[ "$keep" = "y" ] || { cd $TMPROOT; rm -rf $workingdir; }
else
$echo "Cannot decompress $0"; exit 1
fi
cleanupDecompress
exit $res
END_OF_STUB
ELF >