如何将 Nvidia 驱动程序安装程序转换为 deb?

Oli*_*Oli 5 packaging nvidia

每隔一段时间,我就想尝试一下 Nvidia 驱动程序的测试版。这已经发生在今天:版本 295.40 存在一个很大的性能问题,我想尝试闪亮的新启用 XRandR 的 302.07。

我能够下载安装程序,删除所有 repo 安装的驱动程序文件并安装新版本,但坦率地说,扭转它并返回到 repo 版本是一种痛苦。这也意味着每次进行内核升级时我都必须手动重新安装驱动程序。

我们通常给人们的另一个选择是 PPA,但在这种情况下,我真的很不耐烦。任何 PPA 都需要几天时间才能得到这个,但我今天需要试试这个。我已经在媒体中心手动安装了它,现在我正在关注我的桌面。

那么我如何使用安装程序(例如NVIDIA-Linux-x86-302.07.run:)并将其转换为新的nvidia-current/nvidia-current-updates包?

另一种提问方式可能是:人们如何打包 Nvidia 驱动程序?

ara*_*and 6

除非在新版本中存在结构差异,否则应该可以重新使用当前的包装:

NEWVERSION=302.13
DIR=nvidia-graphics-drivers-"$NEWVERSION".orig/
## Making a new tarball
mkdir $DIR
# Copy in new run files
cp NVIDIA*.run $DIR
tar --owner=root --group=src -caf nvidia-graphics-drivers_"$NEWVERSION".orig.tar.gz $DIR
rm -r $DIR

## Setting up the packaging source
apt-get source nvidia-graphics-drivers
cd nvidia-graphics-drivers*/
# Remove old run files and copy in new
rm NVIDIA*.run
cp ../NVIDIA*.run .
# This version number should ensure it gets replaced by official version...
dch -v $VERSION-1 "my release"; dch -l~mybuild "local build"; dch -r

## Installing build-dependencies
mk-build-deps
sudo dpkg -i nvidia-graphics-drivers-build-deps*.deb; apt-get install -f

## Building
debuild -us -uc
Run Code Online (Sandbox Code Playgroud)

这样的事情可能会奏效,周围有很多乱七八糟的东西,我想这就是为什么 PPA 包不会立即发布的原因;)