On 03/01/2015 10:03 AM, Asaf Dalet wrote: > Hi, > I must first apologize for the somewhat lengthy post, but you'll see most > of it is just directory structures which you can probably skip. > > Here goes: > I have a private debian package which I want publish in binary format. > I want to supply 2 binary versions: > 1. precise/amd64 > 2. trusty/amd64 > > My packages are created with debuild and pbuilder and seem to be setup > correctly (I tested). > > The problem happens when I'm trying to create my repository - more > precisely, when I'm trying to add the second package to the repository. > > This is my raw directory structure (the output of debuild and pbuilder): > > ubuntu@ubuntu-build:~/dev/git/foo/_tmp$ ll -R > .: > total 16 > drwxrwxr-x 4 ubuntu ubuntu 4096 Mar 1 08:18 ./ > drwxrwxr-x 9 ubuntu ubuntu 4096 Feb 26 11:41 ../ > drwxrwxr-x 4 ubuntu ubuntu 4096 Feb 26 10:02 precise/ > drwxr-xr-x 4 root root 4096 Feb 26 10:12 trusty/ > > ./precise: > total 16 > drwxrwxr-x 4 ubuntu ubuntu 4096 Feb 26 10:02 ./ > drwxrwxr-x 4 ubuntu ubuntu 4096 Mar 1 08:18 ../ > drwxrwxr-x 2 ubuntu ubuntu 4096 Feb 26 09:04 amd64/ > > ./precise/amd64: > total 412 > drwxrwxr-x 2 ubuntu ubuntu 4096 Feb 26 09:04 ./ > drwxrwxr-x 4 ubuntu ubuntu 4096 Feb 26 10:02 ../ > -rw-r--r-- 1 ubuntu ubuntu 19173 Feb 26 09:04 foo_1.0.1_amd64.build > -rw-r--r-- 1 ubuntu ubuntu 1415 Feb 26 09:04 foo_1.0.1_amd64.changes > -rw-r--r-- 1 ubuntu ubuntu 20174 Feb 26 09:04 foo_1.0.1_amd64.deb > -rw-r--r-- 1 ubuntu ubuntu 677 Feb 26 09:03 foo_1.0.1.debian.tar.gz > -rw-r--r-- 1 ubuntu ubuntu 794 Feb 26 09:03 foo_1.0.1.dsc > -rw-rw-r-- 1 ubuntu ubuntu 359985 Feb 26 09:03 foo_1.0.1.orig.tar.gz > > ./trusty: > total 16 > drwxr-xr-x 4 root root 4096 Feb 26 10:12 ./ > drwxrwxr-x 4 ubuntu ubuntu 4096 Mar 1 08:18 ../ > drwxr-xr-x 2 root root 4096 Feb 26 10:08 amd64/ > > ./trusty/amd64: > total 392 > drwxr-xr-x 2 root root 4096 Feb 26 10:08 ./ > drwxr-xr-x 4 root root 4096 Feb 26 10:12 ../ > -rw-rw-r-- 1 ubuntu ubuntu 1415 Feb 26 10:08 foo_1.0.1_amd64.changes > -rw-r--r-- 1 ubuntu ubuntu 20160 Feb 26 10:08 foo_1.0.1_amd64.deb > -rw-r--r-- 1 ubuntu ubuntu 677 Feb 26 10:08 foo_1.0.1.debian.tar.gz > -rw-r--r-- 1 ubuntu ubuntu 794 Feb 26 10:08 foo_1.0.1.dsc > -rw-rw-r-- 1 ubuntu ubuntu 359985 Feb 26 09:03 foo_1.0.1.orig.tar.gz > > > Now, when I run: > reprepro includedeb precise > ~/dev/git/foo/_tmp/precise/amd64/foo_1.0.1_amd64.deb > > I get this nice repository structure: > drwxrwxr-x 6 ubuntu ubuntu 4096 Feb 26 12:13 ./ > drwxrwxr-x 9 ubuntu ubuntu 4096 Feb 26 11:41 ../ > drwxrwxr-x 2 ubuntu ubuntu 4096 Feb 26 12:11 conf/ > drwxrwxr-x 2 ubuntu ubuntu 4096 Mar 1 08:08 db/ > drwxrwxr-x 3 ubuntu ubuntu 4096 Feb 26 12:13 dists/ > drwxrwxr-x 3 ubuntu ubuntu 4096 Feb 26 12:13 pool/ > > ./conf: > total 16 > drwxrwxr-x 2 ubuntu ubuntu 4096 Feb 26 12:11 ./ > drwxrwxr-x 6 ubuntu ubuntu 4096 Feb 26 12:13 ../ > -rw-rw-r-- 1 ubuntu ubuntu 286 Feb 26 12:11 distributions > -rw-rw-r-- 1 ubuntu ubuntu 41 Feb 26 11:41 options > > ./db: > total 120 > drwxrwxr-x 2 ubuntu ubuntu 4096 Mar 1 08:08 ./ > drwxrwxr-x 6 ubuntu ubuntu 4096 Feb 26 12:13 ../ > -rw-rw-r-- 1 ubuntu ubuntu 16384 Feb 26 12:13 checksums.db > -rw-rw-r-- 1 ubuntu ubuntu 16384 Feb 26 12:13 contents.cache.db > -rw-rw-r-- 1 ubuntu ubuntu 40960 Feb 26 12:13 packages.db > -rw-rw-r-- 1 ubuntu ubuntu 16384 Feb 26 12:13 references.db > -rw-rw-r-- 1 ubuntu ubuntu 20480 Feb 26 12:13 release.caches.db > -rw-rw-r-- 1 ubuntu ubuntu 32 Mar 1 08:08 version > > ./dists: > total 12 > drwxrwxr-x 3 ubuntu ubuntu 4096 Feb 26 12:13 ./ > drwxrwxr-x 6 ubuntu ubuntu 4096 Feb 26 12:13 ../ > drwxrwxr-x 3 ubuntu ubuntu 4096 Feb 26 12:13 precise/ > > ./dists/precise: > total 16 > drwxrwxr-x 3 ubuntu ubuntu 4096 Feb 26 12:13 ./ > drwxrwxr-x 3 ubuntu ubuntu 4096 Feb 26 12:13 ../ > drwxrwxr-x 4 ubuntu ubuntu 4096 Feb 26 12:13 main/ > -rw-rw-r-- 1 ubuntu ubuntu 1605 Feb 26 12:13 Release > > ./dists/precise/main: > total 16 > drwxrwxr-x 4 ubuntu ubuntu 4096 Feb 26 12:13 ./ > drwxrwxr-x 3 ubuntu ubuntu 4096 Feb 26 12:13 ../ > drwxrwxr-x 2 ubuntu ubuntu 4096 Feb 26 12:13 binary-amd64/ > > ./dists/precise/main/binary-amd64: > total 16 > drwxrwxr-x 2 ubuntu ubuntu 4096 Feb 26 12:13 ./ > drwxrwxr-x 4 ubuntu ubuntu 4096 Feb 26 12:13 ../ > -rw-rw-r-- 1 ubuntu ubuntu 0 Feb 26 12:13 Packages > -rw-rw-r-- 1 ubuntu ubuntu 20 Feb 26 12:13 Packages.gz > -rw-rw-r-- 1 ubuntu ubuntu 120 Feb 26 12:13 Release > > ./pool: > total 12 > drwxrwxr-x 3 ubuntu ubuntu 4096 Feb 26 12:13 ./ > drwxrwxr-x 6 ubuntu ubuntu 4096 Feb 26 12:13 ../ > drwxrwxr-x 3 ubuntu ubuntu 4096 Feb 26 12:13 main/ > > ./pool/main: > total 12 > drwxrwxr-x 3 ubuntu ubuntu 4096 Feb 26 12:13 ./ > drwxrwxr-x 3 ubuntu ubuntu 4096 Feb 26 12:13 ../ > drwxrwxr-x 3 ubuntu ubuntu 4096 Feb 26 12:13 p/ > > ./pool/main/p: > total 12 > drwxrwxr-x 3 ubuntu ubuntu 4096 Feb 26 12:13 ./ > drwxrwxr-x 3 ubuntu ubuntu 4096 Feb 26 12:13 ../ > drwxrwxr-x 2 ubuntu ubuntu 4096 Feb 26 12:13 foo/ > > ./pool/main/p/foo: > total 44 > drwxrwxr-x 2 ubuntu ubuntu 4096 Feb 26 12:13 ./ > drwxrwxr-x 3 ubuntu ubuntu 4096 Feb 26 12:13 ../ > -rw-rw-r-- 1 ubuntu ubuntu 34618 Feb 26 12:13 foo_1.0.1_amd64.deb > > > But when I run: > reprepro includedeb trusty > ~/dev/git/foo/_tmp/trusty/amd64/foo_1.0.1_amd64.deb > > I get this error: > ~/dev/git/foo/_tmp/trusty/amd64/foo_1.0.1_amd64.deb: component guessed as > 'main' > *ERROR: '~/dev/git/foo/_tmp/trusty/amd64/foo_1.0.1_amd64.deb' cannot be > included as 'pool/main/p/foo/foo_1.0.1_amd64.deb'.* > Already existing files can only be included again, if they are the same, > but: > md5 expected: f2d147640c6784c869fb10e1cdb5b579, got: > fa4f535e0bf8a68464b6f276bf3c7c5e > sha1 expected: cec0a5544de71820e05d469f8de21eaed7e1c2ca, got: > 335b27c4873f3766973a27ed103cd0a99dfb98ff > sha256 expected: > 51f2e9a722c5fc265592d51c1c7c4f6ad9acf1454cbfa90c12873c53c0e8bba4, got: > 42842f86dd2e256c781af00c26c5cd73de6636be9200a8359d3fd33f2e47ef6d > size expected: 34618, got: 20194 > There have been errors! > > > I read somewhere that reprepro does not support having 2 files with the > same name in a repo. is it true? even when the files are in different > directories (for different distors)? No way to create pool subdirectories > under pool? > > I briefly inspected mini-dinstaller and mini-dak, but they seem a little > overqualified for my simple scenario. > I like reprepro for its simplicity and the fact that it does the signing > for me, but I really don't want to change package names for it to work. > > So, my questiona are eventually: > 1. is there a way for me to use reprepro without changing my .deb file > names? > 2. if not, what's the simplest alternative? > > > Thanks, > Asaf >
IMHO, you can go with changing the debian_revision [0],( or ubuntu revsion ) in debian/changelog. This way you can have 2 different packages of the same software in the pool directory. [0] https://www.debian.org/doc/debian-policy/ch-controlfields.html#s-f-Version Regards, Alex -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected] Archive: https://lists.debian.org/[email protected]

