summaryrefslogtreecommitdiffstats
path: root/perl-install/install_steps_gtk.pm
blob: 94471d2056a84d656c7c42d106f997cb03297652 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
package install_steps_gtk;

use diagnostics;
use strict;
use vars qw(@ISA);

@ISA = qw(install_steps_interactive interactive_gtk);

#-######################################################################################
#- misc imports
#-######################################################################################
use common qw(:common :file :functional :system);
use partition_table qw(:types);
use my_gtk qw(:helpers :wrappers);
use Gtk;
#use Gtk::XmHTML;
use devices;
use fsedit;
use modules;
use install_steps;
use install_steps_interactive;
use interactive_gtk;
use install_any;
use diskdrake;
use log;
use help;
use lang;

#-#####################################################################################
#-INTERN CONSTANT
#-#####################################################################################
my $w_help;
my $itemsNB = 1;
my (@background1, @background2);
my ($width,       $height)       = (640,   480);
my ($stepswidth,  $stepsheight)  = (140,   $height);
my ($logowidth,   $logoheight)   = ($width - $stepswidth, 40);
my ($helpwidth,   $helpheight)   = ($width - $stepswidth, 100);
my ($windowwidth, $windowheight) = ($width - $stepswidth, $height - $helpheight - $logoheight);

my @themes_vga16 = qw(blue blackwhite savane);
my @themes = qw(DarkMarble marble3d blueHeart);

my @circle_head = (
    "19 17 4 1"
);

my @circle_body = (
" c None",
"+ c #FFFFFF",
"        =====      ",
"      =========    ",
"     =+++=======   ",
"    =++==========  ",
"   ==+============ ",
"   +++============ ",
"  ================o",
"  ================o",
"  ================o",
"  ===============oo",
"  ===============oo",
"   =============oo ",
"   ============ooo ",
"    o=========ooo  ",
"     oo=====oooo   ",
"      ooooooooo    ",
"        ooooo      ",
);

#-my @questionmark_head = (
#-"39 97 6 1",
#-" 	c None",
#-".	c #000000",
#-"+	c #FFFFFF",
#-"o	c #AAAAAA",
#-);
#-my @questionmark_body = (
#-("OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO") x 10,
#-"OOOOOOOOOOOOO.......OOOOOOOOOOOOOOOOOOO",
#-"OOOOOOOOOOOO..OOOOOOO.OOOOOOOOOOOOOOOOO",
#-"OOOOOOOOOO..OOOOOOOOOOOOOOOOOOOOOOOOOOO",
#-"OOOOOOOOOO..OOOOOOOOOOOOOOOOOOOOOOOOOOO",
#-"OOOOOOOO..OOOOOOOOOOOOOOOOOOOOOOOOOOOOO",
#-"OOOOOOOO..OOOOOOOOOOOOOOOOOOOOOOOOOOOOO",
#-"OOOOOOO..OOOOOOOOOOOOOOOOOOXOOOOOOOOOOO",
#-"OOOOOOO.OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO",
#-"OOOOOO.OOOOOOOOOOOOOOOOOOOOOXOOOOOOOOOO",
#-"OOOOO..OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO",
#-"OOOOO.OOOOOOOOOOOOOOOOOOOOOOOXOOOOOOOOO",
#-"OOOO..OOOOOOOOOOOOOOOOOOOOOOOOXOOOOOOOO",
#-"OOOO.OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO",
#-"OOOO.OOOOOOOOOOOOOOOOOOOOOOOOOOXOOOOOOO",
#-"OOO..OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO",
#-"OOO.OOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOOOOO",
#-"OO..OOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOOOOO",
#-"OOO.OOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOOOOO",
#-"OO.OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOOOO",
#-"OO.OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOOOO",
#-"O..OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOOOO",
#-"OO.OOOOOOOOOOOoo+++++ooOOOOOOOOOOXOOOOO",
#-"O.OOOOOOOOOOo+++o+++++++oOOOOOOOOOXOOOO",
#-"O.OOOOOOOOO+++OOOOo+++++++OOOOOOOOXOOOO",
#-"O.OOOOOOOOo++oOOOOOo++++++oOOOOOOOXOOOO",
#-"O.OOOOOOOo+++oOOOOOO+++++++OOOOOOOXOOOO",
#-"..OOOOOOOo++++OOOOOOo++++++oOOOOOOXOOOO",
#-"O.OOOOOOO+++++oOOOOOo+++++++OOOOOOXOOOO",
#-".OOOOOOOO++++++OOOOOo+++++++OOOOOOOXOOO",
#-".OOOOOOOO++++++OOOOOo+++++++OOOOOOXOOOO",
#-".OOOOOOOOo++++oOOOOOo++++++oOOOOOOOXOOO",
#-".OOOOOOOOOo++oOOOOOOo++++++oOOOOOOOXOOO",
#-".OOOOOOOOOOOOOOOOOOO+++++++OOOOOOOOXOOO",
#-".OOOOOOOOOOOOOOOOOOO++++++OOOOOOOOOXOOO",
#-".OOOOOOOOOOOOOOOOOOo+++++oOOOOOOOOOXOOO",
#-".OOOOOOOOOOOOOOOOOO+++++OOOOOOOOOOOXOOO",
#-".OOOOOOOOOOOOOOOOOo+++oOOOOOOOOOOOOXOOO",
#-".OOOOOOOOOOOOOOOOO+++oOOOOOOOOOOOOOXOOO",
#-".OOOOOOOOOOOOOOOOo++OOOOOOOOOOOOOOOXOOO",
#-".OOOOOOOOOOOOOOOO++OOOOOOOOOOOOOOOOXOOO",
#-".OOOOOOOOOOOOOOOO+oOOOOOOOOOOOOOOOOXOOO",
#-".OOOOOOOOOOOOOOOO+OOOOOOOOOOOOOOOOOXOOO",
#-".OOOOOOOOOOOOOOOO+OOOOOOOOOOOOOOOOOXOOO",
#-".OOOOOOOOOOOOOOOOoOOOOOOOOOOOOOOOOOXOOO",
#-".OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOO",
#-".OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOO",
#-"O.OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOO",
#-"OOOOOOOOOOOOOOOOoooOOOOOOOOOOOOOOOOXOOO",
#-".OOOOOOOOOOOOOO+++++OOOOOOOOOOOOOOXOOOO",
#-"O.OOOOOOOOOOOO++++++oOOOOOOOOOOOOOXXOOO",
#-"O.OOOOOOOOOOOo+++++++OOOOOOOOOOOOOXOOOO",
#-"O.OOOOOOOOOOOo+++++++OOOOOOOOOOOOOXOOOO",
#-"O.OOOOOOOOOOOo+++++++OOOOOOOOOOOOOXOOOO",
#-"OOOOOOOOOOOOOO++++++oOOOOOOOOOOOOOXOOOO",
#-"O.OOOOOOOOOOOOO+++++OOOOOOOOOOOOOXXOOOO",
#-"OO.OOOOOOOOOOOOOoooOOOOOOOOOOOOOOOXOOOO",
#-"OO.OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOOOO",
#-"OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOOOO",
#-"OO.OOOOOOOOOOOOOOOOOOOOOOOOOOOOOXXOOOOO",
#-"OOO.OOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOOOO",
#-"OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOOOOO",
#-"OOO.OOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOOOOO",
#-"OOOO.OOOOOOOOOOOOOOOOOOOOOOOOOOXXOOOOOO",
#-"OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOOOOOO",
#-"OOOOO.OOOOOOOOOOOOOOOOOOOOOOOOOXOOOOOOO",
#-"OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXXOOOOOOO",
#-"OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOOOOOOO",
#-"OOOOOO.OOOOOOOOOOOOOOOOOOOOOOXXOOOOOOOO",
#-"OOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOOOOOOOO",
#-"OOOOOOOOOOOOOOOOOOOOOOOOOOOOXXOOOOOOOOO",
#-"OOOOOOOOOOOOOOOOOOOOOOOOOOOXXOOOOOOOOOO",
#-"OOOOOOOOOOOOOOOOOOOOOOOOOOOXOOOOOOOOOOO",
#-"OOOOOOOOOOOOOOOOOOOOOOOOOXXXOOOOOOOOOOO",
#-"OOOOOOOOOOOOOOOOOOOOOOOOOXOOOOOOOOOOOOO",
#-"OOOOOOOOOOOOXOOOOOOOOOOXXXOOOOOOOOOOOOO",
#-"OOOOOOOOOOOOOOXOOOOOOXXXOOOOOOOOOOOOOOO",
#-"OOOOOOOOOOOOOOOXXXXXXXOOOOOOOOOOOOOOOOO",
#-("OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO") x 10);

my    @red_circle = (@circle_head, "= c #FF0000", "o c #AA5500", @circle_body);
my @orange_circle = (@circle_head, "= c #FFAA00", "o c #AA5500", @circle_body);
my  @green_circle = (@circle_head, "= c #00FF00", "o c #00AA00", @circle_body);

#-######################################################################################
#- In/Out Steps Functions
#-######################################################################################
sub new($$) {
    my ($type, $o) = @_;

    my $old = $SIG{__DIE__};
    $SIG{__DIE__} = sub { $_[0] !~ /my_gtk\.pm/ and goto $old };

    $ENV{DISPLAY} = $o->{display} || ":0";
    unless ($::testing) {
	$my_gtk::force_focus = $ENV{DISPLAY} eq ":0";

	my $f = "/tmp/Xconf";
	createXconf($f, @{$o->{mouse}}{"XMOUSETYPE", "device"});

	if ($ENV{DISPLAY} eq ":0") {
	    my $launchX = sub {
		my $ok = 1;
		local $SIG{CHLD} = sub { $ok = 0 };
		unless (fork) {
		    exec $_[0], "-kb", "-dpms","-s" ,"240", "-allowMouseOpenFail", "-xf86config", $f or exit 1;
		}
		foreach (1..15) {
		    sleep 1;
		    return 0 if !$ok;
		    return 1 if c::Xtest($ENV{DISPLAY});
		}
		0;
	    };

	     if (!$o->{vga16} && listlength(cat_("/proc/fb"))) {
		 &$launchX("XF86_FBDev");
		 $o->{allowFB} = 1; #- keep in mind FB is used.
	     } else {
		my $dir = "/usr/X11R6/bin";
		unless (-x "$dir/XF86_VGA16") {
		    unlink "$dir/XF86_FBDev";
		    local *F; open F, ">$dir/XF86_VGA16" or die '';
		    local $/ = \ (16 * 1024);
		    my $f = install_any::getFile("$dir/XF86_VGA16") or die '';
		    syswrite F, $_ foreach <$f>;
		    chmod 0755, "$dir/XF86_VGA16";
		}
	        &$launchX("XF86_VGA16");
	    }
	}
    }
    @themes = @themes_vga16 if $o->{simple_themes} || !$o->{display} && !($o->{allowFB} ||= $::testing);

    install_theme($o);
    create_logo_window($o);

    $my_gtk::force_center = [ $width - $windowwidth, $logoheight, $windowwidth, $windowheight ];

    (bless {}, ref $type || $type)->SUPER::new($o);
}

sub enteringStep {
    my ($o, $step) = @_;

    $o->SUPER::enteringStep($step);
    create_steps_window($o);
    create_help_window($o);
}
sub leavingStep {
    my ($o, $step) = @_;
    $o->SUPER::leavingStep($step);
}



#-######################################################################################
#- Steps Functions
#-######################################################################################
sub selectLanguage {
    my ($o) = @_;
    $o->SUPER::selectLanguage;
    Gtk->set_locale;
    install_theme($o);
}

#------------------------------------------------------------------------------
sub doPartitionDisks($$) {
    my ($o, $hds, $raid) = @_;

    if (!$::isStandalone && fsedit::is_one_big_fat($hds)) {
	#- wizard
	my $min_linux = 600 << 11;
	my $min_freewin = 100 << 11;

	my ($part) = fsedit::get_fstab(@{$o->{hds}});
	my $w = $o->wait_message(_("Resizing"), _("Computing fat filesystem bounds"));
	my $resize_fat = eval { resize_fat::main->new($part->{device}, devices::make($part->{device})) };
	my $min_win = $resize_fat->min_size;
	if (!$@ && $part->{size} > $min_linux + $min_freewin + $min_win && $o->ask_okcancel('',
_("WARNING!

DrakX now needs to resize your Windows partition. Be careful: this operation is
dangerous. If you have not already done so, you should first run scandisk (and
optionally run defrag) on this partition and backup your data.
When sure, press Ok."))) {
	    my $hd = $hds->[0];
	    my $oldsize = $part->{size};
	    $hd->{isDirty} = $hd->{needKernelReread} = 1;
	    $part->{size} -= $min_linux;
	    partition_table::adjustEnd($hd, $part);
	    partition_table::adjust_local_extended($hd, $part);
	    partition_table::adjust_main_extended($hd);

	    local *log::l = sub { $w->set(join(' ', @_)) };
	    eval { $resize_fat->resize($part->{size}) };
	    if ($@) {
		$part->{size} = $oldsize;
		$o->ask_warn('', _("Automatic resizing failed"));
	    } else {
		$part->{isFormatted} = 1;
		eval { fsedit::auto_allocate($hds, $o->{partitions}) };
		if (!$@) {
		    partition_table::write($hd) unless $::testing;
		    return;
		}
	    }
	}
    }

    while (1) {
	diskdrake::main($hds, $raid, interactive_gtk->new, $o->{partitions});
	if (!grep { isSwap($_) } fsedit::get_fstab(@{$o->{hds}})) {
	    if ($::beginner) {
		$o->ask_warn('', _("You must have a swap partition"));
	    } elsif (!$::expert) {
		$o->ask_okcancel('', _("You don't have a swap partition\n\nContinue anyway?")) and last;
	    } else { last }
	} else { last }
    }
}

#------------------------------------------------------------------------------
sub choosePackages {
    my ($o, $packages, $compss, $compssUsers, $compssUsersSorted, $first_time) = @_;
    my $size = install_any::getAvailableSpace($o) * 0.7;

    if ($::beginner) {
	require pkgs;
	pkgs::setSelectedFromCompssList($o->{compssListLevels}, $o->{packages}, 1, $size, $o->{installClass}, $o->{isUpgrade});
    } else {
	pkgs::setSelectedFromCompssList($o->{compssListLevels}, $o->{packages}, $::expert ? 95 : 80, $size, $o->{installClass}) unless $::expert || $o->{isUpgrade};
	install_steps_interactive::choosePackages(@_);
	chooseSizeToInstall(@_);
	choosePackagesTree(@_) if $::expert;
    }
}
sub chooseSizeToInstall {
    my ($o, $packages, $compss, $compssUsers, $first_time) = @_;
    my $availableSpace = int(install_any::getAvailableSpace($o) / sqr(1024));
    my $current = pkgs::correctSize((sum map { $_->{size} } grep { $_->{selected} } values %$packages) / sqr(1024));
    my $w = my_gtk->new('');
    my $adj = create_adjustment($current * 1.3, $current, $availableSpace);
    my $spin = gtkset_usize(new Gtk::SpinButton($adj, 0, 0), 100, 0);

    gtkadd($w->{window},
	  gtkpack(new Gtk::VBox(0,20),
		  _("Going to install %d MB. You can choose to install more programs", $current) .
		  ($::expert ? "\n" . _("You will be able to choose more precisely in next step") : ''),
		 create_packtable({ col_spacings => 10 },
				  [ _("Choose the size you want to install"), $spin, _("MB"), ],
				  [ undef, new Gtk::HScrollbar($adj) ],
			       ),
		 create_okcancel($w)
		)
	 );
    $spin->signal_connect(activate => sub { $w->{retval} = 1; Gtk->main_quit });
    $spin->grab_focus();
    $w->main or return;

    ($o->{packages_}{ind}, $o->{packages_}{select_level}) = 
      pkgs::setSelectedFromCompssList($o->{compssListLevels}, $o->{packages}, 0,
				      pkgs::invCorrectSize($spin->get_value_as_int) * sqr(1024), 
				      $o->{installClass}, $o->{isUpgrade});
}
sub choosePackagesTree {
    my ($o, $packages, $compss) = @_;
    my $availableSpace = int(install_any::getAvailableSpace($o) / sqr(1024));
    my $w = my_gtk->new('');
    add2hash_($o->{packages_}, { show_level => 0 }); #- keep show more or less 80 });

    my ($current, $ignore, $showall, $selectall, $w_size, $info_widget, $showall_button, $selectall_button, $go, %items) = 0, 0, 0, 0;
    my $details = new Gtk::VBox(0,0);
    $compss->{tree} = new Gtk::Tree();
    $compss->{tree}->set_selection_mode('multiple');

    my $clean; $clean = sub {
	my ($p) = @_;
	foreach (values %{$p->{childs}}) {
	    &$clean($_) if $_->{childs};
	    delete $_->{itemNB};
	    delete $_->{tree};
	    delete $_->{packages_item};
	}
    }; &$clean($compss);

    my $update = sub {
	my $size = 0;
	$ignore = 1;
	foreach (grep { $_->[0] } values %items) {
	    $compss->{tree}->unselect_child($_->[0]);
	    $compss->{tree}->select_child($_->[0]) if $_->[1]{selected};
	}
	$ignore = 0;
	
	foreach (values %$packages) {
	    $size += $_->{size} - ($_->{installedCumulSize} || 0) if $_->{selected}; #- on upgrade, installed packages will be removed.
	}

	$w_size->set(_("Total size: ") . int (pkgs::correctSize($size / sqr(1024))) . " / $availableSpace " . _("MB") );
    };
    my $new_item = sub {
	my ($p, $name, $parent) = @_;
	my $w = create_treeitem($name);
	$items{++$itemsNB} = [ $w, $p ];
	undef $parent->{packages_item}{$itemsNB} if $parent;
	$w->show;
	$w->set_sensitive(!$p->{base} && !$p->{installed});
	$w->signal_connect(focus_in_event => sub {
	    my $p = eval { pkgs::getHeader($p) };
	    gtktext_insert($info_widget, $@ ? _("Bad package") :
			   _("Version: %s\n", c::headerGetEntry($p, 'version') . '-' . c::headerGetEntry($p, 'release')) .
			   _("Size: %d KB\n", c::headerGetEntry($p, 'size') / 1024) .

			   formatLines(c::headerGetEntry($p, 'description')));
	}) unless $p->{childs};
	$itemsNB;
    };

    $compss->{tree}->signal_connect(selection_changed => sub {
	$ignore and return;

	my %s; @s{$_[0]->selection} = ();
	my @changed;
	#- needs to find @changed first, _then_ change the selected, otherwise
	#- we won't be able to find the changed
	foreach (values %items) {
	    push @changed, $_->[1] if ($_->[1]{selected} xor exists $s{$_->[0]});
	}
	#- works before @changed is (or must be!) one element
	foreach (@changed) {
	    if ($_->{childs}) {
		my $s = invbool \$_->{selected};
		my $f; $f = sub {
		    my ($p) = @_;
		    $p->{itemNB} or return;
		    if ($p->{packages}) {
			foreach (keys %{$p->{packages_item} || {}}) {
			    my ($a, $b) = @{$items{$_}};
			    $a and pkgs::set($packages, $b, $s);
			}
		    } else {
			foreach (values %{$p->{childs}}) {
			    $_->{selected} = $s;
			    &$f($_);
			}
		    }
		}; &$f($_);
#-	      } elsif ($_->{base}) {
#-		  $o->ask_warn('', _("Sorry, i won't unselect this package. The system needs it"));
#-	      } elsif ($_->{installed}) {
#-		  $o->ask_warn('', _("Sorry, i won't select this package. A more recent version is already installed"));
	    } else {
		pkgs::toggle($packages, $_);		
	    }
	}
	&$update();
    });

    my $select_add = sub {
	my ($ind, $level) = @{$o->{packages_}}{"ind", "select_level"};
	$level = max(0, min(100, ($level + $_[0])));
	$o->{packages_}{select_level} = $level;

	pkgs::unselect_all($packages);
	foreach (pkgs::allpackages($packages)) {
	    pkgs::select($packages, $_) if $_->{values}[$ind] >= $level;
	}
	&$update;
    };

    my $show_add = sub {
	my ($ind, $level) = @{$o->{packages_}}{"ind", "show_level"};
	$level = max(0, min(90, ($level + $_[0])));
	$o->{packages_}{show_level} = $level;

	my $update_tree = sub {
	    my $P = shift;
	    my $i = 0; foreach (@_) {
		my ($flag, $itemNB, $q) = @$_;
		my $item = $items{$flag || $itemNB}[0] if $flag || $itemNB;
		if ($flag) {
		    $P->{tree}->insert($item, $i) if $flag ne "1";
		    $item->set_subtree($q->{tree}) if $flag ne "1" && $q->{tree};
		    $i++;
		} elsif ($itemNB) {
		    delete $items{$itemNB};
		    delete $P->{packages_item}{$itemNB};
		    $P->{tree}->remove_item($item) if $P->{tree};
		}
	    }
	};
	my $f; $f = sub {
	    my ($p) = @_;
	    if ($p->{packages}) {
		my %l; $l{$items{$_}[1]} = $_ foreach keys %{$p->{packages_item}};
		map {
		    [ $_->{values}[$ind] >= $level ?
		      ($l{$_} ? 1 : &$new_item($_, $_->{name}, $p)) : '', $l{$_}, $_ ];
		} sort { 
		    $a->{name} cmp $b->{name} } @{$p->{packages}};
	    } else {
		map {
		    my $P = $p->{childs}{$_};
		    my @L; @L = &$f($P) if !$P->{values} || $P->{values}[$ind] > ($::expert ? -1 : 0);
		    if (grep { $_->[0] } @L) {
			my $r = $P->{tree} ? 1 : do {
			    my $t = $P->{tree} = new Gtk::Tree(); $t->show;
			    $P->{itemNB} = &$new_item($P, $_);
			};
			&$update_tree($P, @L);
			[ $r, $P->{itemNB}, $P ];
		    } else {
			&$update_tree($P, @L);
			delete $P->{tree};
			[ '', delete $P->{itemNB}, $P ];
		    }
		} sort keys %{$p->{childs} || {}};
	    }
	};
	$ignore = 1;
	&$update_tree($compss, &$f($compss));
	&$update;
	$ignore = 0;
    };

    gtkadd($w->{window}, gtkpack_(new Gtk::VBox(0,5),
				  0, _("Choose the packages you want to install"),
				  1, gtkpack(new Gtk::HBox(0,0),
					     createScrolledWindow($compss->{tree}),
					     gtkadd(gtkset_usize(new Gtk::Frame(_("Info")), 150, 0),
						    createScrolledWindow($info_widget = new Gtk::Text),
						   ),
					     ),
				 0, gtkpack_(new Gtk::HBox(0,0), 0, $w_size = new Gtk::Label('')),
				 0, gtkpack(new Gtk::HBox(0,10),
					    map { $go ||= $_; $_ }
					    map { gtksignal_connect(new Gtk::Button($_->[0]), "clicked" => $_->[1]) }
					    [ _("Install") => sub { $w->{retval} = 1; Gtk->main_quit } ],
					    #- keep show more or less [ _("Show less") => sub { &$show_add(+10) } ],
					    #- keep show more or less [ _("Show more") => sub { &$show_add(-10) } ],
					   )
    ));
    $w->{window}->set_usize(map { $_ - 2 * $my_gtk::border - 4 } $windowwidth, $windowheight);
    $w->show;
    &$show_add(0);
    &$update();
    $go->grab_focus;
    $w->main;
}

#------------------------------------------------------------------------------
sub installPackages {
    my ($o, $packages) = @_;

    my ($current_total_size, $last_size, $nb, $total_size, $start_time, $last_dtime);

    my $w = my_gtk->new(_("Installing"), grab => 1);
    $w->{window}->set_usize($windowwidth * 0.8, $windowheight * 0.5);
    my $text = new Gtk::Label;
    my ($msg, $msg_time_remaining, $msg_time_total) = map { new Gtk::Label($_) } '', (_("Estimating")) x 2;
    my ($progress, $progress_total) = map { new Gtk::ProgressBar } (1..2);
    gtkadd($w->{window}, gtkadd(new Gtk::EventBox,
				gtkpack(new Gtk::VBox(0,10),
			       _("Please wait, "), $msg, $progress,
			       create_packtable({},
						[_("Time remaining "), $msg_time_remaining],
						[_("Total time "), $msg_time_total],
						),
			       $text,
			       $progress_total,
			      )));
    $msg->set(_("Preparing installation"));
    $w->sync;

    my $old = \&pkgs::installCallback;
    local *pkgs::installCallback = sub {
	my $m = shift;
	if ($m =~ /^Starting installation/) {
	    $nb = $_[0];
	    $total_size = $_[1]; $current_total_size = 0;
	    $start_time = time();
	    $msg->set(_("%d packages", $nb) . _(", %U MB", pkgs::correctSize($total_size / sqr(1024))));
	    $w->flush;
	} elsif ($m =~ /^Starting installing package/) {
	    $progress->update(0);
	    my $name = $_[0];
	    $msg->set(_("Installing package %s", $name));
	    $current_total_size += $last_size;
	    $last_size = c::headerGetEntry($o->{packages}{$name}{header}, 'size');
	    $text->set((split /\n/, c::headerGetEntry($o->{packages}{$name}{header}, 'summary'))[0] || '');
	    $w->flush;
	} elsif ($m =~ /^Progressing installing package/) {
	    $progress->update($_[2] ? $_[1] / $_[2] : 0);

	    my $dtime = time() - $start_time;
	    my $ratio = $total_size ? ($_[1] + $current_total_size) / $total_size : 0;
	    my $total_time = $ratio ? $dtime / $ratio : time();

	    $progress_total->update($ratio);
	    if ($dtime != $last_dtime && $current_total_size > 2 * 1024 * 1024) {
		$msg_time_total->set(formatTime(10 * round($total_time / 10)));
		$msg_time_remaining->set(formatTime(10 * round(max($total_time - $dtime, 0) / 10)));
		$last_dtime = $dtime;
	    }
	    $w->flush;
	} else { unshift @_, $m; goto $old }
    };
    catch_cdie { $o->install_steps::installPackages($packages); }
      sub {
	  if ($@ =~ /^error ordering package list: (.*)/) {
	      $o->ask_yesorno('', [
_("There was an error ordering packages:"), $1, _("Go on anyway?") ], 1) and return 1;
	      ${$_[0]} = "already displayed";
	  }
	  0;
      };
    $w->destroy;
}

#------------------------------------------------------------------------------
sub load_rc($) {
    if (my ($f) = grep { -r $_ } map { "$_/$_[0].rc" } (".", "/usr/share", dirname(__FILE__))) {
	Gtk::Rc->parse($f);
	foreach (cat_($f)) {
	    if (/style\s+"background"/ .. /^\s*$/) {
		@background1 = map { $_ * 256 * 256 } split ',', $1 if /NORMAL.*\{(.*)\}/;
		@background2 = map { $_ * 256 * 256 } split ',', $1 if /PRELIGHT.*\{(.*)\}/;
	    }
	}
    }
}

sub install_theme {
    my ($o, $theme) = @_;    
    $o->{theme} = $theme || $o->{theme} || $themes[0];

    gtkset_mousecursor(68);

    load_rc($_) foreach "themes-$o->{theme}", "install", "themes";

    if (my ($font, $font2) = lang::get_x_fontset($o->{lang})) {
	$font2 ||= $font;
	Gtk::Rc->parse_string(qq(
style "default-font" 
{
   fontset = "$font"
}
style "steps"
{
   fontset = "$font2"
}
widget "*" style "default-font"
widget "*Steps*" style "steps"

));
   }
    gtkset_background(@background1);# unless $::testing;

    create_logo_window($o);
    create_help_window($o);
}

#------------------------------------------------------------------------------
sub create_help_window {
    my ($o) = @_;

#    $o->{help_window}->destroy if $o->{help_window};

    my $w;
    if ($w = $o->{help_window}) {
	$_->destroy foreach $w->{window}->children;
    } else {
	$w = bless {}, 'my_gtk';
	$w->{rwindow} = $w->{window} = new Gtk::Window;
	$w->{rwindow}->set_uposition($width - $helpwidth, $height - $helpheight);
	$w->{rwindow}->set_usize($helpwidth, $helpheight);
	$w->sync;
    }

#-    my $b = new Gtk::Button;
#-    $b->signal_connect(clicked => sub {
#-	  my $w = my_gtk->new('', grab => 1, force_position => [ $stepswidth, $logoheight ]);
#-	  $w->{rwindow}->set_usize($logowidth, $height - $logoheight);
#-	  gtkadd($w->{window},
#-		 gtkpack_(new Gtk::VBox(0,0),
#-			  1, createScrolledWindow(gtktext_insert(new Gtk::Text, 
#-								 formatAlaTeX(translate($help::steps_long{$o->{step}})))),
#-			  0, gtksignal_connect(new Gtk::Button(_("Ok")), "clicked" => sub { Gtk->main_quit }),
#-			  ));
#-	  $w->main;
#-    });
#-    my @l = (@questionmark_head,
#-	       join('', "X c #", map { sprintf "%02X", $_ / 256 } @background1),
#-	       join('', "O c #", map { sprintf "%02X", $_ / 256 } @background2),
#-	       @questionmark_body);
#-    my @pixmap = Gtk::Gdk::Pixmap->create_from_xpm_d($w->{window}->window, undef, @l);
#-    gtkadd($b, new Gtk::Pixmap(@pixmap));

#    Gtk::XmHTML->init;
    gtkadd($w->{window},
	   gtkpack_(new Gtk::HBox(0,-2),
#-		    0, $b,
#-		    1, createScrolledWindow($w_help = new Gtk::XmHTML)));
		    1, createScrolledWindow($w_help = new Gtk::Text)));
#-    $w_help->source($o->{step} ? translate($o->{steps}{$o->{step}}{help}) : '');
    gtktext_insert($w_help, $o->{step} ? formatAlaTeX(translate($help::steps{$o->{step}})) : '');

    $w->show;
    $o->{help_window} = $w;
}

sub set_help { 
    shift;
    gtktext_insert($w_help, 
		   formatAlaTeX(join "\n", 
				map { translate($help::steps{$_}) } @_));
    1;
}

#------------------------------------------------------------------------------
sub create_steps_window {
    my ($o) = @_;

    $o->{steps_window}->destroy if $o->{steps_window};
    my %reachableSteps if 0;
    %reachableSteps = ();

    my $w = bless {}, 'my_gtk';
    $w->{rwindow} = $w->{window} = new Gtk::Window;
    $w->{rwindow}->set_uposition(0, 0);
    $w->{rwindow}->set_usize($stepswidth, $stepsheight);
    $w->{rwindow}->set_name("Steps");
    $w->{rwindow}->set_events('button_press_mask');
    $w->{rwindow}->signal_connect(button_press_event => sub {
	$::setstep or return;
        my $Y = $_[1]{'y'};
	map_each {
	    my (undef, $y, undef, $height) = @{$::b->allocation};
	    $y <= $Y && $Y < $y + $height and die "setstep $::a\n";
	} %reachableSteps;
    });
    $w->show;

    gtkadd($w->{window},
	   gtkpack_(new Gtk::VBox(0,0),
		    (map { 1, $_ } map {
			my $step = $o->{steps}{$_};
			my $circle =
			  $step->{done}    && \@green_circle  ||
			  $step->{entered} && \@orange_circle ||
			  \@red_circle;
			my @pixmap = Gtk::Gdk::Pixmap->create_from_xpm_d($w->{window}->window, undef, @$circle);

			my $w = new Gtk::Label(translate($step->{text}));

			$w->set_name("Steps" . ($step->{reachable} && "Reachable"));
			my $b = new Gtk::HBox(0,5);
			gtkpack_($b, 0, new Gtk::Pixmap(@pixmap), 0, $w);

			$reachableSteps{$_} = $b if $step->{reachable};
			$b;
		    } grep {
			local $_ = $o->{steps}{$_}{hidden};
			/^$/ or $o->{installClass} and /beginner/ && !$::beginner || /!expert/ && $::expert
		    } @{$o->{orderedSteps}}),
		    0, gtkpack(new Gtk::HBox(0,0), map {
			my $t = $_;
			my $w = new Gtk::Button('');
			$w->set_name($t);
			$w->set_usize(0, 7);
			gtksignal_connect($w, clicked => sub { 
			    $::setstep or return; #- just as setstep s
			    install_theme($o, $t); die "theme_changed\n" 
			});
		    } @themes)));
    $w->show;
    $o->{steps_window} = $w;
}

#------------------------------------------------------------------------------
sub create_logo_window() {
    my ($o) = @_;
    gtkdestroy($o->{logo_window});
    my $w = bless {}, 'my_gtk';
    $w->{rwindow} = $w->{window} = new Gtk::Window;
    $w->{rwindow}->set_uposition($stepswidth, 0);
    $w->{rwindow}->set_usize($logowidth, $logoheight);
    $w->{rwindow}->set_name("background");
    $w->show;
    my $file = "logo-mandrake.xpm";
    -r $file or $file = "/usr/share/$file";
    if (-r $file) {
	my $ww = $w->{window};
	my @logo = Gtk::Gdk::Pixmap->create_from_xpm($ww->window, $ww->style->bg('normal'), $file);
	gtkadd($ww, new Gtk::Pixmap(@logo));
    }
    $o->{logo_window} = $w;
}

#------------------------------------------------------------------------------
sub createXconf($$$) {
    my ($file, $mouse_type, $mouse_dev) = @_;
    $mouse_type ||= "Microsoft";
    $mouse_dev = devices::make($mouse_dev || "ttyS0");

    local *F;
    open F, ">$file" or die "can't create X configuration file $file";
    print F <<END;
Section "Files"
   FontPath   "/usr/X11R6/lib/X11/fonts:unscaled,/usr/X11R6/lib/X11/fonts"
EndSection

Section "Keyboard"
   Protocol    "Standard"
   AutoRepeat  250 30

   LeftAlt         Meta
   RightAlt        Meta
   ScrollLock      Compose
   RightCtl        Control
EndSection

Section "Pointer"
   Protocol    "$mouse_type"
   Device      "$mouse_dev"
   Emulate3Buttons
   Emulate3Timeout    50
EndSection


Section "Monitor"
   Identifier  "My Monitor"
   VendorName  "Unknown"
   ModelName   "Unknown"
   HorizSync   31.5-35.5
   VertRefresh 50-70
   Modeline "640x480"     25.175 640  664  760  800   480  491  493  525
   Modeline "640x480"     28.3   640  664  760  800   480  491  493  525
EndSection


Section "Device"
   Identifier "Generic VGA"
   VendorName "Unknown"
   BoardName "Unknown"
   Chipset "generic"
EndSection


Section "Screen"
    Driver "svga"
    Device      "Generic VGA"
    Monitor     "My Monitor"
    Subsection "Display"
        Modes       "640x480"
        ViewPort    0 0
    EndSubsection
EndSection

Section "Screen"
    Driver      "vga16"
    Device      "Generic VGA"
    Monitor     "My Monitor"
    Subsection "Display"
        Modes       "640x480"
        ViewPort    0 0
    EndSubsection
EndSection

Section "Screen"
    Driver      "fbdev"
    Device      "Generic VGA"
    Monitor     "My Monitor"
    Subsection "Display"
        Depth       16
        Modes       "default"
        ViewPort    0 0
    EndSubsection
EndSection
END

}
#-   ModeLine "640x480"     28     640  672  768  800   480  490  492  525
#-######################################################################################
#- Wonderful perl :(
#-######################################################################################
1; #
เวลา" #: drakclock:111 #, fuzzy, c-format msgid "Please enter a valid NTP server address." msgstr "โปรดป้อนชื่อผู้ใช้" #: drakclock:126 #, c-format msgid "Could not synchronize with %s." msgstr "" #: drakclock:127 draksplash:93 logdrake:175 scannerdrake:492 #, c-format msgid "Quit" msgstr "ออก" #: drakclock:128 #, fuzzy, c-format msgid "Retry" msgstr "ย้อนกลับ" #: drakclock:151 drakclock:161 #, c-format msgid "Reset" msgstr "ตั้งค่าใหม่" #: drakedm:41 #, c-format msgid "GDM (GNOME Display Manager)" msgstr "" #: drakedm:42 #, c-format msgid "KDM (KDE Display Manager)" msgstr "" #: drakedm:43 #, c-format msgid "XDM (X Display Manager)" msgstr "" #: drakedm:54 #, c-format msgid "Choosing a display manager" msgstr "" #: drakedm:55 #, c-format msgid "" "X11 Display Manager allows you to graphically log\n" "into your system with the X Window System running and supports running\n" "several different X sessions on your local machine at the same time." msgstr "" #: drakedm:74 #, fuzzy, c-format msgid "The change is done, do you want to restart the dm service?" msgstr "" "แพกเกจนี้จำเป็นต้องถูก upgrade\n" "คุณแน่ใจว่าจะไม่เลือกมันหรือ" #: drakedm:75 #, c-format msgid "" "You are going to close all running programs and lose your current session. " "Are you really sure that you want to restart the dm service?" msgstr "" #: drakfont:187 #, c-format msgid "Search installed fonts" msgstr "" #: drakfont:189 #, c-format msgid "Unselect fonts installed" msgstr "" #: drakfont:213 #, fuzzy, c-format msgid "No fonts found" msgstr "ไม่พบการ์ดเน็ตเวิร์ก" #: drakfont:217 #, c-format msgid "parse all fonts" msgstr "" #: drakfont:222 drakfont:263 drakfont:338 drakfont:379 drakfont:383 #: drakfont:409 drakfont:427 drakfont:435 #, c-format msgid "done" msgstr "เสร็จสมบูรณ์" #: drakfont:226 #, c-format msgid "Could not find any font in your mounted partitions" msgstr "" #: drakfont:261 #, c-format msgid "Reselect correct fonts" msgstr "" #: drakfont:264 #, fuzzy, c-format msgid "Could not find any font.\n" msgstr "ลบคิว" #: drakfont:274 #, c-format msgid "Search for fonts in installed list" msgstr "" #: drakfont:298 #, c-format msgid "%s fonts conversion" msgstr "" #: drakfont:336 #, fuzzy, c-format msgid "Fonts copy" msgstr "ฟอร์แมต Floppy" #: drakfont:339 #, fuzzy, c-format msgid "True Type fonts installation" msgstr "กำลังเตรียมการติดตั้ง" #: drakfont:347 #, c-format msgid "please wait during ttmkfdir..." msgstr "" #: drakfont:348 #, c-format msgid "True Type install done" msgstr "" #: drakfont:354 drakfont:369 #, c-format msgid "type1inst building" msgstr "" #: drakfont:363 #, c-format msgid "Ghostscript referencing" msgstr "" #: drakfont:380 #, c-format msgid "Suppress Temporary Files" msgstr "" #: drakfont:425 drakfont:431 #, c-format msgid "Suppress Fonts Files" msgstr "" #: drakfont:439 #, c-format msgid "" "Before installing any fonts, be sure that you have the right to use and " "install them on your system.\n" "\n" "You can install the fonts the normal way. In rare cases, bogus fonts may " "hang up your X Server." msgstr "" #: drakfont:478 #, fuzzy, c-format msgid "Font Installation" msgstr "ติดตั้ง" #: drakfont:489 #, c-format msgid "DrakFont" msgstr "" #: drakfont:490 drakfont:642 #, fuzzy, c-format msgid "Font List" msgstr "กำหนดจุดเม้าท์" #: drakfont:493 #, c-format msgid "Get Windows Fonts" msgstr "" #: drakfont:499 #, c-format msgid "About" msgstr "เกี่ยวกับ" #: drakfont:500 drakfont:541 #, c-format msgid "Options" msgstr "อ็อปชั่น" #: drakfont:501 drakfont:721 #, c-format msgid "Uninstall" msgstr "ยกเลิกการติดตั้งโปรแกรม" #: drakfont:502 #, c-format msgid "Import" msgstr "นำเข้า" #: drakfont:520 #, c-format msgid "Drakfont" msgstr "" #: drakfont:522 harddrake2:235 #, c-format msgid "Copyright (C) %s by Mandriva" msgstr "" #: drakfont:524 #, fuzzy, c-format msgid "Font installer." msgstr "ออกจากการติดตั้ง" #: drakfont:526 harddrake2:239 #, c-format msgid "Mandriva Linux" msgstr "Mandriva Linux" #. -PO: put here name(s) and email(s) of translator(s) (eg: "John Smith <jsmith@nowhere.com>") #. -PO: put here name(s) and email(s) of translator(s) (eg: "John Smith <jsmith@nowhere.com>") #: drakfont:533 harddrake2:244 #, c-format msgid "_: Translator(s) name(s) & email(s)\n" msgstr "" #: drakfont:543 #, fuzzy, c-format msgid "Choose the applications that will support the fonts:" msgstr "เลือกพาร์ติชั่นที่คุณต้องการฟอร์แมต" #: drakfont:554 #, c-format msgid "Ghostscript" msgstr "Ghostscript" #: drakfont:555 #, c-format msgid "OpenOffice.org" msgstr "" #: drakfont:556 #, fuzzy, c-format msgid "Abiword" msgstr "เลิก" #: drakfont:557 #, fuzzy, c-format msgid "Generic Printers" msgstr "เครื่องพิมพ์" #: drakfont:562 drakfont:572 draksplash:180 drakups:210 #, c-format msgid "Ok" msgstr "ตกลง" #: drakfont:571 #, c-format msgid "Select the font file or directory and click on 'Add'" msgstr "" #: drakfont:572 #, c-format msgid "File Selection" msgstr "เลือกเอกสาร" #: drakfont:572 drakfont:652 drakfont:736 draksplash:180 drakups:217 #: logdrake:175 #, c-format msgid "Cancel" msgstr "ยกเลิก" #: drakfont:576 #, c-format msgid "Fonts" msgstr "แบบอักษร" #: drakfont:640 draksec:330 #, fuzzy, c-format msgid "Import fonts" msgstr "ฟอร์แมตพาร์ติชั่น" #: drakfont:646 drakups:299 drakups:361 drakups:381 #, c-format msgid "Add" msgstr "เพิ่ม" #: drakfont:647 drakfont:735 drakups:301 drakups:363 drakups:383 #, c-format msgid "Remove" msgstr "เอาออก" #: drakfont:653 #, c-format msgid "Install" msgstr "ติดตั้ง" #: drakfont:684 #, c-format msgid "Are you sure you want to uninstall the following fonts?" msgstr "" #: drakfont:688 draksec:59 harddrake2:324 #, c-format msgid "Yes" msgstr "ใช่" #: drakfont:690 draksec:58 harddrake2:325 #, c-format msgid "No" msgstr "ไม่ต้อง" #: drakfont:729 #, c-format msgid "Unselect All" msgstr "" #: drakfont:732 #, fuzzy, c-format msgid "Select All" msgstr "เลือกไฟล์" #: drakfont:749 #, fuzzy, c-format msgid "Importing fonts" msgstr "ฟอร์แมตพาร์ติชั่น" #: drakfont:753 drakfont:773 #, fuzzy, c-format msgid "Initial tests" msgstr "ข้อความ init" #: drakfont:754 #, fuzzy, c-format msgid "Copy fonts on your system" msgstr "ไม่มีอุปกรณ์ Network บนเครื่องคุณ" #: drakfont:755 #, c-format msgid "Install & convert Fonts" msgstr "" #: drakfont:756 #, fuzzy, c-format msgid "Post Install" msgstr "ติดตั้ง" #: drakfont:768 #, fuzzy, c-format msgid "Removing fonts" msgstr "ฟอร์แมตพาร์ติชั่น" #: drakfont:774 #, fuzzy, c-format msgid "Remove fonts on your system" msgstr "ไม่มีอุปกรณ์ Network บนเครื่องคุณ" #: drakfont:775 #, fuzzy, c-format msgid "Post Uninstall" msgstr "ออกจากการติดตั้ง" #: drakhelp:17 #, c-format msgid "" " drakhelp 0.1\n" "Copyright (C) %s Mandriva.\n" "This is free software and may be redistributed under the terms of the GNU " "GPL.\n" "\n" "Usage: \n" msgstr "" #: drakhelp:22 #, c-format msgid " --help - display this help \n" msgstr "" #: drakhelp:23 #, c-format msgid "" " --id <id_label> - load the html help page which refers to id_label\n" msgstr "" #: drakhelp:24 #, c-format msgid "" " --doc <link> - link to another web page ( for WM welcome " "frontend)\n" msgstr "" #: drakhelp:52 #, fuzzy, c-format msgid "Mandriva Linux Help Center" msgstr "Mandriva Linux ฐานควบคุม" #: drakhelp:52 #, c-format msgid "No Help entry for %s\n" msgstr "" #: drakperm:23 #, fuzzy, c-format msgid "System settings" msgstr "กำลังพาร์ติชั่น Custom disk" #: drakperm:24 #, fuzzy, c-format msgid "Custom settings" msgstr "กำลังพาร์ติชั่น Custom disk" #: drakperm:25 #, fuzzy, c-format msgid "Custom & system settings" msgstr "กำลังพาร์ติชั่น Custom disk" #: drakperm:33 #, fuzzy, c-format msgid "Security Permissions" msgstr "สิทธิ์" #: drakperm:45 #, c-format msgid "Editable" msgstr "แก้ไขได้" #: drakperm:50 drakperm:319 #, c-format msgid "Path" msgstr "พาธ" #: drakperm:50 drakperm:248 #, c-format msgid "User" msgstr "ผู้ใช้" #: drakperm:50 drakperm:248 #, c-format msgid "Group" msgstr "กลุ่ม" #: drakperm:50 drakperm:331 #, c-format msgid "Permissions" msgstr "สิทธิ์" #: drakperm:60 #, c-format msgid "Add a new rule" msgstr "" #: drakperm:67 drakperm:102 drakperm:127 #, c-format msgid "Edit current rule" msgstr "" #: drakperm:109 #, c-format msgid "" "Here you can see files to use in order to fix permissions, owners, and " "groups via msec.\n" "You can also edit your own rules which will owerwrite the default rules." msgstr "" #: drakperm:111 #, c-format msgid "" "The current security level is %s.\n" "Select permissions to see/edit" msgstr "" #: drakperm:123 #, c-format msgid "Up" msgstr "ขึ้น" #: drakperm:123 #, c-format msgid "Move selected rule up one level" msgstr "" #: drakperm:124 #, c-format msgid "Down" msgstr "เลื่อนลง" #: drakperm:124 #, c-format msgid "Move selected rule down one level" msgstr "" #: drakperm:125 #, fuzzy, c-format msgid "Add a rule" msgstr "เพิ่ม 1 module" #: drakperm:125 #, fuzzy, c-format msgid "Add a new rule at the end" msgstr "ไม่มีเครื่องพิมพ์" #: drakperm:126 #, c-format msgid "Delete" msgstr "ลบ" #: drakperm:126 #, fuzzy, c-format msgid "Delete selected rule" msgstr "ลบคิว" #: drakperm:127 drakups:300 drakups:362 drakups:382 #, c-format msgid "Edit" msgstr "ปรับแต่ง" #: drakperm:240 #, c-format msgid "browse" msgstr "" #: drakperm:245 #, c-format msgid "user" msgstr "ผู้ใช้" #: drakperm:245 #, c-format msgid "group" msgstr "กลุ่ม" #: drakperm:245 #, c-format msgid "other" msgstr "อื่นๆ" #: drakperm:248 #, c-format msgid "Other" msgstr "อื่นๆ" #: drakperm:250 #, c-format msgid "Read" msgstr "อ่าน" #. -PO: here %s will be either "user", "group" or "other" #: drakperm:253 #, c-format msgid "Enable \"%s\" to read the file" msgstr "" #: drakperm:257 #, c-format msgid "Write" msgstr "เขียน" #. -PO: here %s will be either "user", "group" or "other" #: drakperm:260 #, c-format msgid "Enable \"%s\" to write the file" msgstr "" #: drakperm:264 #, c-format msgid "Execute" msgstr "ดำเนินการ" #. -PO: here %s will be either "user", "group" or "other" #: drakperm:267 #, c-format msgid "Enable \"%s\" to execute the file" msgstr "" #: drakperm:270 #, c-format msgid "Sticky-bit" msgstr "" #: drakperm:270 #, c-format msgid "" "Used for directory:\n" " only owner of directory or file in this directory can delete it" msgstr "" #: drakperm:271 #, c-format msgid "Set-UID" msgstr "" #: drakperm:271 #, fuzzy, c-format msgid "Use owner id for execution" msgstr "ใช้ auto detection" #: drakperm:272 #, c-format msgid "Set-GID" msgstr "" #: drakperm:272 #, fuzzy, c-format msgid "Use group id for execution" msgstr "ใช้ auto detection" #: drakperm:289 #, c-format msgid "User:" msgstr "ผู้ใช้:" #: drakperm:290 #, c-format msgid "Group:" msgstr "กลุ่ม:" #: drakperm:294 #, fuzzy, c-format msgid "Current user" msgstr "ยอมรับผู้ใช้" #: drakperm:295 #, c-format msgid "When checked, owner and group will not be changed" msgstr "" #: drakperm:305 #, c-format msgid "Path selection" msgstr "เลือกตำแหน่ง" #: drakperm:325 #, c-format msgid "Property" msgstr "คุณสมบัติ" #: drakperm:375 #, c-format msgid "" "The first character of the path must be a slash (\"/\"):\n" "\"%s\"" msgstr "" #: drakperm:385 #, c-format msgid "Both the username and the group must valid!" msgstr "" #: drakperm:386 #, c-format msgid "User: %s" msgstr "" #: drakperm:387 #, c-format msgid "Group: %s" msgstr "" #: draksec:53 #, c-format msgid "ALL" msgstr "" #: draksec:54 #, c-format msgid "LOCAL" msgstr "" #: draksec:55 #, c-format msgid "NONE" msgstr "" #: draksec:56 #, c-format msgid "Default" msgstr "Default" #: draksec:57 #, c-format msgid "Ignore" msgstr "ไม่สนใจ" #: draksec:72 drakups:99 harddrake2:370 scannerdrake:66 scannerdrake:70 #: scannerdrake:78 scannerdrake:319 scannerdrake:368 scannerdrake:505 #: scannerdrake:509 scannerdrake:531 service_harddrake:259 #, c-format msgid "Please wait" msgstr "โปรดรอสักครู่" #. -PO: Do not alter the <span ..> and </span> tags. #. -PO: Translate the security levels (Poor, Standard, High, Higher and Paranoid) in the same way, you translated these individuals words. #. -PO: keep the double empty lines between sections, this is formatted a la LaTeX. #: draksec:93 #, c-format msgid "" "Here, you can setup the security level and administrator of your machine.\n" "\n" "\n" "The '<span weight=\"bold\">Security Administrator</span>' is the one who " "will receive security alerts if the\n" "'<span weight=\"bold\">Security Alerts</span>' option is set. It can be a " "username or an email.\n" "\n" "\n" "The '<span weight=\"bold\">Security Level</span>' menu allows you to select " "one of the six preconfigured security levels\n" "provided with msec. These levels range from '<span weight=\"bold\">poor</" "span>' security and ease of use, to\n" "'<span weight=\"bold\">paranoid</span>' config, suitable for very sensitive " "server applications:\n" "\n" "\n" "<span foreground=\"royalblue3\">Poor</span>: This is a totally unsafe but " "very\n" "easy to use security level. It should only be used for machines not " "connected to\n" "any network and that are not accessible to everybody.\n" "\n" "\n" "<span foreground=\"royalblue3\">Standard</span>: This is the standard " "security\n" "recommended for a computer that will be used to connect to the Internet as " "a\n" "client.\n" "\n" "\n" "<span foreground=\"royalblue3\">High</span>: There are already some\n" "restrictions, and more automatic checks are run every night.\n" "\n" "\n" "<span foreground=\"royalblue3\">Higher</span>: The security is now high " "enough\n" "to use the system as a server which can accept connections from many " "clients. If\n" "your machine is only a client on the Internet, you should choose a lower " "level.\n" "\n" "\n" "<span foreground=\"royalblue3\">Paranoid</span>: This is similar to the " "previous\n" "level, but the system is entirely closed and security features are at their\n" "maximum" msgstr "" #: draksec:147 harddrake2:214 #, c-format msgid "" "Description of the fields:\n" "\n" msgstr "" #: draksec:161 #, fuzzy, c-format msgid "(default value: %s)" msgstr " (Default)" #: draksec:166 #, fuzzy, c-format msgid "Security Level and Checks" msgstr "เลือกระดับระบบรักษาความปลอดภัย" #: draksec:203 #, fuzzy, c-format msgid "Security Level:" msgstr "เลือกระดับระบบรักษาความปลอดภัย" #: draksec:206 #, fuzzy, c-format msgid "Security Alerts:" msgstr "เลือกระดับระบบรักษาความปลอดภัย" #: draksec:210 #, fuzzy, c-format msgid "Security Administrator:" msgstr "อ๊อปชั่นของเครื่องพิมพ์แบบรีโมท" #: draksec:212 #, c-format msgid "Basic options" msgstr "" #: draksec:226 #, fuzzy, c-format msgid "Network Options" msgstr "อ๊อปชั่นของโมดูล:" #: draksec:226 #, fuzzy, c-format msgid "System Options" msgstr "อ๊อปชั่นของโมดูล:" #: draksec:261 #, c-format msgid "Periodic Checks" msgstr "" #: draksec:282 #, c-format msgid "No password" msgstr "ไม่มีรหัสผ่าน" #: draksec:283 #, c-format msgid "Root password" msgstr "" #: draksec:284 #, c-format msgid "User password" msgstr "" #: draksec:314 draksec:360 #, c-format msgid "Software Management" msgstr "การบริหารโปรแกรม" #: draksec:315 #, fuzzy, c-format msgid "Mandriva Update" msgstr "Mandriva Online" #: draksec:316 #, c-format msgid "Software Media Manager" msgstr "Software Media Manager" #: draksec:317 #, fuzzy, c-format msgid "Configure 3D Desktop effects" msgstr "ทำการปรับแต่ง.." #: draksec:318 #, fuzzy, c-format msgid "Graphical Server Configuration" msgstr "การปรับแต่ง LAN" #: draksec:319 #, fuzzy, c-format msgid "Mouse Configuration" msgstr "การคอนฟิก" #: draksec:320 #, fuzzy, c-format msgid "Keyboard Configuration" msgstr "การคอนฟิกระบบเน็ตเวิร์ก" #: draksec:321 #, fuzzy, c-format msgid "UPS Configuration" msgstr "การคอนฟิก Internet" #: draksec:322 #, fuzzy, c-format msgid "Network Configuration" msgstr "การคอนฟิก" #: draksec:323 #, c-format msgid "Hosts definitions" msgstr "" #: draksec:324 #, fuzzy, c-format msgid "Network Center" msgstr "เน็ตเวิร์คกับอินเตอร์เน็ต" #: draksec:325 #, c-format msgid "VPN" msgstr "" #: draksec:326 #, c-format msgid "Proxy Configuration" msgstr "ตั้งค่าพร็อกซี" #: draksec:327 #, fuzzy, c-format msgid "Connection Sharing" msgstr "การเชื่อมต่อ" #: draksec:329 #, c-format msgid "Backups" msgstr "ทำสำเนา" #: draksec:331 logdrake:52 #, c-format msgid "Logs" msgstr "ล็อก" #: draksec:332 #, c-format msgid "Services" msgstr "เซอร์วิส" #: draksec:333 #, fuzzy, c-format msgid "Users" msgstr "ผู้ใช้" #: draksec:335 #, fuzzy, c-format msgid "Boot Configuration" msgstr "การคอนฟิก" #: draksec:361 #, c-format msgid "Hardware" msgstr "ฮาร์ดแวร์" #: draksec:362 #, fuzzy, c-format msgid "Network" msgstr "อ๊อปชั่นของโมดูล:" #: draksec:363 #, c-format msgid "System" msgstr "ระบบ" #: draksec:364 #, c-format msgid "Boot" msgstr "บู๊ต" #: draksec:389 #, fuzzy, c-format msgid "Please wait, setting security level..." msgstr "เลือกระดับระบบรักษาความปลอดภัย" #: draksec:395 #, fuzzy, c-format msgid "Please wait, setting security options..." msgstr "กำลังเตรียมการติดตั้ง" #: draksound:48 #, fuzzy, c-format msgid "No Sound Card detected!" msgstr "ไม่เชื่อมต่อ" #. -PO: keep the double empty lines between sections, this is formatted a la LaTeX #: draksound:51 #, c-format msgid "" "No Sound Card has been detected on your machine. Please verify that a Linux-" "supported Sound Card is correctly plugged in.\n" "\n" "\n" "You can visit our hardware database at:\n" "\n" "\n" "http://www.mandrivalinux.com/en/hardware.php3" msgstr "" #: draksound:58 #, c-format msgid "" "\n" "\n" "\n" "Note: if you've an ISA PnP sound card, you'll have to use the alsaconf or " "the sndconfig program. Just type \"alsaconf\" or \"sndconfig\" in a console." msgstr "" #: draksplash:32 #, c-format msgid "X coordinate of text box" msgstr "" #: draksplash:33 #, c-format msgid "Y coordinate of text box" msgstr "" #: draksplash:34 #, c-format msgid "Text box width" msgstr "" #: draksplash:35 #, c-format msgid "Text box height" msgstr "" #: draksplash:36 #, c-format msgid "" "The progress bar X coordinate\n" "of its upper left corner" msgstr "" #: draksplash:37 #, c-format msgid "" "The progress bar Y coordinate\n" "of its upper left corner" msgstr "" #: draksplash:38 #, c-format msgid "The width of the progress bar" msgstr "" #: draksplash:39 #, c-format msgid "The height of the progress bar" msgstr "" #: draksplash:40 #, c-format msgid "X coordinate of the text" msgstr "" #: draksplash:41 #, c-format msgid "Y coordinate of the text" msgstr "" #: draksplash:42 #, c-format msgid "Text box transparency" msgstr "" #: draksplash:43 #, c-format msgid "Progress box transparency" msgstr "" #: draksplash:44 #, c-format msgid "Text size" msgstr "" #: draksplash:61 #, c-format msgid "Choose progress bar color 1" msgstr "" #: draksplash:62 #, c-format msgid "Choose progress bar color 2" msgstr "" #: draksplash:63 #, c-format msgid "Choose progress bar background" msgstr "" #: draksplash:64 #, c-format msgid "Gradient type" msgstr "" #: draksplash:65 #, c-format msgid "Choose text color" msgstr "" #: draksplash:67 draksplash:74 #, c-format msgid "Choose picture" msgstr "" #: draksplash:68 #, c-format msgid "Silent bootsplash" msgstr "" #: draksplash:71 #, c-format msgid "Choose text zone color" msgstr "" #: draksplash:72 #, c-format msgid "Text color" msgstr "สีข้อความ" #: draksplash:73 #, c-format msgid "Background color" msgstr "สีพื้นหลัง" #: draksplash:75 #, c-format msgid "Verbose bootsplash" msgstr "" #: draksplash:81 #, fuzzy, c-format msgid "Theme name" msgstr "ชื่อที่ใช้ในกรุ๊ป (sharename)" #: draksplash:84 #, fuzzy, c-format msgid "Final resolution" msgstr "ขนาดจอภาพ" #: draksplash:87 #, c-format msgid "Display logo on Console" msgstr "" #: draksplash:92 #, fuzzy, c-format msgid "Save theme" msgstr "ติดตั้งระบบ" #: draksplash:154 #, fuzzy, c-format msgid "Please enter a theme name" msgstr "โปรดป้อนชื่อผู้ใช้" #: draksplash:157 #, fuzzy, c-format msgid "Please select a splash image" msgstr "กรุณาทดสอบเม้าส์" #: draksplash:160 #, c-format msgid "saving Bootsplash theme..." msgstr "" #: draksplash:169 #, c-format msgid "Unable to load image file %s" msgstr "" #: draksplash:180 #, fuzzy, c-format msgid "choose image" msgstr "เลือกกิจกรรม" #: draksplash:195 #, c-format msgid "Color selection" msgstr "" #: drakups:71 #, c-format msgid "Connected through a serial port or an usb cable" msgstr "" #: drakups:72 #, fuzzy, c-format msgid "Manual configuration" msgstr "การคอนฟิก" #: drakups:78 #, fuzzy, c-format msgid "Add an UPS device" msgstr "เพิ่มผู้ใช้" #: drakups:81 #, c-format msgid "" "Welcome to the UPS configuration utility.\n" "\n" "Here, you'll add a new UPS to your system.\n" msgstr "" #: drakups:88 #, c-format msgid "" "We're going to add an UPS device.\n" "\n" "Do you want to autodetect UPS devices connected to this machine or to " "manually select them?" msgstr "" #: drakups:91 #, fuzzy, c-format msgid "Autodetection" msgstr "ใช้ auto detection" #: drakups:99 harddrake2:370 #, fuzzy, c-format msgid "Detection in progress" msgstr "ค้นหาเจอบน port %s" #: drakups:118 drakups:157 logdrake:457 logdrake:463 #, fuzzy, c-format msgid "Congratulations" msgstr "ขอแสดงความยินดี" #: drakups:119 #, c-format msgid "The wizard successfully added the following UPS devices:" msgstr "" #: drakups:121 #, fuzzy, c-format msgid "No new UPS devices was found" msgstr "เครื่องพิมพ์โลคอล (ต่อติดกับตัวเครื่อง)" #: drakups:126 drakups:138 #, fuzzy, c-format msgid "UPS driver configuration" msgstr "การคอนฟิก Internet" #: drakups:126 #, fuzzy, c-format msgid "Please select your UPS model." msgstr "กรุณาทดสอบเม้าส์" #: drakups:127 #, c-format msgid "Manufacturer / Model:" msgstr "" #: drakups:138 #, c-format msgid "" "We are configuring the \"%s\" UPS from \"%s\".\n" "Please fill in its name, its driver and its port." msgstr "" #: drakups:143 #, c-format msgid "Name:" msgstr "ชื่อ:" #: drakups:143 #, c-format msgid "The name of your ups" msgstr "" #: drakups:144 #, fuzzy, c-format msgid "Driver:" msgstr "Driver" #: drakups:144 #, c-format msgid "The driver that manages your ups" msgstr "" #: drakups:145 #, c-format msgid "Port:" msgstr "พอร์ต:" #: drakups:147 #, fuzzy, c-format msgid "The port on which is connected your ups" msgstr "เม้าส์ของคุณต่อเข้ากับพอร์ตอนุกรมใด" #: drakups:157 #, c-format msgid "The wizard successfully configured the new \"%s\" UPS device." msgstr "" #: drakups:248 #, fuzzy, c-format msgid "UPS devices" msgstr "อุปกรณ์" #: drakups:249 drakups:268 drakups:284 harddrake2:88 harddrake2:114 #: harddrake2:121 #, c-format msgid "Name" msgstr "ชื่อ" #: drakups:249 harddrake2:136 #, c-format msgid "Driver" msgstr "Driver" #: drakups:249 harddrake2:54 #, c-format msgid "Port" msgstr "Port" #: drakups:267 #, fuzzy, c-format msgid "UPS users" msgstr "ชื่อผู้ใช้" #: drakups:283 #, c-format msgid "Access Control Lists" msgstr "" #: drakups:284 #, c-format msgid "IP address" msgstr "ค่า IP" #: drakups:284 #, c-format msgid "IP mask" msgstr "" #: drakups:296 #, fuzzy, c-format msgid "Rules" msgstr "ไม่ยอมรับ" #: drakups:297 #, c-format msgid "Action" msgstr "การกระทำ" #: drakups:297 harddrake2:85 #, c-format msgid "Level" msgstr "ระดับ" #: drakups:297 #, fuzzy, c-format msgid "ACL name" msgstr "ชื่อ LVM" #: drakups:297 finish-install:156 #, c-format msgid "Password" msgstr "รหัสผ่าน" #: drakups:329 #, fuzzy, c-format msgid "UPS Management" msgstr "ไม่มีเครื่องพิมพ์" #: drakups:333 drakups:342 #, fuzzy, c-format msgid "DrakUPS" msgstr "Dvorak (US)" #: drakups:339 #, fuzzy, c-format msgid "Welcome to the UPS configuration tools" msgstr "ทดสอบการคอนฟิก" #: drakxtv:67 #, c-format msgid "No TV Card detected!" msgstr "" #. -PO: keep the double empty lines between sections, this is formatted a la LaTeX #: drakxtv:69 #, c-format msgid "" "No TV Card has been detected on your machine. Please verify that a Linux-" "supported Video/TV Card is correctly plugged in.\n" "\n" "\n" "You can visit our hardware database at:\n" "\n" "\n" "http://www.mandrivalinux.com/en/hardware.php3" msgstr "" #: finish-install:55 #, c-format msgid "Keyboard" msgstr "คีย์บอร์ด" #: finish-install:56 #, c-format msgid "Please, choose your keyboard layout." msgstr "คุณต้องการเลือกคีย์บอร์ดเลย์เอ้าท์แบบใด " #: finish-install:154 finish-install:172 finish-install:184 #, c-format msgid "Encrypted home partition" msgstr "" #: finish-install:154 #, c-format msgid "Please enter a password for the %s user" msgstr "" #: finish-install:157 #, c-format msgid "Password (again)" msgstr "รหัสผ่าน (ใส่อีกครั้ง)" #: finish-install:172 #, c-format msgid "Creating encrypted home partition" msgstr "" #: finish-install:184 #, c-format msgid "Formatting encrypted home partition" msgstr "" #: harddrake2:28 #, fuzzy, c-format msgid "Alternative drivers" msgstr "กำลังพิมพ์กระดาษทดสอบ" #: harddrake2:29 #, c-format msgid "the list of alternative drivers for this sound card" msgstr "" #: harddrake2:31 harddrake2:123 #, c-format msgid "Bus" msgstr "" #: harddrake2:32 #, c-format msgid "" "this is the physical bus on which the device is plugged (eg: PCI, USB, ...)" msgstr "" #: harddrake2:34 harddrake2:149 #, fuzzy, c-format msgid "Bus identification" msgstr "การตรวจสอบสิทธิ์การใช้งาน" #: harddrake2:35 #, c-format msgid "" "- PCI and USB devices: this lists the vendor, device, subvendor and " "subdevice PCI/USB ids" msgstr "" #: harddrake2:37 #, c-format msgid "Location on the bus" msgstr "" #: harddrake2:38 #, c-format msgid "" "- pci devices: this gives the PCI slot, device and function of this card\n" "- eide devices: the device is either a slave or a master device\n" "- scsi devices: the scsi bus and the scsi device ids" msgstr "" #: harddrake2:41 #, c-format msgid "Drive capacity" msgstr "" #: harddrake2:41 #, c-format msgid "special capacities of the driver (burning ability and or DVD support)" msgstr "" #: harddrake2:42 #, c-format msgid "Description" msgstr "รายละเอียด" #: harddrake2:42 #, c-format msgid "this field describes the device" msgstr "" #: harddrake2:43 #, fuzzy, c-format msgid "Old device file" msgstr "เลือกไฟล์" #: harddrake2:44 #, c-format msgid "old static device name used in dev package" msgstr "" #. -PO: here "module" is the "jargon term" for a kernel driver #: harddrake2:47 #, c-format msgid "Module" msgstr "โมดูล" #: harddrake2:47 #, c-format msgid "the module of the GNU/Linux kernel that handles the device" msgstr "" #: harddrake2:48 #, fuzzy, c-format msgid "Extended partitions" msgstr "สร้างพาร์ติชั่นใหม่" #: harddrake2:48 #, fuzzy, c-format msgid "the number of extended partitions" msgstr "ไม่มีพื้นที่เพียงพอสำหรับ พาร์ติชั่น ใหม่" #: harddrake2:49 #, c-format msgid "Geometry" msgstr "ค่าเรขาคณิต" #: harddrake2:49 #, c-format msgid "Cylinder/head/sectors geometry of the disk" msgstr "" #: harddrake2:50 #, c-format msgid "Disk controller" msgstr "" #: harddrake2:50 #, c-format msgid "the disk controller on the host side" msgstr "" #: harddrake2:51 #, fuzzy, c-format msgid "Identifier" msgstr "เครื่องพิมพ์" #: harddrake2:51 #, c-format msgid "usually the device serial number" msgstr "" #: harddrake2:52 #, c-format msgid "Media class" msgstr "" #: harddrake2:52 #, c-format msgid "class of hardware device" msgstr "" #: harddrake2:53 harddrake2:86 #, c-format msgid "Model" msgstr "แบบ" #: harddrake2:53 #, fuzzy, c-format msgid "hard disk model" msgstr "Card mem (DMA)" #: harddrake2:54 #, fuzzy, c-format msgid "network printer port" msgstr "เครื่องพิมพ์ในระบบ Network (TCP/Socket)" #: harddrake2:55 #, fuzzy, c-format msgid "Primary partitions" msgstr "ฟอร์แมตพาร์ติชั่น" #: harddrake2:55 #, fuzzy, c-format msgid "the number of the primary partitions" msgstr "เซ็กเตอร์แรกของบูตพาร์ติชั่น" #: harddrake2:56 harddrake2:91 #, c-format msgid "Vendor" msgstr "เวนเดอร์" #: harddrake2:56 #, c-format msgid "the vendor name of the device" msgstr "" #: harddrake2:57 #, c-format msgid "PCI domain" msgstr "" #: harddrake2:57 #, fuzzy, c-format msgid "the PCI domain of the device" msgstr "เม้าส์ของคุณต่อเข้ากับพอร์ตอนุกรมใด" #: harddrake2:58 #, c-format msgid "Bus PCI #" msgstr "" #: harddrake2:58 #, fuzzy, c-format msgid "the PCI bus on which the device is plugged" msgstr "เม้าส์ของคุณต่อเข้ากับพอร์ตอนุกรมใด" #: harddrake2:59 #, fuzzy, c-format msgid "PCI device #" msgstr "อุปกรณ์" #: harddrake2:59 #, fuzzy, c-format msgid "PCI device number" msgstr "หมายเลขโทรศัพท์" #: harddrake2:60 #, c-format msgid "PCI function #" msgstr "" #: harddrake2:60 #, fuzzy, c-format msgid "PCI function number" msgstr "ชื่อการเชื่อมต่อ" #: harddrake2:61 #, fuzzy, c-format msgid "Vendor ID" msgstr "ยกเลิก" #: harddrake2:61 #, c-format msgid "this is the standard numerical identifier of the vendor" msgstr "" #: harddrake2:62 #, fuzzy, c-format msgid "Device ID" msgstr "อุปกรณ์: " #: harddrake2:62 #, c-format msgid "this is the numerical identifier of the device" msgstr "" #: harddrake2:63 #, c-format msgid "Sub vendor ID" msgstr "" #: harddrake2:63 #, c-format msgid "this is the minor numerical identifier of the vendor" msgstr "" #: harddrake2:64 #, fuzzy, c-format msgid "Sub device ID" msgstr "อุปกรณ์" #: harddrake2:64 #, c-format msgid "this is the minor numerical identifier of the device" msgstr "" #: harddrake2:65 #, fuzzy, c-format msgid "Device USB ID" msgstr "อุปกรณ์: " #: harddrake2:65 #, c-format msgid ".." msgstr "" #: harddrake2:69 #, c-format msgid "Bogomips" msgstr "" #: harddrake2:69 #, c-format msgid "" "the GNU/Linux kernel needs to run a calculation loop at boot time to " "initialize a timer counter. Its result is stored as bogomips as a way to " "\"benchmark\" the cpu." msgstr "" #: harddrake2:70 #, fuzzy, c-format msgid "Cache size" msgstr "ขนาดของ chunk" #: harddrake2:70 #, c-format msgid "size of the (second level) cpu cache" msgstr "" #. -PO: here "comas" is the medical coma, not the lexical coma!! #: harddrake2:73 #, c-format msgid "Coma bug" msgstr "" #: harddrake2:73 #, c-format msgid "whether this cpu has the Cyrix 6x86 Coma bug" msgstr "" #: harddrake2:74 #, c-format msgid "Cpuid family" msgstr "" #: harddrake2:74 #, c-format msgid "family of the cpu (eg: 6 for i686 class)" msgstr "" #: harddrake2:75 #, fuzzy, c-format msgid "Cpuid level" msgstr "เลือกระดับระบบรักษาความปลอดภัย" #: harddrake2:75 #, c-format msgid "information level that can be obtained through the cpuid instruction" msgstr "" #: harddrake2:76 #, c-format msgid "Frequency (MHz)" msgstr "" #: harddrake2:76 #, c-format msgid "" "the CPU frequency in MHz (Megahertz which in first approximation may be " "coarsely assimilated to number of instructions the cpu is able to execute " "per second)" msgstr "" #: harddrake2:77 #, c-format msgid "Flags" msgstr "แฟล็ก" #: harddrake2:77 #, c-format msgid "CPU flags reported by the kernel" msgstr "" #: harddrake2:78 #, c-format msgid "Fdiv bug" msgstr "" #: harddrake2:79 #, c-format msgid "" "Early Intel Pentium chips manufactured have a bug in their floating point " "processor which did not achieve the required precision when performing a " "Floating point DIVision (FDIV)" msgstr "" #: harddrake2:80 #, c-format msgid "Is FPU present" msgstr "" #: harddrake2:80 #, c-format msgid "yes means the processor has an arithmetic coprocessor" msgstr "" #: harddrake2:81 #, c-format msgid "Whether the FPU has an irq vector" msgstr "" #: harddrake2:81 #, c-format msgid "yes means the arithmetic coprocessor has an exception vector attached" msgstr "" #: harddrake2:82 #, c-format msgid "F00f bug" msgstr "" #: harddrake2:82 #, c-format msgid "early pentiums were buggy and freezed when decoding the F00F bytecode" msgstr "" #: harddrake2:83 #, c-format msgid "Halt bug" msgstr "" #: harddrake2:84 #, c-format msgid "" "Some of the early i486DX-100 chips cannot reliably return to operating mode " "after the \"halt\" instruction is used" msgstr "" #: harddrake2:85 #, c-format msgid "sub generation of the cpu" msgstr "" #: harddrake2:86 #, c-format msgid "generation of the cpu (eg: 8 for Pentium III, ...)" msgstr "" #: harddrake2:87 #, fuzzy, c-format msgid "Model name" msgstr "ชี่อ module" #: harddrake2:87 #, c-format msgid "official vendor name of the cpu" msgstr "" #: harddrake2:88 #, c-format msgid "the name of the CPU" msgstr "" #: harddrake2:89 #, c-format msgid "Processor ID" msgstr "" #: harddrake2:89 #, c-format msgid "the number of the processor" msgstr "" #: harddrake2:90 #, fuzzy, c-format msgid "Model stepping" msgstr "ฟอร์แมต" #: harddrake2:90 #, c-format msgid "stepping of the cpu (sub model (generation) number)" msgstr "" #: harddrake2:91 #, c-format msgid "the vendor name of the processor" msgstr "" #: harddrake2:92 #, fuzzy, c-format msgid "Write protection" msgstr "ใช้ auto detection" #: harddrake2:92 #, c-format msgid "" "the WP flag in the CR0 register of the cpu enforce write protection at the " "memory page level, thus enabling the processor to prevent unchecked kernel " "accesses to user memory (aka this is a bug guard)" msgstr "" #: harddrake2:96 #, fuzzy, c-format msgid "Floppy format" msgstr "ฟอร์แมต" #: harddrake2:96 #, c-format msgid "format of floppies supported by the drive" msgstr "" #: harddrake2:100 #, fuzzy, c-format msgid "Channel" msgstr "ยกเลิก" #: harddrake2:100 #, c-format msgid "EIDE/SCSI channel" msgstr "" #: harddrake2:101 #, fuzzy, c-format msgid "Disk identifier" msgstr "เครื่องพิมพ์" #: harddrake2:101 #, c-format msgid "usually the disk serial number" msgstr "" #: harddrake2:102 #, fuzzy, c-format msgid "Logical unit number" msgstr "เครื่องพิมพ์โลคอล (ต่อติดกับตัวเครื่อง)" #: harddrake2:102 #, c-format msgid "" "the SCSI target number (LUN). SCSI devices connected to a host are uniquely " "identified by a\n" "channel number, a target id and a logical unit number" msgstr "" #. -PO: here, "size" is the size of the ram chip (eg: 128Mo, 256Mo, ...) #: harddrake2:109 #, fuzzy, c-format msgid "Installed size" msgstr "ติดตั้งระบบ" #: harddrake2:109 #, c-format msgid "Installed size of the memory bank" msgstr "" #: harddrake2:110 #, fuzzy, c-format msgid "Enabled Size" msgstr "enable" #: harddrake2:110 #, c-format msgid "Enabled size of the memory bank" msgstr "" #: harddrake2:111 harddrake2:120 #, c-format msgid "Type" msgstr "ประเภท" #: harddrake2:111 #, fuzzy, c-format msgid "type of the memory device" msgstr "ชื่อเครื่องพิมพ์" #: harddrake2:112 #, c-format msgid "Speed" msgstr "ความเร็ว" #: harddrake2:112 #, c-format msgid "Speed of the memory bank" msgstr "" #: harddrake2:113 #, fuzzy, c-format msgid "Bank connections" msgstr "cable connection" #: harddrake2:114 #, c-format msgid "Socket designation of the memory bank" msgstr "" #: harddrake2:118 #, fuzzy, c-format msgid "Device file" msgstr "เลือกไฟล์" #: harddrake2:118 #, c-format msgid "" "the device file used to communicate with the kernel driver for the mouse" msgstr "" #: harddrake2:119 #, c-format msgid "Emulated wheel" msgstr "" #: harddrake2:119 #, fuzzy, c-format msgid "whether the wheel is emulated or not" msgstr "Logitech MouseMan" #: harddrake2:120 #, fuzzy, c-format msgid "the type of the mouse" msgstr "กรุณาทดสอบเม้าส์" #: harddrake2:121 #, fuzzy, c-format msgid "the name of the mouse" msgstr "2 buttons" #: harddrake2:122 #, fuzzy, c-format msgid "Number of buttons" msgstr "2 buttons" #: harddrake2:122 #, fuzzy, c-format msgid "the number of buttons the mouse has" msgstr "2 buttons" #: harddrake2:123 #, fuzzy, c-format msgid "the type of bus on which the mouse is connected" msgstr "เม้าส์ของคุณต่อเข้ากับพอร์ตอนุกรมใด" #: harddrake2:124 #, c-format msgid "Mouse protocol used by X11" msgstr "" #: harddrake2:124 #, c-format msgid "the protocol that the graphical desktop use with the mouse" msgstr "" #: harddrake2:131 harddrake2:140 harddrake2:147 harddrake2:155 harddrake2:335 #, fuzzy, c-format msgid "Identification" msgstr "การตรวจสอบสิทธิ์การใช้งาน" #: harddrake2:132 harddrake2:148 #, c-format msgid "Connection" msgstr "การเชื่อมต่อ" #: harddrake2:141 #, fuzzy, c-format msgid "Performances" msgstr "ข้อกำหนด: " #: harddrake2:142 #, fuzzy, c-format msgid "Bugs" msgstr "สิงหาคม" #: harddrake2:143 #, c-format msgid "FPU" msgstr "" #: harddrake2:150 #, c-format msgid "Device" msgstr "อุปกรณ์" #: harddrake2:151 #, c-format msgid "Partitions" msgstr "พาร์ติชัน" #: harddrake2:156 #, c-format msgid "Features" msgstr "คุณสมบัติ" #. -PO: please keep all "/" characters !!! #: harddrake2:179 logdrake:78 #, c-format msgid "/_Options" msgstr "/_อ็อปชั่น" #: harddrake2:180 harddrake2:209 logdrake:80 #, c-format msgid "/_Help" msgstr "/_ช่วยเหลือ" #: harddrake2:184 #, fuzzy, c-format msgid "/Autodetect _printers" msgstr "ใช้ auto detection" #: harddrake2:185 #, fuzzy, c-format msgid "/Autodetect _modems" msgstr "ใช้ auto detection" #: harddrake2:186 #, fuzzy, c-format msgid "/Autodetect _jaz drives" msgstr "ใช้ auto detection" #: harddrake2:187 #, c-format msgid "/Autodetect parallel _zip drives" msgstr "" #: harddrake2:191 #, fuzzy, c-format msgid "Hardware Configuration" msgstr "การคอนฟิกระบบเน็ตเวิร์ก" #: harddrake2:198 #, c-format msgid "/_Quit" msgstr "/_ออก" #: harddrake2:211 #, fuzzy, c-format msgid "/_Fields description" msgstr "รายละเอียด" #: harddrake2:213 #, c-format msgid "Harddrake help" msgstr "" #: harddrake2:222 #, fuzzy, c-format msgid "Select a device!" msgstr "เลือกกราฟฟิคการ์ด" #: harddrake2:222 #, c-format msgid "" "Once you've selected a device, you'll be able to see the device information " "in fields displayed on the right frame (\"Information\")" msgstr "" #: harddrake2:228 #, c-format msgid "/_Report Bug" msgstr "/_แจ้ง Bug" #: harddrake2:230 #, c-format msgid "/_About..." msgstr "/_เกี่ยวกับ..." #: harddrake2:233 #, fuzzy, c-format msgid "Harddrake" msgstr "ฮาร์ดแวร์" #: harddrake2:237 #, c-format msgid "This is HardDrake, a %s hardware configuration tool." msgstr "" #: harddrake2:270 #, fuzzy, c-format msgid "Detected hardware" msgstr "อ่านต่อข้อมูลของฮาร์ดแวร์" #: harddrake2:273 scannerdrake:286 #, c-format msgid "Information" msgstr "ข้อมูล" #: harddrake2:275 #, c-format msgid "Set current driver options" msgstr "" #: harddrake2:282 #, c-format msgid "Run config tool" msgstr "" #: harddrake2:302 #, c-format msgid "" "Click on a device in the left tree in order to display its information here." msgstr "" #: harddrake2:322 notify-x11-free-driver-switch:13 #, c-format msgid "unknown" msgstr "ไม่รู้จัก" #: harddrake2:323 #, c-format msgid "Unknown" msgstr "ไม่รู้จัก" #: harddrake2:343 #, c-format msgid "Misc" msgstr "เบ็ดเตล็ด" #: harddrake2:418 #, fuzzy, c-format msgid "secondary" msgstr "%d วินาที" #: harddrake2:418 #, c-format msgid "primary" msgstr "" #: harddrake2:422 #, fuzzy, c-format msgid "burner" msgstr "เครื่องพิมพ์" #: harddrake2:422 #, c-format msgid "DVD" msgstr "ดีวีดี" #: harddrake2:474 #, fuzzy, c-format msgid "Unknown/Others" msgstr "Generic" #: harddrake2:516 #, fuzzy, c-format msgid "The following packages need to be installed:\n" msgstr "แพ็คเก็จเหล่านี้กำลังจะถูกติดตั้ง" #: localedrake:38 #, fuzzy, c-format msgid "LocaleDrake" msgstr "เครื่องพิมพ์โลคอล (ต่อติดกับตัวเครื่อง)" #: localedrake:44 #, fuzzy, c-format msgid "You should install the following packages: %s" msgstr "กำลังติดตั้งแพ็คเก็จ %s" #. -PO: the following is used to combine packages names. eg: "initscripts, harddrake, yudit" #: localedrake:47 #, c-format msgid ", " msgstr ", " #: logdrake:51 #, fuzzy, c-format msgid "Mandriva Linux Tools Logs" msgstr "Control Center" #: logdrake:65 #, c-format msgid "Show only for the selected day" msgstr "" #: logdrake:72 #, c-format msgid "/File/_New" msgstr "/ไฟล์/_ใหม่" #: logdrake:72 #, c-format msgid "<control>N" msgstr "<control>N" #: logdrake:73 #, c-format msgid "/File/_Open" msgstr "/ไฟล์/_เปิด" #: logdrake:73 #, c-format msgid "<control>O" msgstr "<control>O" #: logdrake:74 #, c-format msgid "/File/_Save" msgstr "/ไฟล์/_บันทึก" #: logdrake:74 #, c-format msgid "<control>S" msgstr "<control>S" #: logdrake:75 #, c-format msgid "/File/Save _As" msgstr "/ไฟล์/บันทึก_เป็น" #: logdrake:76 #, c-format msgid "/File/-" msgstr "/ไฟล์/-" #: logdrake:79 #, c-format msgid "/Options/Test" msgstr "/อ็อปชั่น/ทดลอง" #: logdrake:81 #, c-format msgid "/Help/_About..." msgstr "/ช่วยเหลือ/_เกี่ยวกับ..." #: logdrake:110 #, c-format msgid "" "_:this is the auth.log log file\n" "Authentication" msgstr "" #: logdrake:111 #, c-format msgid "" "_:this is the user.log log file\n" "User" msgstr "" #: logdrake:112 #, c-format msgid "" "_:this is the /var/log/messages log file\n" "Messages" msgstr "" #: logdrake:113 #, c-format msgid "" "_:this is the /var/log/syslog log file\n" "Syslog" msgstr "" #: logdrake:117 #, c-format msgid "search" msgstr "ค้นหา" #: logdrake:129 #, c-format msgid "A tool to monitor your logs" msgstr "อุปกรณ์ตรวจสอบ logs" #: logdrake:131 #, c-format msgid "Settings" msgstr "ค่าติดตั้ง" #: logdrake:134 #, fuzzy, c-format msgid "Matching" msgstr "matching" #: logdrake:135 #, c-format msgid "but not matching" msgstr "but not matching" #: logdrake:138 #, c-format msgid "Choose file" msgstr "เลือก file" #: logdrake:150 #, c-format msgid "Calendar" msgstr "ปฎิทิน" #: logdrake:159 #, c-format msgid "Content of the file" msgstr "ข้อความของ file" #: logdrake:163 logdrake:407 #, c-format msgid "Mail alert" msgstr "" #: logdrake:170 #, c-format msgid "The alert wizard has failed unexpectedly:" msgstr "" #: logdrake:174 #, c-format msgid "Save" msgstr "บันทึก" #: logdrake:222 #, c-format msgid "please wait, parsing file: %s" msgstr "โปรดกรุณารอ,parsing file:%s" #: logdrake:244 #, c-format msgid "Sorry, log file isn't available!" msgstr "" #: logdrake:292 #, c-format msgid "Error while opening \"%s\" log file: %s\n" msgstr "" #: logdrake:385 #, c-format msgid "Apache World Wide Web Server" msgstr "" #: logdrake:386 #, fuzzy, c-format msgid "Domain Name Resolver" msgstr "ชื่อโดเมน" #: logdrake:387 #, fuzzy, c-format msgid "Ftp Server" msgstr "เซิร์ฟเวอร์ NIS" #: logdrake:388 #, fuzzy, c-format msgid "Postfix Mail Server" msgstr "ชื่อเซิร์ฟเวอร์ของพรินเตอร์" #: logdrake:389 #, fuzzy, c-format msgid "Samba Server" msgstr "เซิร์ฟเวอร์ NIS" #: logdrake:390 #, fuzzy, c-format msgid "SSH Server" msgstr "เซิร์ฟเวอร์ NIS" #: logdrake:391 #, fuzzy, c-format msgid "Webmin Service" msgstr "อุปกรณ์" #: logdrake:392 #, fuzzy, c-format msgid "Xinetd Service" msgstr "ชื่อเซิร์ฟเวอร์ของพรินเตอร์" #: logdrake:401 #, fuzzy, c-format msgid "Configure the mail alert system" msgstr "คอนฟิกระบบเน็ตเวิร์ก" #: logdrake:402 #, c-format msgid "Stop the mail alert system" msgstr "" #: logdrake:410 #, fuzzy, c-format msgid "Mail alert configuration" msgstr "การปรับแต่ง LAN" #: logdrake:411 #, c-format msgid "" "Welcome to the mail configuration utility.\n" "\n" "Here, you'll be able to set up the alert system.\n" msgstr "" #: logdrake:414 #, fuzzy, c-format msgid "What do you want to do?" msgstr "คุณต้องการเม้าท์อุปกรณ์ %s ไว้ที่ใด?" #: logdrake:421 #, fuzzy, c-format msgid "Services settings" msgstr "อุปกรณ์" #: logdrake:422 #, c-format msgid "" "You will receive an alert if one of the selected services is no longer " "running" msgstr "" #: logdrake:429 #, fuzzy, c-format msgid "Load setting" msgstr "ฟอร์แมต" #: logdrake:430 #, c-format msgid "You will receive an alert if the load is higher than this value" msgstr "" #: logdrake:431 #, c-format msgid "" "_: load here is a noun, the load of the system\n" "Load" msgstr "" #: logdrake:436 #, fuzzy, c-format msgid "Alert configuration" msgstr "การคอนฟิก" #: logdrake:437 #, fuzzy, c-format msgid "Please enter your email address below " msgstr "โปรดลองอีกครั้ง" #: logdrake:438 #, c-format msgid "and enter the name (or the IP) of the SMTP server you wish to use" msgstr "" #: logdrake:445 #, c-format msgid "\"%s\" neither is a valid email nor is an existing local user!" msgstr "" #: logdrake:450 #, c-format msgid "" "\"%s\" is a local user, but you did not select a local smtp, so you must use " "a complete email address!" msgstr "" #: logdrake:457 #, c-format msgid "The wizard successfully configured the mail alert." msgstr "" #: logdrake:463 #, c-format msgid "The wizard successfully disabled the mail alert." msgstr "" #: logdrake:522 #, c-format msgid "Save as.." msgstr "บันทึกแฟ้มเป็น" #: notify-x11-free-driver-switch:15 #, c-format msgid "" "The proprietary driver for your graphic card can not be found, the system is " "now using the free software driver (%s)." msgstr "" #: scannerdrake:51 #, fuzzy, c-format msgid "" "SANE packages need to be installed to use scanners.\n" "\n" "Do you want to install the SANE packages?" msgstr "" "แพกเกจนี้จำเป็นต้องถูก upgrade\n" "คุณแน่ใจว่าจะไม่เลือกมันหรือ" #: scannerdrake:55 #, fuzzy, c-format msgid "Aborting Scannerdrake." msgstr "เลือกกราฟฟิคการ์ด" #: scannerdrake:60 #, c-format msgid "" "Could not install the packages needed to set up a scanner with Scannerdrake." msgstr "" #: scannerdrake:61 #, c-format msgid "Scannerdrake will not be started now." msgstr "" #: scannerdrake:67 scannerdrake:506 #, fuzzy, c-format msgid "Searching for configured scanners..." msgstr "เครื่องพิมพ์โลคอล (ต่อติดกับตัวเครื่อง)" #: scannerdrake:71 scannerdrake:510 #, fuzzy, c-format msgid "Searching for new scanners..." msgstr "เครื่องพิมพ์โลคอล (ต่อติดกับตัวเครื่อง)" #: scannerdrake:79 scannerdrake:532 #, c-format msgid "Re-generating list of configured scanners..." msgstr "" #: scannerdrake:101 #, c-format msgid "The %s is not supported by this version of %s." msgstr "" #: scannerdrake:104 scannerdrake:115 #, fuzzy, c-format msgid "Confirmation" msgstr "ปรับแต่งค่า" #: scannerdrake:104 #, fuzzy, c-format msgid "%s found on %s, configure it automatically?" msgstr "คุณต้องการคอนฟิกเครื่องพิมพ์ด้วยหรือไม่" #: scannerdrake:116 #, c-format msgid "%s is not in the scanner database, configure it manually?" msgstr "" #: scannerdrake:130 #, fuzzy, c-format msgid "Scanner configuration" msgstr "การคอนฟิก" #: scannerdrake:131 #, c-format msgid "Select a scanner model (Detected model: %s, Port: %s)" msgstr "" #: scannerdrake:133 #, c-format msgid "Select a scanner model (Detected model: %s)" msgstr "" #: scannerdrake:134 #, c-format msgid "Select a scanner model (Port: %s)" msgstr "" #: scannerdrake:136 scannerdrake:139 #, c-format msgid " (UNSUPPORTED)" msgstr "" #: scannerdrake:142 #, fuzzy, c-format msgid "The %s is not supported under Linux." msgstr "หน้าต่าง \"%s\" ไม่ตอบสนอง" #: scannerdrake:169 scannerdrake:183 #, c-format msgid "Do not install firmware file" msgstr "" #: scannerdrake:172 scannerdrake:222 #, fuzzy, c-format msgid "Scanner Firmware" msgstr "เครื่องพิมพ์" #: scannerdrake:173 scannerdrake:225 #, c-format msgid "" "It is possible that your %s needs its firmware to be uploaded everytime when " "it is turned on." msgstr "" #: scannerdrake:174 scannerdrake:226 #, c-format msgid "If this is the case, you can make this be done automatically." msgstr "" #: scannerdrake:175 scannerdrake:229 #, c-format msgid "" "To do so, you need to supply the firmware file for your scanner so that it " "can be installed." msgstr "" #: scannerdrake:176 scannerdrake:230 #, c-format msgid "" "You find the file on the CD or floppy coming with the scanner, on the " "manufacturer's home page, or on your Windows partition." msgstr "" #: scannerdrake:178 scannerdrake:237 #, c-format msgid "Install firmware file from" msgstr "" #: scannerdrake:180 scannerdrake:188 scannerdrake:239 scannerdrake:246 #, c-format msgid "CD-ROM" msgstr "ซีดี-รอม" #: scannerdrake:181 scannerdrake:190 scannerdrake:240 scannerdrake:248 #, fuzzy, c-format msgid "Floppy Disk" msgstr "บันทึกลงแผ่นฟล้อปปี้" #: scannerdrake:182 scannerdrake:192 scannerdrake:241 scannerdrake:250 #, fuzzy, c-format msgid "Other place" msgstr "กำลังตรวจสอบพอร์ต" #: scannerdrake:198 #, fuzzy, c-format msgid "Select firmware file" msgstr "เลือกไฟล์" #: scannerdrake:201 scannerdrake:260 #, c-format msgid "The firmware file %s does not exist or is unreadable!" msgstr "" #: scannerdrake:224 #, c-format msgid "" "It is possible that your scanners need their firmware to be uploaded " "everytime when they are turned on." msgstr "" #: scannerdrake:228 #, c-format msgid "" "To do so, you need to supply the firmware files for your scanners so that it " "can be installed." msgstr "" #: scannerdrake:231 #, c-format msgid "" "If you have already installed your scanner's firmware you can update the " "firmware here by supplying the new firmware file." msgstr "" #: scannerdrake:233 #, c-format msgid "Install firmware for the" msgstr "" #: scannerdrake:256 #, fuzzy, c-format msgid "Select firmware file for the %s" msgstr "เลือกไฟล์" #: scannerdrake:274 #, fuzzy, c-format msgid "Could not install the firmware file for the %s!" msgstr "เลือกไฟล์" #: scannerdrake:287 #, c-format msgid "The firmware file for your %s was successfully installed." msgstr "" #: scannerdrake:297 #, c-format msgid "The %s is unsupported" msgstr "" #: scannerdrake:302 #, c-format msgid "" "The %s must be configured by system-config-printer.\n" "You can launch system-config-printer from the %s Control Center in Hardware section." msgstr "" #: scannerdrake:320 #, fuzzy, c-format msgid "Setting up kernel modules..." msgstr "ลบทิ้ง 1 module" #: scannerdrake:330 scannerdrake:337 scannerdrake:367 #, fuzzy, c-format msgid "Auto-detect available ports" msgstr "ใช้ auto detection" #: scannerdrake:331 scannerdrake:377 #, fuzzy, c-format msgid "Device choice" msgstr "เลือกไฟล์" #: scannerdrake:332 scannerdrake:378 #, c-format msgid "Please select the device where your %s is attached" msgstr "" #: scannerdrake:333 #, c-format msgid "(Note: Parallel ports cannot be auto-detected)" msgstr "" #: scannerdrake:335 scannerdrake:380 #, fuzzy, c-format msgid "choose device" msgstr "อุปกรณ์บูต" #: scannerdrake:369 #, fuzzy, c-format msgid "Searching for scanners..." msgstr "เครื่องพิมพ์โลคอล (ต่อติดกับตัวเครื่อง)" #: scannerdrake:405 scannerdrake:412 #, fuzzy, c-format msgid "Attention!" msgstr "ดึงดูดใจ" #: scannerdrake:406 #, c-format msgid "" "Your %s cannot be configured fully automatically.\n" "\n" "Manual adjustments are required. Please edit the configuration file /etc/" "sane.d/%s.conf. " msgstr "" #: scannerdrake:407 scannerdrake:416 #, c-format msgid "" "More info in the driver's manual page. Run the command \"man sane-%s\" to " "read it." msgstr "" #: scannerdrake:409 scannerdrake:418 #, c-format msgid "" "After that you may scan documents using \"XSane\" or \"Kooka\" from " "Multimedia/Graphics in the applications menu." msgstr "" #: scannerdrake:413 #, c-format msgid "" "Your %s has been configured, but it is possible that additional manual " "adjustments are needed to get it to work. " msgstr "" #: scannerdrake:414 #, c-format msgid "" "If it does not appear in the list of configured scanners in the main window " "of Scannerdrake or if it does not work correctly, " msgstr "" #: scannerdrake:415 #, c-format msgid "edit the configuration file /etc/sane.d/%s.conf. " msgstr "" #: scannerdrake:420 #, c-format msgid "Congratulations!" msgstr "ขอแสดงความยินดี" #: scannerdrake:421 #, c-format msgid "" "Your %s has been configured.\n" "You may now scan documents using \"XSane\" or \"Kooka\" from Multimedia/" "Graphics in the applications menu." msgstr "" #: scannerdrake:446 #, fuzzy, c-format msgid "" "The following scanners\n" "\n" "%s\n" "are available on your system.\n" msgstr "ไม่มีอุปกรณ์ Network บนเครื่องคุณ" #: scannerdrake:447 #, fuzzy, c-format msgid "" "The following scanner\n" "\n" "%s\n" "is available on your system.\n" msgstr "ไม่มีอุปกรณ์ Network บนเครื่องคุณ" #: scannerdrake:450 scannerdrake:453 #, c-format msgid "There are no scanners found which are available on your system.\n" msgstr "" #: scannerdrake:461 #, fuzzy, c-format msgid "Scanner Management" msgstr "ไม่มีเครื่องพิมพ์" #: scannerdrake:467 #, fuzzy, c-format msgid "Search for new scanners" msgstr "เครื่องพิมพ์โลคอล (ต่อติดกับตัวเครื่อง)" #: scannerdrake:473 #, c-format msgid "Add a scanner manually" msgstr "" #: scannerdrake:480 #, fuzzy, c-format msgid "Install/Update firmware files" msgstr "เลือกไฟล์" #: scannerdrake:486 #, fuzzy, c-format msgid "Scanner sharing" msgstr "เครื่องพิมพ์" #: scannerdrake:545 scannerdrake:710 #, fuzzy, c-format msgid "All remote machines" msgstr "เครื่องพิมพ์แบบรีโมท" #: scannerdrake:557 scannerdrake:860 #, fuzzy, c-format msgid "This machine" msgstr "matching" #: scannerdrake:596 #, fuzzy, c-format msgid "Scanner Sharing" msgstr "เครื่องพิมพ์" #: scannerdrake:597 #, c-format msgid "" "Here you can choose whether the scanners connected to this machine should be " "accessible by remote machines and by which remote machines." msgstr "" #: scannerdrake:598 #, c-format msgid "" "You can also decide here whether scanners on remote machines should be made " "available on this machine." msgstr "" #: scannerdrake:601 #, c-format msgid "The scanners on this machine are available to other computers" msgstr "" #: scannerdrake:603 #, fuzzy, c-format msgid "Scanner sharing to hosts: " msgstr "เครื่องพิมพ์" #: scannerdrake:608 scannerdrake:625 #, fuzzy, c-format msgid "No remote machines" msgstr "เครื่องพิมพ์แบบรีโมท" #: scannerdrake:617 #, c-format msgid "Use scanners on remote computers" msgstr "" #: scannerdrake:620 #, c-format msgid "Use the scanners on hosts: " msgstr "" #: scannerdrake:647 scannerdrake:719 scannerdrake:869 #, fuzzy, c-format msgid "Sharing of local scanners" msgstr "เครื่องพิมพ์โลคอล (ต่อติดกับตัวเครื่อง)" #: scannerdrake:648 #, c-format msgid "" "These are the machines on which the locally connected scanner(s) should be " "available:" msgstr "" #: scannerdrake:659 scannerdrake:809 #, fuzzy, c-format msgid "Add host" msgstr "เพิ่มผู้ใช้" #: scannerdrake:665 scannerdrake:815 #, fuzzy, c-format msgid "Edit selected host" msgstr "ค้นพบ %s" #: scannerdrake:674 scannerdrake:824 #, fuzzy, c-format msgid "Remove selected host" msgstr "ลบคิว" #: scannerdrake:683 scannerdrake:833 #, c-format msgid "Done" msgstr "เรียบร้อย" #: scannerdrake:698 scannerdrake:706 scannerdrake:711 scannerdrake:757 #: scannerdrake:848 scannerdrake:856 scannerdrake:861 scannerdrake:907 #, c-format msgid "Name/IP address of host:" msgstr "" #: scannerdrake:720 scannerdrake:870 #, c-format msgid "Choose the host on which the local scanners should be made available:" msgstr "" #: scannerdrake:731 scannerdrake:881 #, fuzzy, c-format msgid "You must enter a host name or an IP address.\n" msgstr "กรุณาทดสอบเม้าส์" #: scannerdrake:742 scannerdrake:892 #, c-format msgid "This host is already in the list, it cannot be added again.\n" msgstr "" #: scannerdrake:797 #, fuzzy, c-format msgid "Usage of remote scanners" msgstr "ใช้พื้นที่ที่ว่าง" #: scannerdrake:798 #, c-format msgid "These are the machines from which the scanners should be used:" msgstr "" #: scannerdrake:955 #, fuzzy, c-format msgid "" "saned needs to be installed to share the local scanner(s).\n" "\n" "Do you want to install the saned package?" msgstr "" "แพกเกจนี้จำเป็นต้องถูก upgrade\n" "คุณแน่ใจว่าจะไม่เลือกมันหรือ" #: scannerdrake:959 scannerdrake:963 #, c-format msgid "Your scanner(s) will not be available on the network." msgstr "" #: scannerdrake:962 #, c-format msgid "Could not install the packages needed to share your scanner(s)." msgstr "" #: service_harddrake:131 #, c-format msgid "Some devices in the \"%s\" hardware class were removed:\n" msgstr "" #: service_harddrake:132 #, c-format msgid "- %s was removed\n" msgstr "" #: service_harddrake:135 #, fuzzy, c-format msgid "Some devices were added: %s\n" msgstr "ดีไวซ์ของเม้าส์: %s\n" #: service_harddrake:136 #, c-format msgid "- %s was added\n" msgstr "" #: service_harddrake:259 #, fuzzy, c-format msgid "Hardware probing in progress" msgstr "ค้นหาเจอบน port %s" #: service_harddrake_confirm:7 #, c-format msgid "Hardware changes in \"%s\" class (%s seconds to answer)" msgstr "" #: service_harddrake_confirm:8 #, fuzzy, c-format msgid "Do you want to run the appropriate config tool?" msgstr "คุณต้องการทดสอบการคอนฟิกหรือไม่" #: ../menu/localedrake-system.desktop.in.h:1 #, fuzzy msgid "System Regional Settings" msgstr "กำลังพาร์ติชั่น Custom disk" #: ../menu/localedrake-system.desktop.in.h:2 msgid "System wide language & country configurator" msgstr "" #: ../menu/harddrake.desktop.in.h:1 msgid "HardDrake" msgstr "HardDrake" #: ../menu/harddrake.desktop.in.h:2 #, fuzzy msgid "Hardware Central Configuration/information tool" msgstr "การคอนฟิกระบบเน็ตเวิร์ก" #: ../menu/harddrake.desktop.in.h:3 #, fuzzy msgid "Hardware Configuration Tool" msgstr "การคอนฟิกระบบเน็ตเวิร์ก" #: ../menu/localedrake-user.desktop.in.h:1 #, fuzzy msgid "Language & country configuration" msgstr "การคอนฟิก" #: ../menu/localedrake-user.desktop.in.h:2 #, fuzzy msgid "Regional Settings" msgstr "ค่าติดตั้ง" #, fuzzy #~ msgid "" #~ "The following localization packages do not seem to be useful for your " #~ "system:" #~ msgstr "แพ็คเก็จเหล่านี้กำลังจะถูกติดตั้ง" #, fuzzy #~ msgid "Do you want to remove these packages?" #~ msgstr "คุณต้องการทดสอบการคอนฟิกหรือไม่" #, fuzzy #~ msgid "" #~ "The following hardware packages do not seem to be useful for your system:" #~ msgstr "แพ็คเก็จเหล่านี้กำลังจะถูกติดตั้ง" #, fuzzy #~ msgid "Please wait, adding media..." #~ msgstr "เลือกระดับระบบรักษาความปลอดภัย" #, fuzzy #~ msgid "Restart XFS" #~ msgstr "จำเพาะ" #~ msgid "Copyright (C) 2001-2008 by Mandriva" #~ msgstr "สงวนลิขสิทธิ์ (C) 2001-2008 Mandriva SA" #~ msgid "Error!" #~ msgstr "ผิดพลาด!" #, fuzzy #~ msgid "Auto Install Configurator" #~ msgstr "การคอนฟิกหลังการติดตั้ง" #, fuzzy #~ msgid "replay" #~ msgstr "เรียกอีกครั้ง" #, fuzzy #~ msgid "Automatic Steps Configuration" #~ msgstr "Boot Style Configuration" #~ msgid "Insert a blank floppy in drive %s" #~ msgstr "ให้ใส่แผ่นฟล้อปปี้ลงในไดรว์ %s " #, fuzzy #~ msgid "Creating auto install floppy" #~ msgstr "กำลังเตรียมการติดตั้งลงบน floppy" #, fuzzy #~ msgid "Insert another blank floppy in drive %s (for drivers disk)" #~ msgstr "ให้ใส่แผ่นฟล้อปปี้ลงในไดรว์ %s " #, fuzzy #~ msgid "Creating auto install floppy (drivers disk)" #~ msgstr "กำลังเตรียมการติดตั้งลงบน floppy" #, fuzzy #~ msgid "Auto Install" #~ msgstr "ติดตั้ง" #, fuzzy #~ msgid "Add an item" #~ msgstr "เพิ่มผู้ใช้" #, fuzzy #~ msgid "Remove the last item" #~ msgstr "ฟอร์แมต loopback file %s" #~ msgid "Menudrake" #~ msgstr "เครื่องมือแก้ไขเมนู" #, fuzzy #~ msgid "Msec" #~ msgstr "Mouse" #~ msgid "Userdrake" #~ msgstr "Userdrake"