Subject: bug#379: [DNG] "chimeara/ceres" in lsb_release output causes failure to compile kernel

From: [email-masked]
Date: Sat, 1 Feb 2020 21:40:31 +0000

On 200129-07:37+0000, Mark Hindley wrote:
> On Tue, Jan 28, 2020 at 09:46:38PM -0000, matheu--- via Dng wrote:
> > Hi!
> > 
> > I tried to see how to report this bug on bugs.devuan.org, or on
> > dev1galaxy.org but couldn't magage with Tor.
> 
> Matheu,
> 
> Thanks. This looks as if it might well be related to #379. So please 
> could you resend this information to [email-masked].
> 
> Please also attach the KERNEL_SRC_ROOT/debian/changelog file.

We're in KERNEL_SRC_ROOT/ and we are compiling linux-stable, like so:

$ make j4 deb-pkg

  HOSTCC  scripts/kconfig/conf.o
  HOSTLD  scripts/kconfig/conf
scripts/kconfig/conf  --syncconfig Kconfig
  UPD     include/config/kernel.release
make clean
sh ./scripts/package/mkdebian
  TAR     linux-5.5.0+.tar.gz
origversion=$(dpkg-parsechangelog -SVersion |sed 's/-[^-]*$//');\
	mv linux-5.5.0+.tar.gz ../linux-5.5.0+_${origversion}.orig.tar.gz
dpkg-parsechangelog: warning:     debian/changelog(l2): found end of file where expected first heading
dpkg-parsechangelog: error: fatal error occurred while parsing debian/changelog
dpkg-buildpackage -r"fakeroot -u" -a$(cat debian/arch)  -i.git -us -uc
dpkg-buildpackage: warning:     debian/changelog(l2): found end of file where expected first heading
dpkg-buildpackage: error: fatal error occurred while parsing debian/changelog
make[1]: *** [scripts/Makefile.package:77: deb-pkg] Error 25
make: *** [Makefile:1427: deb-pkg] Error 2
sed 's$lsb_release -cs$lsb_release -cs |cut -d -f2/$' scripts/package/mkdebian  | grep -A1 dpkg-parsechang

It results in the above error.

The issue is with the lsb_release, or the kernel folks should accept the
second field to have a '/'... and change the mkdebian file accordingly.

$ lsb_release -cs
chimaera/ceres
$
does not work with the kernel.

The workaround is to insert '| cut -d/ -f2' into KERNEL_SRC_ROOT/scripts/package/mkdebian .

$ sed -i 's$lsb_release -cs$lsb_release -cs |cut -d/ -f2$' scripts/package/mkdebian

which will result in:

127c127
< elif distribution=$(lsb_release -cs |cut -d/ -f2 2>/dev/null) && [ -n "$distribution" ] && [ "$distribution" != "n/a" ]; then
---
> elif distribution=$(lsb_release -cs 2>/dev/null) && [ -n "$distribution" ] && [ "$distribution" != "n/a" ]; then

and then the compilation is OK.

Such as:

make clean
sh ./scripts/package/mkdebian
  TAR     linux-5.5.0+.tar.gz
origversion=$(dpkg-parsechangelog -SVersion |sed 's/-[^-]*$//');\
        mv linux-5.5.0+.tar.gz ../linux-5.5.0+_${origversion}.orig.tar.gz
dpkg-buildpackage -r"fakeroot -u" -a$(cat debian/arch)  -i.git -us -uc
dpkg-buildpackage: info: source package linux-5.5.0+
dpkg-buildpackage: info: source version 5.5.0+-1
dpkg-buildpackage: info: source distribution ceres
dpkg-buildpackage: info: source changed by mehr <mehr@meba>
 dpkg-source -i.git --before-build .
dpkg-buildpackage: info: host architecture amd64
 fakeroot -u debian/rules clean
rm -rf debian/*tmp debian/files
make clean
 dpkg-source -i.git -b .
dpkg-source: warning: source directory 'linux-stable_W' is not <sourcepackage>-<upstreamversion> 'linux-5.5.0+-5.5.0+'
dpkg-source: warning: .orig directory name linux-stable_W.orig is not <package>-<upstreamversion> (wanted linux-5.5.0+-5.5.0+.orig)
dpkg-source: info: using source format '1.0'
dpkg-source: info: building linux-5.5.0+ using existing linux-5.5.0+_5.5.0+.orig.tar.gz
...

The KERNEL_SRC_ROOT/debian/changelog file is attached.

Regards!