Package: netdata
Version: 2.0.3+dfsg-1
Severity: serious
Tags: patch
Control: affects -1 + netdata-core
User: helm...@debian.org
Usertags: dep17p1

Hi Daniel,

your nedata upload is a restructuring upload where files move between
packages. You also uploaded to experimental. Thank you very much for
taking the experimental detour. As a result, the /usr-move analyzer
(dumat) was able to analyze your upload there an identify a problem.

In bookworm, netdata-core installs /lib/systemd/system/netdata.service
while in experimental netdata installs
/usr/lib/systemd/system/netdata.service. If you were to upgrade, that
file would be lost, because dpkg would be unable to figure out that
those actually refer to the same file. The upgrade scenario is thus
broken at this time, but it only affects people upgrading from bookworm
to experimental just yet.

To get more background on what the precise problem and proposed solution
is, please refer to https://subdivi.de/~helmut/dep17.html sections P1
and M7. I propose changing the correctly declared Breaks + Replaces to
Conflicts and thus force apt to remove netdata-core before unpacking
netdata. There still is a risk of loss in case someone upgrades with
dpkg directly, but we deemed that risk quite low. In case a file is
actually lost, reinstalling the package resolves the problem.

I am attaching a patch for the proposed change. Please do another upload
to experimental including my patch and wait three days. If you don't
hear from me, please assume that no further problems caused by /usr-move
arise.

Sorry for the inconvenience caused by this transition

Helmut
diff --minimal -Nru netdata-2.0.3+dfsg/debian/changelog 
netdata-2.0.3+dfsg/debian/changelog
--- netdata-2.0.3+dfsg/debian/changelog 2024-11-25 18:14:34.000000000 +0100
+++ netdata-2.0.3+dfsg/debian/changelog 2024-11-26 08:20:32.000000000 +0100
@@ -1,3 +1,12 @@
+netdata (2.0.3+dfsg-1.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix ineffective Replaces (DEP17 P1 M7) (Closes: #-1)
+    * /lib/systemd/system/netdata.service moved from / to /usr and from
+      netdata-core to netdata. Thus upgrade Replaces to Conflicts.
+
+ -- Helmut Grohne <hel...@subdivi.de>  Tue, 26 Nov 2024 08:20:32 +0100
+
 netdata (2.0.3+dfsg-1) experimental; urgency=medium
 
   * Uploading to experimental.
diff --minimal -Nru netdata-2.0.3+dfsg/debian/control 
netdata-2.0.3+dfsg/debian/control
--- netdata-2.0.3+dfsg/debian/control   2024-11-25 18:14:34.000000000 +0100
+++ netdata-2.0.3+dfsg/debian/control   2024-11-26 08:18:48.000000000 +0100
@@ -70,14 +70,14 @@
  nc,
 Breaks:
  netdata-apache2,
- netdata-core (<< 2),
  netdata-core-no-sse (<< 2),
  netdata-web,
 Replaces:
  netdata-apache2,
- netdata-core,
  netdata-core-no-sse,
  netdata-web,
+Conflicts:
+ netdata-core (<< 2),
 Description: real-time performance monitoring
  Netdata is distributed, real-time, performance and health monitoring for
  systems and applications. It provides insights of everything happening on the

Reply via email to