[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Local apt repository and specific version



Hi there,

We use a local apt repository as a means to distribute our own
software.  The software is not and will not ever be part of the
official Debian archives.  Our software consists of 4 packages, 3 real
ones, lets call then package1, package2 and package3 and a overall
package that exists to bring in the three packages at a specific
version to make a overall version of our system - gets call that
package-system.

The local repository consists of many versions of each of the four
packages.  When asking apt to install the very latest version of
package-system, everything works just as it should.  But when asking
apt to install a specific older version of package-system (which we
sometimes need to do), apt complains and says the dependencies cannot
be met.

Assume we have

Package-system V2.0.2 which depends on
   Package1 V2.1.99
   Package2 V2.1.99
   Pacakge3 V2.1.99

Package-system V2.0.1 which depends on
   Package1 V2.1.88
   Package2 V2.1.88
   Pacakge3 V2.1.88

Then "apt-get install package-system" installs package-system 2.0.2
along with V2.1.99 of the three packages.  But "apt-get install
package-system=2.0.1" fails as follows:

The following packages have unmet dependencies.
  package-system: Depends: package1 (= 2.1.88) but 2.1.99 is to be installed
                Depends: package2 (= 2.1.88) but 2.1.99 is to be installed
                Depends: package3 (= 2.1.88) but 2.1.99 is to be installed
E: Broken packages

I could understand this if V2.1.88 of package1,2 & 3 were not
available, but they are

apt-get install package1=2.1.88
The following NEW packages will be installed
  package1
0 upgraded, 1 newly installed, 0 to remove and 486 not upgraded.
Need to get 53.7MB/53.7MB of archives.
After this operation, 67.4MB of additional disk space will be used

Does anyone have any ideas?  I am using apt v0.7.20.2+lenny1 and have
no apt pinnings in place.  The control file for package-system that
looks like this:

Package: package-system
Version: XXX
Architecture: i386
Maintainer: XXX
Installed-Size: 76
Depends: package1 (= XXX), package2 (XXX), package3 (XXX)
Section: misc
Priority: extra

The Packages & Release files are generated with apt-ftparchive.

apt-cache policy shows this for package 1 (as per 2 and 3)

package1:
  Installed: (none)
  Candidate: 2.1.99
  Version table:
     2.1.99 0
          1 http://apt.foocom ./ Packages
     2.1.88 0
          1 http://apt.foo.com ./ Packages

Many thanks


Reply to: