Bug#521122: console-setup: fails to install: "eval: line 2125: unexpected EOF while looking for matching `"'"
On Wed, Mar 25, 2009 at 07:55:54PM +0100, Julien Cristau wrote:
> On Wed, 2009-03-25 at 20:09 +0200, Anton Zinoviev wrote:
> >
> > It is not only your script - the parsing of console-setup doesn't allow
> > spaces between options so this will require a patch too.
>
> It should be easy to remove the spaces directly from the awk script, if
> you want to avoid touching other parts of console-setup for that. Let
> me know if I should prepare an updated patch.
I decided it is best to do both, so after some reading of the mawk
manual ;) I added in console-setup support for spaces and made the
awk-script remove them. I also made the script to ignore lines such as
Option "XkbModel" "pc"104"
Since this is a grave bug I decided to build and upload the package now.
However I am not 100% sure about the syntax of xorg.conf, so if you want
you can check that the new variant of the script works properly.
:) I have attached it.
BTW, the xorg.conf of Celejar discovered another bug in Debconf
configuration of console-setup:
xkblayout=us,il
xkbvariant=dvorak,
became
xkblayout=us,il
xkbvariant=,
I fixed this too.
Anton Zinoviev
#!/usr/bin/awk -f
{
$0 = tolower($0);
sub("#.*","")
xkb = "";
}
/^[ \t]*section[ \t]+"inputdevice"/,/^[ \t]*endsection/ {
if ($1 == "option") {
if ($2 == "\"xkbmodel\"") {
xkb = "XKBMODEL";
} else if ($2 == "\"xkblayout\"") {
xkb = "XKBLAYOUT";
} else if ($2 == "\"xkbvariant\"") {
xkb = "XKBVARIANT";
} else if ($2 == "\"xkboptions\"") {
xkb = "XKBOPTIONS";
}
$1 = "";
$2 = "";
}
}
xkb != "" && /^[ \t]*\"[^"]+\"[ \t]*$/ {
sub("^[ \t]*\"", "");
sub("\".*", "");
gsub("[ \t]", "");
print xkb "=\"" $0 "\"";
}
Reply to: