Review: dbusada 0.6.4-1
Package Information
| Description | Ada bindings to the D-Bus message bus system The D_Bus/Ada library provides an Ada binding to the D-Bus message bus used for inter-process communication on Linux desktop systems. This package contains the development files. |
|---|---|
| Maintainer | Reto Buerki <reet@codelabs.ch> |
| Changed By | Reto Buerki <reet@codelabs.ch> |
| Sponsor | nicolas@debian.org |
| Distribution | experimental |
| Architecture | any |
| VCS | git: https://git.codelabs.ch/git/dbus-ada.git -b debian (browse) |
| Closes | #955885, #1136491 |
| Popcon Installs | 3 |
| Binary NEW | Yes (new binary packages of a source already in sid) |
| Blocked Bugs | #895291 (important) |
| Tracker | https://tracker.debian.org/pkg/dbusada |
| Uploaded | 3 hours ago |
New Package Report
.changes
| Version | 0.6.4-1 |
|---|---|
| Changed-By | Reto Buerki <reet@codelabs.ch> |
| Architecture | amd64 source |
| Distribution | experimental |
| Date | Fri, 06 Nov 2026 21:35:31 +0000 |
| Source | dbusada |
Changelog
dbusada (0.6.4-1) experimental; urgency=medium . [ Reto Buerki ] * Import upstream v0.6.4. Closes: #955885 * Drop obsolete C C23-standard patch * Refresh and rename thin-binding build-flags patch * Run the test suite under a session bus * Build against GIO * Drop procps * Update upstream signing key . [ Nicolas Boulenguez ] * Update watch file to format version 5 * Build-Depend: dh-ada-library with the new hash computation * Drop obsolete Rules-Requires-Root: no * Drop obsolete Priority: optional * Update Standards-Versions to 4.7.4 * Update debhelper to compat 14, keep ada:Provides for dh-ada-library * Update copyright years * Remove Build-Depends version restrictions older than oldoldstable * Build with gnat-16 * In GPL-2, update FSF postal address to an URL * Build-Depend: procps because Makefile runs pidof. Closes: #1136491 * Replace http with https in upstream homepage * Change the shared object name/library package name
.dsc
| Section | libdevel |
|---|---|
| Priority | optional |
| Component | main |
| Package-List | libdbusada-dev deb libdevel optional arch=any libdbusada0.6.4 deb libs optional arch=any |
debian/copyright
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: D_Bus/Ada Upstream-Contact: Reto Buerki <reet@codelabs.ch> Source: https://www.codelabs.ch/download/ Files: * Copyright: 2011 Tero Koskinen <tero.koskinen@iki.fi> 2011-2026 Reto Buerki <reet@codelabs.ch> 2018-2026 Nicolas Boulenguez <nicolas@debian.org> License: GPL-2+ with Ada exception This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. . This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. . You should have received a copy of the GNU General Public License along with this program; if not, see <https://www.gnu.org/licenses/>. . As a special exception, if other files instantiate generics from this unit, or you link this unit with other files to produce an executable, this unit does not by itself cause the resulting executable to be covered by the GNU General Public License. This exception does not however invalidate any other reasons why the executable file might be covered by the GNU General Public License. . On Debian systems, the complete text of the GNU General Public License version 2 can be found in the /usr/share/common-licenses/GPL-2 file.
DFSG Assistant LLM REVIEW 1 blocker, 1 important, 2 minor
This is an LLM based review using a Debian Inference based workflow. It was not written by a member of the DFSG team and has not been checked by one. It is not a decision on the package: it may be wrong, and it may have missed things.
Reviewed 1 hour ago.
Report
DFSG NEW review for dbusada version 0.6.4-1
Summary
- Licensing is DFSG-compliant and
debian/copyrightis accurate: No - Packaging is of good quality: No
- Issues: 1 blocker, 1 important, 2 minor
- debian/watch: version 5
- debian/copyright: machine-readable
- Scan before the review: nothing found
Licensing
Every file in the tree is free: the library, tests, examples and .gpr projects are GPL-2+ with the GNAT/Ada exception (the README calls it GMGPL), the thin binding is generated at build time from libdbus-1-dev's dbus.h (AFL-2.1 or GPL-2.0-or-later), and the only other licence, MIT in doc/css/styles.css, is GPL-compatible. debian/copyright is nevertheless not accurate: it does not name Tobias Brunner, copyright holder of eight src files, and it describes the MIT Asciidoctor stylesheet as GPL-2+ with the Ada exception, with no MIT notice and no Asciidoctor holder.
Packaging
The packaging is otherwise careful and current: debhelper compat 14, hardening via dpkg-buildflags, an unversioned -dev package driven by dh-ada-library, an autopkgtest, DEP-3 patches and Standards-Version 4.7.4. Two defects remain: debian/clean does not remove the top-level thin-stamp, so a cleaned tree cannot be rebuilt and clean does not undo the build (Policy 4.9), and the 0.6.4-1 changelog records a procps Build-Depends that is neither in debian/control nor needed by anything in the tree.
Issues
blocker licensing 1. debian/copyright treats the MIT Asciidoctor stylesheet doc/css/styles.css as GPL-2+ and carries no MIT notice ◂
- Files:
doc/css/styles.css:1,debian/copyright:6-11 - Basis: checked, in the package or with a reference tool
- Evidence: doc/css/styles.css line 1:
/* Sligthly modified Asciidoctor default stylesheet | MIT License | http://asciidoctor.org */; debian/copyright has only aFiles: *stanza withLicense: GPL-2+ with Ada exceptionand a stand-alone License paragraph for that name only. - Problem: The file is a modified copy of Asciidoctor's default stylesheet and is under the MIT licence, whose copyright holders debian/copyright does not name; it instead attributes it to Reto Buerki/Nicolas Boulenguez under the GPL. MIT is not among the licences in /usr/share/common-licenses, so its permission text and copyright notice must be reproduced in debian/copyright (Policy 12.5; copyright-format 6.7). As written, the licence of a shipped file is misstated and its required notice is missing.
- Fix: Add a
Files: doc/css/styles.cssstanza afterFiles: *, with Copyright for the Asciidoctor default stylesheet's holders (as recorded in the asciidoctor package's own copyright) and for Reto Buerki's modifications, andLicense: MITfollowed by the full MIT permission text.
important licensing 2. debian/copyright does not name Tobias Brunner tbrunner@hsr.ch, holder of eight src files ◂
- Files:
debian/copyright:6-10,src/d_bus-message_dispatcher.adb:4,src/d_bus-message_dispatcher.ads:4,src/d_bus-message_dispatcher-object.adb:4,src/d_bus-message_dispatcher-object.ads:4,src/d_bus-message_dispatcher-proc.adb:4,src/d_bus-message_dispatcher-proc.ads:4,src/d_bus-messagebox.adb:4,src/d_bus-messagebox.ads:4 - Basis: checked, in the package or with a reference tool
- Evidence: Each of the eight headers reads
-- Copyright (C) 2019 Tobias Brunner <tbrunner@hsr.ch>(next to Reto Buerki's 2020 line); theFiles: *Copyright lists only Tero Koskinen, Reto Buerki and Nicolas Boulenguez. - Problem: The copyright file must record the copyright of the software it distributes (Policy 12.5). The licence recorded for these files is right, but a holder is missing, so debian/copyright is incomplete.
- Fix: Add
2019 Tobias Brunner <tbrunner@hsr.ch>to the Copyright of theFiles: *stanza, or add a stanza for those eight files repeating the same License.
minor packaging 3. debian/clean removes thin/ but not the top-level thin-stamp, so clean leaves the build stamp and the next build fails ◂
- Files:
debian/rules:22-28,debian/clean:1 - Basis: checked, in the package or with a reference tool
- Evidence:
override_dh_auto_build: thin-stampandthin-stamp:\n\trm -fr thin\n\tsh scripts/generate-thin-binding.sh ...\n\ttouch $@; debian/clean contains onlythin/. - Problem:
debian/rules cleandeletes thin/ but leaves thin-stamp, so it does not undo the effects of the build as Policy 4.9 requires. thin-stamp has no prerequisites, so after a clean a second build in the same tree sees it as up to date, does not regenerate thin/, and gprbuild then fails on the missing thin sources; the stray file also reappears in the source tree. - Fix: Add
thin-stampto debian/clean.
minor packaging 4. debian/changelog records a procps Build-Depends "because Makefile runs pidof" that exists nowhere in the package ◂
- Files:
debian/changelog:23,debian/control:9-24 - Basis: checked, in the package or with a reference tool
- Evidence:
* Build-Depend: procps because Makefile runs pidof. Closes: #1136491against aBuild-Depends:field with no procps, and against Makefile's tests target, which now usestrap 'kill $$pid'; the same 0.6.4-1 entry also lists* Drop procpsfrom the other uploader. - Problem: The changelog describes a change that is not in the upload, contradicts another entry of the same release, and closes a bug on a reason that no longer applies.
pidofdoes not occur anywhere in the source tree, so nothing needs procps. - Fix: Drop the entry, or reword it to the actual fix (the tests target no longer calls pidof); add procps to Build-Depends only if something really uses it.
Verified ◂
- Inventory: 88 files, excluding .pc/ and debian/cargo-checksum.json (absent): 22 src units, 20 tests files, 6 examples, 17 generated thin/*.ads, doc/index, doc/doc.mk, doc/css/styles.css, two scripts, five .gpr projects, Makefile, README, TODO, AUTHORS, COPYING, debian/. All were grepped for Copyright/(C)/SPDX-License/Licensed under/MIT/GPL/GMGPL/public domain/All rights reserved/pidof; every license and copyright notice found was read.
- Prescan: the missing holder Tobias Brunner is confirmed in the eight file headers above and reported; the 'possibly named' Reto Buerki is in fact named in
Files: *. - src/, tests/, examples/ and the .gpr projects each carry the GPL-2+ wording with the Ada exception; holders are Reto Buerki, Tero Koskinen (examples/notify.adb:5) and Tobias Brunner. README calls the same licence GMGPL; COPYING is the GPL-2 text.
- thin/.ads are generated at build time by scripts/generate-thin-binding.sh (shipped, one DEP-3 patch) from libdbus-1-dev's /usr/include/dbus-1.0/dbus/.h, whose SPDX tag is
AFL-2.1 OR GPL-2.0-or-later(Copyright Red Hat Inc.); the generated files contain only declarations and file:line references, no dbus comments or notices, and debian/rules regenerates them from scratch. The GPL-2+ claim is compatible and the preferred form for modification (generator + header) is in the package; not an issue. - tests/c/dbus-rebound.c has a plain GPL-2+ header without the Ada exception; the exception only widens the grant, so this is compatible with the
Files: *licence and is not reported. - scripts/.sh, doc/index, doc/doc.mk, doc/css/styles.css (other than its MIT line), tests/config.adb, tests/utils.adb and debian/ carry no individual headers and are covered by
Files: *; the Debian packaging files are Nicolas Boulenguez's 2018-2026 copyright there. - doc/html/* is not in the tarball: it is built by
make build-docfrom doc/index, README, doc/css/styles.css and examples/caller/list_names.adb with asciidoctor (Build-Depends), so the documentation's source is complete and buildable; no built HTML, PDF or minified asset is shipped. - No images, fonts or other binary assets in the tree (glob for png/jpg/jpeg/gif/svg/ttf/woff/woff2/pdf/ico found nothing), and doc/css/styles.css contains no @font-face or data: URI; the fonts removed by earlier repackaging are not back.
- All debian/ files were read in full: control, rules, changelog, copyright, clean, libdbusada-dev.{docs,examples,doc-base}, gbp.conf, source/format, patches/series and the patch, tests/control, tests/link-with-shared, upstream/metadata. debian/watch was left alone.
- Standards-Version 4.7.4 matches the reviewing system's Policy 4.7.0/4.7.4.1 rule (same first two components); debhelper compat 14; hardening=+all with DPKG_EXPORT_BUILDFLAGS and buildflags.mk; the default compat-14 rules are used correctly.
- Build-Depends exist and are satisfiable (apt-cache): g++-16 and gnat-16 16.2.0-4, gprbuild 2026.0.0-2 (>= 2025.0.0-2), dh-ada-library 9.10, dh-sequence-ada-library, libahven-dev 2.9 built with gnat-16, ruby-pygments.rb 5.0.0+ds-1; dbus-daemon provides dbus-run-session.
- At compat 14 dh_gencontrol appends each relationship substvar itself, so
libdbusada-dev'sDepends: libdbus-1-devwithout a written ${ada:Depends} still gets the runtime-library, gnat and gnat-16-hash dependencies from dh_ada_library; the missing${ada:Depends}in control is not an issue. - At compat 13+ dh skips override_dh_auto_test under nocheck, so the test wrapper needs no guard (checked with the debhelper tool), and dh_installdocs honours
DEB_BUILD_OPTIONS=nodocthrough get_buildoption as well as the nodoc profile, so the rules' nodoc check does not break the doc install (checked in /usr/bin/dh_installdocs). - The duplicate
override_dh_auto_builddefinition is harmless: the second rule has no recipe and only adds the thin-stamp prerequisite, so the build recipe of the first is kept. - The single quilt patch has DEP-3 headers (Description, Author, Forwarded: not-needed) and changes only scripts/generate-thin-binding.sh, passing CPPFLAGS/CXXFLAGS to a command that compiles nothing.
- autopkgtest: debian/tests/link-with-shared builds and runs a small project against the installed dbusada.gpr in $AUTOPKGTEST_TMP; gnat is pulled in through libdbusada-dev's ada:Depends. The package's own test suite is run by override_dh_auto_test under dbus-run-session (Makefile tests target).
- dbusada.gpr sets
Library_Version use "libdbusada.so." & Versionand rules passes VERSION=$(dbusada_SO_VERSION); the runtime package name libdbusada0.6.4 matches the SONAME and dh_ada_library's package-name/SONAME and Multi-Arch expectations. libdbus-1-dev is a hard dependency of the -dev package as intended since 0.6.2-3. - doc-base's
Index: /usr/share/doc/libdbusada-dev/index.htmlmatches thedoc/html/*glob in libdbusada-dev.docs (dh_installdocs installs the files directly under /usr/share/doc/libdbusada-dev/). - uscan found the packaged version as the newest upstream release (upstream
0.6.4, packaged0.6.4). - Every pointer of
debian/copyrightto /usr/share/common-licenses names a file that is there (GPL-2).
Not confirmed ◂
- Whether dh-ada-library 9.10 (the Build-Depends) still rejects a -dev package that provides ${ada:Provides} without ${ada:Depends}: the helper installed on the reviewing system (man page 9.9) dies with
libdbusada-dev uses ada:Provides but not ada:Depends, but compat 14 adds ada:Depends to the binary package itself and the required 9.10 may have relaxed the check, so this was not reported as a build failure. A build would show it at rules-parse time. - The precise copyright holders of Asciidoctor's default stylesheet: asciidoctor is not installed on the reviewing system and doc/css/styles.css names only http://asciidoctor.org.
- Whether asciidoctor copies doc/css/styles.css into doc/html/, so that the installed index.html finds its stylesheet (not run).
Proposed changes ◂
None.
Uploader's response to the LLM review
The uploader rejected this upload in response to the review.
Review Information
rejected — allocated to dfsg-uploader 0 hours ago, started 0 hours ago, completed 0 hours ago.
Final Comment
The uploader rejected this upload in response to the automated (LLM) review of it, so that they can fix the problems it found and upload again.
The uploader said:
I will reupload because of issue 1.
Issue 1, 2, 4 are correct.
Issue 3 is a plain lie, dh_clean removes *-stamp.