# dselect eesti keele tõlge.
# Estonian translation of dselect.
#
# This file is distributed under the same license as the dselect package.
#
# Copyright (C) 2007 Free Software Foundation, Inc.
# Ivar Smolin <okul at linux ee>, 2007.
#
msgid ""
msgstr ""
"Project-Id-Version: dselect 1.14.5\n"
"Report-Msgid-Bugs-To: debian-dpkg@lists.debian.org\n"
"POT-Creation-Date: 2011-10-14 07:11+0200\n"
"PO-Revision-Date: 2007-07-13 08:22+0300\n"
"Last-Translator: Ivar Smolin <okul@linux.ee>\n"
"Language-Team: Estonian <et@li.org>\n"
"Language: et\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 "Mida otsida ? "

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

#: dselect/basecmds.cc:178
msgid "Help: "
msgstr "Abi: "

#: dselect/basecmds.cc:184
msgid "Press ? for help menu, . for next topic, <space> to exit help."
msgstr ""
"Abimenüü jaoks vajuta `?', järgmine teema: `.', abi sulgemine: <tühik>."

#: dselect/basecmds.cc:191
msgid "Help information is available under the following topics:"
msgstr "Abiteavet on võimalik saada järgnevate teemade kohta:"

#: 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 ""
"Abiteema vaatamiseks vajuta nimekirjas viidatud klahvile,\n"
"  abiteabest väljumiseks klahve 'q' või <tühik> või abiteabe\n"
"  lehthaaval lugemiseks klahvi `.'."

#: dselect/basecmds.cc:205
msgid "error reading keyboard in help"
msgstr "viga klaviatuurilt lugemisel (abiteabe ekraanil)"

#: dselect/baselist.cc:57
msgid "ioctl(TIOCGWINSZ) failed"
msgstr "tõrge funktsioonis ioctl(TIOCGWINSZ)"

#: dselect/baselist.cc:60
msgid "doupdate in SIGWINCH handler failed"
msgstr "tõrge signaali SIGWINCH käsitleja doupdate funktsioonis"

#: dselect/baselist.cc:67
msgid "failed to restore old SIGWINCH sigact"
msgstr "tõrge signaali SIGWINCH vana sigact'i taastamisel"

#: dselect/baselist.cc:69
msgid "failed to restore old signal mask"
msgstr "tõrge vana signaalimaski taastamisel"

#: dselect/baselist.cc:79
msgid "failed to get old signal mask"
msgstr "tõrge vana signaalimaski hankimisel"

#: dselect/baselist.cc:80
msgid "failed to get old SIGWINCH sigact"
msgstr "tõrge signaali SIGWINCH vana sigact'i hankimisel"

#: dselect/baselist.cc:84
msgid "failed to block SIGWINCH"
msgstr "tõrge signaali SIGWINCH blokkimisel"

#: dselect/baselist.cc:89
msgid "failed to set new SIGWINCH sigact"
msgstr "tõrge signaalile SIGWINCH uue sigact'i määramisel"

#: dselect/baselist.cc:126
msgid "failed to allocate colour pair"
msgstr "tõrge värvustepaari eraldamisel"

#: dselect/baselist.cc:167
msgid "failed to create title window"
msgstr "tõrge pealkirjaakna loomisel"

#: dselect/baselist.cc:171
msgid "failed to create whatinfo window"
msgstr "tõrge teabeakna loomisel"

#: dselect/baselist.cc:175
msgid "failed to create baselist pad"
msgstr ""

#: dselect/baselist.cc:178
msgid "failed to create heading pad"
msgstr ""

#: dselect/baselist.cc:182
msgid "failed to create thisstate pad"
msgstr ""

#: dselect/baselist.cc:186
msgid "failed to create info pad"
msgstr ""

#: dselect/baselist.cc:191
msgid "failed to create query window"
msgstr "tõrge päringuakna loomisel"

#: dselect/baselist.cc:255
msgid "Keybindings"
msgstr "Klahviseosed"

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

#: dselect/baselist.cc:306
#, c-format
msgid "%s for more"
msgstr "%s edasikerimiseks"

#: dselect/baselist.cc:310
#, c-format
msgid "%s to go back"
msgstr "%s tagasikerimiseks"

#: dselect/bindings.cc:78
msgid "[not bound]"
msgstr ""

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

#: dselect/bindings.cc:139
msgid "Scroll onwards through help/information"
msgstr "Abi või teabe edasikerimine"

#: dselect/bindings.cc:140
msgid "Scroll backwards through help/information"
msgstr "Abi või teabe tagasikerimine"

#: dselect/bindings.cc:141
msgid "Move up"
msgstr "Liikumine üles"

#: dselect/bindings.cc:142
msgid "Move down"
msgstr "Liikumine alla"

#: dselect/bindings.cc:143
msgid "Go to top of list"
msgstr "Nimekirja algusesse"

#: dselect/bindings.cc:144
msgid "Go to end of list"
msgstr "Nimekirja lõppu"

#: dselect/bindings.cc:145
msgid "Request help (cycle through help screens)"
msgstr "Abiteabe küsimine (kuvade kaupa)"

#: dselect/bindings.cc:146
msgid "Cycle through information displays"
msgstr "Järgmise teabekuva aktiveerimine"

#: dselect/bindings.cc:147
msgid "Redraw display"
msgstr "Kuva ülejoonistamine"

#: dselect/bindings.cc:148
msgid "Scroll onwards through list by 1 line"
msgstr "Nimekirja edasikerimine ühe rea võrra"

#: dselect/bindings.cc:149
msgid "Scroll backwards through list by 1 line"
msgstr "Nimekirja tagasikerimine ühe rea võrra"

#: dselect/bindings.cc:150
msgid "Scroll onwards through help/information by 1 line"
msgstr "Abi või teabe edasikerimine ühe rea võrra"

#: dselect/bindings.cc:151
msgid "Scroll backwards through help/information by 1 line"
msgstr "Abi või teabe tagasikerimine ühe rea võrra"

#: dselect/bindings.cc:152
msgid "Scroll onwards through list"
msgstr "Nimekirja edasikerimine"

#: dselect/bindings.cc:153
msgid "Scroll backwards through list"
msgstr "Nimekirja tagasikerimine"

#: dselect/bindings.cc:156
msgid "Mark package(s) for installation"
msgstr "Paki (pakkide) märkimine paigaldamiseks"

#: dselect/bindings.cc:157
msgid "Mark package(s) for deinstallation"
msgstr "Paki (pakkide) märkimine eemaldamiseks"

#: dselect/bindings.cc:158
msgid "Mark package(s) for deinstall and purge"
msgstr "Paki (pakkide) märkimine eemaldamiseks ja puhastamiseks"

#: dselect/bindings.cc:159
msgid "Make highlight more specific"
msgstr ""

#: dselect/bindings.cc:160
msgid "Make highlight less specific"
msgstr ""

#: dselect/bindings.cc:161
msgid "Search for a package whose name contains a string"
msgstr "Pakkide otsimine paki nimes sisalduva stringi järgi"

#: dselect/bindings.cc:162
msgid "Repeat last search."
msgstr "Viimase otsingu kordamine."

#: dselect/bindings.cc:163
msgid "Swap sort order priority/section"
msgstr "Sortimisjärjestuse vahetamine: tähtsus/jaotis"

#: dselect/bindings.cc:164
msgid "Quit, confirming, and checking dependencies"
msgstr "Lõpetamine, kinnituse küsimine ja sõltuvuste kontrollimine"

#: dselect/bindings.cc:165
msgid "Quit, confirming without check"
msgstr "Lõpetamine ilma sõltuvuste kontrollita"

#: dselect/bindings.cc:166
msgid "Quit, rejecting conflict/dependency suggestions"
msgstr ""
"Lõpetamine koos kõigi vastuolu- ja sõltuvussoovituste tagasilükkamisega"

#: dselect/bindings.cc:167
msgid "Abort - quit without making changes"
msgstr "Katkestamine - lõpetatakse ilma muudatusi tegemata"

#: dselect/bindings.cc:168
msgid "Revert to old state for all packages"
msgstr "Kõigi pakkide vana oleku taastamine"

#: dselect/bindings.cc:169
msgid "Revert to suggested state for all packages"
msgstr ""

#: dselect/bindings.cc:170
msgid "Revert to directly requested state for all packages"
msgstr ""

#: dselect/bindings.cc:171
#, fuzzy
msgid "Revert to currently installed state for all packages"
msgstr "Kõigi pakkide vana oleku taastamine"

#: dselect/bindings.cc:174
msgid "Select currently-highlighted access method"
msgstr "Hetkel esiletõstetud ligipääsumeetodi valimine"

#: dselect/bindings.cc:175
msgid "Quit without changing selected access method"
msgstr "Lõpetamine ilma ligipääsumeetodit valimata"

#: dselect/helpmsgs.cc:29
msgid "Keystrokes"
msgstr "Klahvivajutused"

#: 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 ""

#: dselect/helpmsgs.cc:55
msgid "Introduction to package selections"
msgstr "Pakkide valimise sissejuhtatus"

#: 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 ""

#: dselect/helpmsgs.cc:80
msgid "Introduction to read-only package list browser"
msgstr "Sissejuhatus ainult vaatamiseks mõeldud pakinimekirja sirvijasse"

#: 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 ""

#: dselect/helpmsgs.cc:99
msgid "Introduction to conflict/dependency resolution sub-list"
msgstr "Sissejuhatus sõltuvuste ja vastuolude lahendamise alamnimekirja"

#: 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 ""

#: dselect/helpmsgs.cc:125
msgid "Display, part 1: package listing and status chars"
msgstr "Kuva, I osa: pakkide nimekiri ja olekumärgid"

#: 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 ""

#: dselect/helpmsgs.cc:152
msgid "Display, part 2: list highlight; information display"
msgstr "Kuva, II osa: nimekirja esiletõstmine ja andmete kuvamine"

#: 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 ""

#: dselect/helpmsgs.cc:176
msgid "Introduction to method selection display"
msgstr "Sissejuhatus meetodite valiku kuvasse"

#: 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 ja dpkg võimaldavad automaatselt paigaldust, kus pakifailid\n"
"paigaldatakse kas ühest kohast või mitmest erinevast kohast.\n"
"\n"
"Nimekirjast on võimalik valida ühte paigaldusmeetodit.\n"
"\n"
"Liiguta valik Sinu poolt soovitavale meetodile ja vajuda klahvi Enter. "
"Selle\n"
"peale küsitakse paigalduse jaoks vajalikke andmeid.\n"
"\n"
"Kui sa valikurida liigutad, siis ilmub iga meetodi kirjeldus (kui see on\n"
"saadaval) ekraani alumisele osale.\n"
"\n"
"Kui Sa soovid väljuda ilma midagi muutmata, vajuta paigaldusmeetodite\n"
"nimekirjas klahvi `x'.\n"
"\n"
"Täieliku klahvivajutuste nimekirja vaatamiseks vajuta klahvi `k' või "
"abiteabe\n"
"menüüs vajuta `?'.\n"

#: dselect/helpmsgs.cc:196
msgid "Keystrokes for method selection"
msgstr "Meetodite valiku klahvivajutused"

#: 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 ""
"Liikumisklahvid: Eelmine/Järgmine, Algusesse/Lõppu, Üles/Alla, Edasi/"
"Tagasi:\n"
"  j, Nool alla          k, Nool üles            valiku liigutamine\n"
"  N, Page-down, Tühik   P, Page-up, Backspace   nimekirja kerimine lehe "
"võrra\n"
"  ^n                    ^p                      nimekirja kerimine rea "
"võrra\n"
"  t, Home               e, End                  nimekirja algusesse/lõppu\n"
"  u                     d                       teabe kerimine lehe võrra\n"
"  ^u                    ^d                      teabe kerimine rea võrra\n"
"  B, Left-arrow         F, Right-arrow          külgkerimine 1/3 ekraani "
"võrra\n"
"  ^b                    ^f                      külgkerimine ühe märgi "
"võrra\n"
"(Need klahvid on samad, mis pakkide nimekirja kuvas.)\n"
"\n"
"Nimekirjast väljumine:\n"
" Return, Enter    meetodi valimine ja siirdumine selle seadistamisdialoogi\n"
" x, X             lõpetamine ilma uut meetodit valimata või seadistamata\n"
"\n"
"Muud:\n"
"  ?, Help, F1      abiteabe küsimine\n"
" ^l                kuva ülejoonistamine\n"
"  /                otsing (katkestamiseks Enter, kui otsingustring on tühi)\n"
"  \\                viimase otsingu kordamine\n"

#: dselect/main.cc:60
msgid "Type dselect --help for help."
msgstr "Abiteabe jaoks käivita `dselect --help'."

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

#: dselect/main.cc:143
msgid "[A]ccess"
msgstr "[P]ääs"

#: dselect/main.cc:143
msgid "Choose the access method to use."
msgstr "Kasutatavate ligipääsumeetodite valimine."

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

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

#: dselect/main.cc:144
msgid "Update list of available packages, if possible."
msgstr "Saadaolevate pakkide nimekirja uuendamine (kui võimalik)."

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

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

#: dselect/main.cc:145
msgid "Request which packages you want on your system."
msgstr "Pakkide oleku seadmine (paigaldamine, eemaldamine jne)."

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

#: dselect/main.cc:146
msgid "[I]nstall"
msgstr "[P]aigalda"

#: dselect/main.cc:146
msgid "Install and upgrade wanted packages."
msgstr "Pakkide paigaldamine ja uuendamine."

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

#: dselect/main.cc:147
msgid "[C]onfig"
msgstr "[S]eadista"

#: dselect/main.cc:147
msgid "Configure any packages that are unconfigured."
msgstr "Kõigi seadistamata pakkide seadistamine."

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

#: dselect/main.cc:148
msgid "[R]emove"
msgstr "[E]emalda"

#: dselect/main.cc:148
msgid "Remove unwanted software."
msgstr "Tarbetu tarkvara eemaldamine."

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

#: dselect/main.cc:149
msgid "[Q]uit"
msgstr "[L]õpeta"

#: dselect/main.cc:149
msgid "Quit dselect."
msgstr "Dselect'i sulgemine"

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

#: dselect/main.cc:155
#, c-format
msgid "Debian `%s' package handling frontend version %s.\n"
msgstr "Debiani `%s' pakihaldusprogrammi kasutajaliidese versioon %s.\n"

#: dselect/main.cc:158
msgid ""
"Copyright (C) 1994-1996 Ian Jackson.\n"
"Copyright (C) 2000,2001 Wichert Akkerman.\n"
msgstr ""
"Autoriõigus (C) 1994-1996 Ian Jackson.\n"
"Autoriõigus (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 ""
"See on vaba tarkvara. Kopeerimistingimused on kirjas GNU Üldise Avaliku\n"
"Litsentsi 2. versioonis. Programmil puudub igasugune garantii.\n"
"Autoriõiguste ja litsentsi üksikasjade nägemiseks käivita `%s --license'.\n"

#: dselect/main.cc:172 dselect/main.cc:220
msgid "<standard output>"
msgstr ""

#: dselect/main.cc:183
#, c-format
msgid ""
"Usage: %s [<option> ...] [<action> ...]\n"
"\n"
msgstr ""
"Kasutamine: %s [<võti> ...] [<tegevus> ...]\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 ""
"Võtmed:\n"
"  --admindir <kataloog>      %s asemel <kataloogi> kasutamine.\n"
"  --expert                   Asjatundjarežiimi sisselülitamine.\n"
"  --debug <fail> | -D<fail>  Silumise sisselülitamine, väljund saadetakse\n"
"                             <faili>.\n"
"  --colour | --color ekraani_osa:[esiplaan],[taust][:rekv[+rekv+..]]\n"
"                             Ekraanivärvuste seadistamine.\n"
"\n"

#: dselect/main.cc:196
#, fuzzy, c-format
msgid ""
"  --help                     Show this help message.\n"
"  --version                  Show the version.\n"
"\n"
msgstr ""
"  --help                     Selle abiteabe näitamine.\n"
"  --version                  Versiooni näitamine.\n"
"  --license | --licence      Litsentsi näitamine.\n"
"\n"

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

#: dselect/main.cc:205
#, c-format
msgid "Screenparts:\n"
msgstr "Ekraani osad:\n"

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

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

#: dselect/main.cc:233
#, c-format
msgid "couldn't open debug file `%.255s'\n"
msgstr "silumisfaili `%.255s' pole võimalik avada\n"

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

#: dselect/main.cc:270
msgid "screen part"
msgstr "ekraani osa"

#: dselect/main.cc:276
msgid "Null colour specification\n"
msgstr "Tühi värvusekirjeldus\n"

#: dselect/main.cc:284 dselect/main.cc:289
msgid "colour"
msgstr "värvus"

#: dselect/main.cc:297
msgid "colour attribute"
msgstr "värvuse rekvisiit"

#: dselect/main.cc:329
msgid "Terminal does not appear to support cursor addressing.\n"
msgstr "Terminal ei paista kursori adresseerimist toetavat.\n"

#: dselect/main.cc:331
msgid "Terminal does not appear to support highlighting.\n"
msgstr "Terminal ei paista esiletõstmist toetavat.\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 ""
"Määra oma TERM muutuja korrektselt, kasuta paremat terminali\n"
"või kasuta pakipõhist haldusvahendit %s.\n"

#: dselect/main.cc:336
msgid "terminal lacks necessary features, giving up"
msgstr "terminalil puuduvad vajalikud võimalused, annan alla"

#: 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"
"Valiku tegemiseks kasuta klahve ^P, ^N, nooleklahve, valikute numbreid või\n"
"esitähti, valiku kinnitamiseks vajuta <enter>.\n"
"^L joonistab ekraanipildi uuesti.\n"
"\n"

#: dselect/main.cc:428
msgid ""
"\n"
"\n"
"Read-only access: only preview of selections is available!"
msgstr ""
"\n"
"\n"
"Ligipääs ainult vaatamiseks: võimalik on kasutada ainult valikute eelvaadet!"

#: dselect/main.cc:448
msgid "failed to getch in main menu"
msgstr "tõrge peamenüüs, funktsioonis getch"

#: dselect/main.cc:531
#, c-format
msgid "unknown action string `%.50s'"
msgstr "tundmatu tegevuse string `%.50s'"

#: dselect/methlist.cc:77
msgid "dselect - list of access methods"
msgstr "dselect - ligipääsumeetodite nimekiri"

#: dselect/methlist.cc:86
#, c-format
msgid "Access method `%s'."
msgstr "Ligipääsumeetod `%s'."

#: dselect/methlist.cc:120
msgid "Abbrev."
msgstr "Lühend"

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

#: dselect/methlist.cc:164 dselect/pkglist.cc:572
msgid "doupdate failed"
msgstr "tõrge funktsioonis doupdate"

#: dselect/methlist.cc:166 dselect/pkglist.cc:575
msgid "failed to unblock SIGWINCH"
msgstr "tõrge SIGWINCH signaalilt blokeeringu eemaldamisel"

#: dselect/methlist.cc:170 dselect/pkglist.cc:580
msgid "failed to re-block SIGWINCH"
msgstr "tõrge SIGWINCH signaali uuesti blokkimisel"

#: dselect/methlist.cc:171 dselect/pkglist.cc:582
msgid "getch failed"
msgstr "tõrge funktsioonis getch"

#: dselect/methlist.cc:188
msgid "Explanation"
msgstr "Selgitus"

#: dselect/methlist.cc:197
msgid "No explanation available."
msgstr "Selgitust pole saadaval."

#: 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"
"Jätkamiseks vajuta <enter>."

#: dselect/method.cc:161
#, c-format
msgid "Press <enter> to continue.\n"
msgstr "Jätkamiseks vajuta <enter>.\n"

#: dselect/method.cc:162
#, fuzzy
msgid "<standard error>"
msgstr "viga standardsesse veaväljundisse kirjutamisel"

#: dselect/method.cc:165
msgid "error reading acknowledgement of program failure message"
msgstr ""

#: dselect/method.cc:196
msgid "update available list script"
msgstr ""

#: dselect/method.cc:200
msgid "installation script"
msgstr "paigaldusskript"

#: dselect/method.cc:246
msgid "query/setup script"
msgstr ""

#: dselect/methparse.cc:53
#, c-format
msgid "syntax error in method options file `%.250s' -- %s"
msgstr "süntaksi viga meetodite valikute failis `%.250s' -- %s"

#: dselect/methparse.cc:59
#, c-format
msgid "error reading options file `%.250s'"
msgstr "viga valikute faili `%.250s' lugemisel"

#: dselect/methparse.cc:90
#, c-format
msgid "unable to read `%.250s' directory for reading methods"
msgstr "kataloogist `%.250s' pole võimalik meetodeid lugeda"

#: dselect/methparse.cc:106
#, c-format
msgid "method `%.250s' has name that is too long (%d > %d characters)"
msgstr "meetodi `%.250s' nimi on liiga pikk (%d > %d märki)"

#: dselect/methparse.cc:117
#, c-format
msgid "unable to access method script `%.250s'"
msgstr "meetodi skriptile `%.250s' pole võimalik ligi pääseda"

#: dselect/methparse.cc:123
#, c-format
msgid "unable to read method options file `%.250s'"
msgstr "meetodi skripti `%.250s' pole võimalik lugeda"

#: dselect/methparse.cc:147
msgid "non-digit where digit wanted"
msgstr ""

#: dselect/methparse.cc:150
msgid "EOF in index string"
msgstr "faililõputunnus indeksistringis"

#: dselect/methparse.cc:153
msgid "index string too long"
msgstr "indeksistring on liiga pikk"

#: dselect/methparse.cc:156
msgid "newline before option name start"
msgstr ""

#: dselect/methparse.cc:158
msgid "EOF before option name start"
msgstr "faililõputunnus enne valiku nime algust"

#: dselect/methparse.cc:162
msgid "nonalpha where option name start wanted"
msgstr ""

#: dselect/methparse.cc:164
msgid "non-alphanum in option name"
msgstr ""

#: dselect/methparse.cc:167
msgid "EOF in option name"
msgstr "faililõputunnus valiku nimes"

#: dselect/methparse.cc:172
msgid "newline before summary"
msgstr "reavahetus enne kokkuvõtet"

#: dselect/methparse.cc:174
msgid "EOF before summary"
msgstr "faililõputunnus enne kokkuvõtet"

#: dselect/methparse.cc:180
msgid "EOF in summary - missing newline"
msgstr "faililõputunnus kokkuvõttes - puudub reavahetus"

#: dselect/methparse.cc:190
#, c-format
msgid "unable to open option description file `%.250s'"
msgstr ""

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

#: dselect/methparse.cc:198
#, c-format
msgid "failed to read option description file `%.250s'"
msgstr ""

#: dselect/methparse.cc:201
#, c-format
msgid "error during read of option description file `%.250s'"
msgstr ""

#: dselect/methparse.cc:224
#, c-format
msgid "error during read of method options file `%.250s'"
msgstr ""

#: dselect/methparse.cc:247
#, c-format
msgid "unable to open current option file `%.250s'"
msgstr ""

#: dselect/methparse.cc:289
#, c-format
msgid "unable to open new option file `%.250s'"
msgstr ""

#: dselect/methparse.cc:292
#, c-format
msgid "unable to write new option to `%.250s'"
msgstr ""

#: dselect/methparse.cc:295
#, c-format
msgid "unable to close new option file `%.250s'"
msgstr ""

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

#: dselect/pkgdisplay.cc:36
msgid "new package"
msgstr "uus pakk"

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

#: dselect/pkgdisplay.cc:38
msgid "hold"
msgstr "hoia"

#: dselect/pkgdisplay.cc:39
msgid "remove"
msgstr "eemalda"

#: dselect/pkgdisplay.cc:40
msgid "purge"
msgstr "puhasta"

#. 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 ""

#: dselect/pkgdisplay.cc:51
msgid "not installed"
msgstr "paigaldamata"

#: dselect/pkgdisplay.cc:52
msgid "removed (configs remain)"
msgstr "eemaldatud (seadistused on alles)"

#: dselect/pkgdisplay.cc:53
msgid "half installed"
msgstr "osaliselt paigaldatud"

#: dselect/pkgdisplay.cc:54
msgid "unpacked (not set up)"
msgstr "lahtipakitud (üles seadmata)"

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

#: dselect/pkgdisplay.cc:56
msgid "awaiting trigger processing"
msgstr ""

#: dselect/pkgdisplay.cc:57
msgid "triggered"
msgstr ""

#: dselect/pkgdisplay.cc:58
msgid "installed"
msgstr "paigaldatud"

#: dselect/pkgdisplay.cc:61
msgid "Required"
msgstr "Nõutavad"

#: dselect/pkgdisplay.cc:62
msgid "Important"
msgstr "Tähtsad"

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

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

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

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

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

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

#: dselect/pkgdisplay.cc:71
msgid "recommends"
msgstr "soovitab pakki"

#: dselect/pkgdisplay.cc:72
msgid "depends on"
msgstr "sõltub pakist"

#: dselect/pkgdisplay.cc:73
msgid "pre-depends on"
msgstr "eelsõltub pakist"

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

#: dselect/pkgdisplay.cc:75
msgid "conflicts with"
msgstr "on vastuolus pakiga"

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

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

#: dselect/pkgdisplay.cc:78
msgid "enhances"
msgstr "laiendab pakki"

#: dselect/pkgdisplay.cc:81
msgid "Req"
msgstr "Nõu"

#: dselect/pkgdisplay.cc:82
msgid "Imp"
msgstr "Täh"

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

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

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

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

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

#: dselect/pkgdisplay.cc:95 dselect/pkgdisplay.cc:115
msgid "Broken"
msgstr "Katkised"

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

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

#: dselect/pkgdisplay.cc:98
msgid "Obsolete/local"
msgstr "Aegunud/kohalikud"

#: dselect/pkgdisplay.cc:99
msgid "Up-to-date"
msgstr "Ajakohased"

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

#: dselect/pkgdisplay.cc:101 dselect/pkgdisplay.cc:117
msgid "Removed"
msgstr "Eemaldatud"

#: dselect/pkgdisplay.cc:102 dselect/pkgdisplay.cc:111
msgid "Brokenly installed packages"
msgstr "Katkised paigaldatud pakid"

#: dselect/pkgdisplay.cc:103
msgid "Newly available packages"
msgstr "Uued saadaolevad pakid"

#: dselect/pkgdisplay.cc:104
msgid "Updated packages (newer version is available)"
msgstr "Uuendatud pakid (uuem versioon on saadaval)"

#: dselect/pkgdisplay.cc:105
msgid "Obsolete and local packages present on system"
msgstr "Selles süsteemis olevad aegunud ja kohalikud pakid"

#: dselect/pkgdisplay.cc:106
msgid "Up to date installed packages"
msgstr "Ajakohased paigaldatud pakid"

#: dselect/pkgdisplay.cc:107
msgid "Available packages (not currently installed)"
msgstr "Saadaolevad pakid (hetkel paigaldamata)"

#: dselect/pkgdisplay.cc:108
msgid "Removed and no longer available packages"
msgstr "Eemaldatud pakid ja pakid, mida pole enam saadaval"

#: dselect/pkgdisplay.cc:112
msgid "Installed packages"
msgstr "Paigaldatud pakid"

#: dselect/pkgdisplay.cc:113
msgid "Removed packages (configuration still present)"
msgstr "Eemaldatud pakid (seadistusfailid on alles)"

#: dselect/pkgdisplay.cc:114
msgid "Purged packages and those never installed"
msgstr "Puhastatud pakid ja need, mida pole kunagi paigaldatud"

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

#: dselect/pkgdisplay.cc:118
msgid "Purged"
msgstr "Puhastatud"

#: dselect/pkgdisplay.cc:198
msgid "dselect - recursive package listing"
msgstr "dselect - pakkide rekursiivne nimekiri"

#: dselect/pkgdisplay.cc:199
msgid "dselect - inspection of package states"
msgstr "dselect - pakkide olekute inspekteerimine"

#: dselect/pkgdisplay.cc:200
msgid "dselect - main package listing"
msgstr "dselect - pakkide peanimekiri"

#: dselect/pkgdisplay.cc:208
msgid " (by section)"
msgstr " (jaotise järgi)"

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

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

#: dselect/pkgdisplay.cc:223
msgid " (by priority)"
msgstr " (tähtsuse järgi)"

#: dselect/pkgdisplay.cc:226
msgid " (avail., priority)"
msgstr " (saadavus, tähtsus)"

#: dselect/pkgdisplay.cc:229
msgid " (status, priority)"
msgstr " (olek, tähtsus)"

#: dselect/pkgdisplay.cc:238 dselect/pkgdisplay.cc:250
msgid " (alphabetically)"
msgstr " (tähestikuline)"

#: dselect/pkgdisplay.cc:241
msgid " (by availability)"
msgstr " (saadavuse järgi)"

#: dselect/pkgdisplay.cc:244
msgid " (by status)"
msgstr " (oleku järgi)"

#: dselect/pkgdisplay.cc:258
msgid " mark:+/=/- terse:v help:?"
msgstr " märgi:+/=/- vähem:v abi:?"

#: dselect/pkgdisplay.cc:259
msgid " mark:+/=/- verbose:v help:?"
msgstr " märgi:+/=/- rohkem:v abi:?"

#: dselect/pkgdisplay.cc:260
msgid " terse:v help:?"
msgstr " vähem:v abi:?"

#: dselect/pkgdisplay.cc:261
msgid " verbose:v help:?"
msgstr " rohkem:v abi:?"

#: 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 ""

#: dselect/pkginfo.cc:93
msgid "Interrelationships"
msgstr "Sõltuvusseosed"

#: dselect/pkginfo.cc:112
msgid "No description available."
msgstr "Kirjeldus pole saadaval."

#: dselect/pkginfo.cc:130
msgid "Installed control file information"
msgstr "Paigaldatud juhtfaili andmed"

#: dselect/pkginfo.cc:146
msgid "Available control file information"
msgstr "Saadaoleva juhtfaili andmed"

#: dselect/pkglist.cc:416
msgid "There are no packages."
msgstr ""

#: dselect/pkglist.cc:507
msgid "invalid search option given"
msgstr "määrati lubamatu otsinguvalik"

#: dselect/pkglist.cc:521
msgid "error in regular expression"
msgstr "viga regulaaravaldises"

#: dselect/pkgsublist.cc:107
msgid " does not appear to be available\n"
msgstr " ei paista olevat saadaval\n"

#: dselect/pkgsublist.cc:127
msgid " or "
msgstr " või "

#: dselect/pkgtop.cc:57
msgid "All"
msgstr "Kõik"

#: dselect/pkgtop.cc:79
msgid "All packages"
msgstr "Kõik pakid"

#: dselect/pkgtop.cc:83
#, c-format
msgid "%s packages without a section"
msgstr "%s pakid ilma jaotiseta"

#: dselect/pkgtop.cc:85
#, c-format
msgid "%s packages in section %s"
msgstr "%s pakid jaotises %s"

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

#: dselect/pkgtop.cc:95
#, c-format
msgid "%s %s packages without a section"
msgstr "%s %s pakid ilma jaotiseta"

#: dselect/pkgtop.cc:97
#, c-format
msgid "%s %s packages in section %s"
msgstr "%s %s pakid jaotises %s"

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

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

#: dselect/pkgtop.cc:267
msgid "Installed?"
msgstr "Paigaldatud?"

#: dselect/pkgtop.cc:271
msgid "Old mark"
msgstr "Vana mrk"

#: dselect/pkgtop.cc:275
msgid "Marked for"
msgstr "Märgitud"

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

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

#: dselect/pkgtop.cc:281
msgid "Priority"
msgstr "Tähtsus"

#: dselect/pkgtop.cc:282
msgid "Package"
msgstr "Pakk"

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

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

#~ msgid "returned error exit status %d.\n"
#~ msgstr "lõpetas veakoodiga %d.\n"

#~ msgid "was interrupted.\n"
#~ msgstr "katkestati.\n"

#~ msgid "was terminated by a signal: %s.\n"
#~ msgstr "katkestati signaaliga: %s.\n"

#~ msgid "unable to run %.250s process `%.250s'"
#~ msgstr "%.250s protsessi `%.250s' pole võimalik käivitada"

#~ msgid "failed config"
#~ msgstr "tõrge seadistamisel"

#~ msgid "unable to wait for %.250s"
#~ msgstr "%.250s järel pole võimalik oodata"

#~ msgid "Recommended"
#~ msgstr "Soovitatud"

#~ msgid "Rec"
#~ msgstr "Sov"

#~ msgid "unable to ignore signal %d before running %.250s"
#~ msgstr "signaali %d pole enne %.250s käivitamist võimalik eirata"
