Bug#888287: debomatic: Unable to use local repository created by the Repository module

2018-05-01 Thread Yavor Doganov
On Thu, 15 Feb 2018 23:20:08 +0200,
Luca Falavigna wrote:
> 2018-01-24 18:14 GMT+01:00 Yavor Doganov :
> > The pubring as specified in the repository section in the
> > configuration file is also not copied to the chroot's
> > /etc/apt/trusted.gpg.d as it should be.
> 
> Odd, pubring should be copied in if the relevant configuration option
> is defined in the configuration file and the file itself is found:
> https://sources.debian.org/src/debomatic/0.22-1/Debomatic/build.py/#L464-L468

I'm not sure, but I think this code is never reached (or more likely,
the condition is false).  Perhaps the same applies for the other
condition at line 460.

> > The commands file I use is:
> > builddep viewpdf.app_1:0.2dfsg1-6 experimental libgnustep-gui-dev (>= 0.26)
> >
> > I also tried copying the .debs and creating a local repository myself,
> > as I do with semi-automatically with pbuilder.  This repository is
> > also ignored if I add it to extramirrors under the experimental
> > distribution.
> 
> I think this is due to how experimental pinning is handled by apt. If
> you upload a new package revision (let's say 0.26.2-2+dom) in
> debomatic, and then you change the builddep command to request
> libgnustep-gui-dev (>= 0.26-2+dom), it should work.

I don't think I understand.  These commands result in successful
builds:

builddep gnustep-base_1.25.1-2 experimental libicu-dev (>= 60.2)
builddep lynkeos.app_2.10+dfsg1-3 experimental libavcodec-dev (>= 7:4.0)

However, if I build/upload (in debomatic) gnustep-make/2.7.0-4+dom
both for experimental/unstable these commands fail:

builddep mknfonts.tool_0.5-12 experimental gnustep-make (>= 2.7.0-4+dom)
builddep mknfonts.tool_0.5-12 unstable gnustep-make (>= 2.7.0-4+dom)

That's because these versions of icu/ffmpeg are available in the
official archive while the local debomatic repository is not taken
into account.  I don't believe it has anything to do with pinning.



Bug#888287: debomatic: Unable to use local repository created by the Repository module

2018-02-15 Thread Luca Falavigna
Hi Yavor,


2018-01-24 18:14 GMT+01:00 Yavor Doganov :
> Package: debomatic
> Version: 0.22-1
> Severity: normal
>
> First of all, thank you for writing and maintaing this package; it's a
> great piece of software.

Thanks!

> The pubring as specified in the repository section in the
> configuration file is also not copied to the chroot's
> /etc/apt/trusted.gpg.d as it should be.

Odd, pubring should be copied in if the relevant configuration option
is defined in the configuration file and the file itself is found:
https://sources.debian.org/src/debomatic/0.22-1/Debomatic/build.py/#L464-L468

> W: Invalid 'Date' entry in Release file 
> /var/lib/apt/lists/partial/_home_yavor_incoming_experimental_dists_experimental_Release
> (The second warning appears to be fixed in the debomatic Git repository.)

Indeed: 
https://github.com/debomatic/debomatic/commit/b67593dc7b3c52d4e9569a686ab01bca8ccd1b31#diff-73b7bc9a2d28c58cb25074cfccea32e4

> The commands file I use is:
> builddep viewpdf.app_1:0.2dfsg1-6 experimental libgnustep-gui-dev (>= 0.26)
>
> I also tried copying the .debs and creating a local repository myself,
> as I do with semi-automatically with pbuilder.  This repository is
> also ignored if I add it to extramirrors under the experimental
> distribution.

I think this is due to how experimental pinning is handled by apt. If
you upload a new package revision (let's say 0.26.2-2+dom) in
debomatic, and then you change the builddep command to request
libgnustep-gui-dev (>= 0.26-2+dom), it should work.

-- 
Cheers,
Luca



Bug#888287: debomatic: Unable to use local repository created by the Repository module

2018-01-24 Thread Yavor Doganov
Package: debomatic
Version: 0.22-1
Severity: normal

First of all, thank you for writing and maintaing this package; it's a
great piece of software.

Until now, I've been using pbuilder to test rdeps for library
transitions and it's painfully slow.  Yesterday I decided to give
debomatic a try.  Everything was going on smoothly until I reached the
next dependency level and had to rebuild a package which was also
depending on a library involved in the transition.

The first problem I found out is that the Repository module is
generating bogus signatures to Release files because it attempts to
use gpg's option --secret-keyring (Repository.py:136).  With the gnupg
version in stretch this option does nothing.  When I generated the
signing key as root, this problem was solved.

My distributions file contains:

[experimental]
...
extramirrors: deb [trusted=yes] file:/home/yavor/incoming/experimental 
experimental main

However, the local repository is not taken into account and
/etc/apt/sources.list in the chroot contains only this:

deb http://aneto:/debian unstable main contrib non-free
deb-src http://aneto:/debian unstable main contrib non-free
deb http://aneto:/debian/ experimental main contrib non-free

The pubring as specified in the repository section in the
configuration file is also not copied to the chroot's
/etc/apt/trusted.gpg.d as it should be.

If I add the line

deb [trusted=yes] file:/home/yavor/incoming/experimental experimental main

to my /etc/apt/sources.list it works as expected:

# LC_ALL=C apt-get update
Get:1 file:/home/yavor/incoming/experimental experimental InRelease [1988 B]
Get:1 file:/home/yavor/incoming/experimental experimental InRelease [1988 B]
Hit:2 http://security.debian.org/debian-security stretch/updates InRelease 
Ign:3 http://aneto:/debian stretch InRelease   
Ign:1 file:/home/yavor/incoming/experimental experimental InRelease
Hit:4 http://aneto:/debian stretch-updates InRelease
Hit:5 http://aneto:/debian stretch Release 
Reading package lists... Done
W: GPG error: file:/home/yavor/incoming/experimental experimental InRelease: 
The following signatures couldn't be verified because the public key is not 
available: NO_PUBKEY A87A9D94AB493D50
W: Invalid 'Date' entry in Release file 
/var/lib/apt/lists/partial/_home_yavor_incoming_experimental_dists_experimental_Release

(The second warning appears to be fixed in the debomatic Git repository.)

The commands file I use is:

builddep viewpdf.app_1:0.2dfsg1-6 experimental libgnustep-gui-dev (>= 0.26)

Please find my debomatic.conf and distributions files attached.  I
also attach the compressed buildlog of the failed build.  Note that
the local repository contains version -8 of popplerkit.framework which
was already rebuilt against gnustep-gui/0.26.

I expect the problem to be somewhere after build.py:460 but I don't
understand the language and already lost a lot of time in fruitless
attempts to solve this.  (Enough that I decided a bug report would be
justified.)

I also tried copying the .debs and creating a local repository myself,
as I do with semi-automatically with pbuilder.  This repository is
also ignored if I add it to extramirrors under the experimental
distribution.

P.S.  Note that gpg was initially set to False, I switched to True as
a last resort after reading debomatic's archived bugs.  Nothing
changed, I just had to sign the commands file with the same key.

-- System Information:
Debian Release: 9.3
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 4.9.0-5-amd64 (SMP w/2 CPU cores)
Locale: LANG=bg_BG.UTF-8, LC_CTYPE=bg_BG.UTF-8 (charmap=UTF-8), 
LANGUAGE=bg_BG.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages debomatic depends on:
ii  debootstrap  1.0.89
ii  init-system-helpers  1.48
ii  lsb-base 9.20161125
ii  python3  3.5.3-1
ii  python3-toposort 1.5-1
ii  sbuild   0.73.0-4
ii  schroot  1.6.10-3+deb9u1

Versions of packages debomatic recommends:
ii  gpgv   2.1.18-8~deb9u1
ii  python3-pyinotify  0.9.6-1

Versions of packages debomatic suggests:
ii  apt-utils   1.4.8
ii  autopkgtest 4.4
pn  blhc
ii  debian-archive-keyring  2017.5
ii  devscripts  2.17.6+deb9u1
ii  gnupg   2.1.18-8~deb9u1
ii  lintian 2.5.50.4
pn  piuparts
pn  ubuntu-keyring  

-- no debconf information
[debomatic]
incoming: /home/yavor/incoming
debootstrap: debootstrap
architecture: system
threads: 2
inotify: True
sleep: 60
logfile: /var/log/debomatic.log
loglevel: info

[distributions]
list: /home/yavor/debomatic/distributions
blacklist:
mapper: {'sid': 'unstable',
 'stretch': 'testing',
 'jessie': 'stable'}

[chroots]
profile: debomatic
commands: