diff --git a/debian/changelog b/debian/changelog
index ef43b7b0240586e1e2911270db7d9430f0b65f43..c3156c4e6508431203a88e5e9e8a2d5c230b6b0a 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,14 @@
+python-defaults (2.3.5-10) unstable; urgency=low
+
+  * Tighten dependencies between packages built from this source.
+    A versioned dependency on python-all / python-all-dev is enough
+    to depend on the same version of python / python-dev.
+  * python: Conflict with python-central (<< 0.4.17).
+  * python: Depend on a python2.3 built for the updated Python policy.
+  * python: Conflict with a python2.4 using the old Python policy.
+
+ -- Matthias Klose <doko@debian.org>  Thu, 15 Jun 2006 22:05:04 +0200
+
 python-defaults (2.3.5-9) unstable; urgency=low
 
   * python-all: Depend on python as well.
diff --git a/debian/control b/debian/control
index 28c99aed82138a0cfe31d5a5247d9243d0e4c556..0aa5a71860bb775e738cae543dd74e7605eae675 100644
--- a/debian/control
+++ b/debian/control
@@ -8,8 +8,8 @@ Standards-Version: 3.6.2
 Package: python
 Architecture: all
 Priority: standard
-Depends: python2.3 (>= 2.3.5-1)
-Conflicts: python2.3 (<= 2.3.2-6), python2.1 (<= 2.1.2), python-xmlbase, python-csv, python-bz2, python-base, python-central (<< 0.4.11)
+Depends: python2.3 (>= 2.3.5-14)
+Conflicts: python2.3 (<= 2.3.2-6), python2.4 (<< 2.4.3-7), python2.1 (<= 2.1.2), python-xmlbase, python-csv, python-bz2, python-base, python-central (<< 0.4.17)
 Replaces: python2.3 (<= 2.3.2-6), python-xmlbase, python-base
 Provides: python-email, python-xmlbase
 Suggests: python-doc, python-tk, python-profiler
@@ -25,7 +25,7 @@ Description: An interactive high-level object-oriented language (default version
 Package: python-minimal
 Architecture: all
 Priority: standard
-Depends: python2.3 (>= 2.3.5-1)
+Depends: python2.3 (>= 2.3.5-14)
 Description: A minimal subset of the Python language (default version)
  This package contains the interpreter and some essential modules.  It's used
  in the boot process for some basic tasks.
@@ -37,7 +37,7 @@ Description: A minimal subset of the Python language (default version)
 
 Package: python-examples
 Architecture: all
-Depends: python (>= 2.3), python (<< 2.4), python2.3-examples (>= 2.3.5-1)
+Depends: python (= ${Source-Version}), python2.3-examples (>= 2.3.5-14)
 Description: Examples for the Python language (default version)
  Examples, Demos and Tools for Python. These are files included in
  the upstream Python distribution.
@@ -47,7 +47,7 @@ Description: Examples for the Python language (default version)
 
 Package: python-dev
 Architecture: all
-Depends: python (>= 2.3), python (<< 2.4), python2.3-dev (>= 2.3.5-1)
+Depends: python (= ${Source-Version}), python2.3-dev (>= 2.3.5-14)
 Description: Header files and a static library for Python (default)
  Header files, a static library and development tools for building
  Python modules, extending the Python interpreter or embedding Python
@@ -61,7 +61,7 @@ Description: Header files and a static library for Python (default)
 
 Package: idle
 Architecture: all
-Depends: python (>= 2.3), python (<< 2.4), idle-python2.3 (>= 2.3.5-1)
+Depends: python (= ${Source-Version}), idle-python2.3 (>= 2.3.5-14)
 Enhances: python
 Description: An IDE for Python using Tkinter (default version)
  IDLE is an Integrated Development Environment for Python.
@@ -73,7 +73,7 @@ Description: An IDE for Python using Tkinter (default version)
 Package: python-doc
 Section: doc
 Architecture: all
-Depends: python2.3-doc (>= 2.3.5-1)
+Depends: python2.3-doc (>= 2.3.5-14)
 Suggests: python
 Conflicts: python-doc-info, python (<< 2.3.5)
 Replaces: python-doc-info, python (<< 2.3.5)
@@ -98,7 +98,7 @@ Description: Documentation for the high-level object-oriented language Python
 Package: python-dbg
 Architecture: all
 Priority: extra
-Depends: python (>= 2.3), python2.3-dbg (>= 2.3.5-1)
+Depends: python (= ${Source-Version}), python2.3-dbg (>= 2.3.5-14)
 Description: Debug Build of the Python Interpreter (version 2.3)
  Python interpreter configured with --pydebug. Dynamically loaded modules are
  searched in /usr/lib/python2.3/lib-dynload/debug first.
@@ -106,7 +106,7 @@ Description: Debug Build of the Python Interpreter (version 2.3)
 Package: python-all
 Architecture: all
 Priority: optional
-Depends: python (>= 2.3), python2.3, python2.4
+Depends: python (= ${Source-Version}), python2.3, python2.4
 Description: Package depending on all supported Python runtime versions
  The package currently depends on python2.3 and python2.4, in the future,
  dependencies on jython (Python for a JVM) and ironpython (Python for Mono)
@@ -118,7 +118,7 @@ Description: Package depending on all supported Python runtime versions
 Package: python-all-dev
 Architecture: all
 Priority: optional
-Depends: python-all (>= 2.3), python-dev, python2.3-dev, python2.4-dev
+Depends: python-all (= ${Source-Version}), python-dev (= ${Source-Version}), python2.3-dev, python2.4-dev
 Description: Package depending on all supported Python development packages
  The package currently depends on python2.3-dev and python2.4-dev, in the
  future, dependencies on jython (Python for a JVM) and ironpython (Python
diff --git a/debian/control.in b/debian/control.in
index c009080d3fdab5562782964e53d6b4b08c5d027e..a316c6ae4c4c0865fdf51559dc76ec59dc1c8af2 100644
--- a/debian/control.in
+++ b/debian/control.in
@@ -9,7 +9,7 @@ Package: python
 Architecture: all
 Priority: standard
 Depends: @PVER@ (>= @PREVVER@)
-Conflicts: python2.3 (<= 2.3.2-6), python2.1 (<= 2.1.2), python-xmlbase, python-csv, python-bz2, python-base, python-central (<< 0.4.11)
+Conflicts: python2.3 (<= 2.3.2-6), python2.4 (<< 2.4.3-7), python2.1 (<= 2.1.2), python-xmlbase, python-csv, python-bz2, python-base, python-central (<< 0.4.17)
 Replaces: python2.3 (<= 2.3.2-6), python-xmlbase, python-base
 Provides: python-email, python-xmlbase
 Suggests: python-doc, python-tk, python-profiler
@@ -37,7 +37,7 @@ Description: A minimal subset of the Python language (default version)
 
 Package: python-examples
 Architecture: all
-Depends: python (>= @VER@), python (<< @NVER@), @PVER@-examples (>= @PREVVER@)
+Depends: python (= ${Source-Version}), @PVER@-examples (>= @PREVVER@)
 Description: Examples for the Python language (default version)
  Examples, Demos and Tools for Python. These are files included in
  the upstream Python distribution.
@@ -47,7 +47,7 @@ Description: Examples for the Python language (default version)
 
 Package: python-dev
 Architecture: all
-Depends: python (>= @VER@), python (<< @NVER@), @PVER@-dev (>= @PREVVER@)
+Depends: python (= ${Source-Version}), @PVER@-dev (>= @PREVVER@)
 Description: Header files and a static library for Python (default)
  Header files, a static library and development tools for building
  Python modules, extending the Python interpreter or embedding Python
@@ -61,7 +61,7 @@ Description: Header files and a static library for Python (default)
 
 Package: idle
 Architecture: all
-Depends: python (>= @VER@), python (<< @NVER@), idle-@PVER@ (>= @PREVVER@)
+Depends: python (= ${Source-Version}), idle-@PVER@ (>= @PREVVER@)
 Enhances: python
 Description: An IDE for Python using Tkinter (default version)
  IDLE is an Integrated Development Environment for Python.
@@ -98,7 +98,7 @@ Description: Documentation for the high-level object-oriented language Python
 Package: python-dbg
 Architecture: all
 Priority: extra
-Depends: python (>= @VER@), python@VER@-dbg (>= @PREVVER@)
+Depends: python (= ${Source-Version}), python@VER@-dbg (>= @PREVVER@)
 Description: Debug Build of the Python Interpreter (version @VER@)
  Python interpreter configured with --pydebug. Dynamically loaded modules are
  searched in /usr/lib/python@VER@/lib-dynload/debug first.
@@ -106,7 +106,7 @@ Description: Debug Build of the Python Interpreter (version @VER@)
 Package: python-all
 Architecture: all
 Priority: optional
-Depends: python (>= @VER@), python2.3, python2.4
+Depends: python (= ${Source-Version}), python2.3, python2.4
 Description: Package depending on all supported Python runtime versions
  The package currently depends on python2.3 and python2.4, in the future,
  dependencies on jython (Python for a JVM) and ironpython (Python for Mono)
@@ -118,7 +118,7 @@ Description: Package depending on all supported Python runtime versions
 Package: python-all-dev
 Architecture: all
 Priority: optional
-Depends: python-all (>= @VER@), python-dev, python2.3-dev, python2.4-dev
+Depends: python-all (= ${Source-Version}), python-dev (= ${Source-Version}), python2.3-dev, python2.4-dev
 Description: Package depending on all supported Python development packages
  The package currently depends on python2.3-dev and python2.4-dev, in the
  future, dependencies on jython (Python for a JVM) and ironpython (Python
diff --git a/debian/pyversions b/debian/pyversions
deleted file mode 100755
index d9097b1b259e47b196d6156611df6da2b5361494..0000000000000000000000000000000000000000
--- a/debian/pyversions
+++ /dev/null
@@ -1,6 +0,0 @@
-#! /usr/bin/python
-
-import sys
-sys.path[0:0] = ['/usr/share/python']
-import pyversions
-pyversions.main()
diff --git a/debian/rules b/debian/rules
index 405fedf219f3d8182557ac86c59dfa5559cddf66..d5a77f42a695132a474da5027a150b8950d9fef5 100755
--- a/debian/rules
+++ b/debian/rules
@@ -14,7 +14,7 @@ export PVER=python2.3
 export PRIORITY=$(shell echo $(VER) | tr -d '.')0
 
 PREVVER	:= $(shell awk '/^python/ && NR > 1 {print substr($$2,2,length($$2)-2); exit}' debian/changelog)
-PREVVER := 2.3.5-1
+PREVVER := 2.3.5-14
 
 PWD		:= $(shell pwd)
 
@@ -151,12 +151,11 @@ binary-indep: build install stamp-doc
 	cp -p debian/debian_defaults \
 		debian/python/usr/share/python/
 
-	cp -p debian/pyversions.py \
+	install -m 755 debian/pyversions.py \
 		debian/python/usr/share/python/
-	install -m 755 debian/pyversions \
-		debian/python/usr/bin/
-	cp -p debian/pyversions.1 \
+	install -m 644 debian/pyversions.1 \
 		debian/python/usr/share/man/man1/
+	dh_link -ppython /usr/share/python/pyversions.py /usr/bin/pyversions
 
 	mkdir -p debian/python/usr/share/doc/python
 	cp -a debian/python-policy.{html,sgml,txt} \