Built devscripts 2.26.9 against Arch end-to-end. Findings:
1. docbook-xsl path in fixes.patch does not exist on Arch
fixes.patch rewrites the two xsltproc rules to /usr/share/xml/docbook/xsl-stylesheets/manpages/docbook.xsl, but extra/docbook-xsl 1.79.2-9 only ships versioned dirs (xsl-stylesheets-1.79.2, …-1.79.2-nons). No versionless symlink. The rules silently fail and deb-reversion(1) ends up empty.
Glob resolution works on any version:
local xsl
xsl=$(printf '%s' /usr/share/xml/docbook/xsl-stylesheets-*-nons/manpages/docbook.xsl)
[[ -f $xsl ]] || xsl=$(printf '%s' /usr/share/xml/docbook/xsl-stylesheets-*/manpages/docbook.xsl)
grep -rl '/usr/share/sgml/docbook/stylesheet/xsl/nwalsh/manpages/docbook.xsl' . \
| xargs -r sed -i "s|/usr/share/sgml/docbook/stylesheet/xsl/nwalsh/manpages/docbook.xsl|$xsl|g"
2. Hard use modules for uscan, bts, debrebuild are in optdepends
Top-level (not lazy) use lines:
lib/Devscripts/Uscan/Downloader.pm:JSON,LWP::UserAgent,URIlib/Devscripts/Uscan/Ctype/{nodejs,perl}.pm:JSONlib/Devscripts/Uscan/Modes/Gitlab.pm:URI,URI::Escapescripts/bts.pl:URI,URI::QueryParamscripts/debrebuild.pl:BEGIN { eval { require String::ShellQuote } or die ... }
uscan, bts, debrebuild die with Can't locate ... on first run unless every optdep is preinstalled. Promote to depends: perl-json, perl-uri, perl-libwww, perl-string-shellquote, perl-moo, perl-file-touch, perl-file-dirlist, perl-config-inifiles, perl-lwp-protocol-https (HTTPS uscan: eval { require LWP::Protocol::https } in Downloader.pm).
3. Python tools have no depends declared
scripts/setup.py installs the following; each top-level-imports modules missing from depends=():
debftbfs,debbisect:python-debiandebbisect:python-requestsdebdiff-apply:python-unidiff(AUR)deb-check-file-conflicts:python-junit-xmlsuspicious-source:python-magicwrap-and-sort:python-pyxdgdebootsnap,reproducible-check:python-apt
python-apt is orphaned-AUR and drags apt. Keep it in optdepends and drop its two manpages from the build so help2man does not crash:
sed -i \
-e '/^[[:space:]]*debootsnap\.1[[:space:]]*\\\?$/d' \
-e '/^[[:space:]]*reproducible-check\.1[[:space:]]*\\\?$/d' \
scripts/Makefile
4. Missing debian/links aliases
debian/links (installed by dh_link) defines:
debi → debc, debchange → dch, pts-subscribe → pts-unsubscribe, deb2apptainer → deb2singularity
PKGBUILD only re-creates dch. debc, pts-unsubscribe, deb2singularity and the matching de/fr translated manpage aliases are missing.
5. cowpoke.conf not installed
debian/install puts it in /etc/; plain make install does not:
install -Dm0644 cowpoke.conf "$pkgdir/etc/cowpoke.conf"
Add backup=('etc/cowpoke.conf').
6. Translated manpages dropped
cp scripts/*.1 covers English only. po4a/<lang>/*.{1,5,7} files produced by make never get installed, so LANG=de|fr|pt users see nothing. A loop mapping po4a/<lang>/<name>.<lang>.<sect> to /usr/share/man/<lang>/man<sect>/<name>.<sect> covers all three.
7. arch=('i686' 'x86_64') should be arch=('any')
Architecture-independent upstream (Perl + Python + shell only). any also covers aarch64 and armv7h.
8. License accuracy
debian/copyright declares GPL-1+, GPL-2[+], GPL-3[+], Artistic-1.0-Perl, Artistic-2.0, ISC, MIT, public-domain. Whether you list every SPDX or keep umbrella GPL-2.0-or-later, install the per-file map:
install -Dm0644 debian/copyright "$pkgdir/usr/share/licenses/devscripts/copyright"
9. PATH safety net for Perl scripts
po4a-translate, pod2man, podchecker live in /usr/bin/{site,vendor,core}_perl. /etc/profile.d/perlbin.sh adds them only in interactive shells; makepkg's build env may not inherit. Add to build():
export PATH="/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:$PATH"
Reference PKGBUILD with all of the above applied; verified clean with makepkg -s --nodeps on aarch64, full manpage set including de/fr/pt, all CLIs survive their import-time use, namcap clean: https://gist.github.com/isac322/614b8ef24c5fa746ca7be9d0399df02d
Pinned Comments
ItachiSan commented on 2026-01-11 09:00 (UTC)
For all: debianutils and systemd conflict.
See a fix at the AUR page for debianutils: https://aur.archlinux.org/packages/debianutils#comment-1054438
ItachiSan commented on 2017-05-17 10:50 (UTC) (edited on 2023-02-16 09:00 (UTC) by ItachiSan)
If the package is outdated, please report it with the 'Flag outdated package' above.
If there is an issue regarding packaging, please report it here:
https://github.com/ItachiSan/linux_packaging/issues/
As I do not use this package (I use a Docker container for Debian packaging) please tell me whenever a dependency is missing, so that I can move it from a make dependency to a normal dependency.