]>
git.proxmox.com Git - pve-manager.git/blob - country.pl
6 # see also: http://en.wikipedia.org/wiki/Keyboard_layout
8 # country codes from: /usr/share/zoneinfo/iso3166.tab
9 # timezones from: /usr/share/zoneinfo/zone.tab
10 # keymaps: find /usr/share/keymaps/i386/ -type f -name '*.kmap.gz'
11 # x11 layouts: /usr/share/X11/xkb/rules/xorg.lst
16 open (TMP
, "</usr/share/zoneinfo/iso3166.tab");
17 while (defined ($line = <TMP
>)) {
18 if ($line =~ m/^([A-Z][A-Z])\s+(.*\S)\s*$/) {
19 $country->{lc($1)} = $2;
24 # we need mappings for X11, console, and kvm vnc
26 # LC(-LC)? => [DESC, kvm, console, X11, X11variant]
27 my $keymaps = PVE
::Tools
::kvmkeymaps
();
29 foreach my $km (sort keys %$keymaps) {
30 my ($desc, $kvm, $console, $x11, $x11var) = @{$keymaps->{$km}};
32 if ($km =~m/^([a-z][a-z])-([a-z][a-z])$/i) {
33 defined ($country->{$2}) || die "undefined country code '$2'";
35 defined ($country->{$km}) || die "undefined country code '$km'";
38 $x11var = '' if !defined ($x11var);
39 print "map:$km:$desc:$kvm:$console:$x11:$x11var:\n";
48 'nl' => 'en-us', # most Dutch people us US layout
73 my $mirrors = PVE
::Tools
::debmirrors
();
74 foreach my $cc (keys %$mirrors) {
75 die "undefined country code '$cc'" if !defined ($country->{$cc});
78 foreach my $cc (sort keys %$country) {
79 my $map = $defmap->{$cc} || '';
80 my $mir = $mirrors->{$cc} || '';
81 print "$cc:$country->{$cc}:$map:$mir:\n";