diff -Naur nvidia-utils-old/PKGBUILD nvidia-utils/PKGBUILD --- nvidia-utils-old/PKGBUILD 2014-06-05 01:06:11.000000000 +0300 +++ nvidia-utils/PKGBUILD 2014-06-05 05:09:11.941579490 +0300 @@ -26,16 +26,17 @@ done < <(find "${pkgdir}" -type f -name '*.so*' -print0) } -build() { - cd "${srcdir}" +prepare() { sh "${_pkg}.run" --extract-only + cd "${_pkg}" + bsdtar -xf nvidia-persistenced-init.tar.bz2 } package_opencl-nvidia() { pkgdesc="OpenCL implemention for NVIDIA" depends=('libcl' 'zlib') optdepends=('opencl-headers: headers necessary for OpenCL development') - cd "${srcdir}/${_pkg}" + cd "${_pkg}" # OpenCL install -D -m644 nvidia.icd "${pkgdir}/etc/OpenCL/vendors/nvidia.icd" @@ -53,7 +54,7 @@ depends=('nvidia-utils') conflicts=('libgl') provides=('libgl') - cd "${srcdir}/${_pkg}" + cd "${_pkg}" mkdir -p "${pkgdir}/usr/lib/xorg/modules/extensions" ln -s "/usr/lib/nvidia/xorg/modules/extensions/libglx.so.${pkgver}" "${pkgdir}/usr/lib/xorg/modules/extensions/libglx.so.${pkgver}" @@ -86,7 +87,8 @@ optdepends=('gtk2: nvidia-settings' 'xorg-server-devel: nvidia-xconfig' 'opencl-nvidia: OpenCL support') - cd "${srcdir}/${_pkg}" + install="${pkgname}.install" + cd "${_pkg}" # X driver install -D -m755 nvidia_drv.so "${pkgdir}/usr/lib/xorg/modules/drivers/nvidia_drv.so" @@ -146,11 +148,19 @@ # nvidia-cuda-mps install -D -m755 nvidia-cuda-mps-server "${pkgdir}/usr/bin/nvidia-cuda-mps-server" + install -D -m755 nvidia-cuda-mps-control "${pkgdir}/usr/bin/nvidia-cuda-mps-control" install -D -m644 nvidia-cuda-mps-control.1.gz "${pkgdir}/usr/share/man/man1/nvidia-cuda-mps-control.1.gz" # nvidia-modprobe # This should be removed if nvidia fixed their uvm module! install -D -m4755 nvidia-modprobe "${pkgdir}/usr/bin/nvidia-modprobe" + install -D -m644 nvidia-modprobe.1.gz "${pkgdir}/usr/share/man/man1/nvidia-modprobe.1.gz" + + # nvidia-persistenced + install -D -m755 nvidia-persistenced "${pkgdir}/usr/bin/nvidia-persistenced" + install -D -m644 nvidia-persistenced.1.gz "${pkgdir}/usr/share/man/man1/nvidia-persistenced.1.gz" + install -D -m644 nvidia-persistenced-init/systemd/nvidia-persistenced.service.template "${pkgdir}/usr/lib/systemd/system/nvidia-persistenced.service" + sed -i 's/__USER__/nvidia-persistenced/' "${pkgdir}/usr/lib/systemd/system/nvidia-persistenced.service" # application profiles install -D -m644 nvidia-application-profiles-${pkgver}-rc "${pkgdir}/usr/share/nvidia/nvidia-application-profiles-${pkgver}-rc" @@ -160,6 +170,7 @@ ln -s nvidia "${pkgdir}/usr/share/licenses/nvidia-utils" install -D -m644 README.txt "${pkgdir}/usr/share/doc/nvidia/README" install -D -m644 NVIDIA_Changelog "${pkgdir}/usr/share/doc/nvidia/NVIDIA_Changelog" + cp -r html "${pkgdir}/usr/share/doc/nvidia/" ln -s nvidia "${pkgdir}/usr/share/doc/nvidia-utils" create_links diff -Naur nvidia-utils-old/nvidia-utils.install nvidia-utils/nvidia-utils.install --- nvidia-utils-old/nvidia-utils.install 1970-01-01 02:00:00.000000000 +0200 +++ nvidia-utils/nvidia-utils.install 2014-06-02 02:09:13.000000000 +0300 @@ -0,0 +1,11 @@ +post_install() { + if ! getent group nvidia-persistenced >/dev/null; then + useradd -c 'NVIDIA Persistence Daemon' -d '/' -s /sbin/nologin -r nvidia-persistenced + fi +} + +post_remove() { + if getent group nvidia-persistenced >/dev/null; then + userdel -f nvidia-persistenced + fi +}