Bug#963837: soqt: Autopkgtests fail because of stderr (wrong permissions on $XDG_RUNTIME_DIR, 7755 instead of 7700)

Pino Toscano pino at debian.org
Sun Jun 28 13:59:09 BST 2020


In data domenica 28 giugno 2020 10:30:45 CEST, Dmitry Shachnev ha scritto:
> Source: soqt
> Version: 1.6.0+ds1-1
> Severity: serious
> Justification: https://release.debian.org/bullseye/rc_policy.txt 6a
> User: debian-qt-kde at lists.debian.org
> Usertags: qt5.14
> 
> Dear Maintainers,
> 
> soqt autopkgtests fail with Qt 5.14:
> 
> autopkgtest [23:09:17]: @@@@@@@@@@@@@@@@@@@@ summary
> test01               FAIL stderr: QStandardPaths: wrong permissions on runtime directory /tmp/autopkgtest-lxc.da6wz6on/downtmp/autopkgtest_tmp, 7755 instead of 7700
> test02               FAIL stderr: QStandardPaths: wrong permissions on runtime directory /tmp/autopkgtest-lxc.da6wz6on/downtmp/autopkgtest_tmp, 7755 instead of 7700
> test04               FAIL stderr: QStandardPaths: wrong permissions on runtime directory /tmp/autopkgtest-lxc.da6wz6on/downtmp/autopkgtest_tmp, 7755 instead of 7700
> test05               FAIL stderr: QStandardPaths: wrong permissions on runtime directory /tmp/autopkgtest-lxc.da6wz6on/downtmp/autopkgtest_tmp, 7755 instead of 7700
> 
> You can easily hide this warning by exporting
> QT_LOGGING_RULES="default.warning=false" environment variable.
> 
> Or add "Restrictions: allow-stderr" to debian/tests/control.

Actually both of them are workarounds; the proper fix is to create the
$XDG_RUNTIME_DIR directory with the proper permissions, as described by
the XDG basedir spec:
https://specifications.freedesktop.org/basedir-spec/latest/ar01s03.html
  $XDG_RUNTIME_DIR defines the base directory relative to which
  user-specific non-essential runtime files and other file objects
  (such as sockets, named pipes, ...) should be stored. The directory
  MUST be owned by the user, and he MUST be the only one having read
  and write access to it. Its Unix access mode MUST be 0700.

So the following change, that applies to all the debian/tests/test*
tests, should do it:

@@ -6,7 +6,8 @@ set -e

 export OMPI_MCA_orte_rsh_agent=/bin/false
 export DEB_HOST_MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH)
-export XDG_RUNTIME_DIR="$AUTOPKGTEST_TMP"
+export XDG_RUNTIME_DIR="$AUTOPKGTEST_TMP/run"
+mkdir -m 700 "$XDG_RUNTIME_DIR"

 WORKDIR=$(mktemp -d)
 trap "rm -rf $WORKDIR" 0 INT QUIT ABRT PIPE TERM

(PS: you don't need to create WORKDIR either, simply use
$AUTOPKGTEST_TMP directly.)

-- 
Pino Toscano
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: This is a digitally signed message part.
URL: <http://alioth-lists.debian.net/pipermail/debian-science-maintainers/attachments/20200628/10afeb05/attachment.sig>


More information about the debian-science-maintainers mailing list