summaryrefslogtreecommitdiffstats
path: root/perl-install/standalone/po/sq.po
diff options
context:
space:
mode:
authorYuri Chornoivan <yurchor@ukr.net>2014-02-02 08:57:52 +0200
committerYuri Chornoivan <yurchor@ukr.net>2014-02-02 08:57:52 +0200
commit1b3acf908180fe7d6782df26d57f94d673f53870 (patch)
treedbca16436d236b31ecd12859c82687f94e019a09 /perl-install/standalone/po/sq.po
parent6324c61202fca81c0dae6fab4ce8e9f7e42a2dd6 (diff)
downloaddrakx-1b3acf908180fe7d6782df26d57f94d673f53870.tar
drakx-1b3acf908180fe7d6782df26d57f94d673f53870.tar.gz
drakx-1b3acf908180fe7d6782df26d57f94d673f53870.tar.bz2
drakx-1b3acf908180fe7d6782df26d57f94d673f53870.tar.xz
drakx-1b3acf908180fe7d6782df26d57f94d673f53870.zip
Fix translation catalogs to add new translatable string (<control>H)
Diffstat (limited to 'perl-install/standalone/po/sq.po')
-rw-r--r--perl-install/standalone/po/sq.po620
1 files changed, 301 insertions, 319 deletions
diff --git a/perl-install/standalone/po/sq.po b/perl-install/standalone/po/sq.po
index a98efed24..20aa924ff 100644
--- a/perl-install/standalone/po/sq.po
+++ b/perl-install/standalone/po/sq.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: DrakX for MDK 9.2\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-11 11:11+0100\n"
+"POT-Creation-Date: 2014-02-02 08:56+0200\n"
"PO-Revision-Date: 2004-09-15 13:33+0200\n"
"Last-Translator: Naim Daka <naim70@freesurf.ch>\n"
"Language-Team: Albanian <LL@li.org>\n"
@@ -16,7 +16,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8-bit\n"
-#: display_help:54 display_help:59 drakbug:173 drakperm:136
+#: display_help:54 display_help:59 drakbug:173 drakperm:134
#, c-format
msgid "Help"
msgstr "Ndihmë"
@@ -26,14 +26,14 @@ msgstr "Ndihmë"
msgid "Close"
msgstr "Mbylle"
-#: drakauth:24 drakauth:26 draksec:160
+#: drakauth:24 drakauth:26 draksec:183
#, c-format
msgid "Authentication"
msgstr "Vërtetësimi"
-#: drakauth:37 drakclock:115 drakclock:131 drakdvb:74 drakfont:213
-#: drakfont:226 drakfont:264 finish-install:136 logdrake:173 logdrake:448
-#: logdrake:453 scannerdrake:57 scannerdrake:99 scannerdrake:140
+#: drakauth:37 drakclock:116 drakclock:139 drakdvb:74 drakfont:213
+#: drakfont:226 drakfont:264 finish-install:136 logdrake:178 logdrake:454
+#: logdrake:459 scannerdrake:57 scannerdrake:99 scannerdrake:140
#: scannerdrake:198 scannerdrake:257 scannerdrake:727 scannerdrake:738
#: scannerdrake:877 scannerdrake:888 scannerdrake:958
#, c-format
@@ -45,112 +45,112 @@ msgstr "Gabim"
msgid "No bootloader found, creating a new configuration"
msgstr ""
-#: drakboot:88 harddrake2:198 harddrake2:199 logdrake:74
+#: drakboot:90 harddrake2:191 logdrake:78
#, c-format
msgid "_File"
msgstr "_Skedare"
-#: drakboot:89 logdrake:80
+#: drakboot:91 harddrake2:192 logdrake:79 logdrake:80
#, c-format
-msgid "File/_Quit"
-msgstr "Skedare/_Braktise"
+msgid "_Quit"
+msgstr "_Braktise"
-#: drakboot:89 harddrake2:199 logdrake:80
+#: drakboot:91 harddrake2:192 logdrake:80
#, c-format
msgid "<control>Q"
msgstr "<control>Q"
-#: drakboot:129
+#: drakboot:139
#, c-format
msgid "Text only"
msgstr "Vetëm tekst"
-#: drakboot:130
+#: drakboot:140
#, c-format
msgid "Silent"
msgstr ""
-#: drakboot:136 drakbug:250 drakdvb:57 drakfont:682 drakperm:376 drakperm:386
-#: drakups:27 harddrake2:533 localedrake:45 scannerdrake:49 scannerdrake:52
+#: drakboot:146 drakbug:250 drakdvb:57 drakfont:681 drakperm:371 drakperm:381
+#: drakups:27 harddrake2:504 localedrake:45 scannerdrake:49 scannerdrake:52
#: scannerdrake:295 scannerdrake:300 scannerdrake:952
#, c-format
msgid "Warning"
msgstr "Kujdes"
-#: drakboot:137
+#: drakboot:147
#, c-format
msgid ""
"Your system bootloader is not in framebuffer mode. To activate graphical "
"boot, select a graphic video mode from the bootloader configuration tool."
msgstr ""
-#: drakboot:138
+#: drakboot:148
#, fuzzy, c-format
msgid "Do you want to configure it now?"
msgstr "A dëshironi ta testoni konfigurimin?"
-#: drakboot:147
+#: drakboot:157
#, c-format
msgid "Install themes"
msgstr "Intalimi i temave"
-#: drakboot:149
+#: drakboot:159
#, fuzzy, c-format
msgid "Graphical boot theme selection"
msgstr "Zgjedhja e modelit të stampuesit"
-#: drakboot:152
+#: drakboot:162
#, fuzzy, c-format
msgid "Graphical boot mode:"
msgstr "Zgjedhja e modelit të stampuesit"
-#: drakboot:154
+#: drakboot:164
#, c-format
msgid "Theme"
msgstr "Tema"
-#: drakboot:188
+#: drakboot:198
#, c-format
msgid "Default user"
msgstr "Përdorues me marrëveshje"
-#: drakboot:189
+#: drakboot:199
#, c-format
msgid "Default desktop"
msgstr "Tryezë me marrëveshje"
-#: drakboot:192
+#: drakboot:202
#, c-format
msgid "No, I do not want autologin"
msgstr "Jo, nuk dëshiroj autolidhje"
-#: drakboot:193
+#: drakboot:203
#, c-format
msgid "Yes, I want autologin with this (user, desktop)"
msgstr ""
"Po, dëshiroj një autolidhje me këtë (zgjedhje të përdoruesit në tryezë)"
-#: drakboot:200
+#: drakboot:210
#, c-format
msgid "System mode"
msgstr "Modë i sistemit"
-#: drakboot:203
+#: drakboot:213
#, c-format
msgid "Launch the graphical environment when your system starts"
msgstr "Nise interfacin e mjedisit me grafik kur niset sistemi juaj"
-#: drakboot:263
+#: drakboot:273
#, c-format
msgid "Boot Style Configuration"
msgstr "Konfigurimi i Stilit të nisjes"
-#: drakboot:265 drakboot:269
+#: drakboot:275 drakboot:279
#, c-format
msgid "Video mode"
msgstr "Modë video"
-#: drakboot:266
+#: drakboot:276
#, c-format
msgid ""
"Please choose a video mode, it will be applied to each of the boot entries "
@@ -169,8 +169,8 @@ msgid "%s Bug Report Tool"
msgstr "Vegël Sinjalizuese bug në Mageia"
#: drakbug:62 drakbug:67 drakbug:72 drakbug:73 drakbug:99 drakfont:523
-#: drakfont:527 drakhelp:53 draksec:110 draksec:146 harddrake2:234
-#: harddrake2:238 logdrake:54
+#: drakfont:527 drakhelp:53 draksec:110 draksec:169 harddrake2:523
+#: harddrake2:527 logdrake:56
#, fuzzy, c-format
msgid "Mageia"
msgstr "Mageia Online"
@@ -330,37 +330,37 @@ msgstr ""
msgid "Thanks."
msgstr ""
-#: drakclock:30 draksec:166
+#: drakclock:29 draksec:189
#, c-format
msgid "Date, Clock & Time Zone Settings"
msgstr ""
-#: drakclock:39
+#: drakclock:38
#, fuzzy, c-format
msgid "not defined"
msgstr "i pa konfiguruar"
-#: drakclock:41
+#: drakclock:40
#, fuzzy, c-format
msgid "Change Time Zone"
msgstr "Zonë orare"
-#: drakclock:46
+#: drakclock:45
#, c-format
msgid "Timezone - DrakClock"
msgstr "Ora Lokale - DrakClock"
-#: drakclock:46
+#: drakclock:45
#, c-format
msgid "Which is your timezone?"
msgstr "Cila është zona e juaj orare?"
-#: drakclock:47
+#: drakclock:46
#, c-format
msgid "GMT - DrakClock"
msgstr "GMT - DrakClock"
-#: drakclock:47
+#: drakclock:46
#, fuzzy, c-format
msgid "Is your hardware clock set to GMT?"
msgstr "Orë Sistemi e rregulluar në Kohën Univerzale (GMT)"
@@ -394,27 +394,27 @@ msgstr "Serveri:"
msgid "Timezone"
msgstr "Zonë orare"
-#: drakclock:115
+#: drakclock:116
#, fuzzy, c-format
msgid "Please enter a valid NTP server address."
msgstr "Ju lutemi futni emrin e ftuesit apo IP."
-#: drakclock:132
+#: drakclock:140
#, c-format
msgid "Could not synchronize with %s."
msgstr ""
-#: drakclock:133 drakdvb:149 logdrake:178 scannerdrake:489
+#: drakclock:141 drakdvb:149 logdrake:183 scannerdrake:489
#, c-format
msgid "Quit"
msgstr "Dil"
-#: drakclock:134
+#: drakclock:142
#, fuzzy, c-format
msgid "Retry"
msgstr "Riparo"
-#: drakclock:161 drakclock:171
+#: drakclock:165 drakclock:175
#, c-format
msgid "Reset"
msgstr "Nga fillimi"
@@ -439,7 +439,7 @@ msgstr ""
msgid "Could not get the list of available channels"
msgstr ""
-#: drakdvb:80 draksec:69 drakups:99 finish-install:109 harddrake2:378
+#: drakdvb:80 draksec:69 drakups:99 finish-install:109 harddrake2:358
#: scannerdrake:64 scannerdrake:68 scannerdrake:76 scannerdrake:317
#: scannerdrake:366 scannerdrake:502 scannerdrake:506 scannerdrake:528
#: service_harddrake:410
@@ -452,7 +452,7 @@ msgstr "Një moment ju lutemi"
msgid "Detecting DVB channels, this will take a few minutes"
msgstr ""
-#: drakdvb:85 drakfont:572 drakfont:652 drakfont:736 drakups:217 logdrake:178
+#: drakdvb:85 drakfont:570 drakfont:650 drakfont:735 drakups:217 logdrake:183
#, c-format
msgid "Cancel"
msgstr "Anulo"
@@ -628,7 +628,7 @@ msgstr "Instaloje Postin"
msgid "DrakFont"
msgstr ""
-#: drakfont:491 drakfont:642
+#: drakfont:491 drakfont:640
#, c-format
msgid "Font List"
msgstr "Lista e Policës"
@@ -643,12 +643,12 @@ msgstr ""
msgid "About"
msgstr "Në lidhje me"
-#: drakfont:501 drakfont:541
+#: drakfont:501 drakfont:539
#, c-format
msgid "Options"
msgstr "Opcionet"
-#: drakfont:502 drakfont:721
+#: drakfont:502 drakfont:720
#, fuzzy, c-format
msgid "Uninstall"
msgstr "Dezinstaloje Postin"
@@ -663,7 +663,7 @@ msgstr "Importo"
msgid "Drakfont"
msgstr ""
-#: drakfont:523 harddrake2:234
+#: drakfont:523 harddrake2:523
#, c-format
msgid "Copyright (C) %s by %s"
msgstr "E drejtë autori (C) %s %s"
@@ -675,137 +675,137 @@ msgstr "I pa instaluar"
#. -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:242
+#: drakfont:531 harddrake2:531
#, c-format
msgid "_: Translator(s) name(s) & email(s)\n"
msgstr ""
-#: drakfont:543
+#: drakfont:541
#, c-format
msgid "Choose the applications that will support the fonts:"
msgstr "Zgjedhni aplikacionet që i përkrahin këto polisa:"
-#: drakfont:554
+#: drakfont:552
#, c-format
msgid "Ghostscript"
msgstr "Ghostscript"
-#: drakfont:555
+#: drakfont:553
#, c-format
msgid "LibreOffice"
msgstr ""
-#: drakfont:556
+#: drakfont:554
#, c-format
msgid "Abiword"
msgstr "Abiword"
-#: drakfont:557
+#: drakfont:555
#, c-format
msgid "Generic Printers"
msgstr "Stampues të Përgjithshëm"
-#: drakfont:562 drakfont:572 drakups:210
+#: drakfont:560 drakfont:570 drakups:210
#, c-format
msgid "Ok"
msgstr "Ok"
-#: drakfont:571
+#: drakfont:569
#, c-format
msgid "Select the font file or directory and click on 'Add'"
msgstr "Zgjedhni skedaret apo repertorët e polisave dhe klikoni mbi 'Shto'"
-#: drakfont:572
+#: drakfont:570
#, c-format
msgid "File Selection"
msgstr "Zgjedhja e Skedareve"
-#: drakfont:576
+#: drakfont:574
#, c-format
msgid "Fonts"
msgstr "Policë e shkronjave çfaqëse"
-#: drakfont:640 draksec:162
+#: drakfont:638 draksec:185
#, fuzzy, c-format
msgid "Import fonts"
msgstr "Importimet e Policës"
-#: drakfont:646 drakups:299 drakups:375
+#: drakfont:644 drakups:299 drakups:375
#, c-format
msgid "Add"
msgstr "Shto"
-#: drakfont:647 drakfont:735 drakups:301 drakups:377
+#: drakfont:645 drakfont:734 drakups:301 drakups:377
#, c-format
msgid "Remove"
msgstr "Zhduke"
-#: drakfont:653
+#: drakfont:651
#, c-format
msgid "Install"
msgstr "Instaloje"
-#: drakfont:684
+#: drakfont:683
#, c-format
msgid "Are you sure you want to uninstall the following fonts?"
msgstr ""
-#: drakfont:688 draksec:59 harddrake2:323
+#: drakfont:687 draksec:59 harddrake2:302
#, c-format
msgid "Yes"
msgstr "Po"
-#: drakfont:690 draksec:58 harddrake2:324
+#: drakfont:689 draksec:58 harddrake2:303
#, c-format
msgid "No"
msgstr "Jo"
-#: drakfont:729
+#: drakfont:728
#, c-format
msgid "Unselect All"
msgstr "Gjitha të Çzgjedhurat"
-#: drakfont:732
+#: drakfont:731
#, c-format
msgid "Select All"
msgstr "Zgjedhi Gjithë"
-#: drakfont:749
+#: drakfont:748
#, fuzzy, c-format
msgid "Importing fonts"
msgstr "Importimet e Policës"
-#: drakfont:753 drakfont:773
+#: drakfont:752 drakfont:772
#, c-format
msgid "Initial tests"
msgstr "Testet inicues"
-#: drakfont:754
+#: drakfont:753
#, c-format
msgid "Copy fonts on your system"
msgstr "Kopjoni polisat në sistemin tuaj"
-#: drakfont:755
+#: drakfont:754
#, c-format
msgid "Install & convert Fonts"
msgstr "Instalo & shëndërro Polisat"
-#: drakfont:756
+#: drakfont:755
#, c-format
msgid "Post Install"
msgstr "Instaloje Postin"
-#: drakfont:768
+#: drakfont:767
#, fuzzy, c-format
msgid "Removing fonts"
msgstr "Importimet e Policës"
-#: drakfont:774
+#: drakfont:773
#, c-format
msgid "Remove fonts on your system"
msgstr "Zhdukni polisat në sistemin tuaj"
-#: drakfont:775
+#: drakfont:774
#, c-format
msgid "Post Uninstall"
msgstr "Dezinstaloje Postin"
@@ -884,22 +884,22 @@ msgstr "Autorizimet"
msgid "Editable"
msgstr "Botues"
-#: drakperm:50 drakperm:320
+#: drakperm:50 drakperm:318
#, c-format
msgid "Path"
msgstr "Shtegu"
-#: drakperm:50 drakperm:249
+#: drakperm:50 drakperm:247
#, c-format
msgid "User"
msgstr "Përdorues"
-#: drakperm:50 drakperm:249
+#: drakperm:50 drakperm:247
#, c-format
msgid "Group"
msgstr "Grupi"
-#: drakperm:50 drakperm:109 drakperm:332 draksec:177
+#: drakperm:50 drakperm:107 drakperm:330 draksec:200
#, c-format
msgid "Permissions"
msgstr "Autorizimet"
@@ -909,12 +909,12 @@ msgstr "Autorizimet"
msgid "Add a new rule"
msgstr ""
-#: drakperm:67 drakperm:102 drakperm:128
+#: drakperm:67 drakperm:102 drakperm:126
#, c-format
msgid "Edit current rule"
msgstr "Boto rregullën aktuale"
-#: drakperm:110
+#: drakperm:108
#, fuzzy, c-format
msgid ""
"Here you can see files to use in order to fix permissions, owners, and "
@@ -926,7 +926,7 @@ msgstr ""
"Ju keni mundësi ti botoni rregullat tuaja, të cilat do ti zëvendojnë ato me "
"marrëveshje."
-#: drakperm:112
+#: drakperm:110
#, fuzzy, c-format
msgid ""
"The current security level is %s.\n"
@@ -935,115 +935,115 @@ msgstr ""
"Niveli prezent i sigurisë është %s\n"
"Zgjedhë lejimet shiquese/çfaqëse"
-#: drakperm:124
+#: drakperm:122
#, c-format
msgid "Up"
msgstr "Lartë"
-#: drakperm:124
+#: drakperm:122
#, c-format
msgid "Move selected rule up one level"
msgstr "Hype rregullën për një nivel më lartë"
-#: drakperm:125
+#: drakperm:123
#, c-format
msgid "Down"
msgstr "Poshtë"
-#: drakperm:125
+#: drakperm:123
#, c-format
msgid "Move selected rule down one level"
msgstr "Zbrite rregullën për një nivel më të ultë"
-#: drakperm:126
+#: drakperm:124
#, c-format
msgid "Add a rule"
msgstr "Shtoje një rregullë"
-#: drakperm:126
+#: drakperm:124
#, c-format
msgid "Add a new rule at the end"
msgstr "Shtoje një rregullë të re në fund"
-#: drakperm:127
+#: drakperm:125
#, c-format
msgid "Delete"
msgstr "Zhduke"
-#: drakperm:127
+#: drakperm:125
#, c-format
msgid "Delete selected rule"
msgstr "Zhduki rregullat e zgjedhura"
-#: drakperm:128 drakups:300 drakups:376
+#: drakperm:126 drakups:300 drakups:376
#, c-format
msgid "Edit"
msgstr "Botoje"
-#: drakperm:241
+#: drakperm:239
#, c-format
msgid "browse"
msgstr "shfletues"
-#: drakperm:246
+#: drakperm:244
#, c-format
msgid "user"
msgstr "përdorues"
-#: drakperm:246
+#: drakperm:244
#, c-format
msgid "group"
msgstr "grupi"
-#: drakperm:246
+#: drakperm:244
#, c-format
msgid "other"
msgstr "tjetër"
-#: drakperm:249
+#: drakperm:247
#, c-format
msgid "Other"
msgstr "Tjetër"
-#: drakperm:251
+#: drakperm:249
#, c-format
msgid "Read"
msgstr "Lexoje"
#. -PO: here %s will be either "user", "group" or "other"
-#: drakperm:254
+#: drakperm:252
#, c-format
msgid "Enable \"%s\" to read the file"
msgstr "Aktivizoje \"%s\" për leximin e skedares"
-#: drakperm:258
+#: drakperm:256
#, c-format
msgid "Write"
msgstr "Shkruarje"
#. -PO: here %s will be either "user", "group" or "other"
-#: drakperm:261
+#: drakperm:259
#, c-format
msgid "Enable \"%s\" to write the file"
msgstr "Mundësoje \"%s\" shkruarjen në skedare"
-#: drakperm:265
+#: drakperm:263
#, c-format
msgid "Execute"
msgstr "Ekzekutoje"
#. -PO: here %s will be either "user", "group" or "other"
-#: drakperm:268
+#: drakperm:266
#, c-format
msgid "Enable \"%s\" to execute the file"
msgstr "Mundësoje \"%s\" ekzekutimin e skedares"
-#: drakperm:271
+#: drakperm:269
#, c-format
msgid "Sticky-bit"
msgstr "Sticky-bit"
-#: drakperm:271
+#: drakperm:269
#, c-format
msgid ""
"Used for directory:\n"
@@ -1053,74 +1053,74 @@ msgstr ""
" zëvendësohet vetëm nga një repertorë apo skedare, mirëpo në të njëjtin "
"repertor mund të zhduket."
-#: drakperm:272
+#: drakperm:270
#, c-format
msgid "Set-UID"
msgstr "Set-UID"
-#: drakperm:272
+#: drakperm:270
#, c-format
msgid "Use owner id for execution"
msgstr "Përdore identitetin e pronarit për ekzekutim"
-#: drakperm:273
+#: drakperm:271
#, c-format
msgid "Set-GID"
msgstr "Set-GID"
-#: drakperm:273
+#: drakperm:271
#, c-format
msgid "Use group id for execution"
msgstr "Përdore identitetin e grupit për ekzekutim"
-#: drakperm:290
+#: drakperm:288
#, c-format
msgid "User:"
msgstr "Përdorues :"
-#: drakperm:291
+#: drakperm:289
#, c-format
msgid "Group:"
msgstr "Grupi :"
-#: drakperm:295
+#: drakperm:293
#, c-format
msgid "Current user"
msgstr "Përdoruesi aktual"
-#: drakperm:296
+#: drakperm:294
#, c-format
msgid "When checked, owner and group will not be changed"
msgstr "Mbasi të verifikohet, pronari dhe grupi nuk do të ndryshoshet"
-#: drakperm:306
+#: drakperm:304
#, c-format
msgid "Path selection"
msgstr "Zgjedhe shtegun"
-#: drakperm:326
+#: drakperm:324
#, c-format
msgid "Property"
msgstr "Prona"
-#: drakperm:376
+#: drakperm:371
#, c-format
msgid ""
"The first character of the path must be a slash (\"/\"):\n"
"\"%s\""
msgstr ""
-#: drakperm:386
+#: drakperm:381
#, c-format
msgid "Both the username and the group must valid!"
msgstr ""
-#: drakperm:387
+#: drakperm:382
#, c-format
msgid "User: %s"
msgstr ""
-#: drakperm:388
+#: drakperm:383
#, c-format
msgid "Group: %s"
msgstr ""
@@ -1140,7 +1140,7 @@ msgstr "LOKAL"
msgid "NONE"
msgstr "ASNJË"
-#: draksec:56
+#: draksec:56 draksec:113
#, c-format
msgid "Default"
msgstr "Me marrëveshje"
@@ -1160,137 +1160,137 @@ msgstr "Niveli i Sigurisë:"
msgid "Configure authentication required to access %s tools"
msgstr ""
-#: draksec:113
+#: draksec:114
#, c-format
msgid "No password"
msgstr "Asnjë parullë"
-#: draksec:114
+#: draksec:115
#, c-format
msgid "Administrator password"
msgstr ""
-#: draksec:115
+#: draksec:116
#, c-format
msgid "User password"
msgstr ""
-#: draksec:145 draksec:200
+#: draksec:168 draksec:222
#, c-format
msgid "Software Management"
msgstr "Menagjuesi Softver"
-#: draksec:146
+#: draksec:169
#, fuzzy, c-format
msgid "%s Update"
msgstr "Mageia Online"
-#: draksec:147
+#: draksec:170
#, c-format
msgid "Software Media Manager"
msgstr "Menagjues i Burimit Softver"
-#: draksec:148
+#: draksec:171
#, fuzzy, c-format
msgid "Configure 3D Desktop effects"
msgstr "Konfiguroje..."
-#: draksec:149
+#: draksec:172
#, fuzzy, c-format
msgid "Graphical Server Configuration"
msgstr "Konfigurimi i lajmit alarmues"
-#: draksec:150
+#: draksec:173
#, fuzzy, c-format
msgid "Mouse Configuration"
msgstr "Konfigurimi manuel"
-#: draksec:151
+#: draksec:174
#, fuzzy, c-format
msgid "Keyboard Configuration"
msgstr "Konfigurimi i rrjetit (Network)"
-#: draksec:152
+#: draksec:175
#, fuzzy, c-format
msgid "UPS Configuration"
msgstr "Konfigurimi i stampuesit CUPS"
-#: draksec:153
+#: draksec:176
#, fuzzy, c-format
msgid "Network Configuration"
msgstr "konfigurimi i alertës"
-#: draksec:154
+#: draksec:177
#, c-format
msgid "Hosts definitions"
msgstr ""
-#: draksec:155
+#: draksec:178
#, fuzzy, c-format
msgid "Network Center"
msgstr "Rrjeti & Internet"
-#: draksec:156
+#: draksec:179
#, c-format
msgid "Wireless Network Roaming"
msgstr ""
-#: draksec:157
+#: draksec:180
#, c-format
msgid "VPN"
msgstr ""
-#: draksec:158
+#: draksec:181
#, c-format
msgid "Proxy Configuration"
msgstr "Konfigurimi Proxy"
-#: draksec:159
+#: draksec:182
#, fuzzy, c-format
msgid "Connection Sharing"
msgstr "Lidhja"
-#: draksec:161
+#: draksec:184
#, fuzzy, c-format
msgid "Backups"
msgstr "Bus"
-#: draksec:163 logdrake:55
+#: draksec:186 logdrake:57
#, c-format
msgid "Logs"
msgstr "Të përditëshmet"
-#: draksec:164
+#: draksec:187
#, c-format
msgid "Services"
msgstr "Shërbime"
-#: draksec:165
+#: draksec:188
#, fuzzy, c-format
msgid "Users"
msgstr "Përdorues"
-#: draksec:167
+#: draksec:190
#, fuzzy, c-format
msgid "Boot Configuration"
msgstr "konfigurimi i alertës"
-#: draksec:201
+#: draksec:223
#, c-format
msgid "Hardware"
msgstr "Hardware"
-#: draksec:202
+#: draksec:224
#, fuzzy, c-format
msgid "Network"
msgstr "Opcionet e Rrjetit"
-#: draksec:203
+#: draksec:225
#, c-format
msgid "System"
msgstr "Sistemi"
-#: draksec:204
+#: draksec:226
#, c-format
msgid "Boot"
msgstr "Boot"
@@ -1372,12 +1372,12 @@ msgstr ""
msgid "Autodetection"
msgstr "Auto-zbulues"
-#: drakups:99 harddrake2:378
+#: drakups:99 harddrake2:358
#, c-format
msgid "Detection in progress"
msgstr "Zbulimi në vazhdim e sipër"
-#: drakups:118 drakups:157 logdrake:460 logdrake:466
+#: drakups:118 drakups:157 logdrake:466 logdrake:472
#, c-format
msgid "Congratulations"
msgstr "Urime"
@@ -2222,116 +2222,72 @@ msgstr "Ndarjet"
msgid "Features"
msgstr ""
-#. -PO: please keep all "/" characters !!!
-#: harddrake2:181 logdrake:81
-#, c-format
-msgid "_Options"
-msgstr "_Opcionet"
-
-#: harddrake2:182 harddrake2:208 logdrake:83
-#, c-format
-msgid "_Help"
-msgstr "_Ndihmë"
-
-#: harddrake2:186
+#: harddrake2:179
#, c-format
msgid "Autodetect _modems"
msgstr "Auto-zbulues _modemeve"
-#: harddrake2:187
-#, c-format
-msgid "Autodetect _jaz drives"
-msgstr "Auto-zbulues i pilotve _jaz"
-
-#: harddrake2:188
+#: harddrake2:180
#, c-format
msgid "Autodetect parallel _zip drives"
msgstr ""
-#: harddrake2:192
+#: harddrake2:184
#, fuzzy, c-format
msgid "Hardware Configuration"
msgstr "Konfigurimi i rrjetit (Network)"
-#: harddrake2:199
-#, c-format
-msgid "_Quit"
-msgstr "_Braktise"
-
-#: harddrake2:210
+#: harddrake2:193
#, c-format
-msgid "_Fields description"
-msgstr "_Zonat përshkuese"
-
-#: harddrake2:212
-#, c-format
-msgid "Harddrake help"
-msgstr "Ndihma Harddrake"
+msgid "_Options"
+msgstr "_Opcionet"
-#: harddrake2:213
+#: harddrake2:194 harddrake2:195
#, c-format
-msgid ""
-"Description of the fields:\n"
-"\n"
-msgstr ""
-"Përshkrimi i zonave:\n"
-"\n"
+msgid "_Help"
+msgstr "_Ndihmë"
-#: harddrake2:221
-#, c-format
-msgid "Select a device!"
-msgstr "Zgjedhe një mjet !"
+#: harddrake2:195
+#, fuzzy, c-format
+msgid "<control>H"
+msgstr "<control>Q"
-#: harddrake2:221
+#: harddrake2:196
#, 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 ""
-"Mbasi që ta zgjedhni një mjet, ju keni mundësi ti shiqoni zonat e "
-"shpjegimeve të paraqitura në kallëpin e caktuar (\"Informacion\")"
+msgid "_Fields description"
+msgstr "_Zonat përshkuese"
-#: harddrake2:227
+#: harddrake2:197
#, c-format
msgid "_Report Bug"
msgstr "_Raport Bug(i)"
-#: harddrake2:229
+#: harddrake2:198
#, c-format
msgid "_About..."
msgstr "_Në lidhje me..."
-#: harddrake2:232
-#, fuzzy, c-format
-msgid "Harddrake"
-msgstr "HardDrake"
-
-#: harddrake2:236
-#, c-format
-msgid "This is HardDrake, a %s hardware configuration tool."
-msgstr ""
-
-#: harddrake2:268
+#: harddrake2:242
#, c-format
msgid "Detected hardware"
msgstr "Materiali i zbuluar"
-#: harddrake2:271 scannerdrake:284
+#: harddrake2:245 scannerdrake:284
#, c-format
msgid "Information"
msgstr "Informacion"
-#: harddrake2:273
+#: harddrake2:247
#, c-format
msgid "Set current driver options"
msgstr ""
-#: harddrake2:280
+#: harddrake2:254
#, c-format
msgid "Run config tool"
msgstr "Nise veglën për konfigurim"
-#: harddrake2:300
+#: harddrake2:280
#, c-format
msgid ""
"Click on a device in the tree on the left in order to display its "
@@ -2340,46 +2296,84 @@ msgstr ""
"Kliko në një mjet në anën e majtë të drurit, në urdhër për të paraqitur "
"informacionin e tij këtu."
-#: harddrake2:321 notify-x11-free-driver-switch:13
+#: harddrake2:300 notify-x11-free-driver-switch:13
#, c-format
msgid "unknown"
msgstr "i pa njoftur"
-#: harddrake2:322
+#: harddrake2:301
#, c-format
msgid "Unknown"
msgstr "I pa njoftur"
-#: harddrake2:342
+#: harddrake2:321
#, c-format
msgid "Misc"
msgstr "Të Ndryshme"
-#: harddrake2:425
+#: harddrake2:404
#, c-format
msgid "secondary"
msgstr "sekondar"
-#: harddrake2:425
+#: harddrake2:404
#, c-format
msgid "primary"
msgstr "primar"
-#: harddrake2:429
+#: harddrake2:408
#, c-format
msgid "burner"
msgstr "gdhendës"
-#: harddrake2:429
+#: harddrake2:408
#, c-format
msgid "DVD"
msgstr "DVD"
-#: harddrake2:533
+#: harddrake2:504
#, c-format
msgid "The following packages need to be installed:\n"
msgstr "Pakot e radhitura duhet të instalohen:\n"
+#: harddrake2:521
+#, fuzzy, c-format
+msgid "Harddrake"
+msgstr "HardDrake"
+
+#: harddrake2:525
+#, c-format
+msgid "This is HardDrake, a %s hardware configuration tool."
+msgstr ""
+
+#: harddrake2:540
+#, c-format
+msgid "Harddrake help"
+msgstr "Ndihma Harddrake"
+
+#: harddrake2:541
+#, c-format
+msgid ""
+"Description of the fields:\n"
+"\n"
+msgstr ""
+"Përshkrimi i zonave:\n"
+"\n"
+
+#: harddrake2:548
+#, c-format
+msgid "Select a device!"
+msgstr "Zgjedhe një mjet !"
+
+#: harddrake2:548
+#, 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 ""
+"Mbasi që ta zgjedhni një mjet, ju keni mundësi ti shiqoni zonat e "
+"shpjegimeve të paraqitura në kallëpin e caktuar (\"Informacion\")"
+
#: localedrake:38
#, c-format
msgid "LocaleDrake"
@@ -2396,220 +2390,175 @@ msgstr "Instalimi i pakove %s"
msgid ", "
msgstr ", "
-#: logdrake:54
+#: logdrake:56
#, fuzzy, c-format
msgid "%s Tools Logs"
msgstr "Shpjegimet e Veglave Mageia"
-#: logdrake:68
+#: logdrake:70
#, c-format
msgid "Show only for the selected day"
msgstr "Çfaqi vetëm për ditët e zgedhura"
-#: logdrake:75
-#, c-format
-msgid "File/_New"
-msgstr "Skedare/_E Re"
-
-#: logdrake:75
-#, c-format
-msgid "<control>N"
-msgstr "<control>N"
-
-#: logdrake:76
-#, c-format
-msgid "File/_Open"
-msgstr "Skedare/_Hape"
-
-#: logdrake:76
-#, c-format
-msgid "<control>O"
-msgstr "<control>O"
-
-#: logdrake:77
-#, c-format
-msgid "File/_Save"
-msgstr "Skedare/_Shpëtoje"
-
-#: logdrake:77
+#: logdrake:79
#, c-format
msgid "<control>S"
msgstr "<control>S"
-#: logdrake:78
-#, c-format
-msgid "File/Save _As"
-msgstr "Skedare/Shpëtoje _Si"
-
-#: logdrake:79
-#, c-format
-msgid "File/-"
-msgstr "Skedare/-"
-
-#: logdrake:82
-#, c-format
-msgid "Options/Test"
-msgstr "Opcione/Testi"
-
-#: logdrake:84
-#, c-format
-msgid "Help/_About..."
-msgstr "Ndihmë/_Në lidhje me..."
-
-#: logdrake:113
+#: logdrake:118
#, c-format
msgid ""
"_:this is the auth.log log file\n"
"Authentication"
msgstr ""
-#: logdrake:114
+#: logdrake:119
#, c-format
msgid ""
"_:this is the user.log log file\n"
"User"
msgstr ""
-#: logdrake:115
+#: logdrake:120
#, c-format
msgid ""
"_:this is the /var/log/messages log file\n"
"Messages"
msgstr ""
-#: logdrake:116
+#: logdrake:121
#, c-format
msgid ""
"_:this is the /var/log/syslog log file\n"
"Syslog"
msgstr ""
-#: logdrake:120
+#: logdrake:125
#, c-format
msgid "search"
msgstr "hulumto"
-#: logdrake:132
+#: logdrake:137
#, c-format
msgid "A tool to monitor your logs"
msgstr "Një vegël për të shiquar skedaret zhurnale"
-#: logdrake:134
+#: logdrake:139
#, c-format
msgid "Settings"
msgstr "Rregullimet"
-#: logdrake:137
+#: logdrake:142
#, c-format
msgid "Matching"
msgstr "Përputhja"
-#: logdrake:138
+#: logdrake:143
#, c-format
msgid "but not matching"
msgstr "mirëpo nuk përputhet"
-#: logdrake:141
+#: logdrake:146
#, c-format
msgid "Choose file"
msgstr "Zgjedhe skedaren"
-#: logdrake:153
+#: logdrake:158
#, c-format
msgid "Calendar"
msgstr "Kalendari"
-#: logdrake:162
+#: logdrake:167
#, c-format
msgid "Content of the file"
msgstr "Përmbajtja e skedares"
-#: logdrake:166 logdrake:410
+#: logdrake:171 logdrake:416
#, c-format
msgid "Mail alert"
msgstr "Lajm alarmues"
-#: logdrake:173
+#: logdrake:178
#, c-format
msgid "The alert wizard has failed unexpectedly:"
msgstr ""
-#: logdrake:177
+#: logdrake:182
#, c-format
msgid "Save"
msgstr "Shpëtoje"
-#: logdrake:225
+#: logdrake:231
#, c-format
msgid "please wait, parsing file: %s"
msgstr "një moment ju lutemi, vërtetimi i skedares: %s"
-#: logdrake:247
+#: logdrake:253
#, c-format
msgid "Sorry, log file isn't available!"
msgstr ""
-#: logdrake:295
+#: logdrake:301
#, c-format
msgid "Error while opening \"%s\" log file: %s\n"
msgstr ""
-#: logdrake:388
+#: logdrake:394
#, c-format
msgid "Apache World Wide Web Server"
msgstr "Apache World Wide Web Server"
-#: logdrake:389
+#: logdrake:395
#, c-format
msgid "Domain Name Resolver"
msgstr "Zgjedhës i Emrit me Pronë"
-#: logdrake:390
+#: logdrake:396
#, c-format
msgid "Ftp Server"
msgstr "Server Ftp"
-#: logdrake:391
+#: logdrake:397
#, c-format
msgid "Postfix Mail Server"
msgstr "Server i letrave Postfix"
-#: logdrake:392
+#: logdrake:398
#, c-format
msgid "Samba Server"
msgstr "Server Samba"
-#: logdrake:393
+#: logdrake:399
#, c-format
msgid "SSH Server"
msgstr "Server SSH"
-#: logdrake:394
+#: logdrake:400
#, c-format
msgid "Webmin Service"
msgstr "Servisi Webmin"
-#: logdrake:395
+#: logdrake:401
#, c-format
msgid "Xinetd Service"
msgstr "Servisi Xinetd"
-#: logdrake:404
+#: logdrake:410
#, fuzzy, c-format
msgid "Configure the mail alert system"
msgstr "Konfiguroje sistemin CUPS stampues"
-#: logdrake:405
+#: logdrake:411
#, c-format
msgid "Stop the mail alert system"
msgstr ""
-#: logdrake:413
+#: logdrake:419
#, c-format
msgid "Mail alert configuration"
msgstr "Konfigurimi i lajmit alarmues"
-#: logdrake:414
+#: logdrake:420
#, c-format
msgid ""
"Welcome to the mail configuration utility.\n"
@@ -2620,17 +2569,17 @@ msgstr ""
"\n"
"Këtu, keni mundësi të rregulloni sistemin tuaj alarmues.\n"
-#: logdrake:417
+#: logdrake:423
#, fuzzy, c-format
msgid "What do you want to do?"
msgstr "Ku dëshironi ta montoni %s?"
-#: logdrake:424
+#: logdrake:430
#, fuzzy, c-format
msgid "Services settings"
msgstr "rregullimi i shërbimeve"
-#: logdrake:425
+#: logdrake:431
#, c-format
msgid ""
"You will receive an alert if one of the selected services is no longer "
@@ -2639,17 +2588,17 @@ msgstr ""
"Ju do të pranoni një alert nëse njëra nga serviset e zgjedhura nuk "
"funksionojnëmë"
-#: logdrake:432
+#: logdrake:438
#, c-format
msgid "Load setting"
msgstr "Ngarkoi Parametrat"
-#: logdrake:433
+#: logdrake:439
#, c-format
msgid "You will receive an alert if the load is higher than this value"
msgstr "Ju do të pranoni një alert nëse ngarkesa e makinës, e kalon këtë vlerë"
-#: logdrake:434
+#: logdrake:440
#, c-format
msgid ""
"_: load here is a noun, the load of the system\n"
@@ -2658,56 +2607,56 @@ msgstr ""
"_: ngrakoje këtu është një emër, i sistemit ngrakues\n"
"Ngarkoje"
-#: logdrake:439
+#: logdrake:445
#, fuzzy, c-format
msgid "Alert configuration"
msgstr "konfigurimi i alertës"
-#: logdrake:440
+#: logdrake:446
#, c-format
msgid "Please enter your email address below "
msgstr "Ju lutemi futni adresën tuaj e-mail këtu"
-#: logdrake:441
+#: logdrake:447
#, fuzzy, c-format
msgid "and enter the name (or the IP) of the SMTP server you wish to use"
msgstr ""
"Futni adresën IP dhe portën e ftuesit, se cilin stampues dëshironi ta "
"përdorni."
-#: logdrake:443
+#: logdrake:449
#, fuzzy, c-format
msgid "Email address"
msgstr "Adresa IP"
-#: logdrake:444
+#: logdrake:450
#, fuzzy, c-format
msgid "Email server"
msgstr "Server Samba"
-#: logdrake:448
+#: logdrake:454
#, c-format
msgid "\"%s\" neither is a valid email nor is an existing local user!"
msgstr ""
-#: logdrake:453
+#: logdrake:459
#, 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:460
+#: logdrake:466
#, c-format
msgid "The wizard successfully configured the mail alert."
msgstr ""
-#: logdrake:466
+#: logdrake:472
#, c-format
msgid "The wizard successfully disabled the mail alert."
msgstr ""
-#: logdrake:525
+#: logdrake:531
#, c-format
msgid "Save as.."
msgstr "Shpëtoje si.."
@@ -3473,6 +3422,39 @@ msgstr "Konfigurimi i lajmit alarmues"
msgid "Authentication is required to run Mageia Service Configuration"
msgstr ""
+#~ msgid "File/_Quit"
+#~ msgstr "Skedare/_Braktise"
+
+#~ msgid "Autodetect _jaz drives"
+#~ msgstr "Auto-zbulues i pilotve _jaz"
+
+#~ msgid "File/_New"
+#~ msgstr "Skedare/_E Re"
+
+#~ msgid "<control>N"
+#~ msgstr "<control>N"
+
+#~ msgid "File/_Open"
+#~ msgstr "Skedare/_Hape"
+
+#~ msgid "<control>O"
+#~ msgstr "<control>O"
+
+#~ msgid "File/_Save"
+#~ msgstr "Skedare/_Shpëtoje"
+
+#~ msgid "File/Save _As"
+#~ msgstr "Skedare/Shpëtoje _Si"
+
+#~ msgid "File/-"
+#~ msgstr "Skedare/-"
+
+#~ msgid "Options/Test"
+#~ msgstr "Opcione/Testi"
+
+#~ msgid "Help/_About..."
+#~ msgstr "Ndihmë/_Në lidhje me..."
+
#~ msgid "Autodetect _printers"
#~ msgstr "Auto-zbulues _stampuesve"
="hl opt">=> [ difference2([ keyboard::keyboards ], \@best) ], advanced => @best > 1 } ]); delete $o->{keyboard_unsafe}; $o->{keyboard} = $ext_keyboard if $other; install_steps::selectKeyboard($o); } #------------------------------------------------------------------------------ sub selectInstallClass1 { my ($o, $verif, $l, $def, $l2, $def2) = @_; $verif->($o->ask_from_list(_("Install Class"), _("Which installation class do you want?"), $l, $def) || die 'already displayed'); $::live ? 'Update' : $o->ask_from_list_(_("Install/Update"), _("Is this an install or an update?"), $l2, $def2); } #------------------------------------------------------------------------------ sub selectInstallClass { my ($o, $clicked) = @_; my %c = my @c = ( if_(!$::corporate, _("Recommended") => "beginner", ), if_($o->{meta_class} ne 'desktop', _("Expert") => "expert", ), ); %c = @c = (_("Expert") => "expert") if $::expert && !$clicked; $o->set_help('selectInstallClassCorpo') if $::corporate; my $verifInstallClass = sub { $::expert = $c{$_[0]} eq "expert" }; my $installMode = $o->{isUpgrade} ? $o->{keepConfiguration} ? __("Upgrade packages only") : __("Upgrade") : __("Install"); $installMode = $o->selectInstallClass1($verifInstallClass, first(list2kv(@c)), ${{reverse %c}}{$::expert ? "expert" : "beginner"}, [ __("Install"), __("Upgrade"), __("Upgrade packages only") ], $installMode); $o->{isUpgrade} = $installMode =~ /Upgrade/; $o->{keepConfiguration} = $installMode =~ /packages only/; install_steps::selectInstallClass($o); } #------------------------------------------------------------------------------ sub selectMouse { my ($o, $force) = @_; $force ||= $o->{mouse}{unsafe} || $::expert; my $prev = $o->{mouse}{type} . '|' . $o->{mouse}{name}; $o->{mouse} = mouse::fullname2mouse( $o->ask_from_treelist_('', _("Please choose the type of your mouse."), '|', [ mouse::fullnames ], $prev) || return) if $force; if ($force && $o->{mouse}{type} eq 'serial') { $o->set_help('selectSerialPort'); $o->{mouse}{device} = $o->ask_from_listf(_("Mouse Port"), _("Please choose on which serial port your mouse is connected to."), \&mouse::serial_port2text, [ mouse::serial_ports ]) or return; } if (arch() =~ /ppc/ && $o->{mouse}{nbuttons} == 1) { #- set a sane default F11/F12 $o->{mouse}{button2_key} = 87; $o->{mouse}{button3_key} = 88; $o->ask_from('', _("Buttons emulation"), [ { label => _("Button 2 Emulation"), val => \$o->{mouse}{button2_key}, list => [ mouse::ppc_one_button_keys() ], format => \&mouse::ppc_one_button_key2text }, { label => _("Button 3 Emulation"), val => \$o->{mouse}{button3_key}, list => [ mouse::ppc_one_button_keys() ], format => \&mouse::ppc_one_button_key2text }, ]) or return; } if ($o->{mouse}{device} eq "usbmouse") { any::load_category($o, 'bus/usb', !$::expert, 1, $o->{pcmcia}); eval { devices::make("usbmouse"); modules::load(qw(hid mousedev usbmouse)); }; } $o->SUPER::selectMouse; 1; } #------------------------------------------------------------------------------ sub setupSCSI { my ($o, $clicked) = @_; if (!$::noauto && arch() =~ /i.86/) { if ($o->{pcmcia} ||= !$::testing && c::pcmcia_probe()) { my $w = $o->wait_message(_("PCMCIA"), _("Configuring PCMCIA cards...")); my $results = modules::configure_pcmcia($o->{pcmcia}); $w = undef; $results and $o->ask_warn('', $results); } } { my $w = $o->wait_message(_("IDE"), _("Configuring IDE")); modules::load_category('disk/cdrom'); } any::load_category($o, 'disk/scsi|hardware_raid', !$::expert && !$clicked, 0, $o->{pcmcia}); install_interactive::tellAboutProprietaryModules($o) if !$clicked; } sub ask_mntpoint_s { my ($o, $fstab) = @_; $o->set_help('ask_mntpoint_s'); my @fstab = grep { isTrueFS($_) } @$fstab; @fstab = grep { isSwap($_) } @$fstab if @fstab == 0; @fstab = @$fstab if @fstab == 0; die _("No partition available") if @fstab == 0; { my $w = $o->wait_message('', _("Scanning partitions to find mount points")); install_any::suggest_mount_points($fstab, $o->{prefix}, 'uniq'); log::l("default mntpoint $_->{mntpoint} $_->{device}") foreach @fstab; } if (@fstab == 1) { $fstab[0]{mntpoint} = '/'; } else { $o->ask_from('', _("Choose the mount points"), [ map { { label => partition_table::description($_), val => \$_->{mntpoint}, not_edit => 0, list => [ '', fsedit::suggestions_mntpoint(fsedit::empty_all_hds()) ] } } grep { !$_->{real_mntpoint} || common::usingRamdisk() } @fstab ]) or return; } $o->SUPER::ask_mntpoint_s($fstab); } #------------------------------------------------------------------------------ sub doPartitionDisks { my ($o) = @_; my $warned; install_any::getHds($o, sub { my ($err) = @_; $warned = 1; if ($o->ask_yesorno(_("Error"), _("I can't read your partition table, it's too corrupted for me :( I can try to go on, erasing over bad partitions (ALL DATA will be lost!). The other solution is to not allow DrakX to modify the partition table. (the error is %s) Do you agree to loose all the partitions? ", $err))) { 0; } else { $o->{partitioning}{readonly} = 1; 1; } }) or $warned or $o->ask_warn('', _("DiskDrake failed to read correctly the partition table. Continue at your own risk!")); if (arch() =~ /ppc/ && detect_devices::get_mac_generation =~ /NewWorld/) { #- need to make bootstrap part if NewWorld machine - thx Pixel ;^) if (defined $partition_table_mac::bootstrap_part) { #- don't do anything if we've got the bootstrap setup #- otherwise, go ahead and create one somewhere in the drive free space } else { if (defined $partition_table_mac::freepart_start && $partition_table_mac::freepart_size >= 1) { my ($hd) = $partition_table_mac::freepart_device; log::l("creating bootstrap partition on drive /dev/$hd->{device}, block $partition_table_mac::freepart_start"); $partition_table_mac::bootstrap_part = $partition_table_mac::freepart_part; log::l("bootstrap now at $partition_table_mac::bootstrap_part"); fsedit::add($hd, { start => $partition_table_mac::freepart_start, size => 1 << 11, type => 0x401, mntpoint => '' }, $o->{all_hds}, { force => 1, primaryOrExtended => 'Primary' }); $new_bootstrap = 1; } else { $o->ask_warn('',_("No free space for 1MB bootstrap! Install will continue, but to boot your system, you'll need to create the bootstrap partition in DiskDrake")); } } } if ($o->{isUpgrade}) { # either one root is defined (and all is ok), or we take the first one we find my $p = fsedit::get_root_($o->{fstab}); if (!$p) { my @l = install_any::find_root_parts($o->{fstab}, $o->{prefix}) or die _("No root partition found to perform an upgrade"); $p = $o->ask_from_listf(_("Root Partition"), _("What is the root partition (/) of your system?"), \&partition_table::description, \@l) or die "setstep exitInstall\n"; } install_any::use_root_part($o->{all_hds}, $p, $o->{prefix}); } elsif ($::expert && $o->isa('interactive_gtk')) { install_interactive::partition_with_diskdrake($o, $o->{all_hds}); } else { install_interactive::partitionWizard($o); } } #------------------------------------------------------------------------------ sub rebootNeeded { my ($o) = @_; $o->ask_warn('', _("You need to reboot for the partition table modifications to take place")); install_steps::rebootNeeded($o); } #------------------------------------------------------------------------------ sub choosePartitionsToFormat { my ($o, $fstab) = @_; $o->SUPER::choosePartitionsToFormat($fstab); my @l = grep { !$_->{isMounted} && $_->{mntpoint} && (!isSwap($_) || $::expert) && (!isFat($_) || $_->{notFormatted} || $::expert) && (!isOtherAvailableFS($_) || $::expert || $_->{toFormat}) } @$fstab; $_->{toFormat} = 1 foreach grep { isSwap($_) && !$::expert } @$fstab; return if @l == 0 || !$::expert && 0 == grep { ! $_->{toFormat} } @l; #- keep it temporary until the guy has accepted $_->{toFormatTmp} = $_->{toFormat} || $_->{toFormatUnsure} foreach @l; $o->ask_from_( { messages => _("Choose the partitions you want to format"), advanced_messages => _("Check bad blocks?"), }, [ map { my $e = $_; ({ text => partition_table::description($e), type => 'bool', val => \$e->{toFormatTmp} }, if_(!isLoopback($_) && !isThisFs("reiserfs", $_) && !isThisFs("xfs", $_) && !isThisFs("jfs", $_), { text => partition_table::description($e), type => 'bool', advanced => 1, disabled => sub { !$e->{toFormatTmp} }, val => \$e->{toFormatCheck} })) } @l ] ) or die 'already displayed'; #- ok now we can really set toFormat foreach (@l) { $_->{toFormat} = delete $_->{toFormatTmp}; $_->{isFormatted} = 0; } } sub formatMountPartitions { my ($o, $fstab) = @_; my $w; fs::formatMount_all($o->{all_hds}{raids}, $o->{fstab}, $o->{prefix}, sub { my ($part) = @_; $w ||= $o->wait_message('', _("Formatting partitions")); $w->set(isLoopback($part) ? _("Creating and formatting file %s", $part->{loopback_file}) : _("Formatting partition %s", $part->{device})); }); die _("Not enough swap space to fulfill installation, please add some") if availableMemory < 40 * 1024; } #------------------------------------------------------------------------------ sub setPackages { my ($o, $rebuild_needed) = @_; my $w = $o->wait_message('', $rebuild_needed ? _("Looking for available packages and rebuilding rpm database...") : _("Looking for available packages...")); install_any::setPackages($o, $rebuild_needed); if ($rebuild_needed) { $w->set(_("Finding packages to upgrade...")); pkgs::selectPackagesToUpgrade($o->{packages}, $o->{prefix}, $o->{base}, $o->{toRemove}, $o->{toSave}); } else { $w->set(_("Looking at packages already installed...")); pkgs::selectPackagesAlreadyInstalled($o->{packages}, $o->{prefix}); } } #------------------------------------------------------------------------------ sub choosePackages { my ($o, $packages, $compssUsers, $first_time) = @_; #- this is done at the very beginning to take into account #- selection of CD by user if using a cdrom. $o->chooseCD($packages) if $o->{method} eq 'cdrom' && !$::oem; my $availableC = install_steps::choosePackages(@_); my $individual = $::expert; require pkgs; my $min_size = pkgs::selectedSize($packages); $min_size < $availableC or die _("Your system does not have enough space left for installation or upgrade (%d > %d)", $min_size, $availableC); my $min_mark = $::expert ? 3 : 4; my $b = pkgs::saveSelected($packages); my $level = pkgs::setSelectedFromCompssList($packages, { map { $_ => 1 } map { @{$compssUsers->{$_}{flags}} } @{$o->{compssUsersSorted}} }, $min_mark, 0); my $max_size = pkgs::selectedSize($packages) + 1; #- avoid division by zero. log::l("max size (level $min_mark) is : " . formatXiB($max_size)); pkgs::restoreSelected($b); $o->chooseGroups($packages, $compssUsers, $min_mark, \$individual, $max_size) if !$::corporate; ($o->{packages_}{ind}) = pkgs::setSelectedFromCompssList($packages, $o->{compssUsersChoice}, $min_mark, $availableC); $o->choosePackagesTree($packages) if $individual; install_any::warnAboutNaughtyServers($o); } sub choosePackagesTree { my ($o, $packages, $limit_to_medium) = @_; $o->ask_many_from_list('', _("Choose the packages you want to install"), { list => [ grep { !$limit_to_medium || pkgs::packageMedium($packages, $_) == $limit_to_medium } @{$packages->{depslist}} ], value => \&URPM::Package::flag_selected, label => \&URPM::Package::name, sort => 1, }); } sub loadSavePackagesOnFloppy { my ($o, $packages) = @_; my $choice = $o->ask_from_listf('', _("Please choose load or save package selection on floppy. The format is the same as auto_install generated floppies."), sub { $_[0]{text} }, [ { text => _("Load from floppy"), code => sub { while (1) { my $w = $o->wait_message(_("Package selection"), _("Loading from floppy")); log::l("load package selection from floppy"); my $O = eval { install_any::loadO({}, 'floppy') }; if ($@) { $w = undef; #- close wait message. $o->ask_okcancel('', _("Insert a floppy containing package selection")) or return; } else { install_any::unselectMostPackages($o); foreach (@{$O->{default_packages} || []}) { my $pkg = pkgs::packageByName($packages, $_); pkgs::selectPackage($packages, $pkg) if $pkg; } return 1; } } } }, { text => _("Save on floppy"), code => sub { log::l("save package selection to floppy"); install_any::g_default_packages($o, 'quiet'); } }, { text => _("Cancel") }, ]); $choice->{code} and $choice->{code}(); } sub chooseGroups { my ($o, $packages, $compssUsers, $min_level, $individual, $max_size) = @_; #- for all groups available, determine package which belongs to each one. #- this will enable getting the size of each groups more quickly due to #- limitation of current implementation. #- use an empty state for each one (no flag update should be propagated). #- OLD VERSION my $b = pkgs::saveSelected($packages); install_any::unselectMostPackages($o); pkgs::setSelectedFromCompssList($packages, {}, $min_level, $max_size); my $system_size = pkgs::selectedSize($packages); my ($sizes, $pkgs) = pkgs::computeGroupSize($packages, $min_level); pkgs::restoreSelected($b); log::l("system_size: $system_size"); my @groups = @{$o->{compssUsersSorted}}; my %stable_flags = grep_each { $::b } %{$o->{compssUsersChoice}}; delete $stable_flags{$_} foreach map { @{$compssUsers->{$_}{flags}} } @groups; my $compute_size = sub { my %pkgs; my %flags = %stable_flags; @flags{@_} = (); my $total_size; A: while (my ($k, $size) = each %$sizes) { Or: foreach (split "\t", $k) { foreach (split "&&") { exists $flags{$_} or next Or; } $total_size += $size; $pkgs{$_} = 1 foreach @{$pkgs->{$k}}; next A; } } log::l("computed size $total_size"); log::l("chooseGroups: ", join(" ", sort keys %pkgs)); int $total_size; }; my %val = map { $_ => ! grep { ! $o->{compssUsersChoice}{$_} } @{$compssUsers->{$_}{flags}} } @groups; # @groups = grep { $size{$_} = round_down($size{$_} / sqr(1024), 10) } @groups; #- don't display the empty or small one (eg: because all packages are below $min_level) my ($all, $size, $unselect_all); my $available_size = install_any::getAvailableSpace($o) / sqr(1024); my $size_to_display = sub { my $lsize = $system_size + $compute_size->(map { @{$compssUsers->{$_}{flags}} } grep { $val{$_} } @groups); #- if a profile is deselected, deselect everything (easier than deselecting the profile packages) $unselect_all ||= $size > $lsize; $size = $lsize; _("Total size: %d / %d MB", pkgs::correctSize($size / sqr(1024)), $available_size); }; while (1) { if ($available_size < 140) { # too small to choose anything. Defaulting to no group chosen $val{$_} = 0 foreach %val; last; } $o->reallyChooseGroups($size_to_display, $individual, \%val) or return; last if pkgs::correctSize($size / sqr(1024)) < $available_size; $o->ask_warn('', _("Selected size is larger than available space")); } $o->{compssUsersChoice}{$_} = 0 foreach map { @{$compssUsers->{$_}{flags}} } grep { !$val{$_} } keys %val; $o->{compssUsersChoice}{$_} = 1 foreach map { @{$compssUsers->{$_}{flags}} } grep { $val{$_} } keys %val; log::l("compssUsersChoice: " . (!$val{$_} && "not ") . "selected [$_] as [$o->{compssUsers}{$_}{label}]") foreach keys %val; $unselect_all and install_any::unselectMostPackages($o); #- if no group have been chosen, ask for using base system only, or no X, or normal. unless ($o->{isUpgrade} || grep { $val{$_} } keys %val) { my $docs = !$o->{excludedocs}; my $minimal = !grep { $_ } values %{$o->{compssUsersChoice}}; $o->ask_from(_("Type of install"), _("You haven't selected any group of packages. Please choose the minimal installation you want:"), [ { val => \$o->{compssUsersChoice}{X}, type => 'bool', text => _("With X"), disabled => sub { $minimal } }, if_($::expert || $minimal, { val => \$docs, type => 'bool', text => _("With basic documentation (recommended!)"), disabled => sub { $minimal } }, { val => \$minimal, type => 'bool', text => _("Truly minimal install (especially no urpmi)") }, ), ], changed => sub { $o->{compssUsersChoice}{X} = $docs = 0 if $minimal }, ) or return &chooseGroups; $o->{excludedocs} = !$docs || $minimal; #- reselect according to user selection. if ($minimal) { $o->{compssUsersChoice}{$_} = 0 foreach keys %{$o->{compssUsersChoice}}; } else { my $X = $o->{compssUsersChoice}{X}; #- don't let setDefaultPackages modify this one install_any::setDefaultPackages($o, 'clean'); $o->{compssUsersChoice}{X} = $X; } $unselect_all or install_any::unselectMostPackages($o); } 1; } sub reallyChooseGroups { my ($o, $size_to_display, $individual, $val) = @_; my $size_text = &$size_to_display; my ($path, $all); $o->ask_from('', _("Package Group Selection"), [ { val => \$size_text, type => 'label' }, {}, (map {; my $old = $path; $path = $o->{compssUsers}{$_}{path}; if_($old ne $path, { val => translate($path) }), { val => \$val->{$_}, type => 'bool', disabled => sub { $all }, text => translate($o->{compssUsers}{$_}{label}), help => translate($o->{compssUsers}{$_}{descr}), } } @{$o->{compssUsersSorted}}), if_($o->{meta_class} eq 'desktop', { text => _("All"), val => \$all, type => 'bool' }), if_($individual, { text => _("Individual package selection"), val => $individual, advanced => 1, type => 'bool' }), ], changed => sub { $size_text = &$size_to_display }) or return; if ($all) { $val->{$_} = 1 foreach keys %$val; } 1; } sub chooseCD { my ($o, $packages) = @_; my @mediums = grep { $_ != $install_any::boot_medium } pkgs::allMediums($packages); my @mediumsDescr = (); my %mediumsDescr = (); if (!common::usingRamdisk()) { #- mono-cd in case of no ramdisk foreach (@mediums) { pkgs::mediumDescr($packages, $install_any::boot_medium) eq pkgs::mediumDescr($packages, $_) and next; undef $packages->{mediums}{$_}{selected}; } log::l("low memory install, using single CD installation (as it is not ejectable)"); return; } #- the boot medium is already selected. $mediumsDescr{pkgs::mediumDescr($packages, $install_any::boot_medium)} = 1; #- build mediumDescr according to mediums, this avoid asking multiple times #- all the medium grouped together on only one CD. foreach (@mediums) { my $descr = pkgs::mediumDescr($packages, $_); exists $mediumsDescr{$descr} or push @mediumsDescr, $descr; $mediumsDescr{$descr} ||= $packages->{mediums}{$_}{selected}; } #- if no other medium available or a poor beginner, we are choosing for him! #- note first CD is always selected and should not be unselected! return if @mediumsDescr == () || !$::expert; $o->set_help('chooseCD'); $o->ask_many_from_list('', _("If you have all the CDs in the list below, click Ok. If you have none of those CDs, click Cancel. If only some CDs are missing, unselect them, then click Ok."), { list => \@mediumsDescr, label => sub { _("Cd-Rom labeled \"%s\"", $_[0]) }, val => sub { \$mediumsDescr{$_[0]} }, }) or do { $mediumsDescr{$_} = 0 foreach @mediumsDescr; #- force unselection of other CDs. }; $o->set_help('choosePackages'); #- restore true selection of medium (which may have been grouped together) foreach (@mediums) { my $descr = pkgs::mediumDescr($packages, $_); $packages->{mediums}{$_}{selected} = $mediumsDescr{$descr}; log::l("select status of medium $_ is $packages->{mediums}{$_}{selected}"); } } #------------------------------------------------------------------------------ sub installPackages { my ($o, $packages) = @_; my ($current, $total) = 0; my $w = $o->wait_message(_("Installing"), _("Preparing installation")); my $old = \&pkgs::installCallback; local *pkgs::installCallback = sub { my ($data, $type, $id, $subtype, $_amount, $_total) = @_; if ($type eq 'user' && $subtype eq 'install') { $total = $_amount; } elsif ($type eq 'inst' && $subtype eq 'start') { my $p = $data->{depslist}[$id]; $w->set(_("Installing package %s\n%d%%", $p->name, $total && 100 * $current / $total)); $current += $p->size; } else { goto $old } }; #- the modification is not local as the box should be living for other package installation. #- BEWARE this is somewhat duplicated (but not exactly from gtk code). undef *install_any::changeMedium; *install_any::changeMedium = sub { my ($method, $medium) = @_; #- if not using a cdrom medium, always abort. $method eq 'cdrom' && !$::oem and do { my $name = pkgs::mediumDescr($o->{packages}, $medium); local $| = 1; print "\a"; my $r = $name !~ /commercial/i || ($o->{useless_thing_accepted2} ||= $o->ask_from_list_('', formatAlaTeX($com_license), [ __("Accept"), __("Refuse") ], "Accept") eq "Accept"); $r &&= $o->ask_okcancel('', _("Change your Cd-Rom! Please insert the Cd-Rom labelled \"%s\" in your drive and press Ok when done. If you don't have it, press Cancel to avoid installation from this Cd-Rom.", $name), 1); return $r; }; }; my $install_result; catch_cdie { $install_result = $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"; } elsif ($@ =~ /^error installing package list: (.*)/) { $o->ask_yesorno('', [ _("There was an error installing packages:"), $1, _("Go on anyway?") ], 1) and return 1; ${$_[0]} = "already displayed"; } 0; }; if ($pkgs::cancel_install) { $pkgs::cancel_install = 0; die "setstep choosePackages\n"; } $install_result; } sub afterInstallPackages($) { my ($o) = @_; my $w = $o->wait_message('', _("Post-install configuration")); $o->SUPER::afterInstallPackages($o); } sub copyKernelFromFloppy { my ($o) = @_; $o->ask_okcancel('', _("Please insert the Boot floppy used in drive %s", $o->{blank}), 1) or return; $o->SUPER::copyKernelFromFloppy(); } sub updateModulesFromFloppy { my ($o) = @_; $o->ask_okcancel('', _("Please insert the Update Modules floppy in drive %s", $o->{updatemodules}), 1) or return; $o->SUPER::updateModulesFromFloppy(); } #------------------------------------------------------------------------------ sub configureNetwork { my ($o, $first_time, $noauto) = @_; require network::netconnect; network::netconnect::main($o->{prefix}, $o->{netcnx} ||= {}, $o->{netc}, $o->{mouse}, $o, $o->{intf}, $first_time, $o->{lang} eq "fr_FR" && $o->{keyboard} eq "fr", $noauto); } #-configureNetworkIntf moved to network #-configureNetworkNet moved to network #------------------------------------------------------------------------------ #-pppConfig moved to any.pm #------------------------------------------------------------------------------ sub installCrypto { my $license = _("You now have the opportunity to download encryption software. WARNING: Due to different general requirements applicable to these software and imposed by various jurisdictions, customer and/or end user of theses software should ensure that the laws of his/their jurisdiction allow him/them to download, stock and/or use these software. In addition customer and/or end user shall particularly be aware to not infringe the laws of his/their jurisdiction. Should customer and/or end user not respect the provision of these applicable laws, he/they will incure serious sanctions. In no event shall Mandrakesoft nor its manufacturers and/or suppliers be liable for special, indirect or incidental damages whatsoever (including, but not limited to loss of profits, business interruption, loss of commercial data and other pecuniary losses, and eventual liabilities and indemnification to be paid pursuant to a court decision) arising out of use, possession, or the sole downloading of these software, to which customer and/or end user could eventually have access after having sign up the present agreement. For any queries relating to these agreement, please contact Mandrakesoft, Inc. 2400 N. Lincoln Avenue Suite 243 Altadena California 91001 USA"); goto &installUpdates; #- remove old code, keep this one ok though by transfering to installUpdates. } sub installUpdates { my ($o) = @_; my $u = $o->{updates} ||= {}; $o->hasNetwork or return; is_empty_hash_ref($u) and $o->ask_yesorno('', formatAlaTeX( _("You now have the opportunity to download updated packages. These packages have been released after the distribution was released. They may contain security or bug fixes. To download these packages, you will need to have a working Internet connection. Do you want to install the updates ?"))) || return; #- bring all interface up for installing crypto packages. install_interactive::upNetwork($o); require crypto; eval { my @mirrors = do { my $w = $o->wait_message('', _("Contacting Mandrake Linux web site to get the list of available mirrors...")); crypto::mirrors() }; #- if no mirror have been found, use current time zone and propose among available. $u->{mirror} ||= crypto::bestMirror($o->{timezone}{timezone}); $u->{mirror} = $o->ask_from_treelistf('', _("Choose a mirror from which to get the packages"), '|', \&crypto::mirror2text, \@mirrors, $u->{mirror}); }; return if $@ || !$u->{mirror}; my $update_medium = do { my $w = $o->wait_message('', _("Contacting the mirror to get the list of available packages...")); crypto::getPackages($o->{prefix}, $o->{packages}, $u->{mirror}); }; if ($update_medium) { if ($o->choosePackagesTree($o->{packages}, $update_medium)) { $o->pkg_install; } else { #- make sure to not try to install the packages (which are automatically selected by getPackage above). #- this is possible by deselecting the medium (which can be re-selected above). delete $update_medium->{selected}; } #- update urpmi even, because there is an hdlist available and everything is good, #- this will allow user to update the medium but update his machine later. $o->install_urpmi; } #- stop interface using ppp only. FIXME REALLY TOCHECK isdn (costly network) ? # FIXME damien install_interactive::downNetwork($o, 'pppOnly'); } #------------------------------------------------------------------------------ sub configureTimezone { my ($o, $clicked) = @_; require timezone; $o->{timezone}{timezone} = $o->ask_from_treelist('', _("Which is your timezone?"), '/', [ timezone::getTimeZones($::g_auto_install ? '' : $o->{prefix}) ], $o->{timezone}{timezone}) || return; $o->set_help('configureTimezoneGMT'); my $ntp = to_bool($o->{timezone}{ntp}); $o->ask_from('', '', [ { text => _("Hardware clock set to GMT"), val => \$o->{timezone}{UTC}, type => 'bool' }, { text => _("Automatic time synchronization (using NTP)"), val => \$ntp, type => 'bool' }, ]) or goto &configureTimezone if $::expert || $clicked; if ($ntp) { my @servers = split("\n", $timezone::ntp_servers); $o->ask_from('', '', [ { label => _("NTP Server"), val => \$o->{timezone}{ntp}, list => \@servers, not_edit => 0 } ] ) or goto &configureTimezone; $o->{timezone}{ntp} =~ s/.*\((.+)\)/$1/; } else { $o->{timezone}{ntp} = ''; } install_steps::configureTimezone($o); } #------------------------------------------------------------------------------ sub configureServices { my ($o, $clicked) = @_; require services; $o->{services} = services::ask($o, $o->{prefix}) if $::expert || $clicked; install_steps::configureServices($o); } sub summary { my ($o, $first_time) = @_; require pkgs; if ($first_time) { #- auto-detection $o->configurePrinter(0) if !$::expert; install_any::preConfigureTimezone($o); } my $mouse_name; my $format_mouse = sub { $mouse_name = translate($o->{mouse}{type}) . ' ' . translate($o->{mouse}{name}) }; &$format_mouse; #- format printer description in a better way my $format_printers = sub { my $printer = $o->{printer}; if (is_empty_hash_ref($printer->{configured})) { pkgs::packageByName($o->{packages}, 'cups')->flag_installed and return _("Remote CUPS server"); return _("No printer"); } my $entry; foreach ($printer->{currentqueue}, map { $_->{queuedata} } ($printer->{configured}{$printer->{DEFAULT}}, values %{$printer->{configured}})) { $_ && ($_->{make} || $_->{model}) and return "$_->{make} $_->{model}"; } return _("Remote CUPS server"); #- fall back in case of something wrong. }; my @sound_cards = (arch() =~ /ppc/ ? \&modules::load_category : \&modules::probe_category)->('multimedia/sound'); #- if no sound card are detected AND the user selected things needing a sound card, #- propose a special case for ISA cards my $isa_sound_card = !@sound_cards && ($o->{compssUsersChoice}{GAMES} || $o->{compssUsersChoice}{AUDIO}) && sub { if ($o->ask_yesorno('', _("Do you have an ISA sound card?"))) { $o->do_pkgs->install('sndconfig'); $o->ask_warn('', _("Run \"sndconfig\" after installation to configure your sound card")); } else { $o->ask_warn('', _("No sound card detected. Try \"harddrake\" after installation")); } }; $o->ask_from_({ messages => _("Summary"), cancel => '', }, [ { label => _("Mouse"), val => \$mouse_name, clicked => sub { $o->selectMouse(1); mouse::write($o->{prefix}, $o->{mouse}); &$format_mouse } }, { label => _("Keyboard"), val => \$o->{keyboard}, clicked => sub { $o->selectKeyboard(1) }, format => sub { translate(keyboard::keyboard2text($_[0])) } }, { label => _("Timezone"), val => \$o->{timezone}{timezone}, clicked => sub { $o->configureTimezone(1) } }, { label => _("Printer"), val => \$o->{printer}, clicked => sub { $o->configurePrinter(1) }, format => $format_printers }, (map { { label => _("ISDN card"), val => $_->{description}, clicked => sub { $o->configureNetwork } } } grep { $_->{driver} eq 'hisax' } detect_devices::probeall()), (map { { label => _("Sound card"), val => $_->{description} } } @sound_cards), if_($isa_sound_card, { label => _("Sound card"), clicked => $isa_sound_card }), (map { { label => _("TV card"), val => $_->{description}, clicked => sub { require harddrake::bttv; harddrake::bttv::config($o); } } } grep { $_->{driver} eq 'bttv' } detect_devices::probeall()), ]); install_steps::configureTimezone($o); #- do not forget it. } #------------------------------------------------------------------------------ sub configurePrinter { my ($o, $clicked) = @_; $::corporate && !$clicked and return; require printer; require printerdrake; #- try to determine if a question should be asked to the user or #- if he is autorized to configure multiple queues. my $ask_multiple_printer = ($::expert || $clicked) && 2 || scalar(printerdrake::auto_detect($o)); $ask_multiple_printer-- or return; #- install packages needed for printer::getinfo() $::testing or $o->do_pkgs->install('foomatic'); #- take default configuration, this include choosing the right system #- currently used by the system. my $printer = $o->{printer} ||= {}; eval { add2hash($printer, printer::getinfo($o->{prefix})) }; $printer->{PAPERSIZE} = (($o->{lang} =~ /^en_US/) || ($o->{lang} =~ /^en_CA/) || ($o->{lang} =~ /^fr_CA/)) ? 'Letter' : 'A4'; printerdrake::main($printer, $o, $ask_multiple_printer, sub { install_interactive::upNetwork($o, 'pppAvoided') }); } #------------------------------------------------------------------------------ sub setRootPassword { my ($o, $clicked) = @_; my $sup = $o->{superuser} ||= {}; my $auth = ($o->{authentication}{LDAP} && __("LDAP") || $o->{authentication}{NIS} && __("NIS") || __("Local files")); $sup->{password2} ||= $sup->{password} ||= ""; return if $o->{security} < 1 && !$clicked; $::isInstall and $o->set_help("setRootPassword", if_($::expert, "setRootPasswordAuth")); $o->ask_from_( { title => _("Set root password"), messages => _("Set root password"), cancel => ($o->{security} <= 2 && !$::corporate ? _("No password") : ''), callbacks => { complete => sub { $sup->{password} eq $sup->{password2} or $o->ask_warn('', [ _("The passwords do not match"), _("Please try again") ]), return (1,0); length $sup->{password} < 2 * $o->{security} and $o->ask_warn('', _("This password is too short (it must be at least %d characters long)", 2 * $o->{security})), return (1,0); return 0 } } }, [ { label => _("Password"), val => \$sup->{password}, hidden => 1 }, { label => _("Password (again)"), val => \$sup->{password2}, hidden => 1 }, if_($::expert, { label => _("Authentication"), val => \$auth, list => [ __("Local files"), __("LDAP"), __("NIS") ], format => \&translate }, ), ]) or return; if ($auth eq __("LDAP")) { $o->{authentication}{LDAP} ||= "localhost"; #- any better solution ? $o->{netc}{LDAPDOMAIN} ||= join (',', map { "dc=$_" } split /\./, $o->{netc}{DOMAINNAME}); $o->ask_from('', _("Authentication LDAP"), [ { label => _("LDAP Base dn"), val => \$o->{netc}{LDAPDOMAIN} }, { label => _("LDAP Server"), val => \$o->{authentication}{LDAP} }, ]) or goto &setRootPassword; } else { $o->{authentication}{LDAP} = '' } if ($auth eq __("NIS")) { $o->{authentication}{NIS} ||= 'broadcast'; $o->ask_from('', _("Authentication NIS"), [ { label => _("NIS Domain"), val => \ ($o->{netc}{NISDOMAIN} ||= $o->{netc}{DOMAINNAME}) }, { label => _("NIS Server"), val => \$o->{authentication}{NIS}, list => ["broadcast"], not_edit => 0 }, ]) or goto &setRootPassword; } else { $o->{authentication}{NIS} = '' } install_steps::setRootPassword($o); } #------------------------------------------------------------------------------ #-addUser #------------------------------------------------------------------------------ sub addUser { my ($o, $clicked) = @_; $o->{users} ||= []; if ($o->{security} < 1) { push @{$o->{users}}, { password => 'mandrake', realname => 'default', icon => 'automagic' } if !member('mandrake', map { $_->{name} } @{$o->{users}}); } if (($o->{security} >= 1 || $clicked)) { any::ask_users($o->{prefix}, $o, $o->{users}, $o->{security}); } any::get_autologin($o->{prefix}, $o); any::autologin($o->{prefix}, $o, $o); install_steps::addUser($o); } #------------------------------------------------------------------------------ sub createBootdisk { my ($o, $first_time, $noauto) = @_;