Bug#924161: unblock: lirc/0.10.1-5.1

2019-03-13 Thread Nicolas Braud-Santoni
On Tue, Mar 12, 2019 at 07:46:34AM +0100, Andreas Beckmann wrote:
> Hi Nicolas,

Hi Andreas,

> On 2019-03-12 02:21, Nicolas Braud-Santoni wrote:
> I didn't spot anything obviously broken in the new diff.

\o/

Sorry this took so much back-and-forth, and thanks for your patience  <3


> Just to verify again, the package currently has broken symlinks that are going
> to be replaced by files, not directories? (Otherwise you would still need some
> symlink_to_dir.)

Correct  :)


Best,

  nicoo


signature.asc
Description: PGP signature


Bug#924161: unblock: lirc/0.10.1-5.1

2019-03-11 Thread Andreas Beckmann
Hi Nicolas,

On 2019-03-12 02:21, Nicolas Braud-Santoni wrote:
> On Mon, Mar 11, 2019 at 12:31:42AM +0100, Andreas Beckmann wrote:
>> This needs a lot of more work :-(
>>
>> * is this usage of --link-doc valid? the packages don't have a strictly
>> versioned Depends: lirc (= ${binary:version}), so I can install *only*
>> liblirc0 and have a dangling /usr/share/doc/liblirc0 and e.g. no
>> copyright file
> 
> Right, that should have been liblirc0 (which they all depend on, transitively,
> except for lirc-doc). However, I now noticed an interaction with lirc-doc 
> which
> makes --link-doc particularly unadvisable (see below).

I didn't spot anything obviously broken in the new diff. Just to verify
again, the package currently has broken symlinks that are going to be
replaced by files, not directories? (Otherwise you would still need some
symlink_to_dir.)

Thanks!

Andreas



Bug#924161: unblock: lirc/0.10.1-5.1

2019-03-11 Thread Nicolas Braud-Santoni
Hi abe,


On Mon, Mar 11, 2019 at 12:31:42AM +0100, Andreas Beckmann wrote:
> This needs a lot of more work :-(
> 
> * is this usage of --link-doc valid? the packages don't have a strictly
> versioned Depends: lirc (= ${binary:version}), so I can install *only*
> liblirc0 and have a dangling /usr/share/doc/liblirc0 and e.g. no
> copyright file

Right, that should have been liblirc0 (which they all depend on, transitively,
except for lirc-doc). However, I now noticed an interaction with lirc-doc which
makes --link-doc particularly unadvisable (see below).

Note to self: see if it's possible to detect that error automatically in 
lintian.


> * in all the *.maintscript files, add 0.10.1-5.1~ as 'prior-version'
> argument - you don't want to run this stuff again on *every* upgrade
> 
> * lirc.maintscript has typos: /etx/...

Thanks :)

I didn't get yelled at by piuparts, so it went right through my testing...


> * does the override_dh_installdocs target work with
>   dpkg-buildpackage -A/-B (i.e. building arch and indep packages separately)

Yes, I tested that, build went fine  :)

(To be precise, sbuild --no-arch-all --arch-any && sbuild --arch-all 
--no-arch-any)


> * lirc.postinst: using wildcards looks very fragile

I tried using `-p lirc` but that didn't work, probably for the same reason
dh-python wasn't doing it automatically in the first place.

Would you prefer leaving #924158 open and not doing manually?


> * lirc.posztrm: why do you manually delete conffiles on purge? dpkg does
> that already. (If they are not conffiles, you can't use
> dpkg-maintscript-helper on them.)

The package was previously doing that, and I didn't touch that part of the
postrm script, but I could remove the unecessary conffile handling if you'd
like.

I suspect that's the because the package previously installed the conffiles with
a spurious .dist extension, and copied them to the right location during
postinst, for some unscrutable reason.

debian/rules had a comment saying it was “not to overwrite conffiles” but that
makes little sense: dpkg won't overwrite user-modified conffiles by default.


> PS: I hate cleaning up after misuse of --link-doc. Save brain cycles,
> not bits on disks. Right now I'm afraid that you are turning a mess into
> a greater mess.

I'm not super keen on --link-doc either, but I didn't want to completely ignore
the original package maintainer's intent. However, I just noticed additional
complications -- lirc-doc shipping things in /usr/share/doc/lirc -- which make
it a bad idea (or at least more annoying to implement than I care to), so I just
reverted the change.

On the other hand, I can agree this is a mess and I might not have a mop large
enough...


> PPS: I only looked at the debdiff, not at the package itself

Appreciated regardless.  :)


Here is the diff compared to the previous proposed version, the full debdiff is
attached:

  diff --git c/debian/changelog w/debian/changelog
  index 4681945..32b2dc1 100644
  --- c/debian/changelog
  +++ w/debian/changelog
  @@ -3,16 +3,19 @@ lirc (0.10.1-5.1) unstable; urgency=medium
 * Non-maintainer upload
   
 * debian/rules
  -+ Replace rdfind-based dedup with dh_installdocs --link-doc
  -  - This achieves the same effect (copyright, changelog, ... aren't
  -duplicated) cleanly and without RC-buggyness.  (Closes: #919843)
  -  - Add missing maintscripts for dir-to-symlink migration.
  -Thanks to Niels Thykier for spotting the bug.
  ++ Remove rdfind-based dedup (Closes: #919843)
  +  Using dh_installdocs --link-docs was investigated, and rejected due to
  +  - limited benefits;
  +  - interactions between lirc-docs shipping files under 
/usr/share/doc/lirc,
  +but liblirc0 being the obvious candidate due to dependencies.
   
   + Do not install conffiles in a dummy location
 dpkg will, by default, not overwrite users' conffiles,
 so shipping them in a different location is superfluous.
   
  +  * Removed liblircclient{0,-dev}
  +They were obsolete transitional packages that predated the stretch 
release.
  +
 * Rename debian/post{inst,rm} to lirc.post{inst,rm}
 * debian/lirc.{postinst,prerm}: Recompile and remove Python bytecode as 
needed
   Closes: #924158
  @@ -23,7 +26,7 @@ lirc (0.10.1-5.1) unstable; urgency=medium
   
 * debian/changelog: Fix spelling in v0.10.1-4
   
  - -- Nicolas Braud-Santoni   Sun, 10 Mar 2019 00:28:01 +0100
  + -- Nicolas Braud-Santoni   Tue, 12 Mar 2019 01:33:40 +0100
   
   lirc (0.10.1-5) unstable; urgency=medium
   
  diff --git c/debian/control w/debian/control
  index 1fc9231..8711007 100644
  --- c/debian/control
  +++ w/debian/control
  @@ -34,6 +34,7 @@ Build-Depends:
xsltproc
   # libjs-jquery
   
  +
   Package: lirc
   Architecture: any
   Depends:
  @@ -104,24 +105,6 @@ Description: Infra-red remote control support - Run-time 
libraries
LIRC applications (lirc_private.so*)
   
   
  -Package: liblir

Bug#924161: unblock: lirc/0.10.1-5.1

2019-03-10 Thread Andreas Beckmann
On Sun, 10 Mar 2019 18:07:57 +0100 Nicolas Braud-Santoni
 wrote:
> Control: tags -1 - moreinfo
> 
> On Sun, Mar 10, 2019 at 08:58:00AM +, Niels Thykier wrote:
> > --link-doc requires dir-to-symlink migration via dpkg-maintscript-helper
> > in the maintscript.  I do not see that in the debdiff, so I assume the
> > proposed changes will trigger a new bug (as I recall, an RC bug).
> 
> Yes indeed!
> Thanks for catching this, here is the debdiff for the updated package.
> 
> I also fixed some other issues, like #924158.

This needs a lot of more work :-(

* is this usage of --link-doc valid? the packages don't have a strictly
versioned Depends: lirc (= ${binary:version}), so I can install *only*
liblirc0 and have a dangling /usr/share/doc/liblirc0 and e.g. no
copyright file

* in all the *.maintscript files, add 0.10.1-5.1~ as 'prior-version'
argument - you don't want to run this stuff again on *every* upgrade

* lirc.maintscript has typos: /etx/...

* does the override_dh_installdocs target work with
  dpkg-buildpackage -A/-B (i.e. building arch and indep packages separately)

* lirc.postinst: using wildcards looks very fragile

* lirc.posztrm: why do you manually delete conffiles on purge? dpkg does
that already. (If they are not conffiles, you can't use
dpkg-maintscript-helper on them.)


Andreas

PS: I hate cleaning up after misuse of --link-doc. Save brain cycles,
not bits on disks. Right now I'm afraid that you are turning a mess into
a greater mess.

PPS: I only looked at the debdiff, not at the package itself



Bug#924161: unblock: lirc/0.10.1-5.1

2019-03-10 Thread Nicolas Braud-Santoni
Control: tags -1 - moreinfo

On Sun, Mar 10, 2019 at 08:58:00AM +, Niels Thykier wrote:
> --link-doc requires dir-to-symlink migration via dpkg-maintscript-helper
> in the maintscript.  I do not see that in the debdiff, so I assume the
> proposed changes will trigger a new bug (as I recall, an RC bug).

Yes indeed!
Thanks for catching this, here is the debdiff for the updated package.

I also fixed some other issues, like #924158.


Best,

  nicoo


diff -Nru lirc-0.10.1/debian/changelog lirc-0.10.1/debian/changelog
--- lirc-0.10.1/debian/changelog2019-01-01 15:19:01.0 +0100
+++ lirc-0.10.1/debian/changelog2019-03-10 00:28:01.0 +0100
@@ -1,3 +1,30 @@
+lirc (0.10.1-5.1) unstable; urgency=medium
+
+  * Non-maintainer upload
+
+  * debian/rules
++ Replace rdfind-based dedup with dh_installdocs --link-doc
+  - This achieves the same effect (copyright, changelog, ... aren't
+duplicated) cleanly and without RC-buggyness.  (Closes: #919843)
+  - Add missing maintscripts for dir-to-symlink migration.
+Thanks to Niels Thykier for spotting the bug.
+
++ Do not install conffiles in a dummy location
+  dpkg will, by default, not overwrite users' conffiles,
+  so shipping them in a different location is superfluous.
+
+  * Rename debian/post{inst,rm} to lirc.post{inst,rm}
+  * debian/lirc.{postinst,prerm}: Recompile and remove Python bytecode as 
needed
+Closes: #924158
+
+  * debian/control: Fix relationships on liblirc{,client}-dev.
+This should be Breaks+Replaces, not Conflict+Replaces.
+Using the former should ensure that upgrading from stretch works smoothly.
+
+  * debian/changelog: Fix spelling in v0.10.1-4
+
+ -- Nicolas Braud-Santoni   Sun, 10 Mar 2019 00:28:01 +0100
+
 lirc (0.10.1-5) unstable; urgency=medium
 
   * Fix upstream #343, --connect parsing error.
@@ -11,7 +38,7 @@
 lirc (0.10.1-4) unstable; urgency=medium
 
   [ Alec Leamas ]
-  * Dont use broken LOG_CONS syslog flag, closes: #872749.
+  * Don't use broken LOG_CONS syslog flag, closes: #872749.
 
   [ Pino Toscano ]
   * Fix build on !linux OS, restrict systemd only to linux OS. closes: #912400
diff -Nru lirc-0.10.1/debian/control lirc-0.10.1/debian/control
--- lirc-0.10.1/debian/control  2019-01-01 15:19:01.0 +0100
+++ lirc-0.10.1/debian/control  2019-03-10 00:28:01.0 +0100
@@ -29,7 +29,6 @@
  python3-dev (>= 3.5),
  python3-setuptools,
  python3-yaml,
- rdfind,
  socat [!hurd-any],
  systemd [linux-any],
  xsltproc
@@ -128,7 +127,7 @@
 #Multi-Arch: same
 Section: libdevel
 Provides: liblircclient-dev
-Conflicts: liblircclient-dev (<< 0.9.1)
+Breaks: liblircclient-dev (<< 0.9.1)
 Replaces: liblircclient-dev (<< 0.9.1)
 Depends:
  liblirc0 (= ${binary:Version}),
diff -Nru lirc-0.10.1/debian/liblirc0.maintscript 
lirc-0.10.1/debian/liblirc0.maintscript
--- lirc-0.10.1/debian/liblirc0.maintscript 1970-01-01 01:00:00.0 
+0100
+++ lirc-0.10.1/debian/liblirc0.maintscript 2019-03-10 00:28:01.0 
+0100
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/liblirc0 /usr/share/doc/lirc
diff -Nru lirc-0.10.1/debian/liblirc-client0.maintscript 
lirc-0.10.1/debian/liblirc-client0.maintscript
--- lirc-0.10.1/debian/liblirc-client0.maintscript  1970-01-01 
01:00:00.0 +0100
+++ lirc-0.10.1/debian/liblirc-client0.maintscript  2019-03-10 
00:28:01.0 +0100
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/liblirc-client0 /usr/share/doc/lirc
diff -Nru lirc-0.10.1/debian/liblircclient0.maintscript 
lirc-0.10.1/debian/liblircclient0.maintscript
--- lirc-0.10.1/debian/liblircclient0.maintscript   1970-01-01 
01:00:00.0 +0100
+++ lirc-0.10.1/debian/liblircclient0.maintscript   2019-03-10 
00:28:01.0 +0100
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/liblircclient0 /usr/share/doc/lirc
diff -Nru lirc-0.10.1/debian/liblircclient-dev.maintscript 
lirc-0.10.1/debian/liblircclient-dev.maintscript
--- lirc-0.10.1/debian/liblircclient-dev.maintscript1970-01-01 
01:00:00.0 +0100
+++ lirc-0.10.1/debian/liblircclient-dev.maintscript2019-03-10 
00:28:01.0 +0100
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/liblircclient-dev /usr/share/doc/lirc
diff -Nru lirc-0.10.1/debian/liblirc-dev.maintscript 
lirc-0.10.1/debian/liblirc-dev.maintscript
--- lirc-0.10.1/debian/liblirc-dev.maintscript  1970-01-01 01:00:00.0 
+0100
+++ lirc-0.10.1/debian/liblirc-dev.maintscript  2019-03-10 00:28:01.0 
+0100
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/liblirc-dev /usr/share/doc/lirc
diff -Nru lirc-0.10.1/debian/lirc.maintscript 
lirc-0.10.1/debian/lirc.maintscript
--- lirc-0.10.1/debian/lirc.maintscript 1970-01-01 01:00:00.0 +0100
+++ lirc-0.10.1/debian/lirc.maintscript 2019-03-10 00:28:01.0 +0100
@@ -0,0 +1,4 @@
+mv_conffile /etx/lirc/lircd.conf.dist /etc/lirc/lircd.conf
+mv_conffile /etx/lirc/lircmd.conf.dist /etc/lirc/lircmd.conf
+mv_conffile /etx/lirc/irexec.lircrc.dist /etc/lirc/ir

Bug#924161: unblock: lirc/0.10.1-5.1

2019-03-10 Thread Niels Thykier
Control: tags -1 moreinfo

Nicolas Braud-Santoni:
> Package: release.debian.org
> Severity: normal
> User: release.debian@packages.debian.org
> Usertags: unblock
> Control: block 919843 by -1
> 
> Dear release team,
> 
> Please unblock package lirc, as I fixed an RC bug.
> Note that the upload was to DELAYED/3, as it is a NMU.
> 
> 
> Best,
> 
>   nicoo
> 
> 
> diff -Nru lirc-0.10.1/debian/changelog lirc-0.10.1/debian/changelog
> --- lirc-0.10.1/debian/changelog2019-01-01 15:19:01.0 +0100
> +++ lirc-0.10.1/debian/changelog2019-03-10 00:28:01.0 +0100
> @@ -1,3 +1,18 @@
> +lirc (0.10.1-5.1) unstable; urgency=medium
> +
> +  * Non-maintainer upload
> +  * debian/rules: Replace rdfind-based dedup with dh_installdocs --link-doc
> +This achieves the same effect (copyright, changelog, ... aren't 
> duplicated)
> +cleanly and without RC-buggyness.  (Closes: #919843)
> +
> [...]

--link-doc requires dir-to-symlink migration via dpkg-maintscript-helper
in the maintscript.  I do not see that in the debdiff, so I assume the
proposed changes will trigger a new bug (as I recall, an RC bug).

Thanks,
~Niels



Bug#924161: unblock: lirc/0.10.1-5.1

2019-03-09 Thread Nicolas Braud-Santoni
Package: release.debian.org
Severity: normal
User: release.debian@packages.debian.org
Usertags: unblock
Control: block 919843 by -1

-BEGIN PGP SIGNED MESSAGE-
Hash: SHA512

Dear release team,

Please unblock package lirc, as I fixed an RC bug.
Note that the upload was to DELAYED/3, as it is a NMU.


Best,

  nicoo


diff -Nru lirc-0.10.1/debian/changelog lirc-0.10.1/debian/changelog
- --- lirc-0.10.1/debian/changelog2019-01-01 15:19:01.0 +0100
+++ lirc-0.10.1/debian/changelog2019-03-10 00:28:01.0 +0100
@@ -1,3 +1,18 @@
+lirc (0.10.1-5.1) unstable; urgency=medium
+
+  * Non-maintainer upload
+  * debian/rules: Replace rdfind-based dedup with dh_installdocs --link-doc
+This achieves the same effect (copyright, changelog, ... aren't duplicated)
+cleanly and without RC-buggyness.  (Closes: #919843)
+
+  * debian/control: Fix relationships on liblirc{,client}-dev.
+This should be Breaks+Replaces, not Conflict+Replaces.
+Using the former should ensure that upgrading from stretch works smoothly.
+
+  * debian/changelog: Fix spelling in v0.10.1-4
+
+ -- Nicolas Braud-Santoni   Sun, 10 Mar 2019 00:28:01 +0100
+
 lirc (0.10.1-5) unstable; urgency=medium
 
   * Fix upstream #343, --connect parsing error.
@@ -11,7 +26,7 @@
 lirc (0.10.1-4) unstable; urgency=medium
 
   [ Alec Leamas ]
- -  * Dont use broken LOG_CONS syslog flag, closes: #872749.
+  * Don't use broken LOG_CONS syslog flag, closes: #872749.
 
   [ Pino Toscano ]
   * Fix build on !linux OS, restrict systemd only to linux OS. closes: #912400
diff -Nru lirc-0.10.1/debian/control lirc-0.10.1/debian/control
- --- lirc-0.10.1/debian/control  2019-01-01 15:19:01.0 +0100
+++ lirc-0.10.1/debian/control  2019-03-10 00:28:01.0 +0100
@@ -29,7 +29,6 @@
  python3-dev (>= 3.5),
  python3-setuptools,
  python3-yaml,
- - rdfind,
  socat [!hurd-any],
  systemd [linux-any],
  xsltproc
@@ -128,7 +127,7 @@
 #Multi-Arch: same
 Section: libdevel
 Provides: liblircclient-dev
- -Conflicts: liblircclient-dev (<< 0.9.1)
+Breaks: liblircclient-dev (<< 0.9.1)
 Replaces: liblircclient-dev (<< 0.9.1)
 Depends:
  liblirc0 (= ${binary:Version}),
diff -Nru lirc-0.10.1/debian/rules lirc-0.10.1/debian/rules
- --- lirc-0.10.1/debian/rules2019-01-01 15:19:01.0 +0100
+++ lirc-0.10.1/debian/rules2019-03-10 00:28:01.0 +0100
@@ -46,8 +46,6 @@
for f in lircd.conf lircmd.conf irexec.lircrc lirc_options.conf; do \
mv debian/tmp/etc/lirc/$$f debian/tmp/etc/lirc/$$f.dist; \
done
- -   # De-duplicate docs
- -   rdfind -makesymlinks true debian/tmp/usr/share/doc/lirc
 
 override_dh_auto_test:
 ifneq "nocheck"  "$(findstring nocheck,$(DEB_BUILD_OPTIONS))"
@@ -64,6 +62,10 @@
 endif
 
 
+override_dh_installdocs:
+   dh_installdocs --link-doc=lirc -a
+   dh_installdocs -p lirc-doc
+
 override_dh_installsystemd:
 ifeq ($(DEB_BUILD_ARCH_OS), linux)
dh_installsystemd -p lirc lircd.socket


unblock lirc/0.10.1-5.1

- -- System Information:
Debian Release: buster/sid
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 4.19.0-2-amd64 (SMP w/4 CPU cores)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_WARN, TAINT_OOT_MODULE, 
TAINT_UNSIGNED_MODULE
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) (ignored: LC_ALL 
set to en_US.UTF-8), LANGUAGE=en_US.UTF-8 (charmap=UTF-8) (ignored: LC_ALL set 
to en_US.UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

-BEGIN PGP SIGNATURE-

iQJFBAEBCgAvFiEEU7EqA8ZVHYoLJhPE5vmO4pLV7MsFAlyETwkRHG5pY29vQGRl
Ymlhbi5vcmcACgkQ5vmO4pLV7MtsZw//VaakF1WKmQZogNQgcC4iyvFE1c6e4fue
HlsHGiJonBOh259DkJUiWDrkGWXB8FdKfg8tmOmiMatwEloahHajjY+32RYglVgi
9sWIbTWE8GBv4Qe4P3epKWby2TR8zzz/gS8i35oKlQL/ikpyl0LBBHvDgr3drvbo
HatUrqjcwIAkA0ANE0Qc3CD/mk40R+YQldq9K8x7SwPdPvqOR1SuWbFd99ykfVc3
pKGEjMgjtYW9+0DAKn4/CrfunkN9EXVdUK4QIZLhnUa7Rp8CkdNWO76l+oHZ5mv4
lfNtO7qcvPRPMrIigxg5lzE3xIJgjcsmE6O8+7YhkQZf+EEO9KoifQl8qLVe6ZxR
qtG45tx6oVruf9iNTMAVu8f3Ph3x/BllCgg/9wK04YP69yvoxIxUwjB0wX07jXgz
OoqRzbuz8pzGyUTWqqUmc7yvmHmSzNf9tfuqcNAhUhDR7XMRLl5YuP71v7jP1vfC
42OSyKbP8MHSaiCAkAoDQbNQMlUyXXRjKXOotn1a70aa9d7EweDRonLS+FbQIPRM
waYpSBUIw41lQqQk+Zzq2PhMG/AHbDurT7q0QmPKu4aRpBUcpepmOwxJjcLvYmD3
werZS5tu2SCjtlVoeILxFOQBTQPTTqpV+AzMuDrC2+l0LGIP0Ge3W66oRisQPqyf
66uMn3mRtjw=
=kQuD
-END PGP SIGNATURE-