NOTE: This answer is out of date, as PGF/TikZ is now part of the Debian TeX Live packages, and does not require separate installation.
This answer is for users of PGF and Debian or Ubuntu, or other Debian
derived Linux distributions.
The most recent version of PGF available in Debian and Ubuntu is 2.0,
from 2008. The TeX distribution used by Debian and Ubuntu is Tex Live,
currently Tex Live 2009. It turns out that making a PGF 2.10 package
for Debian is easy, and works with Tex Live 2009. This method should
also work with development versions. Making Debian packages as opposed
to a local installation has obvious advantages, including clean
upgrades and the opportunity for automated installs across large
numbers of machines.
According to the Debian PGF maintainer, he will be packaging 2.10 soon. See http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=606128
So, here is a recipe, assuming only a modest amount of knowledge about
Debian packaging.
If you don't want to go through the recipe below, you can download the
PGF binary from the following temporary location. But the recipe below
is easier than it looks, honest.
http://bulldog.duhs.duke.edu/~faheem/debian/pgf_2.10-0_all.deb
1) Download the Debian sources for PGF 2.0. This assumes you have a
line in /etc/apt/sources.list like
deb-src http://debian.csail.mit.edu/debian/ squeeze main non-free contrib
Then do
$ apt-get source pgf
This will download and unpack the pgf source directory
$ apt-get source pgf
Reading package lists... Done
Building dependency tree
Reading state information... Done
Need to get 3,770 kB of source archives.
Get:1 http://debian.csail.mit.edu/debian/ squeeze/main pgf 2.00-1 (dsc) [902 B]
Get:2 http://debian.csail.mit.edu/debian/ squeeze/main pgf 2.00-1 (tar) [3,759 kB]
Get:3 http://debian.csail.mit.edu/debian/ squeeze/main pgf 2.00-1 (diff) [10.8 kB]
Fetched 3,770 kB in 22s (170 kB/s)
dpkg-source: info: extracting pgf in pgf-2.00
dpkg-source: info: unpacking pgf_2.00.orig.tar.gz
dpkg-source: info: applying pgf_2.00-1.diff.gz
2) Then download the PGF 2.10 source to the same directory.
$ wget -c http://sourceforge.net/projects/pgf/files/pgf/version%202.10/pgf_2.10.tds.zip/download -O pgf_2.10.tds.zip
3) Unzip the source
$ mkdir pgf-2.10
$ cp pgf_2.10.tds.zip pgf-2.10
$ cd pgf-2.10
$ unzip pgf_2.10.tds.zip
$ rm pgf_2.10.tds.zip
4) Copy the debian directory from pgf-2.00
$ cd ..
$ cp -ar pgf-2.00/debian/ pgf-2.10/
At this point it is probably a good idea to put the files under
pgf-2.10/ under version control so you can roll back if you screw
up. I use and recommend mercurial.
$ cd pgf-2.10/debian/
5) Now some easy changes.
Change 1: This corresponds to a reorganization of the files in
PGF. Just change the following line. You need to use a tab instead of
spaces here.
# HG changeset patch
# User Faheem Mitha <[email protected]>
# Date 1298803034 -19800
# Node ID a0b004038f1525f2c4b9826d04624ac086df85ed
# Parent 84bf199052f3b87890ece302867a0ed0eeed73b9
Changes to debian/rules
diff -r 84bf199052f3 -r a0b004038f15 debian/rules
--- a/debian/rules Sun Feb 27 15:43:12 2011 +0530
+++ b/debian/rules Sun Feb 27 16:07:14 2011 +0530
@@ -63,7 +63,7 @@
$(DOCDIR)/pgf
# cp -r doc/generic/pgf/version-for-tex4ht/en/* # $(DOCDIR)/pgf/html/
- cp -r context generic latex plain $(TEXMF)/tex
+ cp -r tex/context tex/generic tex/latex tex/plain $(TEXMF)/tex
CHANGE 2: Change the compat level. The file debian/compat contains the
number 4. Simply change it to 7.
pgf-2.10/debian$ echo 7 > compat
will work
# HG changeset patch
# User Faheem Mitha <[email protected]>
# Date 1298803274 -19800
# Node ID a3f351d6056adfd81f30cbd3159addb1dba04506
# Parent 302a183d556d05654c4b045ffe028ce6557cc008
Update debian/compat
diff -r 302a183d556d -r a3f351d6056a debian/compat
--- a/debian/compat Sun Feb 27 16:08:54 2011 +0530
+++ b/debian/compat Sun Feb 27 16:11:14 2011 +0530
@@ -1,1 +1,1 @@
-4
+7
CHANGE 3: Update the changelog.
pgf-2.10/debian$ dch -i
I used
# HG changeset patch
# User Faheem Mitha <[email protected]>
# Date 1298803134 -19800
# Node ID 302a183d556d05654c4b045ffe028ce6557cc008
# Parent a0b004038f1525f2c4b9826d04624ac086df85ed
Update changelog.
diff -r a0b004038f15 -r 302a183d556d debian/changelog
--- a/debian/changelog Sun Feb 27 16:07:14 2011 +0530
+++ b/debian/changelog Sun Feb 27 16:08:54 2011 +0530
@@ -1,3 +1,10 @@
+pgf (2.10-0) unstable; urgency=low
+
+ * Non-maintainer upload.
+ * New upstream version.
+
+ -- Faheem Mitha <[email protected]> Sun, 27 Feb 2011 16:07:35 +0530
+
pgf (2.00-1) unstable; urgency=low
6) Then
pgf-2.10/debian$ debuild binary
should build your package and place in the directory above pgf-2.10.