Source: most
Version: 5.2.0-1
Severity: important
Tags: ftbfs
Justification: FTBFS
X-Debbugs-Cc: ni...@thykier.net
User: ni...@thykier.net
Usertags: rrr-no-as-default-issue

Dear maintainer,

During a test rebuild for building packages with
`Rules-Requires-Root: no` as the default in `dpkg`,
most failed to rebuild.

Log Summary:
-------------------------------------------------------------------------------
[...]
checking for terminfo... yes
checking for the slang library and header files ... yes: /lib/aarch64-linux-gnu and /usr/include
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating src/sysconf.h
/usr/bin/make SYS_INITFILE=/etc/most.conf
make[1]: Entering directory '/<<PKGBUILDDIR>>'
cd src; /usr/bin/make all
make[2]: Entering directory '/<<PKGBUILDDIR>>/src'
mkdir /<<PKGBUILDDIR>>/src/objs
/bin/cp /<<PKGBUILDDIR>>/src/sysconf.h config.h
cd /<<PKGBUILDDIR>>/src/objs && cc -c -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -DUTF8 -Dunix -DMOST_SYSTEM_INITFILE='"/etc/most.conf"' /<<PKGBUILDDIR>>/src/chkslang.c cc /<<PKGBUILDDIR>>/src/objs/chkslang.o -o /<<PKGBUILDDIR>>/src/objs/chkslang -Wl,-z,relro -lslang -lm
/<<PKGBUILDDIR>>/src/objs/chkslang most 20000
cd /<<PKGBUILDDIR>>/src/objs && cc -c -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -DUTF8 -Dunix -DMOST_SYSTEM_INITFILE='"/etc/most.conf"' /<<PKGBUILDDIR>>/src/buffer.c cd /<<PKGBUILDDIR>>/src/objs && cc -c -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -DUTF8 -Dunix -DMOST_SYSTEM_INITFILE='"/etc/most.conf"' /<<PKGBUILDDIR>>/src/cmd.c cd /<<PKGBUILDDIR>>/src/objs && cc -c -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -DUTF8 -Dunix -DMOST_SYSTEM_INITFILE='"/etc/most.conf"' /<<PKGBUILDDIR>>/src/display.c cd /<<PKGBUILDDIR>>/src/objs && cc -c -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -DUTF8 -Dunix -DMOST_SYSTEM_INITFILE='"/etc/most.conf"' /<<PKGBUILDDIR>>/src/edit.c cd /<<PKGBUILDDIR>>/src/objs && cc -c -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -DUTF8 -Dunix -DMOST_SYSTEM_INITFILE='"/etc/most.conf"' /<<PKGBUILDDIR>>/src/file.c
/<<PKGBUILDDIR>>/src/file.c: In function ‘most_do_next_file’:
/<<PKGBUILDDIR>>/src/file.c:652:40: warning: ‘%s’ directive writing up to 2147483622 bytes into a region of size between 231 and 241 [-Wformat-overflow=]
  652 |    else sprintf(mbuf, "Next File (%d): %s", j, file);
      |                                        ^~
In function ‘format_next_file’,
    inlined from ‘most_do_next_file’ at /<<PKGBUILDDIR>>/src/file.c:667:2:
/<<PKGBUILDDIR>>/src/file.c:652:9: note: ‘sprintf’ output between 16 and 2147483648 bytes into a destination of size 256
  652 |    else sprintf(mbuf, "Next File (%d): %s", j, file);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cd /<<PKGBUILDDIR>>/src/objs && cc -c -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -DUTF8 -Dunix -DMOST_SYSTEM_INITFILE='"/etc/most.conf"' /<<PKGBUILDDIR>>/src/help.c cd /<<PKGBUILDDIR>>/src/objs && cc -c -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -DUTF8 -Dunix -DMOST_SYSTEM_INITFILE='"/etc/most.conf"' /<<PKGBUILDDIR>>/src/keym.c cd /<<PKGBUILDDIR>>/src/objs && cc -c -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -DUTF8 -Dunix -DMOST_SYSTEM_INITFILE='"/etc/most.conf"' /<<PKGBUILDDIR>>/src/keyparse.c cd /<<PKGBUILDDIR>>/src/objs && cc -c -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -DUTF8 -Dunix -DMOST_SYSTEM_INITFILE='"/etc/most.conf"' /<<PKGBUILDDIR>>/src/line.c cd /<<PKGBUILDDIR>>/src/objs && cc -c -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -DUTF8 -Dunix -DMOST_SYSTEM_INITFILE='"/etc/most.conf"' /<<PKGBUILDDIR>>/src/main.c cd /<<PKGBUILDDIR>>/src/objs && cc -c -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -DUTF8 -Dunix -DMOST_SYSTEM_INITFILE='"/etc/most.conf"' /<<PKGBUILDDIR>>/src/most.c cd /<<PKGBUILDDIR>>/src/objs && cc -c -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -DUTF8 -Dunix -DMOST_SYSTEM_INITFILE='"/etc/most.conf"' /<<PKGBUILDDIR>>/src/search.c cd /<<PKGBUILDDIR>>/src/objs && cc -c -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -DUTF8 -Dunix -DMOST_SYSTEM_INITFILE='"/etc/most.conf"' /<<PKGBUILDDIR>>/src/sysdep.c cd /<<PKGBUILDDIR>>/src/objs && cc -c -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -DUTF8 -Dunix -DMOST_SYSTEM_INITFILE='"/etc/most.conf"' /<<PKGBUILDDIR>>/src/window.c cd /<<PKGBUILDDIR>>/src/objs && cc -c -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wall -DUTF8 -Dunix -DMOST_SYSTEM_INITFILE='"/etc/most.conf"' /<<PKGBUILDDIR>>/src/color.c cd /<<PKGBUILDDIR>>/src/objs; cc buffer.o cmd.o display.o edit.o file.o help.o keym.o keyparse.o line.o main.o most.o search.o sysdep.o window.o color.o -o most -Wl,-z,relro -lslang -lm
most created in /<<PKGBUILDDIR>>/src/objs
make[2]: Leaving directory '/<<PKGBUILDDIR>>/src'
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
[ -f doc/most.txt.orig ] || cp doc/most.txt doc/most.txt.orig
[ -f doc/most.1.orig ] || cp doc/most.1 doc/most.1.orig
/usr/bin/make -C doc/tm all
make[1]: Entering directory '/<<PKGBUILDDIR>>/doc/tm'
tmexpand -I/usr/share/tmexpand/macros/ most.tm most.sgml
docbook2man most.sgml
Using catalogs: /etc/sgml/catalog
Using stylesheet: /usr/share/docbook-utils/docbook-utils.dsl#print
Working on: /<<PKGBUILDDIR>>/doc/tm/most.sgml
Done.
docbook2txt most.sgml
Using catalogs: /etc/sgml/catalog
Using stylesheet: /usr/share/docbook-utils/docbook-utils.dsl#html
Working on: /<<PKGBUILDDIR>>/doc/tm/most.sgml
Done.
make[1]: Leaving directory '/<<PKGBUILDDIR>>/doc/tm'
touch build-stamp
dh_testdir dh_testroot dh_clean
dh_clean: warning: Use of debian/compat is deprecated and will be removed in debhelper (>= 14~).
Making the binary package: --.deb ...
dh_installdirs dh_installdirs: warning: Use of debian/compat is deprecated and will be removed in debhelper (>= 14~).
dh_installchangelogs changes.txt
dh_installchangelogs: warning: Use of debian/compat is deprecated and will be removed in debhelper (>= 14~). dh_installdocs debian/copyright README NEWS doc/lesskeys.rc doc/most-fun.txt doc/most.rc dh_installdocs: warning: Use of debian/compat is deprecated and will be removed in debhelper (>= 14~).
dh_installmime
dh_installmime: warning: Use of debian/compat is deprecated and will be removed in debhelper (>= 14~).
dh_installman doc/most.1
dh_installman: warning: Use of debian/compat is deprecated and will be removed in debhelper (>= 14~).
install -o root -g root -m 755 src/objs/most debian/most/usr/bin/most
install: cannot change ownership of 'debian/most/usr/bin/most': Operation not permitted
make: *** [debian/rules:74: binary-arch] Error 1
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
--------------------------------------------------------------------------------
Build finished at 2024-11-17T12:52:10Z

-------------------------------------------------------------------------------


The above is just how the build ends and not necessarily the most
relevant part. If required, the full build log is available here:

https://people.debian.org/~nthykier/rrr-no-as-default/logs/1023464.gz

You can find common solutions at
https://people.debian.org/~nthykier/rrr-no-as-default/docs/solutions.md

If this is really a bug in one of the build-depends, please use
reassign and affects, so that this is still visible in the BTS web
page for this package.

If this package is listed in
https://people.debian.org/~nthykier/rrr-no-as-default/docs/static-ownership.list,
then please just set `Rules-Requires-Root: binary-targets` to the source
stanza of `debian/control` as a fix to this bug.

If this package is listed in
https://people.debian.org/~nthykier/rrr-no-as-default/docs/maybe-misbuilds.list,
then the package was deemed at risk for misbuilding (having wrong
ownership) but had a FTBFS problem we tested it. Please test whether the
package works with `Rules-Requires-Root: no` validating that the
resulting deb has the correct ownership for all paths in the deb.

The goal is to have the default changed in `dpkg` either in `Trixie` or
`Forky`, depending on progress and feasibility with the release schedule
for Trixie.

For more information on this bug filing, please see:
https://lists.debian.org/debian-dpkg/2024/11/msg00016.html

Thanks,


PS: The builds were performed in mid-November. If you fixed the problem
between between then and this bug being filed, then please just close
the bug with the version it was fixed in.

Attachment: OpenPGP_signature.asc
Description: OpenPGP digital signature

Reply via email to