GOTO Masanori <[EMAIL PROTECTED]> writes: > At Mon, 12 Apr 2004 23:28:07 +0900, > GOTO Masanori wrote: >> At 03 Apr 2004 00:39:01 +0200, >> Goswin von Brederlow wrote: >> > > There are various ways to fix this situation, one example: >> > > >> > > kernel_rev=$(uname -r | awk -F '[.-]' '{print $3}' | sed >> > > 's/\([[:digit:]]*\).*/\1/' ) >> > >> > kernel_rev=$(uname -r | sed 's/\([0-9]*\.[0-9]*\.\)\([0-9]*\)\(.*\)/\2/') >> > >> > Please don't use awk (see BTS for related bugs). awk requires a >> > Pre-Depends since its an alternative and mawk (provides awk) is not >> > even essential. >> > >> > sed on the other hand is essential. >> >> Thanks for your code, but I've put my version. >> >> Using awk is no problem. > > Ugh, I'm silly that I didn't check Bug#229461. Using awk is problem > for some users (Note that AJ and Colin did not think it's problematic. > I agreed with them, but in fact mawk is not essential).
Its not about users but about installing debian (be it real or for a chroot). Using awk is a serious policy violation that just happens to only matter when installing from scratch. I think having the Debian Installer fail is problematic but thats just me. > However, Jeff already put such code into libc.preinst: > > if [ "$1" != abort-upgrade ] && [ "`uname -s`" = Linux ] > then > # Test to make sure z < 255, in x.y.z-n form of kernel version > # Also make sure we don't trip on x.y.zFOO-n form > kernel_rev=$(uname -r | tr -- - . | cut -d. -f3 | tr -d [:alpha:]) That will fail with "2.4.25,foo" but what the heck. The problem with the code is that its missing a "": [EMAIL PROTECTED]:~$ uname -r | tr -- - . | cut -d. -f3 | tr -d [:alpha:] 23dual [EMAIL PROTECTED]:~$ uname -r | tr -- - . | cut -d. -f3 | tr -d "[:alpha:]" 23 > if [ "$kernel_rev" -ge 255 ] > then > echo WARNING: Your kernel version indicates a revision number > echo of 255 or greater. Glibc has a number of built in > echo assumptions that this revision number is less than 255. > echo If you\'ve built your own kernel, please make sure that any > echo custom version numbers are appended to the upstream > echo kernel number with a dash or some other delimiter. > > exit 1 > fi > > And changelog said: > > - debian/debhelper.in/libc.preinst: Don't use awk except in > upgrade mode. (Closes: #229461) > Also make sure that it doesn't trip on words being added to the > upstream revision number. Thanks to James Troup for > mentioning this. > Thanks to Bastian Blank <[EMAIL PROTECTED]> for the fix. > > So it seems this #241395 is intentional behavior. But apparently the > current code is failed under "2.4.23dual" kernel with message: > > bash: [: : integer expression expected > > It has to be fixed. I guess many user use "2.4.23dual" and so on. So > go back to #229461, why should we ignore a version like "2.4.23dual"? > Jeff, James? > > I would like to permit "2.4.23dual" and recognize as "2.4.23". I'll > adopt Goswin's code if no one objects. > > Regards, > -- gotom MfG Goswin PS: Please fix that so I can update my kernel (which means I loose the testcase). :) -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]