1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
|
Importing a New Upstream Release
The *.orig.tar.gz file for nvidia-graphics-drivers contains just a
directory named nvidia-graphics-drivers-<version> containing the
upstream pkg0.run file for i386 and the pkg2.run file for amd64.
(Only the .pkg2.run file includes the ia32 libraries.)
Everything else comes from the Subversion repository for the package.
Use the following steps to update to a new upstream release:
* Check for a new version
uscan --report
* Create a changelog entry for the new version
debchange --distribution UNRELEASED --newversion <version>-1
* Download the driver archives and create a new .orig.tar.gz
debian/rules get-orig-source
Alternatively do it manually:
- Download the pkg0.run file for i386 and the pkg2.run file for
amd64 from upstream.
- mkdir nvidia-graphics-drivers-<version>.orig and place package files
in that directory. Make them executable. Then, create the orig
tarball with:
tar czvf nvidia-graphics-drivers_<version>.orig.tar.gz
* For generating tarballs of older versions first set WATCH_VERSION in
debian/rules.defs appropriately and regenerate debian/watch.
* Edit debian/module/conftest.h if necessary for kernel compatibility
and test.
* Add the new *.orig.tar.gz to the tarballs directory in the svn
repository: svn://svn.debian.org/svn/pkg-nvidia/tarballs
Building and Uploading
At present, the package is not automatically built by the buildds.
Only i386 and amd64 are supported as Debian architectures. A
maintainer uploading new packages needs to do the builds on both
architectures.
The easiest way to do this is to pick the architecture on which one
can easily build and test (either i386 or amd64) and ensure the
package is working there. Then, do a final package build for upload.
This will, among other things, create a source package. Copy that
source package to a system of the other architecture, unpack it with
dpkg-source -x, and then do a binary-only build with debuild -B (or
the equivalent with pbuilder or sbuild). Note that you don't need an
NVIDIA card on the system where you're doing the build, but of course
ideally you want to test on all architectures before upload. Most
problems (at least of the kind that can be fixed in Debian) come from
building the kernel modules, which you can do without having an NVIDIA
card.
For uploads that have to go through the NEW queue because of added or
renamed binary packages, an upload of amd64 first is recommended.
-- Russ Allbery <rra@debian.org>, Tue, 6 Apr 2010 23:36:07 -0700
Backporting to Squeeze
For squeeze backports the following changes have to be made:
- reduce Build-Depends: debhelper and compat level to 8
- disable MULTIARCH variable in debian/rules.defs
- enable BACKPORT variable in debian/rules.defs
- remove Multi-Arch: lines from debian/control
These steps and the creation of an initial bpo-changelog entry have
been automated via
debian/rules prepare-squeeze-backport
-- Andreas Beckmann <debian@abeckmann.de> Wed, 10 Aug 2011 23:51:43 +0200
Forking a new legacy package
In order to create a new legacy package (e.g. for legacy version 42)
from this source package, the following changes need to be done:
* in debian/rules.defs set NVIDIA_LEGACY = 42
* in
- debian/changelog
- debian/control (Source: and Package: lines)
change the package name by inserting '-legacy-42xx' into the package
name after
- nvidia-glx
- libgl1-nvidia
- nvidia-kernel
- nvidia-graphics-drivers
* remove all packages that should no longer be built from debian/control
-- Andreas Beckmann <debian@abeckmann.de> Mon, 07 Jun 2010 16:10:09 +0200
|