Bad identification of getopt in /usr/bin/fakeroot-sysv with some translations
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
fakeroot (Debian) |
Fix Released
|
Unknown
|
|||
fakeroot (Ubuntu) |
Fix Released
|
Undecided
|
Loïc Minier |
Bug Description
When running fakeroot in a Dutch enviroment, It fails to identify some arguments like --version with:
"getopt: onbekende optie '--version'
fakeroot, create a fake root environment.
usage: fakeroot [-l|--lib fakerootlib] [-f|--faked fakedbin]
[-b|--fd-base fd] [-h|--help] [-v|--version]
This happens because of line 46 in the fakeroot-sysv script.
In English the command 'getopt --version' returns "getopt from util-linux 2.20.1" but in Dutch it returns "'getopt' uit util-linux 2.20.1" (with the " ' " 's)
The following gets bad interpreted:
46 GETOPTEST=`getopt --version`
47 case $GETOPTEST in
48 getopt*) # GNU getopt
49 FAKE_TEMP=`getopt -l lib: -l faked: -l unknown-is-real -l fd-base: -l ve rsion -l help -- +l:f:i:s:ub:vh "$@"`
50 ;;
51 *) # POSIX getopt ?
52 FAKE_TEMP=`getopt l:f:i:s:ub:vh "$@"`
53 ;;
54 esac
The POSIX getopt ? case is followed and fakeroot doesn't work as intended.
Related branches
tags: | added: patch |
Changed in fakeroot (Ubuntu): | |
status: | In Progress → Fix Committed |
Changed in fakeroot (Debian): | |
importance: | Undecided → Unknown |
status: | New → Unknown |
Changed in fakeroot (Debian): | |
status: | Unknown → New |
Changed in fakeroot (Debian): | |
status: | New → Fix Released |
Temporary/hacky solution is to add:
GETOPTEST="getopt"
after line 46