# Czech translation for dpkg.
#
# Petr Cech <cech@debian.org>, 1999, 2000, 2001.
# Miroslav Kure <kurem@debian.cz>, 2004, 2005, 2006, 2007, 2008, 2009.
#
# Thanks go to:
# Milan Zamazal <pdm@debian.org>
# Vladimir Michl <Vladimir.Michl@seznam.cz>
msgid ""
msgstr ""
"Project-Id-Version: dpkg\n"
"Report-Msgid-Bugs-To: debian-dpkg@lists.debian.org\n"
"POT-Creation-Date: 2011-10-14 07:11+0200\n"
"PO-Revision-Date: 2009-09-11 20:35+0200\n"
"Last-Translator: Miroslav Kure <kurem@debian.cz>\n"
"Language-Team: Czech <debian-l10n-czech@lists.debian.org>\n"
"Language: cs\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

#: dselect/basecmds.cc:125
msgid "Search for ? "
msgstr "Hledej řetězec: "

#: dselect/basecmds.cc:147
msgid "Error: "
msgstr "Chyba: "

#: dselect/basecmds.cc:178
msgid "Help: "
msgstr "Nápověda: "

#: dselect/basecmds.cc:184
msgid "Press ? for help menu, . for next topic, <space> to exit help."
msgstr "Pro nápovědu stiskněte ?, pro další téma . a pro konec <mezeru>."

#: dselect/basecmds.cc:191
msgid "Help information is available under the following topics:"
msgstr "Nápověda je dostupná pro následující témata:"

#: dselect/basecmds.cc:199
msgid ""
"Press a key from the list above, <space> or `q' to exit help,\n"
"  or `.' (full stop) to read each help page in turn. "
msgstr ""
"Stiskněte klávesu ze seznamu výše, <mezeru> nebo `q' pro opuštění\n"
"  nápovědy nebo tečku pro postupné čtení všech stránek nápovědy. "

#: dselect/basecmds.cc:205
msgid "error reading keyboard in help"
msgstr "chyba při čtení klávesnice v nápovědě"

#: dselect/baselist.cc:57
msgid "ioctl(TIOCGWINSZ) failed"
msgstr "ioctl(TIOCGWINSZ) selhalo"

#: dselect/baselist.cc:60
msgid "doupdate in SIGWINCH handler failed"
msgstr "selhání doupdate v ovladači SIGWINCH"

#: dselect/baselist.cc:67
msgid "failed to restore old SIGWINCH sigact"
msgstr "nepovedlo se obnovit původní zpracování signálu v SIGWINCH"

#: dselect/baselist.cc:69
msgid "failed to restore old signal mask"
msgstr "nepovedlo se obnovit původní masku signálů"

#: dselect/baselist.cc:79
msgid "failed to get old signal mask"
msgstr "nepovedlo se získat původní masku signálů"

#: dselect/baselist.cc:80
msgid "failed to get old SIGWINCH sigact"
msgstr "nepovedlo se získat původní nastavení zpracování signálu v SIGWINCH"

#: dselect/baselist.cc:84
msgid "failed to block SIGWINCH"
msgstr "nepovedlo se zablokovat SIGWINCH"

#: dselect/baselist.cc:89
msgid "failed to set new SIGWINCH sigact"
msgstr "nepovedlo se nastavit nové zpracování signálu v SIGWINCH"

#: dselect/baselist.cc:126
msgid "failed to allocate colour pair"
msgstr "nepovedlo se alokovat pár barev"

#: dselect/baselist.cc:167
msgid "failed to create title window"
msgstr "nepovedlo se vytvořit titulní okno"

#: dselect/baselist.cc:171
msgid "failed to create whatinfo window"
msgstr "nepovedlo se vytvořit informační okno"

#: dselect/baselist.cc:175
msgid "failed to create baselist pad"
msgstr "nepovedlo se vytvořit okno základního seznamu"

#: dselect/baselist.cc:178
msgid "failed to create heading pad"
msgstr "nepovedlo se vytvořit hlavičkové okno"

#: dselect/baselist.cc:182
msgid "failed to create thisstate pad"
msgstr "nepodařilo se vytvořit stavové okno"

#: dselect/baselist.cc:186
msgid "failed to create info pad"
msgstr "nepodařilo se vytvořit informační okno"

#: dselect/baselist.cc:191
msgid "failed to create query window"
msgstr "nepodařilo se vytvořit dotazovací okno"

#: dselect/baselist.cc:255
msgid "Keybindings"
msgstr "Funkce kláves"

#: dselect/baselist.cc:303
#, c-format
msgid "  -- %d%%, press "
msgstr "  -- %d%%, stiskněte "

#: dselect/baselist.cc:306
#, c-format
msgid "%s for more"
msgstr "%s pro zobrazení další informace"

#: dselect/baselist.cc:310
#, c-format
msgid "%s to go back"
msgstr "%s pro návrat zpět"

#: dselect/bindings.cc:78
msgid "[not bound]"
msgstr "[nepřiřazeno]"

#: dselect/bindings.cc:82
#, c-format
msgid "[unk: %d]"
msgstr "[unk: %d]"

#: dselect/bindings.cc:139
msgid "Scroll onwards through help/information"
msgstr "Rolování nápovědou/informacemi vpřed"

#: dselect/bindings.cc:140
msgid "Scroll backwards through help/information"
msgstr "Rolování nápovědou/informacemi zpět"

#: dselect/bindings.cc:141
msgid "Move up"
msgstr "Posun nahoru"

#: dselect/bindings.cc:142
msgid "Move down"
msgstr "Posun dolů"

#: dselect/bindings.cc:143
msgid "Go to top of list"
msgstr "Na začátek seznamu"

#: dselect/bindings.cc:144
msgid "Go to end of list"
msgstr "Na konec seznamu"

#: dselect/bindings.cc:145
msgid "Request help (cycle through help screens)"
msgstr "Vyžádání si nápovědy (cyklí po obrazovkách nápovědy)"

#: dselect/bindings.cc:146
msgid "Cycle through information displays"
msgstr "Cyklí po obrazovkách s informacemi"

#: dselect/bindings.cc:147
msgid "Redraw display"
msgstr "Překreslení obrazovky"

#: dselect/bindings.cc:148
msgid "Scroll onwards through list by 1 line"
msgstr "Posun v seznamu o 1 řádek vpřed"

#: dselect/bindings.cc:149
msgid "Scroll backwards through list by 1 line"
msgstr "Posun v seznamu o 1 řádek zpět"

#: dselect/bindings.cc:150
msgid "Scroll onwards through help/information by 1 line"
msgstr "Posun v nápovědě/informacích o 1 řádek vpřed"

#: dselect/bindings.cc:151
msgid "Scroll backwards through help/information by 1 line"
msgstr "Posun v nápovědě/informacích o 1 zpět"

#: dselect/bindings.cc:152
msgid "Scroll onwards through list"
msgstr "Posun v seznamu vpřed"

#: dselect/bindings.cc:153
msgid "Scroll backwards through list"
msgstr "Posun v seznamu zpět"

#: dselect/bindings.cc:156
msgid "Mark package(s) for installation"
msgstr "Označení balíku(ů) pro instalaci"

#: dselect/bindings.cc:157
msgid "Mark package(s) for deinstallation"
msgstr "Označení balíku(ů) pro odinstalaci"

#: dselect/bindings.cc:158
msgid "Mark package(s) for deinstall and purge"
msgstr "Označení balíku(ů) pro odinstalaci a vyčištění"

#: dselect/bindings.cc:159
msgid "Make highlight more specific"
msgstr "Učiní zvýraznění více specifickým"

#: dselect/bindings.cc:160
msgid "Make highlight less specific"
msgstr "Učiní zvýraznění méně specifickým"

#: dselect/bindings.cc:161
msgid "Search for a package whose name contains a string"
msgstr "Hledání balíku, jehož jméno obsahuje daný řetězec"

#: dselect/bindings.cc:162
msgid "Repeat last search."
msgstr "Zopakování posledního hledání"

#: dselect/bindings.cc:163
msgid "Swap sort order priority/section"
msgstr "Změna třídění podle priority/sekce"

#: dselect/bindings.cc:164
msgid "Quit, confirming, and checking dependencies"
msgstr "Ukončení, potvrzení a kontrola závislostí"

#: dselect/bindings.cc:165
msgid "Quit, confirming without check"
msgstr "Ukončení a potvrzení bez kontroly"

#: dselect/bindings.cc:166
msgid "Quit, rejecting conflict/dependency suggestions"
msgstr "Ukončení, zamítnutí návrhů řešení konfliktů/závislostí"

#: dselect/bindings.cc:167
msgid "Abort - quit without making changes"
msgstr "Vyskočení - ukončení bez provedení změn"

#: dselect/bindings.cc:168
msgid "Revert to old state for all packages"
msgstr "Návrat původního stavu pro všechny balíky"

#: dselect/bindings.cc:169
msgid "Revert to suggested state for all packages"
msgstr "Návrat navrhovaného stavu pro všechny balíky"

#: dselect/bindings.cc:170
msgid "Revert to directly requested state for all packages"
msgstr "Návrat do požadovaných stavů pro všechny balíky"

#: dselect/bindings.cc:171
msgid "Revert to currently installed state for all packages"
msgstr "Návrat do aktuálního instalovaného stavu pro všechny balíky"

#: dselect/bindings.cc:174
msgid "Select currently-highlighted access method"
msgstr "Volba aktuálně vysvícené přístupové metody"

#: dselect/bindings.cc:175
msgid "Quit without changing selected access method"
msgstr "Ukončení beze změny zvolené přístupové metody"

#: dselect/helpmsgs.cc:29
msgid "Keystrokes"
msgstr "Funkce kláves"

#: dselect/helpmsgs.cc:29
msgid ""
"Motion keys: Next/Previous, Top/End, Up/Down, Backwards/Forwards:\n"
"  j, Down-arrow         k, Up-arrow             move highlight\n"
"  N, Page-down, Space   P, Page-up, Backspace   scroll list by 1 page\n"
"  ^n                    ^p                      scroll list by 1 line\n"
"  t, Home               e, End                  jump to top/end of list\n"
"  u                     d                       scroll info by 1 page\n"
"  ^u                    ^d                      scroll info by 1 line\n"
"  B, Left-arrow         F, Right-arrow          pan display by 1/3 screen\n"
"  ^b                    ^f                      pan display by 1 character\n"
"\n"
"Mark packages for later processing:\n"
" +, Insert  install or upgrade      =, H  hold in present state\n"
" -, Delete  remove                  :, G  unhold: upgrade or leave "
"uninstalled\n"
" _          remove & purge config\n"
"                                             Miscellaneous:\n"
"Quit, exit, overwrite (note capitals!):       ?, F1 request help (also "
"Help)\n"
" Return  Confirm, quit (check dependencies)   i, I  toggle/cycle info "
"displays\n"
"   Q     Confirm, quit (override dep.s)       o, O  cycle through sort "
"options\n"
" X, Esc  eXit, abandoning any changes made    v, V  change status display "
"opts\n"
"   R     Revert to state before this list      ^l   redraw display\n"
"   U     set all to sUggested state             /   search (Return to "
"cancel)\n"
"   D     set all to Directly requested state  n, \\  repeat last search\n"
msgstr ""
"Posuny: Následující/Předchozí, Začátek/Konec, Nahoru/Dolů, Vzad/Vpřed:\n"
"  j, šipka dolů         k, šipka nahoru         posun zvýraznění\n"
"  N, Page-down, Space   P, Page-up, Backspace   posun seznamu o 1 stránku\n"
"  ^n                    ^p                      posun seznamu o 1 řádek\n"
"  t, Home               e, End                  skok na začátek/konec "
"seznamu\n"
"  u                     d                       posun informací o 1 stránku\n"
"  ^u                    ^d                      posun informací o 1 řádek\n"
"  B, šipka doleva       F, šipka doprava        posun horiz. o 1/3 "
"obrazovky\n"
"  ^b                    ^f                      posun horizontální o 1 znak\n"
"\n"
"Označení balíků pro pozdější zpracování:\n"
" +, Insert  instalace nebo aktualizace =, H  podržení v aktuálním stavu\n"
" -, Delete  odinstalace                :, G  puštění: aktual. n. nechá "
"neinst.\n"
" _          odinstalace a mazání konfigurace\n"
"                                             Různé:\n"
"Ukončení, provedení změn (velikost písmen!):  ?, F1 nápověda (také `Help')\n"
" Return  potvrzení, ukončení (prověř. závis.) i, I  přepne/cyklí informace\n"
"   Q     potvrzení, ukončení (ign. závis.)    o, O  cyklí druhy řazení\n"
" X, Esc  vyskočení, zapomenutí proved. změn   v, V  změna zobrazení stavu\n"
"   R     návrat do původního stavu             ^l   překreslí obrazovku\n"
"   U     nastavení všeho navrženého stavu       /   hledá (Return zruší)\n"
"   D     nastavení všeho žádaného stavu       n, \\  opakuje poslední "
"hledání\n"

#: dselect/helpmsgs.cc:55
msgid "Introduction to package selections"
msgstr "Úvod do práce se seznamem balíků"

#: dselect/helpmsgs.cc:55
msgid ""
"Welcome to dselect's main package listing.\n"
"\n"
"You will be presented with a list of packages which are installed or "
"available\n"
"for installation.  You can navigate around the list using the cursor keys,\n"
"mark packages for installation (using `+') or deinstallation (using `-').\n"
"Packages can be marked either singly or in groups; initially you will see "
"that\n"
"the line `All packages' is selected.  `+', `-' and so on will affect all "
"the\n"
"packages described by the highlighted line.\n"
"\n"
"Some of your choices will cause conflicts or dependency problems; you will "
"be\n"
"given a sub-list of the relevant packages, so that you can solve the "
"problems.\n"
"\n"
"You should read the list of keys and the explanations of the display.\n"
"Much on-line help is available, please make use of it - press `?' at\n"
"any time for help.\n"
"\n"
"When you have finished selecting packages, press <enter> to confirm "
"changes,\n"
"or `X' to quit without saving changes. A final check on conflicts and\n"
"dependencies will be done - here too you may see a sublist.\n"
"\n"
"Press <space> to leave help and enter the list now.\n"
msgstr ""
"Vítejte v hlavním seznamu balíků programu dselect.\n"
"\n"
"Uvidíte seznam balíků, které jsou instalované nebo dostupné pro instalaci.\n"
"V seznamu se můžete pohybovat pomocí kurzorových kláves a označovat balíky\n"
"pro instalaci (pomocí `+') nebo odinstalaci (pomocí `-').\n"
"\n"
"Balíky mohou být označovány jednotlivě nebo po skupinách. Na začátku je\n"
"zvýrazněn řádek `Všechny balíky'. `+', `-', atd. provedou příslušné akce na\n"
"balíky dané zvýrazněným řádkem.\n"
"\n"
"Některé vaše výběry mohou způsobit konflikty nebo problém se závislostmi;\n"
"dostanete podseznam odpovídajících balíků, ve kterém můžete problém "
"napravit.\n"
"\n"
"Měli byste si prostudovat seznam kláves a význam různých obrazovek.\n"
"K dispozici je kvalitní nápověda - použijte ji. Kdykoliv můžete stisknout\n"
"klávesu `?' a získat potřebné informace.\n"
"Až budete s výběrem balíků spokojeni, stiskněte <enter> pro potvrzení svých\n"
"změn. Klávesou `X' můžete seznam balíků opustit bez ukládání změn. Poté se\n"
"provede závěrečná kontrola konfliktů a závislostí - po ní se opět může\n"
"objevit podseznam.\n"
"\n"
"Pro opuštění nápovědy nyní stiskněte <mezeru>.\n"

#: dselect/helpmsgs.cc:80
msgid "Introduction to read-only package list browser"
msgstr "Úvod do prohlížeče seznamu balíků (přístup pouze pro čtení)"

#: dselect/helpmsgs.cc:80
msgid ""
"Welcome to dselect's main package listing.\n"
"\n"
"You will be presented with a list of packages which are installed or "
"available\n"
"for installation.  Since you do not have the privilege necessary to update\n"
"package states, you are in a read-only mode.  You can navigate around the\n"
"list using the cursor keys (please see the `Keystrokes' help screen), "
"observe\n"
"the status of the packages and read information about them.\n"
"\n"
"You should read the list of keys and the explanations of the display.\n"
"Much on-line help is available, please make use of it - press `?' at\n"
"any time for help.\n"
"\n"
"When you have finished browsing, press `Q' or <enter> to quit.\n"
"\n"
"Press <space> to leave help and enter the list now.\n"
msgstr ""
"Vítejte v hlavním seznamu balíků dselectu.\n"
"\n"
"Zobrazí se seznam balíků, které jsou instalovány nebo dostupné pro "
"instalaci.\n"
"Protože nemáte nezbytná privilegia pro provádění změn stavů balíků, bude\n"
"vám umožněno pouze prohlížení. V seznamu se můžete pohybovat kurzorovými\n"
"klávesami (viz nápověda ke klávesám), prohlížet si stav balíků a číst si\n"
"informace o nich.\n"
"\n"
"Měli byste si přečíst přehled kláves a popis obrazovky. K dispozici máte\n"
"dostatek nápovědy, používejte ji, prosím! Nápovědu můžete kdykoliv znovu\n"
"zobrazit stiskem `?'.\n"
"Prohlížení ukončíte stiskem některé z kláves `Q' nebo <enter>.\n"
"\n"
"Klávesou <mezera> opustíte nápovědu a dostanete se do seznamu.\n"

#: dselect/helpmsgs.cc:99
msgid "Introduction to conflict/dependency resolution sub-list"
msgstr ""
"Úvod do práce s podseznamem pro řešení problémů s konflikty a závislostmi"

#: dselect/helpmsgs.cc:99
msgid ""
"Dependency/conflict resolution - introduction.\n"
"\n"
"One or more of your choices have raised a conflict or dependency problem -\n"
"some packages should only be installed in conjunction with certain others, "
"and\n"
"some combinations of packages may not be installed together.\n"
"\n"
"You will see a sub-list containing the packages involved.  The bottom half "
"of\n"
"the display shows relevant conflicts and dependencies; use `i' to cycle "
"between\n"
"that, the package descriptions and the internal control information.\n"
"\n"
"A set of `suggested' packages has been calculated, and the initial markings "
"in\n"
"this sub-list have been set to match those, so you can just hit Return to\n"
"accept the suggestions if you wish.  You may abort the change(s) which "
"caused\n"
"the problem(s), and go back to the main list, by pressing capital `X'.\n"
"\n"
"You can also move around the list and change the markings so that they are "
"more\n"
"like what you want, and you can `reject' my suggestions by using the "
"capital\n"
"`D' or `R' keys (see the keybindings help screen).  You can use capital `Q' "
"to\n"
"force me to accept the situation currently displayed, in case you want to\n"
"override a recommendation or think that the program is mistaken.\n"
"\n"
"Press <space> to leave help and enter the sub-list; remember: press `?' for "
"help.\n"
msgstr ""
"Úvod do řešení závislostí a konfliktů.\n"
"\n"
"Jedna nebo více z vašich voleb způsobila konflikt nebo problém se "
"závislostmi\n"
"- některé balíky mohou být instalovány pouze spolu s některými dalšími a "
"jiné\n"
"balíky zase naopak nemohou být instalovány společně.\n"
"\n"
"Zobrazí se vám podseznam obsahující balíky, jichž se problém týká. Spodní "
"část\n"
"obrazovky ukazuje odpovídající konflikty a závislosti; použijte `i' pro\n"
"cyklení mezi nimi, popisy balíků a interními administrativními informacemi.\n"
"\n"
"Je určena množina `navržených' balíků a počáteční značky v podseznamu jsou\n"
"nastaveny tak, aby jí odpovídaly, takže můžete jednoduše tento návrh\n"
"akceptovat stiskem klávesy Enter. Můžete také zrušit změny, které problém\n"
"způsobily a vrátit se do hlavního seznamu stiskem velkého `X'.\n"
"\n"
"Po seznamu se samozřejmě můžete pohybovat a změnit značky, aby lépe\n"
"odpovídaly vaší představě a můžete zamítnout můj návrh stiskem velkého `D'\n"
"nebo `R' (viz nápověda ke klávesám). Jestliže nechcete respektovat\n"
"doporučení nebo máte pocit, že doporučení programu je chybné, můžete mě\n"
"donutit akceptovat aktuálně zobrazené nastavení stiskem velkého `Q'.\n"
"\n"
"Klávesou <mezera> opustíte nápovědu a dostanete se do podseznamu.\n"
"Nezapomeňte: nápovědu získáte stiskem `?'.\n"

#: dselect/helpmsgs.cc:125
msgid "Display, part 1: package listing and status chars"
msgstr "Zobrazení, část 1: seznam balíků a stavové znaky"

#: dselect/helpmsgs.cc:125
msgid ""
"The top half of the screen shows a list of packages.  For each package you "
"see\n"
"four columns for its current status on the system and mark.  In terse mode "
"(use\n"
"`v' to toggle verbose display) these are single characters, from left to "
"right:\n"
"\n"
" Error flag: Space - no error (but package may be in broken state - see "
"below)\n"
"              `R'  - serious error during installation, needs "
"reinstallation;\n"
" Installed state:     Space    - not installed;\n"
"                       `*'     - installed;\n"
"                       `-'     - not installed but config files remain;\n"
"   packages in these { `U'     - unpacked but not yet configured;\n"
"   states are not    { `C'     - half-configured (an error happened);\n"
"   (quite) properly  { `I'     - half-installed (an error happened);\n"
"   installed         { `W',`t' - triggers are awaited resp. pending.\n"
" Old mark: what was requested for this package before presenting this list;\n"
" Mark: what is requested for this package:\n"
"  `*': marked for installation or upgrade;\n"
"  `-': marked for removal, but any configuration files will remain;\n"
"  `=': on hold: package will not be processed at all;\n"
"  `_': marked for purge completely - even remove configuration;\n"
"  `n': package is new and has yet to be marked for install/remove/&c.\n"
"\n"
"Also displayed are each package's Priority, Section, name, installed and\n"
"available version numbers (shift-V to display/hide) and summary "
"description.\n"
msgstr ""
"Horní část obrazovky zobrazuje seznam balíků. Každý balík má čtyři sloupce\n"
"se svým stavem v systému a značkou. Ve stručném režimu (do podrobného se\n"
"přepnete stiskem klávesy  `v') jsou to jednotlivé znaky, zleva doprava:\n"
"\n"
" Příznak chyby: mezera - bez chyby (ale může být v chybném stavu - viz "
"níže);\n"
"                 `R'   - vážná chyba při instalaci, vyžaduje reinstalaci;\n"
" Stav instalace:   mezera      - nenainstalován;\n"
"                     `*'       - nainstalován;\n"
"                     `-'       - odinstalován, konf. soubory zachovány;\n"
"   balíky v těchto { `U'       - rozbalen, ale ještě nezkonfigurován;\n"
"   stavech nejsou  { `C'       - napůl zkonfigurován (nastala chyba);\n"
"   (zcela) správně { `I'       - napůl nainstalován (nastala chyba);\n"
"   nainstalovány   { `W', 't'  - spouštěče jsou očekávány/nevyřízeny.\n"
" Stará značka: co bylo žádáno pro tento balík před vstupem do tohoto "
"seznamu;\n"
" Značka: co je žádáno pro tento balík:\n"
"   `*': označen pro instalaci nebo aktualizaci;\n"
"   `-': označen pro odinstalaci, ale nechť zůstanou konfigurační soubory;\n"
"   `=': podržen: balík nebude vůbec dotčen;\n"
"   `_': označen pro kompletní odstranění - včetně konfigurace;\n"
"   `n': balík je nový a musí být teprve označen pro instalaci/odinstalaci/"
"atd.\n"
"\n"
"Pro každý balík se též zobrazuje jeho priorita, stav, jméno, stav instalace\n"
"a dostupné verze (lze zobrazit/skrýt pomocí velkého `V') a stručný popis.\n"

#: dselect/helpmsgs.cc:152
msgid "Display, part 2: list highlight; information display"
msgstr "Zobrazení, část 2: zvýraznění; informační obrazovka"

#: dselect/helpmsgs.cc:152
msgid ""
"* Highlight: One line in the package list will be highlighted.  It "
"indicates\n"
"  which package(s) will be affected by presses of `+', `-' and `_'.\n"
"\n"
"* The dividing line in the middle of the screen shows a brief explanation "
"of\n"
"  the status of the currently-highlighted package, or a description of "
"which\n"
"  group is highlighted if a group line is.  If you don't understand the\n"
"  meaning of some of the status characters displayed, go to the relevant\n"
"  package and look at this divider line, or use the `v' key for a verbose\n"
"  display (press `v' again to go back to the terse display).\n"
"\n"
"* The bottom of the screen shows more information about the\n"
"  currently-highlighted package (if there is only one).\n"
"\n"
"  It can show an extended description of the package, the internal package\n"
"  control details (either for the installed or available version of the\n"
"  package), or information about conflicts and dependencies involving the\n"
"  current package (in conflict/dependency resolution sublists).\n"
"\n"
"  Use the `i' key to cycle through the displays, and `I' to hide the\n"
"  information display or expand it to use almost all of the screen.\n"
msgstr ""
"* Zvýraznění: Jeden řádek v seznamu balíků je zvýrazněn. Ten určuje, který\n"
"  balík (balíky) bude ovlivněn stiskem `+', `-' nebo `_'.\n"
"\n"
"* Oddělující řádek uprostřed obrazovky stručně zobrazuje stav aktuálně\n"
"  zvýrazněného balíku nebo popis zvýrazněné skupiny. Jestliže nerozumíte\n"
"  významu některého ze zobrazených znaků, přejděte na odpovídající balík a\n"
"  a podívejte se na oddělující řádek nebo použijte klávesu `v' pro podrobné\n"
"  zobrazení (dalším stiskem `v' se vrátíte ke stručnému zobrazení).\n"
"\n"
"* Spodní část obrazovky zobrazuje více informací o aktuálně zvýrazněném\n"
"  balíku (je-li pouze jeden takový).\n"
"\n"
"  Může zobrazovat podrobnější popis balíku, podrobnosti o interním stavu\n"
"  balíku (pro instalovanou nebo dostupnou verzi balíku) nebo informaci\n"
"  o konfliktech a závislostech ovlivňujících aktuální balík (v podseznamu "
"pro\n"
"  řešení konfliktů a závislostí).\n"
"\n"
"  Druh zobrazených informací můžete cyklicky měnit klávesou `i', klávesou "
"`I'\n"
"  pak můžete schovat nebo roztáhnout část obrazovky s informacemi.\n"

#: dselect/helpmsgs.cc:176
msgid "Introduction to method selection display"
msgstr "Úvod do výběru přístupové metody"

#: dselect/helpmsgs.cc:176
msgid ""
"dselect and dpkg can do automatic installation, loading the package files to "
"be\n"
"installed from one of a number of different possible places.\n"
"\n"
"This list allows you to select one of these installation methods.\n"
"\n"
"Move the highlight to the method you wish to use, and hit Enter.  You will "
"then\n"
"be prompted for the information required to do the installation.\n"
"\n"
"As you move the highlight a description of each method, where available, is\n"
"displayed in the bottom half of the screen.\n"
"\n"
"If you wish to quit without changing anything use the `x' key while in the "
"list\n"
"of installation methods.\n"
"\n"
"A full list of keystrokes is available by pressing `k' now, or from the "
"help\n"
"menu reachable by pressing `?'.\n"
msgstr ""
"dselect a dpkg mohou provádět automatickou instalaci, přičemž přebírají\n"
"soubory s popisy balíků z jednoho nebo více různých možných míst.\n"
"\n"
"Tento seznam vám umožňuje zvolit jednu z instalačních metod.\n"
"\n"
"Posuňte zvýraznění na metodu, kterou chcete použít a stiskněte Enter. "
"Budete\n"
"dotázáni na informace nutné pro provedení instalace.\n"
"\n"
"Při posouvání zvýraznění se v dolní části obrazovky zobrazuje, je-li\n"
"k dispozici, popis každé metody.\n"
"\n"
"Chcete-li seznam opustit bez provedení jakýchkoliv změn, stiskněte v "
"seznamu\n"
"instalačních metod klávesu `x'.\n"
"\n"
"Kompletní seznam funkcí kláves lze zobrazit buď hned teď pomocí klávesy "
"`k',\n"
"nebo z nabídky nápovědy dostupné klávesou `?'.\n"

#: dselect/helpmsgs.cc:196
msgid "Keystrokes for method selection"
msgstr "Klávesy pro volbu metody"

#: dselect/helpmsgs.cc:196
msgid ""
"Motion keys: Next/Previous, Top/End, Up/Down, Backwards/Forwards:\n"
"  j, Down-arrow         k, Up-arrow             move highlight\n"
"  N, Page-down, Space   P, Page-up, Backspace   scroll list by 1 page\n"
"  ^n                    ^p                      scroll list by 1 line\n"
"  t, Home               e, End                  jump to top/end of list\n"
"  u                     d                       scroll info by 1 page\n"
"  ^u                    ^d                      scroll info by 1 line\n"
"  B, Left-arrow         F, Right-arrow          pan display by 1/3 screen\n"
"  ^b                    ^f                      pan display by 1 character\n"
"(These are the same motion keys as in the package list display.)\n"
"\n"
"Quit:\n"
" Return, Enter    select this method and go to its configuration dialogue\n"
" x, X             exit without changing or setting up the installation "
"method\n"
"\n"
"Miscellaneous:\n"
"  ?, Help, F1      request help\n"
" ^l                redraw display\n"
"  /                search (just return to cancel)\n"
"  \\                repeat last search\n"
msgstr ""
"Posuny: Následující/Předchozí, Začátek/Konec, Nahoru/Dolů, Vzad/Vpřed:\n"
"  j, šipka dolů         k, šipka nahoru         posun zvýraznění\n"
"  N, Pg-down, mezerník  P, Pg-up, Backspace     posun seznamu o 1 stránku\n"
"  ^n                    ^p                      posun seznamu o 1 řádek\n"
"  t, Home               e, End                  skok na začátek/konec "
"seznamu\n"
"  u                     d                       posun informací o 1 stránku\n"
"  ^u                    ^d                      posun informací o 1 řádek\n"
"  B, šipka doleva       F, šipka doprava        posun horiz. o 1/3 "
"obrazovky\n"
"  ^b                    ^f                      posun horizontální o 1 znak\n"
"(Jsou to ty samé posunovací klávesy jako v seznamu balíků.)\n"
"\n"
"Ukončení:\n"
" Return, Enter    zvolí tuto metodu a přejde do jejího konfiguračního "
"dialogu\n"
" x, X             vyskočí beze změny nebo nastavení instalační metody\n"
"\n"
"Různé:\n"
"  ?, Help, F1      nápověda\n"
" ^l                překreslí obrazovku\n"
"  /                hledá (zrušení stiskem Return)\n"
"  \\                opakuje poslední hledání\n"

#: dselect/main.cc:60
msgid "Type dselect --help for help."
msgstr "Pro získání nápovědy napište dselect --help."

#: dselect/main.cc:143
msgid "a"
msgstr "p"

#: dselect/main.cc:143
msgid "[A]ccess"
msgstr "[P]řístup"

#: dselect/main.cc:143
msgid "Choose the access method to use."
msgstr "Volba přístupové metody."

#: dselect/main.cc:144
msgid "u"
msgstr "a"

#: dselect/main.cc:144
msgid "[U]pdate"
msgstr "[A]ktualizuj"

#: dselect/main.cc:144
msgid "Update list of available packages, if possible."
msgstr "Aktualizace informací o dostupných balících."

#: dselect/main.cc:145
msgid "s"
msgstr "v"

#: dselect/main.cc:145
msgid "[S]elect"
msgstr "[V]yber"

#: dselect/main.cc:145
msgid "Request which packages you want on your system."
msgstr "Výběr balíků pro instalaci a odinstalaci."

#: dselect/main.cc:146
msgid "i"
msgstr "n"

#: dselect/main.cc:146
msgid "[I]nstall"
msgstr "[N]ainstaluj"

#: dselect/main.cc:146
msgid "Install and upgrade wanted packages."
msgstr "Instalace a aktualizace vybraných balíků."

#: dselect/main.cc:147
msgid "c"
msgstr "k"

#: dselect/main.cc:147
msgid "[C]onfig"
msgstr "[K]konfiguruj"

#: dselect/main.cc:147
msgid "Configure any packages that are unconfigured."
msgstr "Konfigurace všech nezkonfigurovaných balíků."

#: dselect/main.cc:148
msgid "r"
msgstr "o"

#: dselect/main.cc:148
msgid "[R]emove"
msgstr "[O]dstraň"

#: dselect/main.cc:148
msgid "Remove unwanted software."
msgstr "Odebrání nežádoucích balíků."

#: dselect/main.cc:149
msgid "q"
msgstr "u"

#: dselect/main.cc:149
msgid "[Q]uit"
msgstr "[U]končit"

#: dselect/main.cc:149
msgid "Quit dselect."
msgstr "Ukončení dselectu."

#: dselect/main.cc:150
msgid "menu"
msgstr "menu"

#: dselect/main.cc:155
#, c-format
msgid "Debian `%s' package handling frontend version %s.\n"
msgstr "Debian `%s' rozhraní pro správu balíků verze %s.\n"

#: dselect/main.cc:158
msgid ""
"Copyright (C) 1994-1996 Ian Jackson.\n"
"Copyright (C) 2000,2001 Wichert Akkerman.\n"
msgstr ""
"Copyright (C) 1994-1996 Ian Jackson.\n"
"Copyright (C) 2000,2001 Wichert Akkerman.\n"

#: dselect/main.cc:162
#, fuzzy
msgid ""
"This is free software; see the GNU General Public License version 2 or\n"
"later for copying conditions. There is NO warranty.\n"
msgstr ""
"Toto je svobodný software; podrobnosti o podmínkách kopírování naleznete\n"
"v Obecné veřejné licenci GNU (GNU General Public License) verze 2 nebo\n"
"pozdější. Toto programové vybavení je absolutně bez záruky.\n"
"Více informací získáte použitím %s --licence.\n"

#: dselect/main.cc:172 dselect/main.cc:220
msgid "<standard output>"
msgstr "<standardní výstup>"

#: dselect/main.cc:183
#, c-format
msgid ""
"Usage: %s [<option> ...] [<action> ...]\n"
"\n"
msgstr ""
"Použití: %s [<volba> ...] [<akce> ...]\n"
"\n"

#: dselect/main.cc:187
#, c-format
msgid ""
"Options:\n"
"  --admindir <directory>     Use <directory> instead of %s.\n"
"  --expert                   Turn on expert mode.\n"
"  --debug <file> | -D<file>  Turn on debugging, sending output to <file>.\n"
"  --colour | --color screenpart:[foreground],[background][:attr[+attr+..]]\n"
"                             Configure screen colours.\n"
"\n"
msgstr ""
"Volby:\n"
"  --admindir <adresář>       Místo %s použije <adresář>.\n"
"  --expert                   Zapne pokročilý režim.\n"
"  --debug <soub> | -D<soub>  Zapne ladicí režim s výstupem do <soub>.\n"
"  --colour | --color částobraz:[popředí],[pozadí][:atrib[+atrib+..]]\n"
"                             Nastaví barvy.\n"
"\n"

#: dselect/main.cc:196
#, fuzzy, c-format
msgid ""
"  --help                     Show this help message.\n"
"  --version                  Show the version.\n"
"\n"
msgstr ""
"  --help                     Zobrazí tuto nápovědu.\n"
"  --version                  Zobrazí verzi.\n"
"  --license                  Zobrazí licenci.\n"
"\n"

#: dselect/main.cc:201
#, c-format
msgid ""
"Actions:\n"
"  access update select install config remove quit\n"
"\n"
msgstr ""
"Akce:\n"
"  access update select install config remove quit\n"
"\n"

#: dselect/main.cc:205
#, c-format
msgid "Screenparts:\n"
msgstr "Části obrazovky:\n"

#: dselect/main.cc:210
#, c-format
msgid "Colours:\n"
msgstr "Barvy:\n"

#: dselect/main.cc:215
#, c-format
msgid "Attributes:\n"
msgstr "Atributy:\n"

#: dselect/main.cc:233
#, c-format
msgid "couldn't open debug file `%.255s'\n"
msgstr "nepodařilo se otevřít ladící soubor `%.255s'\n"

#: dselect/main.cc:253
#, c-format
msgid "Invalid %s `%s'\n"
msgstr "Neplatné %s `%s'\n"

#: dselect/main.cc:270
msgid "screen part"
msgstr "část obrazovky"

#: dselect/main.cc:276
msgid "Null colour specification\n"
msgstr "Zadání prázdné barvy\n"

#: dselect/main.cc:284 dselect/main.cc:289
msgid "colour"
msgstr "barva"

#: dselect/main.cc:297
msgid "colour attribute"
msgstr "atribut barvy"

#: dselect/main.cc:329
msgid "Terminal does not appear to support cursor addressing.\n"
msgstr "Zdá se, že terminál nepodporuje adresaci kurzoru.\n"

#: dselect/main.cc:331
msgid "Terminal does not appear to support highlighting.\n"
msgstr "Zdá se, že terminál nepodporuje zvýrazňování.\n"

#: dselect/main.cc:333
#, c-format
msgid ""
"Set your TERM variable correctly, use a better terminal,\n"
"or make do with the per-package management tool %s.\n"
msgstr ""
"Nastavte správně proměnnou TERM, použijte lepší terminál\n"
"nebo použijte nástroj pro správu jednotlivých balíků %s.\n"

#: dselect/main.cc:336
msgid "terminal lacks necessary features, giving up"
msgstr "terminál postrádá nezbytné funkce, vzdávám to"

#: dselect/main.cc:417
msgid ""
"\n"
"\n"
"Move around with ^P and ^N, cursor keys, initial letters, or digits;\n"
"Press <enter> to confirm selection.   ^L redraws screen.\n"
"\n"
msgstr ""
"\n"
"\n"
"Pohybujte se pomocí kláves ^P a ^N, kurzorových šipek, počátečních písmen "
"nebo\n"
"číslic; Volbu potvrďte stiskem klávesy <enter>. Obrazovku překreslí ^L.\n"
"\n"

#: dselect/main.cc:428
msgid ""
"\n"
"\n"
"Read-only access: only preview of selections is available!"
msgstr ""
"\n"
"\n"
"Přístup pouze pro čtení: k dispozici je pouze přehled aktuálních nastavení!"

#: dselect/main.cc:448
msgid "failed to getch in main menu"
msgstr "nepovedlo se getch v hlavním menu"

#: dselect/main.cc:531
#, c-format
msgid "unknown action string `%.50s'"
msgstr "neznámý akční řetězec `%.50s'"

#: dselect/methlist.cc:77
msgid "dselect - list of access methods"
msgstr "dselect - seznam přístupových metod"

#: dselect/methlist.cc:86
#, c-format
msgid "Access method `%s'."
msgstr "Přístupová metoda `%s'."

#: dselect/methlist.cc:120
msgid "Abbrev."
msgstr "Zkratka"

#: dselect/methlist.cc:121 dselect/pkginfo.cc:105 dselect/pkgtop.cc:291
msgid "Description"
msgstr "Popis"

#: dselect/methlist.cc:164 dselect/pkglist.cc:572
msgid "doupdate failed"
msgstr "nepovedlo se doupdate"

#: dselect/methlist.cc:166 dselect/pkglist.cc:575
msgid "failed to unblock SIGWINCH"
msgstr "nepovedlo se odblokovat SIGWINCH"

#: dselect/methlist.cc:170 dselect/pkglist.cc:580
msgid "failed to re-block SIGWINCH"
msgstr "nepovedlo se znovu zablokovat SIGWINCH"

#: dselect/methlist.cc:171 dselect/pkglist.cc:582
msgid "getch failed"
msgstr "nepovedlo se getch"

#: dselect/methlist.cc:188
msgid "Explanation"
msgstr "Vysvětlení"

#: dselect/methlist.cc:197
msgid "No explanation available."
msgstr "Vysvětlení není k dispozici."

#: dselect/method.cc:67
#, c-format
msgid ""
"\n"
"\n"
"%s: %s\n"
msgstr ""
"\n"
"\n"
"%s: %s\n"

#: dselect/method.cc:70
msgid ""
"\n"
"Press <enter> to continue."
msgstr ""
"\n"
"Pokračujte stiskem klávesy <enter>."

#: dselect/method.cc:161
#, c-format
msgid "Press <enter> to continue.\n"
msgstr "Pokračujte stiskem klávesy <enter>.\n"

#: dselect/method.cc:162
msgid "<standard error>"
msgstr "<chybový výstup>"

#: dselect/method.cc:165
msgid "error reading acknowledgement of program failure message"
msgstr "chyba při čtení potvrzení chybového hlášení programu"

#: dselect/method.cc:196
msgid "update available list script"
msgstr "skript pro aktualizaci seznamu dostupných balíků"

#: dselect/method.cc:200
msgid "installation script"
msgstr "instalační skript"

#: dselect/method.cc:246
msgid "query/setup script"
msgstr "dotazovací/nastavovací skript"

#: dselect/methparse.cc:53
#, c-format
msgid "syntax error in method options file `%.250s' -- %s"
msgstr "syntaktická chyba v konfiguračním souboru metody `%.250s' -- %s"

#: dselect/methparse.cc:59
#, c-format
msgid "error reading options file `%.250s'"
msgstr "chyba při čtení konfiguračního souboru `%.250s'"

#: dselect/methparse.cc:90
#, c-format
msgid "unable to read `%.250s' directory for reading methods"
msgstr "nebylo možno načíst čtecí metody v adresáři `%.250s'"

#: dselect/methparse.cc:106
#, c-format
msgid "method `%.250s' has name that is too long (%d > %d characters)"
msgstr "metoda `%.250s' má příliš dlouhé jméno (%d > %d znaků)"

#: dselect/methparse.cc:117
#, c-format
msgid "unable to access method script `%.250s'"
msgstr "nelze přistoupit ke skriptu metody `%.250s'"

#: dselect/methparse.cc:123
#, c-format
msgid "unable to read method options file `%.250s'"
msgstr "nebylo možno přečíst konfigurační soubor metody `%.250s'"

#: dselect/methparse.cc:147
msgid "non-digit where digit wanted"
msgstr "nečíselný znak na místě očekávané číslice"

#: dselect/methparse.cc:150
msgid "EOF in index string"
msgstr "EOF v indexovém řetězci"

#: dselect/methparse.cc:153
msgid "index string too long"
msgstr "indexový řetězec je příliš dlouhý"

#: dselect/methparse.cc:156
msgid "newline before option name start"
msgstr "nový řádek před začátkem jména volby"

#: dselect/methparse.cc:158
msgid "EOF before option name start"
msgstr "EOF před začátkem jména volby"

#: dselect/methparse.cc:162
msgid "nonalpha where option name start wanted"
msgstr "nepísmenný znak před začátkem jména volby"

#: dselect/methparse.cc:164
msgid "non-alphanum in option name"
msgstr "nealfanumerický znak ve jméně volby"

#: dselect/methparse.cc:167
msgid "EOF in option name"
msgstr "EOF ve jméně volby"

#: dselect/methparse.cc:172
msgid "newline before summary"
msgstr "nový řádek před přehledem"

#: dselect/methparse.cc:174
msgid "EOF before summary"
msgstr "EOF před přehledem"

#: dselect/methparse.cc:180
msgid "EOF in summary - missing newline"
msgstr "EOF v přehledu - chybějící nový řádek"

#: dselect/methparse.cc:190
#, c-format
msgid "unable to open option description file `%.250s'"
msgstr "nelze otevřít soubor s popisy `%.250s'"

#: dselect/methparse.cc:194
#, c-format
msgid "unable to stat option description file `%.250s'"
msgstr "nelze detekovat popisný soubor voleb `%.250s'"

#: dselect/methparse.cc:198
#, c-format
msgid "failed to read option description file `%.250s'"
msgstr "nebylo možno přečíst popisný soubor voleb `%.250s'"

#: dselect/methparse.cc:201
#, c-format
msgid "error during read of option description file `%.250s'"
msgstr "chyba při čtení popisného souboru voleb `%.250s'"

#: dselect/methparse.cc:224
#, c-format
msgid "error during read of method options file `%.250s'"
msgstr "chyba při čtení konfiguračního souboru metody `%.250s'"

#: dselect/methparse.cc:247
#, c-format
msgid "unable to open current option file `%.250s'"
msgstr "nelze otevřít aktuální konfigurační soubor `%.250s'"

#: dselect/methparse.cc:289
#, c-format
msgid "unable to open new option file `%.250s'"
msgstr "nelze otevřít nový konfigurační soubor `%.250s'"

#: dselect/methparse.cc:292
#, c-format
msgid "unable to write new option to `%.250s'"
msgstr "nelze zapsat nový konfigurační soubor `%.250s'"

#: dselect/methparse.cc:295
#, c-format
msgid "unable to close new option file `%.250s'"
msgstr "nelze uzavřít nový konfigurační soubor `%.250s'"

#: dselect/methparse.cc:297
#, c-format
msgid "unable to install new option as `%.250s'"
msgstr "nelze nainstalovat novou konfiguraci jako `%.250s'"

#: dselect/pkgdisplay.cc:36
msgid "new package"
msgstr "nový balík"

#: dselect/pkgdisplay.cc:37
msgid "install"
msgstr "instalace"

#: dselect/pkgdisplay.cc:38
msgid "hold"
msgstr "podržet"

#: dselect/pkgdisplay.cc:39
msgid "remove"
msgstr "odebrání"

#: dselect/pkgdisplay.cc:40
msgid "purge"
msgstr "vyčistit"

#. TRANSLATORS: The space is a trick to work around gettext which uses
#. * the empty string to store information about the translation. DO NOT
#. * CHANGE THAT IN A TRANSLATION! The code really relies on that being
#. * a single space.
#: dselect/pkgdisplay.cc:47
msgid " "
msgstr " "

#: dselect/pkgdisplay.cc:48
msgid "REINSTALL"
msgstr "PŘEINSTALOVAT"

#: dselect/pkgdisplay.cc:51
msgid "not installed"
msgstr "nenainstalován"

#: dselect/pkgdisplay.cc:52
msgid "removed (configs remain)"
msgstr "odinstalovaný (konfigurační soubory ponechány)"

#: dselect/pkgdisplay.cc:53
msgid "half installed"
msgstr "zpola nainstalovaný"

#: dselect/pkgdisplay.cc:54
msgid "unpacked (not set up)"
msgstr "rozbalený (nezkonfigurovaný)"

#: dselect/pkgdisplay.cc:55
msgid "half configured (config failed)"
msgstr ""

#: dselect/pkgdisplay.cc:56
msgid "awaiting trigger processing"
msgstr "očekává zpracování spouštěčů"

#: dselect/pkgdisplay.cc:57
msgid "triggered"
msgstr "spouštěč aktivován"

#: dselect/pkgdisplay.cc:58
msgid "installed"
msgstr "nainstalován"

#: dselect/pkgdisplay.cc:61
msgid "Required"
msgstr "Vyžadované"

#: dselect/pkgdisplay.cc:62
msgid "Important"
msgstr "Důležité"

#: dselect/pkgdisplay.cc:63
msgid "Standard"
msgstr "Standardní"

#: dselect/pkgdisplay.cc:64
msgid "Optional"
msgstr "Volitelné"

#: dselect/pkgdisplay.cc:65
msgid "Extra"
msgstr "Extra"

#: dselect/pkgdisplay.cc:66
msgid "!Bug!"
msgstr "!Chyba!"

#: dselect/pkgdisplay.cc:67
msgid "Unclassified"
msgstr "Neklasifikované"

#: dselect/pkgdisplay.cc:70
msgid "suggests"
msgstr "navrhuje"

#: dselect/pkgdisplay.cc:71
msgid "recommends"
msgstr "doporučuje"

#: dselect/pkgdisplay.cc:72
msgid "depends on"
msgstr "závisí na"

#: dselect/pkgdisplay.cc:73
msgid "pre-depends on"
msgstr "před-závisí na"

#: dselect/pkgdisplay.cc:74
msgid "breaks"
msgstr "poruší"

#: dselect/pkgdisplay.cc:75
msgid "conflicts with"
msgstr "je v konfliktu s"

#: dselect/pkgdisplay.cc:76
msgid "provides"
msgstr "poskytuje"

#: dselect/pkgdisplay.cc:77
msgid "replaces"
msgstr "nahrazuje"

#: dselect/pkgdisplay.cc:78
msgid "enhances"
msgstr "vylepšuje"

#: dselect/pkgdisplay.cc:81
msgid "Req"
msgstr "Vyž"

#: dselect/pkgdisplay.cc:82
msgid "Imp"
msgstr "Důl"

#: dselect/pkgdisplay.cc:83
msgid "Std"
msgstr "Std"

#: dselect/pkgdisplay.cc:84
msgid "Opt"
msgstr "Vol"

#: dselect/pkgdisplay.cc:85
msgid "Xtr"
msgstr "Ext"

#: dselect/pkgdisplay.cc:86
msgid "bUG"
msgstr "CHB"

#: dselect/pkgdisplay.cc:87
msgid "?"
msgstr "?"

#: dselect/pkgdisplay.cc:95 dselect/pkgdisplay.cc:115
msgid "Broken"
msgstr "Poškozené"

#: dselect/pkgdisplay.cc:96
msgid "New"
msgstr "Nové"

#: dselect/pkgdisplay.cc:97
msgid "Updated"
msgstr "Aktualizované"

#: dselect/pkgdisplay.cc:98
msgid "Obsolete/local"
msgstr "Zastaralé/lokální"

#: dselect/pkgdisplay.cc:99
msgid "Up-to-date"
msgstr "Aktuální"

#: dselect/pkgdisplay.cc:100
msgid "Available"
msgstr "Dostupné"

#: dselect/pkgdisplay.cc:101 dselect/pkgdisplay.cc:117
msgid "Removed"
msgstr "Odstraněné"

#: dselect/pkgdisplay.cc:102 dselect/pkgdisplay.cc:111
msgid "Brokenly installed packages"
msgstr "Chybně nainstalované balíky"

#: dselect/pkgdisplay.cc:103
msgid "Newly available packages"
msgstr "Nově dostupné balíky"

#: dselect/pkgdisplay.cc:104
msgid "Updated packages (newer version is available)"
msgstr "Aktualizované balíky (je k dispozici nová verze)"

#: dselect/pkgdisplay.cc:105
msgid "Obsolete and local packages present on system"
msgstr "Zastaralé a lokální balíky v systému"

#: dselect/pkgdisplay.cc:106
msgid "Up to date installed packages"
msgstr "Aktuální nainstalované balíky"

#: dselect/pkgdisplay.cc:107
msgid "Available packages (not currently installed)"
msgstr "Dostupné balíky (momentálně nenainstalované)"

#: dselect/pkgdisplay.cc:108
msgid "Removed and no longer available packages"
msgstr "Odstraněné a již nedostupné balíky"

#: dselect/pkgdisplay.cc:112
msgid "Installed packages"
msgstr "Nainstalované balíky"

#: dselect/pkgdisplay.cc:113
msgid "Removed packages (configuration still present)"
msgstr "Odstraněné balíky (konfigurace zatím zachována)"

#: dselect/pkgdisplay.cc:114
msgid "Purged packages and those never installed"
msgstr "Vyčištěné a nikdy nenainstalované balíky"

#: dselect/pkgdisplay.cc:116
msgid "Installed"
msgstr "Nainstalované"

#: dselect/pkgdisplay.cc:118
msgid "Purged"
msgstr "Vyčištěné"

#: dselect/pkgdisplay.cc:198
msgid "dselect - recursive package listing"
msgstr "dselect - rekurzivní výpis balíků"

#: dselect/pkgdisplay.cc:199
msgid "dselect - inspection of package states"
msgstr "dselect - inspekce stavů balíků"

#: dselect/pkgdisplay.cc:200
msgid "dselect - main package listing"
msgstr "dselect - hlavní seznam balíků"

#: dselect/pkgdisplay.cc:208
msgid " (by section)"
msgstr " (podle sekce)"

#: dselect/pkgdisplay.cc:211
msgid " (avail., section)"
msgstr " (dostup., sekce)"

#: dselect/pkgdisplay.cc:214
msgid " (status, section)"
msgstr " (stav, sekce)"

#: dselect/pkgdisplay.cc:223
msgid " (by priority)"
msgstr " (podle priority)"

#: dselect/pkgdisplay.cc:226
msgid " (avail., priority)"
msgstr " (dostup., priorita)"

#: dselect/pkgdisplay.cc:229
msgid " (status, priority)"
msgstr " (stav, priorita)"

#: dselect/pkgdisplay.cc:238 dselect/pkgdisplay.cc:250
msgid " (alphabetically)"
msgstr " (abecedně)"

#: dselect/pkgdisplay.cc:241
msgid " (by availability)"
msgstr " (podle dostupnosti)"

#: dselect/pkgdisplay.cc:244
msgid " (by status)"
msgstr " (podle stavu)"

#: dselect/pkgdisplay.cc:258
msgid " mark:+/=/- terse:v help:?"
msgstr " znač:+/=/- struč:v pomoc:?"

#: dselect/pkgdisplay.cc:259
msgid " mark:+/=/- verbose:v help:?"
msgstr " znač:+/=/- podrob:v pomoc:?"

#: dselect/pkgdisplay.cc:260
msgid " terse:v help:?"
msgstr " struč:v pomoc:?"

#: dselect/pkgdisplay.cc:261
msgid " verbose:v help:?"
msgstr " podrob:v pomoc:?"

#: dselect/pkginfo.cc:80
msgid ""
"The line you have highlighted represents many packages; if you ask to "
"install, remove, hold, etc. it you will affect all the packages which match "
"the criterion shown.\n"
"\n"
"If you move the highlight to a line for a particular package you will see "
"information about that package displayed here.\n"
"You can use `o' and `O' to change the sort order and give yourself the "
"opportunity to mark packages in different kinds of groups."
msgstr ""
"Zvýrazněný řádek reprezentuje mnoho balíků; požádáte-li o jejich instalaci, "
"odinstalaci, podržení, atd., akce se aplikuje na všechny balíky, které "
"odpovídají zobrazenému kritériu.\n"
"\n"
"Posunete-li zvýraznění na řádek konkrétního balíku, zobrazí se vám zde o něm "
"informace.\n"
"Pořadí třídění balíků lze změnit klávesami `o' a `O', což vám umožní označit "
"balíky v různých typech skupin."

#: dselect/pkginfo.cc:93
msgid "Interrelationships"
msgstr "Vzájemné vztahy"

#: dselect/pkginfo.cc:112
msgid "No description available."
msgstr "Popis není k dispozici."

#: dselect/pkginfo.cc:130
msgid "Installed control file information"
msgstr "Stav instalace podle souboru control"

#: dselect/pkginfo.cc:146
msgid "Available control file information"
msgstr "Dostupné informace ze souboru control"

#: dselect/pkglist.cc:416
msgid "There are no packages."
msgstr "Nejsou zde žádné balíky."

#: dselect/pkglist.cc:507
msgid "invalid search option given"
msgstr "zadána neplatná volba"

#: dselect/pkglist.cc:521
msgid "error in regular expression"
msgstr "chyba v regulárním výrazu"

#: dselect/pkgsublist.cc:107
msgid " does not appear to be available\n"
msgstr " není k dispozici\n"

#: dselect/pkgsublist.cc:127
msgid " or "
msgstr " nebo "

#: dselect/pkgtop.cc:57
msgid "All"
msgstr "Všechny"

#: dselect/pkgtop.cc:79
msgid "All packages"
msgstr "Všechny balíky"

#: dselect/pkgtop.cc:83
#, c-format
msgid "%s packages without a section"
msgstr "%s balíky bez uvedené sekce"

#: dselect/pkgtop.cc:85
#, c-format
msgid "%s packages in section %s"
msgstr "%s balíky v sekci %s"

#: dselect/pkgtop.cc:91
#, c-format
msgid "%s %s packages"
msgstr "%s %s balíky"

#: dselect/pkgtop.cc:95
#, c-format
msgid "%s %s packages without a section"
msgstr "%s %s bez uvedené sekce"

#: dselect/pkgtop.cc:97
#, c-format
msgid "%s %s packages in section %s"
msgstr "%s %s balíky v sekci %s"

#: dselect/pkgtop.cc:118
#, c-format
msgid "%-*s %s%s%s;  %s (was: %s).  %s"
msgstr "%-*s %s%s%s; %s (bylo: %s). %s"

#: dselect/pkgtop.cc:263
msgid "Error"
msgstr "Chyba"

#: dselect/pkgtop.cc:267
msgid "Installed?"
msgstr "Nainstalován?"

#: dselect/pkgtop.cc:271
msgid "Old mark"
msgstr "Stará značka"

#: dselect/pkgtop.cc:275
msgid "Marked for"
msgstr "Označen pro"

#: dselect/pkgtop.cc:278
msgid "EIOM"
msgstr "EIOM"

#: dselect/pkgtop.cc:280
msgid "Section"
msgstr "Sekce"

#: dselect/pkgtop.cc:281
msgid "Priority"
msgstr "Priorita"

#: dselect/pkgtop.cc:282
msgid "Package"
msgstr "Balík"

#: dselect/pkgtop.cc:286
msgid "Inst.ver"
msgstr "Inst.ver"

#: dselect/pkgtop.cc:289
msgid "Avail.ver"
msgstr "Dostup.ver"

#~ msgid "returned error exit status %d.\n"
#~ msgstr "vrátil chybový návratový kód %d.\n"

#~ msgid "was interrupted.\n"
#~ msgstr "byl přerušen.\n"

#~ msgid "was terminated by a signal: %s.\n"
#~ msgstr "byl přerušen signálem: %s.\n"

#~ msgid "(It left a coredump.)\n"
#~ msgstr "(Byl zanechán coredump.)\n"

#~ msgid "failed with an unknown wait return code %d.\n"
#~ msgstr "selhal s neznámým návratovým kódem %d volání wait.\n"

#~ msgid "unable to run %.250s process `%.250s'"
#~ msgstr "nelze spustit %.250s proces `%.250s'"

#~ msgid "failed config"
#~ msgstr "nezdařená konfigurace"

#~ msgid "unable to wait for %.250s"
#~ msgstr "nelze čekat na %.250s"

#~ msgid "got wrong child's status - asked for %ld, got %ld"
#~ msgstr "obdržen chybný status potomka - bylo žádáno %ld a obdrženo %ld"

#~ msgid "Recommended"
#~ msgstr "Doporučené"

#~ msgid "Contrib"
#~ msgstr "Dodatečné"

#~ msgid "Rec"
#~ msgstr "Dop"

#~ msgid "Ctb"
#~ msgstr "Dod"

#~ msgid ""
#~ "baselist::startdisplay() done ...\n"
#~ "\n"
#~ " xmax=%d, ymax=%d;\n"
#~ "\n"
#~ " title_height=%d, colheads_height=%d, list_height=%d;\n"
#~ " thisstate_height=%d, info_height=%d, whatinfo_height=%d;\n"
#~ "\n"
#~ " colheads_row=%d, thisstate_row=%d, info_row=%d;\n"
#~ " whatinfo_row=%d, list_row=%d;\n"
#~ "\n"
#~ msgstr ""
#~ "baselist::startdisplay() provedeno ...\n"
#~ "\n"
#~ " xmax=%d, ymax=%d;\n"
#~ "\n"
#~ " title_height=%d, colheads_height=%d, list_height=%d;\n"
#~ " thisstate_height=%d, info_height=%d, whatinfo_height=%d;\n"
#~ "\n"
#~ " colheads_row=%d, thisstate_row=%d, info_row=%d;\n"
#~ " whatinfo_row=%d, list_row=%d;\n"
#~ "\n"

#~ msgid "[none]"
#~ msgstr "[none]"

#~ msgid "error un-catching signal %d: %s\n"
#~ msgstr "chyba při odstraňování zpracování signálu %d: %s\n"

#~ msgid "unable to ignore signal %d before running %.250s"
#~ msgstr "nelze ignorovat signál %d před spuštěním %.250s"

#~ msgid "(no clientdata)"
#~ msgstr "(žádná klientská data)"

#~ msgid "<null>"
#~ msgstr "<null>"

#~ msgid "interrelationships affecting "
#~ msgstr "závislosti ovlivňující "

#~ msgid "description of "
#~ msgstr "popis "

#~ msgid "description"
#~ msgstr "popis"

#~ msgid "currently installed control info"
#~ msgstr "informace o aktuálně instalovaných"

#~ msgid "available version of control info for "
#~ msgstr "informace o dostupné verzi pro "
