Your message dated Fri, 13 Sep 2024 19:05:07 +0000
with message-id <e1spbbp-0018zf...@fasolo.debian.org>
and subject line Bug#1072731: fixed in libfishcamp 1.2+20220607003151-3
has caused the Debian Bug report #1072731,
regarding violates policy 8.2: soname-independent library support files
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact ow...@bugs.debian.org
immediately.)
--
1072731: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1072731
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Package: libfishcamp1t64
Version: 1.2+20220607003151-2
Severity: serious
Tags: patch
User: helm...@debian.org
Usertags: dep17p1
Control: clone -1 -2
Control: retitle -2 violates policy 8.2: soname-independent library support
files
Hi Thorsten,
I am sorry to tell you that libfishcamp1t64 slipped through my review.
It really is one of the packages that cannot be just moved. I'll review
my analysis regarding this after sending this patch.
libfishcamp combines three ingredients:
* It installed aliased files in bookworm (firmware and udev rules)
* It is affected by the time64 transition and thus renames packages.
* It installs files that are not soname-dependent into the shared
library package violating Debian policy section 8.2. I've cloned a
separate bug about this problem.
As a result, you are experiencing a DEP17 P1 problem. Roughly speaking,
an upgrade could first unpack libfishcamp1t64 thereby installing the
firmware and udev files into /usr. In doing so, dpkg overwrites the
files from libfishcamp1 without attributing it to Replaces due to the
difference in aliasing. Then, when libfishcamp1 is removed, it also
removes firmware and udev files for real as they have not been replaced.
Once the upgrade is complete, these files go missing.
So this is indeed a case where dh-sequence-movetousr does not just work
(and maybe it now becomes more clear why we didn't make
dh-sequence-movetousr opt-out). There are multiple options to mitigate
this with varying level of reliability. A reliable mitigation requires
using protective diversions installed for the entire trixie release.
This is fairly annoying and causes maintenance costs down the road
(removing diversions, later removing diversion removing code). I propose
using a less reliable method for this case. fishcamp seems to be a
relatively unpopular package, so the number of affected users is
expected to be small. When upgrading the Breaks to Conflicts (without
having reverse Breaks), we are not aware of any scenario where this
mitigation would be unreliable when using apt or aptitude (i.e. you need
to install libfishcamp1t64 using dpkg directly in a specific setting to
actually experience file loss). In any case, users can detect the loss
using dpkg --verify and reinstalling libfishcamp1t64 will reinstate the
lost files. Loss of these files would likely not render systems
unbootable. Hence, I think this is a relatively low probability,
relatively low impact and the more reliable mitigation has significantly
higher maintenance cost.
Do you agree with this risk assessment? If not, I can provide a more
elaborate patch doing a more reliable mitigation.
Another alternative to fixing this problem is reverting the t64
transition. I looked for the abi report, but there is none nor is there
a bug report from the t64 people. Hence, I looked at the headers and
found that none of them use off_t or time_t or other relevant types in
structures or types. time_t is used internally, but not exposed. As a
result, fishcamp very likely is unaffected by the time64 transition and
its rename can be reverted. The revert briefly introduces the reverse
DEP17 P1 problem into unstable, but for bookworm -> trixie upgrades,
things would work then. If you opt for reverting, you don't have to use
Conflicts and you can continue to use dh-sequence-movetousr.
I note that the attached patch is not appropriate for bookworm-backports
(but neither is the t64 rename).
Helmut
diff --minimal -Nru libfishcamp-1.2+20220607003151/debian/changelog
libfishcamp-1.2+20220607003151/debian/changelog
--- libfishcamp-1.2+20220607003151/debian/changelog 2024-06-03
23:30:36.000000000 +0200
+++ libfishcamp-1.2+20220607003151/debian/changelog 2024-06-07
10:14:24.000000000 +0200
@@ -1,3 +1,12 @@
+libfishcamp (1.2+20220607003151-2.1) UNRELEASED; urgency=medium
+
+ * Non-maintainer upload.
+ * Mitigate /usr-move DEP17 P1 problems. (Closes: #-1)
+ + Manually move files instead of using dh-sequence-movetousr.
+ + Upgrade Breaks to Conflicts.
+
+ -- Helmut Grohne <hel...@subdivi.de> Fri, 07 Jun 2024 10:14:24 +0200
+
libfishcamp (1.2+20220607003151-2) unstable; urgency=medium
* upload to unstable
diff --minimal -Nru libfishcamp-1.2+20220607003151/debian/control
libfishcamp-1.2+20220607003151/debian/control
--- libfishcamp-1.2+20220607003151/debian/control 2024-06-03
23:30:36.000000000 +0200
+++ libfishcamp-1.2+20220607003151/debian/control 2024-06-07
10:14:24.000000000 +0200
@@ -8,7 +8,6 @@
, libusb-1.0-0-dev
, zlib1g-dev
, libindi-dev
- , dh-sequence-movetousr
Standards-Version: 4.7.0
Homepage: https://github.com/indilib/indi-3rdparty
Rules-Requires-Root: no
@@ -19,7 +18,7 @@
Package: libfishcamp1t64
Provides: ${t64:Provides}
Replaces: libfishcamp1
-Breaks: libfishcamp1 (<< ${source:Version})
+Conflicts: libfishcamp1 (<< ${source:Version})
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: library for cameras made by Fishcamp Engineering
diff --minimal -Nru
libfishcamp-1.2+20220607003151/debian/libfishcamp1t64.install
libfishcamp-1.2+20220607003151/debian/libfishcamp1t64.install
--- libfishcamp-1.2+20220607003151/debian/libfishcamp1t64.install
2024-06-03 23:30:36.000000000 +0200
+++ libfishcamp-1.2+20220607003151/debian/libfishcamp1t64.install
2024-06-07 10:14:24.000000000 +0200
@@ -1,4 +1,4 @@
usr/lib/*/libfishcamp.so.*
-lib/firmware/gdr_usb.hex
-lib/firmware/Guider_mono_rev16_intel.srec
-lib/udev/rules.d/99-fishcamp.rules
+lib/firmware/gdr_usb.hex usr/lib/firmware/
+lib/firmware/Guider_mono_rev16_intel.srec usr/lib/firmware/
+lib/udev/rules.d/99-fishcamp.rules usr/lib/udev/rules.d/
--- End Message ---
--- Begin Message ---
Source: libfishcamp
Source-Version: 1.2+20220607003151-3
Done: Thorsten Alteholz <deb...@alteholz.de>
We believe that the bug you reported is fixed in the latest version of
libfishcamp, which is due to be installed in the Debian FTP archive.
A summary of the changes between this version and the previous one is
attached.
Thank you for reporting the bug, which will now be closed. If you
have further comments please address them to 1072...@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.
Debian distribution maintenance software
pp.
Thorsten Alteholz <deb...@alteholz.de> (supplier of updated libfishcamp package)
(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmas...@ftp-master.debian.org)
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
Format: 1.8
Date: Fri, 13 Sep 2024 18:30:36 +0200
Source: libfishcamp
Binary: libfishcamp-dev libfishcamp1t64 libfishcamp1t64-dbgsym
Architecture: source amd64
Version: 1.2+20220607003151-3
Distribution: unstable
Urgency: medium
Maintainer: Debian Astronomy Team
<debian-astro-maintain...@lists.alioth.debian.org>
Changed-By: Thorsten Alteholz <deb...@alteholz.de>
Description:
libfishcamp-dev - library for cameras made by Fishcamp Engineering -
development fi
libfishcamp1t64 - library for cameras made by Fishcamp Engineering
Closes: 1072730 1072731
Changes:
libfishcamp (1.2+20220607003151-3) unstable; urgency=medium
.
* Mitigate /usr-move DEP17 P1 problems. (Closes: #1072730)
+ Manually move files instead of using dh-sequence-movetousr.
+ Upgrade Breaks to Conflicts.
(thanks a lot to Helmut for the patch!)
(Closes: #1072731 as well)
Checksums-Sha1:
fc17ef46cc2f90dd1c70120fe88532a8fa0eda9c 2377
libfishcamp_1.2+20220607003151-3.dsc
5c8820943b03dacd85e6d909322ef1977570de7a 108262
libfishcamp_1.2+20220607003151.orig.tar.gz
49553a9253d60e8649538caed03a1f0981054d8e 2604
libfishcamp_1.2+20220607003151-3.debian.tar.xz
d1cc876262f5eb61c3aca0fdfa37227254712580 8392
libfishcamp-dev_1.2+20220607003151-3_amd64.deb
a75d6dc97fa11b5758489e9650d01dceaeedec11 40564
libfishcamp1t64-dbgsym_1.2+20220607003151-3_amd64.deb
c67ceca1278031cf3f07a0b2c57ecf99c431163a 45044
libfishcamp1t64_1.2+20220607003151-3_amd64.deb
43be3171465a513c20292c7b7547dff293a09a37 8908
libfishcamp_1.2+20220607003151-3_amd64.buildinfo
Checksums-Sha256:
704ad161dfddf4359040345f046b9d4f34f8729a60748344fa987451a547822f 2377
libfishcamp_1.2+20220607003151-3.dsc
af712935e34da1dfe4ed93a28136c28d0176ed04abcc599ebf8170f06dc19ddc 108262
libfishcamp_1.2+20220607003151.orig.tar.gz
2a4917e60d93c56f3150616ac8eef1d896519f8ed9ec3d41824227968548e6f1 2604
libfishcamp_1.2+20220607003151-3.debian.tar.xz
f663c73da5c762f8d4f06bfb071bfda91455617bead230b04e4edafe47d8330b 8392
libfishcamp-dev_1.2+20220607003151-3_amd64.deb
21a275fffcbb621c9681657b8b8ee8bd58824bafa3f2661532d58b24ebd408ac 40564
libfishcamp1t64-dbgsym_1.2+20220607003151-3_amd64.deb
2306b3d50ad3df8d09d7d4a574007ee41cc07a20871ea3f931a0387f69181734 45044
libfishcamp1t64_1.2+20220607003151-3_amd64.deb
b212d9485101278f05fc299c3c1cdf1c1b9f9e09fd3d49f13722f80d5b73aa5b 8908
libfishcamp_1.2+20220607003151-3_amd64.buildinfo
Files:
65e564881985629869c1226e083f2d51 2377 non-free/libs optional
libfishcamp_1.2+20220607003151-3.dsc
587ed997d1b174a579a8a4f7883917a0 108262 non-free/libs optional
libfishcamp_1.2+20220607003151.orig.tar.gz
9df345f4100dad564585390e7005f76e 2604 non-free/libs optional
libfishcamp_1.2+20220607003151-3.debian.tar.xz
5ca9b582b76fd0b5cd321fbff74b56c1 8392 non-free/libdevel optional
libfishcamp-dev_1.2+20220607003151-3_amd64.deb
b0dbbc1ad1323c02145744d22a7c06e4 40564 non-free/debug optional
libfishcamp1t64-dbgsym_1.2+20220607003151-3_amd64.deb
ee44998cd912436d6b37067bdf0bb7ba 45044 non-free/libs optional
libfishcamp1t64_1.2+20220607003151-3_amd64.deb
70aeef3333bad429a09be419210b0fba 8908 non-free/libs optional
libfishcamp_1.2+20220607003151-3_amd64.buildinfo
-----BEGIN PGP SIGNATURE-----
iQKnBAEBCgCRFiEEYgH7/9u94Hgi6ruWlvysDTh7WEcFAmbkf0JfFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDYy
MDFGQkZGREJCREUwNzgyMkVBQkI5Njk2RkNBQzBEMzg3QjU4NDcTHGRlYmlhbkBh
bHRlaG9sei5kZQAKCRCW/KwNOHtYR+loEAC/EcHB7ADAAoN15du7yGeXtCSvW8L9
7TUTAwfry0ifoqbP+iGr6i3SddUHxiwfKHgaQKUaKmNPVKNv14PKFr2QPcU7paRP
831ImvblcvER046eVdFltvIrWvijqCQkPDwCYAljNnbCFNohF0TytpV82Zi4UOQ2
+QFVH/UGajdvXhIFNQskU0YkAQG/KSMOquNrB/iP+7FQhHTws3OSNsaXkOHmsA9V
0829T6QtDGWFyA78ttl2oNLKuGveXYR9kyfZWK6PKwTzdoQYH77tBWcmRb7nzXzw
HvenG/ig57/bQA7VQOOpbZ91ZPgEXmWPP4HD0SYYlNhvZnXL6I5BfuZkPAnDcU52
5B+2aRQMgRwIR1wQMkWeApCEvr0cfoXNT3BjKwAC+9TMsotgjxkVuXcLsNNvkATH
VC/2BPplkFGC9tZhDR4fHu7mRQqhLxOHTNipWHZQGaQnQAEnlM6kF6aRi46oed4T
R8rDmo3u52PEXc3WzSHI6DQm8T3glRQ2d1f6hwSgzafBygSGYSTJVolJFNjznaHE
du7JZwj7Gy8Y5S8UzdKOGgIm5fNJnwv1iumkvEgwyFSfGmVLbs8DyO9kn48pzevT
7vgFLruJIB0L6YR1XgPG05FVgPfFJhIUI0YIsUscjrcAHsXGMeHUilfqdotBHQwV
DgdeLhH0ZzFOew==
=qj49
-----END PGP SIGNATURE-----
pgprdVuPDfGAf.pgp
Description: PGP signature
--- End Message ---