# translation of debconf_nn.po to Norwegian nynorsk
# translation of dpkg_nn.po to Norwegian (Nynorsk)
# translation of nn.po to Norwegian nynorsk
# translation of dpkg.po to Norwegian nynorsk
# translation of nn.po to Norwegian Nynorsk
# translation of dpkg.po to Norwegian Nynorsk
# Gaute Hvoslef Kvalnes <gaute@verdsveven.com>, 2003, 2004.
# Håvard Korsvoll <korsvoll@skulelinux.no>, 2003, 2004, 2005.
msgid ""
msgstr ""
"Project-Id-Version: debconf_nn\n"
"Report-Msgid-Bugs-To: debian-dpkg@lists.debian.org\n"
"POT-Creation-Date: 2011-10-14 07:11+0200\n"
"PO-Revision-Date: 2006-02-17 08:57+0200\n"
"Last-Translator: Håvard Korsvoll <korsvoll@skulelinux.no>\n"
"Language-Team: Norwegian nynorsk <i18n-nn@lister.ping.uio.no>\n"
"Language: nn\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 1.10\n"
"Plural-Forms:  nplurals=2; plural=(n != 1);\n"

#: dselect/basecmds.cc:125
msgid "Search for ? "
msgstr "Søk etter ? "

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

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

#: dselect/basecmds.cc:184
msgid "Press ? for help menu, . for next topic, <space> to exit help."
msgstr ""
"Trykk ? for å visa hjelpemeny, «.» for neste emne, <mellomrom> for å "
"avslutta hjelpa."

#: dselect/basecmds.cc:191
msgid "Help information is available under the following topics:"
msgstr "Hjelp for følgjande emne er tilgjengeleg:"

#: 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 ""
"Trykk ein tast frå lista over, <mellomrom> eller «q» for å avslutta hjelp.\n"
"  eller «.» for å lese kvar hjelpeside etter kvarandre. "

#: dselect/basecmds.cc:205
msgid "error reading keyboard in help"
msgstr "feil ved lesing av tastatur i hjelp"

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

#: dselect/baselist.cc:60
msgid "doupdate in SIGWINCH handler failed"
msgstr "douptade i SIGWINCH-handteraren feila"

#: dselect/baselist.cc:67
msgid "failed to restore old SIGWINCH sigact"
msgstr "klarte ikkje å gjenoppretta gammal SIGWINCH sigact"

#: dselect/baselist.cc:69
msgid "failed to restore old signal mask"
msgstr "klarte ikkje gjenoppretta gammal signalmaske"

#: dselect/baselist.cc:79
msgid "failed to get old signal mask"
msgstr "klarte ikkje henta gammal signalmaske"

#: dselect/baselist.cc:80
msgid "failed to get old SIGWINCH sigact"
msgstr "klarte ikkje henta gammal SIGWINCH sigact"

#: dselect/baselist.cc:84
msgid "failed to block SIGWINCH"
msgstr "klarte ikkje blokkera SIGWINCH"

#: dselect/baselist.cc:89
msgid "failed to set new SIGWINCH sigact"
msgstr "klarte ikkje setja ny SIGWINCH sigact"

#: dselect/baselist.cc:126
msgid "failed to allocate colour pair"
msgstr "klarte ikkje tilordna fargepar"

#: dselect/baselist.cc:167
msgid "failed to create title window"
msgstr "klarte ikkje laga tittelvindauge"

#: dselect/baselist.cc:171
msgid "failed to create whatinfo window"
msgstr "klarte ikkje laga whatinfo-vindauge"

#: dselect/baselist.cc:175
msgid "failed to create baselist pad"
msgstr "klarte ikkje laga baselist-pad"

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

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

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

#: dselect/baselist.cc:191
msgid "failed to create query window"
msgstr "klarte ikkje laga spørjingsvindauge"

#: dselect/baselist.cc:255
#, fuzzy
msgid "Keybindings"
msgstr "snøggtastar"

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

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

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

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

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

#: dselect/bindings.cc:139
msgid "Scroll onwards through help/information"
msgstr "Gå vidare gjennom hjelp/informasjon"

#: dselect/bindings.cc:140
msgid "Scroll backwards through help/information"
msgstr "Gå bakover gjennom hjelp/informasjon"

#: dselect/bindings.cc:141
msgid "Move up"
msgstr "Flytt opp"

#: dselect/bindings.cc:142
msgid "Move down"
msgstr "Flytt ned"

#: dselect/bindings.cc:143
msgid "Go to top of list"
msgstr "Gå til toppen av lista"

#: dselect/bindings.cc:144
msgid "Go to end of list"
msgstr "Gå til slutten av lista"

#: dselect/bindings.cc:145
msgid "Request help (cycle through help screens)"
msgstr "Be om hjelp (gå gjennom hjelpesidene)"

#: dselect/bindings.cc:146
msgid "Cycle through information displays"
msgstr "Gå gjennom informasjonssidene"

#: dselect/bindings.cc:147
msgid "Redraw display"
msgstr "Teikn sida på ny"

#: dselect/bindings.cc:148
msgid "Scroll onwards through list by 1 line"
msgstr "Gå vidare gjennom lista med ei linje"

#: dselect/bindings.cc:149
msgid "Scroll backwards through list by 1 line"
msgstr "Gå bakover gjennom lista med ei linje"

#: dselect/bindings.cc:150
msgid "Scroll onwards through help/information by 1 line"
msgstr "Gå vidare gjennom hjelp/informasjon med ei linje"

#: dselect/bindings.cc:151
msgid "Scroll backwards through help/information by 1 line"
msgstr "Gå bakover gjennom hjelp/informasjon med ei linje"

#: dselect/bindings.cc:152
msgid "Scroll onwards through list"
msgstr "Gå vidare gjennom lista"

#: dselect/bindings.cc:153
msgid "Scroll backwards through list"
msgstr "Gå bakover gjennom lista"

#: dselect/bindings.cc:156
msgid "Mark package(s) for installation"
msgstr "Merk pakkar for installasjon"

#: dselect/bindings.cc:157
msgid "Mark package(s) for deinstallation"
msgstr "Merk pakkar for avinstallasjon"

#: dselect/bindings.cc:158
msgid "Mark package(s) for deinstall and purge"
msgstr "Merk pakkar for avinstallasjon og slett"

#: dselect/bindings.cc:159
msgid "Make highlight more specific"
msgstr "Gjer utheving meir spesifikk"

#: dselect/bindings.cc:160
msgid "Make highlight less specific"
msgstr "Gjer utheving mindre spesifikk"

#: dselect/bindings.cc:161
msgid "Search for a package whose name contains a string"
msgstr "Søk etter ein pakke som har eit namn som inneheld ein streng"

#: dselect/bindings.cc:162
msgid "Repeat last search."
msgstr "Gjer om at førre søk"

#: dselect/bindings.cc:163
msgid "Swap sort order priority/section"
msgstr "Byt om sorteringsrekkjefølgje prioritet/seksjon"

#: dselect/bindings.cc:164
msgid "Quit, confirming, and checking dependencies"
msgstr "Avslutt, stadfesting og sjekk pakkekrav"

#: dselect/bindings.cc:165
msgid "Quit, confirming without check"
msgstr "Avslutt, stadfesting utan sjekk"

#: dselect/bindings.cc:166
msgid "Quit, rejecting conflict/dependency suggestions"
msgstr "Avslutt, avvis framlegg for konflikt/pakkekrav"

#: dselect/bindings.cc:167
msgid "Abort - quit without making changes"
msgstr "Avbryt - avslutt utan å gjera endringar"

#: dselect/bindings.cc:168
msgid "Revert to old state for all packages"
msgstr "Gå tilbake til gammal tilstand for alle pakkar"

#: dselect/bindings.cc:169
msgid "Revert to suggested state for all packages"
msgstr "Gå tilbake til føreslått tilstand for alle pakkar"

#: dselect/bindings.cc:170
msgid "Revert to directly requested state for all packages"
msgstr "Gå tilbake til direkte føreslått tilstand for alle pakkar"

#: dselect/bindings.cc:171
#, fuzzy
msgid "Revert to currently installed state for all packages"
msgstr "Gå tilbake til direkte føreslått tilstand for alle pakkar"

#: dselect/bindings.cc:174
msgid "Select currently-highlighted access method"
msgstr "Vel den utheva tilgangsmetoden"

#: dselect/bindings.cc:175
msgid "Quit without changing selected access method"
msgstr "Avslutt utan å endra den valde tilgangsmetoden"

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

#: dselect/helpmsgs.cc:29
#, fuzzy
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 ""
"Flyttetastar: Neste/Førre, Topp/Botn, Opp/Ned, Fram/Tilbake:\n"
"  Pil ned, j              Pil opp, k             flytt markeringa\n"
"  N, Page Down, Mellomrom P, Pil opp, Rettetast  bla lista 1 side\n"
"  ^n                      ^p                     bla lista 1 linje\n"
"  t, Home                 e, End                 hopp øvst/nedst i lista\n"
"  u                       d                      bla info 1 side\n"
"  ^u                      ^d                     bla info 1 linje\n"
"  B, Pil venstre          F, Pil høgre           sidevegs 1/3 skjerm\n"
"  ^b                      ^f                     sidevegs 1 teikn\n"
"\n"
"Marker pakkar for handtering seinare:\n"
" +, Insert  installer eller oppgrader  =, H  hald i noverande status\n"
" -, Delete  fjern                      :, G  frigjer: oppgrader eller la "
"vera ikkje-installert\n"
" _          fjern og reinsk ut oppsettet\n"
"                                             Ymse:\n"
"Avslutt, avbryt, skriv over (hugs store bokstavar): ?, F1 hjelp (òg Hjelp)\n"
" Return  Stadfest, avslutt (sjekk pakkekrav)        i, I  byt infofelt\n"
"   Q     Stadfest, avslutt (overstyr pakkekrav)     o, O  byt sortering\n"
" X, Escape  Avslutt utan å gjennomføra endringar    v, V  endra "
"statusvising\n"
"   R     tilbake til status før denne lista          ^l  teikn skjermen om "
"att\n"
"   U     set alle til føreslått status                /  søk (Return "
"avbryt)\n"
"   D     set alle til direkte førespurd status     n, \\ siste søk om att\n"

#: dselect/helpmsgs.cc:55
msgid "Introduction to package selections"
msgstr "Introduksjon til pakkeval"

#: 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 ""
"Velkomen til hovudpakkelista i dselect.\n"
"\n"
"Du vil få sjå ei liste over pakkar som er installerte eller som kan \n"
"installerast. Du kan bla gjennom lista ved hjelp av piltastane. Med "
"tastane \n"
"«+» og «-» kan du velja å installera eller fjerna pakkar eller grupper av \n"
"pakkar. I utgangspunkter er linja «Alle pakkar» vald, slik at dei "
"handlingane \n"
"du gjer påverkar alle pakkane som høyrer til under den markerte linja.\n"
"\n"
"Noko av det du vel kan føra til konfliktar eller problem med pakkekrav. I "
"så \n"
"fall vil du få ei eiga liste med dei pakkane dette gjeld, slik at du kan "
"løysa \n"
"problema.\n"
"\n"
"Du bør lesa oversikta over tastar og forklaringane til skjermbiletet. Det \n"
"finst ein god del skjermhjelp som du kan visa ved å trykkja på «?».\n"
"\n"
"Når du er ferdig med å velja pakkar, trykkjer du <Enter> dersom du vil "
"stadfesta \n"
"endringane eller «X» om du vil avslutta utan endringar. Ein siste kontroll "
"av \n"
"konfliktar og pakkekrav vert utført. Her vil du òg få opp ei eiga liste "
"ved \n"
"problem.\n"
"\n"
"Trykk <mellomrom> for å avslutta hjelpa og gå til lista no.\n"

#: dselect/helpmsgs.cc:80
msgid "Introduction to read-only package list browser"
msgstr "Introduksjon til skriveverna pakkeliste"

#: 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 ""
"Velkomen til hovudpakkelista i dselect.\n"
"\n"
"Du vil få sjå ei liste over pakkar som er installerte eller som kan \n"
"installerast. Fordi du ikkje har tilstrekkelege løyve til å oppdatera \n"
"pakkestatusar, får du ikkje lov til å endra pakkelista. Du kan bla gjennom \n"
"lista ved hjelp av piltastane (sjå hjelpeskjermen «Tastetrykk»), studera \n"
"statusen til pakkane og lesa informasjon om dei.\n"
"\n"
"Du bør lesa oversikta over tastar og forklaringane til skjermbiletet. Det \n"
"finst ein god del skjermhjelp som du kan visa ved å trykkja på «?».\n"
"\n"
"Når du er ferdig med å studera lista, kan du avslutta med «X» eller Enter.\n"
"\n"
"Trykk <mellomrom> for å avslutta hjelpa og gå til lista no.\n"

#: dselect/helpmsgs.cc:99
msgid "Introduction to conflict/dependency resolution sub-list"
msgstr "Introduksjon til eiga liste for løysing av konflikt eller pakkekrav"

#: 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 ""
"Løysing av pakkekrav og konfliktar - introduksjon.\n"
"\n"
"Eitt eller fleire av dei vala du har gjort fører til problem med "
"konfliktar \n"
"eller pakkekrav. Nokre av pakkane må installerast saman med visse andre, "
"og \n"
"nokre kombinasjonar av pakkar går ikkje saman.\n"
"\n"
"Du vil få sjå ei eiga liste med berre dei pakkane dette gjeld. Nedst på \n"
"skjermen er konfliktar og pakkekrav vist. Med «i» kan du byta mellom dette \n"
"feltet og felta for pakkeskildringar og intern kontrollinformasjon.\n"
"\n"
"Eit sett med «føreslegne» pakkar er gjort klart, og pakkane i lista er \n"
"markerte i samsvar med framlegget. Du kan trykkja Enter med ein gong for å \n"
"godta framlegget. Du kan avbryta endringane som forårsaka problemet og gå \n"
"tilbake til hovudlista ved å trykkja stor «X».\n"
"\n"
"Du kan òg bla gjennom lista og endra på markeringane slik du vil ha dei, "
"og \n"
"du kan forkasta framlegget ved å trykkja stor «D» eller «R». (Sjå \n"
"hjelpeskjermen for tastetrykk.) Med stor «Q» kan du tvinga gjennom eit "
"val, \n"
"dersom du vil overstyra råda eller trur at programmet tek feil.\n"
"\n"
"Trykk <mellomrom> for å avslutta hjelpa og gå til lista. \n"
"Hugs at du kan få hjelp med «?».\n"

#: dselect/helpmsgs.cc:125
msgid "Display, part 1: package listing and status chars"
msgstr "Skjermbilete, del 1: Pakkeliste og statusteikn"

#: dselect/helpmsgs.cc:125
#, fuzzy
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 ""
"Den øvste halvdelen av skjermen viser ei liste over pakkane. For kvar "
"pakke \n"
"finst det fire kolonnar for status i systemet. I stuttmodus (bruk «v» for "
"å \n"
"byta til detaljmodus) er kolonnane enkeltteikn frå venstre til høgre:\n"
"\n"
" Feilmerke: Mellomrom - ingen feil (men pakken kan vera øydelagd, sjå "
"nedanfor)\n"
"              «R»     - alvorleg feil ved installasjon, må installerast om "
"att\n"
" Installert status: Mellomrom - ikkje installert\n"
"                      «*»     - installert\n"
"                      «-»     - ikkje installert, men oppsettsfilene ligg "
"att\n"
"           pakkar i { «U»     - pakka ut, men ikkje sett opp enno\n"
"  desse tilstandane { «C»     - halvvegs oppsett (ein feil oppstod)\n"
"       er øydelagde { «I»     - halvvegs oppsett (ein feil oppstod)\n"
" Gammalt merke: det som var planlagd for denne pakken før lista vart vist\n"
" Merke: det som er planlagd for denne pakken\n"
"   «*»: markert for installasjon eller oppgradering\n"
"   «-»: markert for fjerning, men oppsettsfilene vil liggja att\n"
"   «=»: på vent, pakken skal ikkje endrast i det heile\n"
"   «_»: markert for fullstendig fjerning, inkludert oppsettet\n"
"   «n»: pakken er ny og er enno ikkje markert for installering, fjerning e."
"l.\n"
"\n"
"For kvar pakke kan du òg sjå informasjon om prioritet, kategori, namn, \n"
"installerte og tilgjengelege versjonar (vis/gøym med Shift + V) og \n"
"ei kort skildring.\n"

#: dselect/helpmsgs.cc:152
msgid "Display, part 2: list highlight; information display"
msgstr "Skjermbilete, del 2: Listemarkering, informasjonsvising"

#: 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 ""
"* Markering: Éi linje i pakkelista er markert. Denne viser kva for pakke \n"
"  eller pakkar som vert påverka når du trykkjer på «+», «-» eller «_».\n"
"\n"
"* Delelinja midt på skjermen forklarar kort statusen til den markerte \n"
"  pakken. Dersom ei gruppe er vald, viser linja ei skildring av gruppa. \n"
"  Dersom du ikkje skjønar kva statusteikna tyder, kan du gå til pakken og \n"
"  sjå kva som står på denne delelinga. Du kan òg trykkja «v» for \n"
"  fyldigare vising. (Trykk «v» igjen for å gå tilbake til stuttvisinga.)\n"
"\n"
"* Det nedste feltet på skjermen viser meir informasjon om den pakken som "
"er \n"
"  vald (dersom berre éin er vald).\n"
"\n"
"  Feltet kan visa ei fyldig skildring av pakken, dei interne \n"
"  kontrolldetaljane til pakken (anten for installerte eller tilgjengelege \n"
"  versjonar av pakken) eller informasjon om konfliktar og pakkekrav som \n"
"  involverer den valde pakken (i lister for løysing av konflikt/pakkekrav).\n"
"\n"
"  Trykk «i» for å byta mellom visingane, og «I» for å gøyma "
"informasjonsfeltet \n"
"eller utvida det slik at det dekkjer nesten heile skjermen.\n"

#: dselect/helpmsgs.cc:176
msgid "Introduction to method selection display"
msgstr "Introduksjon til metodeval"

#: 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 og dpkg kan installera automatisk ved å henta pakkefilene som skal \n"
"installerast frå fleire ulike stader.\n"
"\n"
"I denne lista kan du velja ein av desse installasjonsmetodane.\n"
"\n"
"Flytt markeringa til metoden du vil bruka og trykk på Enter. Du vert då "
"spurd \n"
"om informasjonen som trengst for å installera.\n"
"\n"
"Når du flyttar markeringa, får du sjå ei skildring av kvar metode nedst på \n"
"skjermen, dersom det finst noka skildring.\n"
"\n"
"Dersom du vil avslutta utan å endra på noko, trykkjer du på «x» medan du er "
"i \n"
"lista over installasjonsmetodar.\n"
"\n"
"Du kan sjå heile lista over tastetrykk ved å trykkja på «k» no eller frå \n"
"hjelpemenyen som du får når du trykkjer «?».\n"

#: dselect/helpmsgs.cc:196
msgid "Keystrokes for method selection"
msgstr "Tastetrykk for metodeval"

#: dselect/helpmsgs.cc:196
#, fuzzy
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 ""
"Flyttetastar: Neste/Førre, Topp/Botn, Opp/Ned, Fram/Tilbake:\n"
"  n, Pil ned, j           p, Pil opp, k          flytt markeringa\n"
"  N, Page Down, Mellomrom P, Pil opp, Rettetast  bla lista 1 side\n"
"  ^n                      ^p                     bla lista 1 linje\n"
"  t, Home                 e, End                 hopp øvst/nedst i lista\n"
"  u                       d                      bla info 1 side\n"
"  ^u                      ^d                     bla info 1 linje\n"
"  B, Pil venstre          F, Pil høgre           sidevegs 1/3 skjerm\n"
"  ^b                      ^f                     sidevegs 1 teikn\n"
"(Desse flyttetastane er dei same som i pakkelista.)\n"
"\n"
"Avslutt:\n"
" Return, Enter    vel denne metoden og gå til oppsettsdialogen\n"
" x, X             avbryt utan å endra eller setja opp installasjonen\n"
"\n"
"Ymse:\n"
"  ?, Hjelp, F1     hjelp\n"
" ^l                teikn skjermbiletet på nytt\n"
"  /                søk (bruk Enter til å avbryta med ein gong)\n"
"  \\                siste søk om att\n"

#: dselect/main.cc:60
msgid "Type dselect --help for help."
msgstr "Skriv «dselect --help» for hjelp."

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

#: dselect/main.cc:143
msgid "[A]ccess"
msgstr "[T]ilgang"

#: dselect/main.cc:143
msgid "Choose the access method to use."
msgstr "Vel tilgangsmetoden som skal brukast"

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

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

#: dselect/main.cc:144
msgid "Update list of available packages, if possible."
msgstr "Oppdater liste over tilgjengelege pakkar, viss mogeleg."

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

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

#: dselect/main.cc:145
msgid "Request which packages you want on your system."
msgstr "Be om dei pakkane du vil ha på systemet."

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

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

#: dselect/main.cc:146
msgid "Install and upgrade wanted packages."
msgstr "Installer og oppgrader dei valde pakkane."

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

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

#: dselect/main.cc:147
msgid "Configure any packages that are unconfigured."
msgstr "Set opp pakkar som ikkje er sett opp."

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

#: dselect/main.cc:148
msgid "[R]emove"
msgstr "[F]jern"

#: dselect/main.cc:148
msgid "Remove unwanted software."
msgstr "Fjern uønskte program."

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

#: dselect/main.cc:149
msgid "[Q]uit"
msgstr "[A]vslutt"

#: dselect/main.cc:149
msgid "Quit dselect."
msgstr "Avsluttar dselect."

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

#: dselect/main.cc:155
#, fuzzy, c-format
msgid "Debian `%s' package handling frontend version %s.\n"
msgstr "Debian `%s', brukargrensesnitt for pakkehandtering."

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

#: 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 ""
"Dette er fri programvare. Du finn kopieringsvilkåra i\n"
"GNU General Public License versjon 2 eller nyare. Det finst INGEN garanti.\n"
"Sjå «dpkg-deb --licence» for detaljar.\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 ""

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

#: dselect/main.cc:196
#, c-format
msgid ""
"  --help                     Show this help message.\n"
"  --version                  Show the version.\n"
"\n"
msgstr ""

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

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

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

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

#: dselect/main.cc:233
#, c-format
msgid "couldn't open debug file `%.255s'\n"
msgstr "klarte ikkje opna avlusingsfil `%.255s'\n"

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

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

#: dselect/main.cc:276
msgid "Null colour specification\n"
msgstr "Ingen fargespesifikasjon\n"

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

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

#: dselect/main.cc:329
msgid "Terminal does not appear to support cursor addressing.\n"
msgstr "Terminalen ser ikkje ut til å støtta markøradressering.\n"

#: dselect/main.cc:331
msgid "Terminal does not appear to support highlighting.\n"
msgstr "Terminalen ser ikkje ut til å støtta utheving.\n"

#: dselect/main.cc:333
#, fuzzy, 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 ""
"Set TERM-variabelen rett, bruk ein betre terminal eller \n"
"du lyt klare deg med handteringsverktøyet for kvar pakke "

#: dselect/main.cc:336
msgid "terminal lacks necessary features, giving up"
msgstr "terminalen manglar nødvendige funksjonar, gjev opp"

#: 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"
"Flytt rundt med ^P og ^N, piltastar, innleiande bokstavar eller "
"nummertastane;\n"
"Trykk <enter> for å stadfesta utvalet.   ^L teiknar skjermen på ny.\n"
"\n"

#: dselect/main.cc:428
msgid ""
"\n"
"\n"
"Read-only access: only preview of selections is available!"
msgstr ""
"\n"
"\n"
"Skriveverna tilgang: berre førehandsvising av utval er tilgjengeleg!"

#: dselect/main.cc:448
msgid "failed to getch in main menu"
msgstr "klarte ikkje bruka «getch» i hovedmenyen"

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

#: dselect/methlist.cc:77
msgid "dselect - list of access methods"
msgstr "dselect - liste over tilgangsmetodar"

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

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

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

#: dselect/methlist.cc:164 dselect/pkglist.cc:572
msgid "doupdate failed"
msgstr "«doupdate» feila"

#: dselect/methlist.cc:166 dselect/pkglist.cc:575
msgid "failed to unblock SIGWINCH"
msgstr "klarte ikkje avblokkera SIGWINCH"

#: dselect/methlist.cc:170 dselect/pkglist.cc:580
msgid "failed to re-block SIGWINCH"
msgstr "klarte ikkje reblokkera SIGWINCH"

#: dselect/methlist.cc:171 dselect/pkglist.cc:582
msgid "getch failed"
msgstr "«getch» feila"

#: dselect/methlist.cc:188
#, fuzzy
msgid "Explanation"
msgstr "forklaring på "

#: dselect/methlist.cc:197
msgid "No explanation available."
msgstr "Ingen forklaring tilgjengeleg."

#: 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"
"Trykk <enter> for å halda fram."

#: dselect/method.cc:161
#, c-format
msgid "Press <enter> to continue.\n"
msgstr "Trykk Enter for å halda fram.\n"

#: dselect/method.cc:162
#, fuzzy
msgid "<standard error>"
msgstr "skrivefeil på standard-feil"

#: dselect/method.cc:165
msgid "error reading acknowledgement of program failure message"
msgstr "feil ved lesing av godkjenning av programfeilmelding"

#: dselect/method.cc:196
msgid "update available list script"
msgstr "skript til oppdatering av tilgjengeliste"

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

#: dselect/method.cc:246
msgid "query/setup script"
msgstr "skript til spørjing/oppsett"

#: dselect/methparse.cc:53
#, c-format
msgid "syntax error in method options file `%.250s' -- %s"
msgstr "syntaksfeil i metodevalfila «%.250s» -- %s"

#: dselect/methparse.cc:59
#, c-format
msgid "error reading options file `%.250s'"
msgstr "feil ved lesing av valfila «%.250s»"

#: dselect/methparse.cc:90
#, c-format
msgid "unable to read `%.250s' directory for reading methods"
msgstr "klarte ikkje lesa katalogen «%.250s» for lesing av metodar"

#: dselect/methparse.cc:106
#, c-format
msgid "method `%.250s' has name that is too long (%d > %d characters)"
msgstr "metoden «%.250s» har for langt namn (%d > %d teikn)"

#: dselect/methparse.cc:117
#, c-format
msgid "unable to access method script `%.250s'"
msgstr "fekk ikkje tilgang til metodeskriptet «%.250s»"

#: dselect/methparse.cc:123
#, c-format
msgid "unable to read method options file `%.250s'"
msgstr "klarte ikkje lesa metodevalfila «%.250s»"

#: dselect/methparse.cc:147
msgid "non-digit where digit wanted"
msgstr "ikkje-tal der det skulle vera eit tal"

#: dselect/methparse.cc:150
msgid "EOF in index string"
msgstr "slutt-på-fil i indeksstreng"

#: dselect/methparse.cc:153
msgid "index string too long"
msgstr "for lang indeksstreng"

#: dselect/methparse.cc:156
msgid "newline before option name start"
msgstr "linjeskift før starten på valnamnet"

#: dselect/methparse.cc:158
msgid "EOF before option name start"
msgstr "slutt-på-fil før starten på valnamnet"

#: dselect/methparse.cc:162
msgid "nonalpha where option name start wanted"
msgstr "ikkje-bokstav der eit valnamn skulle starta"

#: dselect/methparse.cc:164
msgid "non-alphanum in option name"
msgstr "valnamnet inneheld teikn som ikkje er tal eller bokstavar"

#: dselect/methparse.cc:167
msgid "EOF in option name"
msgstr "slutt-på-fil i valnamn"

#: dselect/methparse.cc:172
msgid "newline before summary"
msgstr "linjeskift før skildringa"

#: dselect/methparse.cc:174
msgid "EOF before summary"
msgstr "slutt-på-fil før skildringa"

#: dselect/methparse.cc:180
msgid "EOF in summary - missing newline"
msgstr "slutt-på-fil i skildringa - manglar linjeskift"

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

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

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

#: dselect/methparse.cc:201
#, c-format
msgid "error during read of option description file `%.250s'"
msgstr "feil ved lesing av valskildringsfila «%.250s»"

#: dselect/methparse.cc:224
#, c-format
msgid "error during read of method options file `%.250s'"
msgstr "feil ved lesing av metodevalfila «%.250s»"

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

#: dselect/methparse.cc:289
#, c-format
msgid "unable to open new option file `%.250s'"
msgstr "klarte ikkje opna den nye valfila «%.250s»"

#: dselect/methparse.cc:292
#, c-format
msgid "unable to write new option to `%.250s'"
msgstr "klarte ikkje skriva den nye valfila «%.250s»"

#: dselect/methparse.cc:295
#, c-format
msgid "unable to close new option file `%.250s'"
msgstr "klarte ikkje lukka den nye valfila «%.250s»"

#: dselect/methparse.cc:297
#, c-format
msgid "unable to install new option as `%.250s'"
msgstr "klarte ikkje installera nytt val som «%.250s»"

#: dselect/pkgdisplay.cc:36
msgid "new package"
msgstr "ny pakke"

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

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

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

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

#. 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 "INSTALLER OM ATT"

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

#: dselect/pkgdisplay.cc:52
msgid "removed (configs remain)"
msgstr "fjerna (teke vare på oppsett)"

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

#: dselect/pkgdisplay.cc:54
msgid "unpacked (not set up)"
msgstr "utpakka (ikkje sett opp)"

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

#: dselect/pkgdisplay.cc:61
msgid "Required"
msgstr "Påkravd"

#: dselect/pkgdisplay.cc:62
msgid "Important"
msgstr "Viktig"

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

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

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

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

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

#: dselect/pkgdisplay.cc:70
msgid "suggests"
msgstr "føreslår"

#: dselect/pkgdisplay.cc:71
msgid "recommends"
msgstr "tilrår"

#: dselect/pkgdisplay.cc:72
msgid "depends on"
msgstr "krev"

#: dselect/pkgdisplay.cc:73
msgid "pre-depends on"
msgstr "forkrav"

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

#: dselect/pkgdisplay.cc:75
msgid "conflicts with"
msgstr "konflikt med"

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

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

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

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

#: dselect/pkgdisplay.cc:82
msgid "Imp"
msgstr "Vkt"

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

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

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

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

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

#: dselect/pkgdisplay.cc:98
msgid "Obsolete/local"
msgstr "Forelda/lokale"

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

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

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

#: dselect/pkgdisplay.cc:102 dselect/pkgdisplay.cc:111
msgid "Brokenly installed packages"
msgstr "Øydelagde installerte pakkar"

#: dselect/pkgdisplay.cc:103
msgid "Newly available packages"
msgstr "Nye tilgjengelege pakkar"

#: dselect/pkgdisplay.cc:104
msgid "Updated packages (newer version is available)"
msgstr "Oppdaterte pakkar (nyare versjon tilgjengeleg)"

#: dselect/pkgdisplay.cc:105
msgid "Obsolete and local packages present on system"
msgstr "Forelda og lokale pakkar på systemet"

#: dselect/pkgdisplay.cc:106
msgid "Up to date installed packages"
msgstr "Pakkar som er installerte i nyaste versjon"

#: dselect/pkgdisplay.cc:107
msgid "Available packages (not currently installed)"
msgstr "Tilgjengelege pakkar (ikkje installerte)"

#: dselect/pkgdisplay.cc:108
msgid "Removed and no longer available packages"
msgstr "Fjerna pakkar som ikkje lenger er tilgjengelege"

#: dselect/pkgdisplay.cc:112
msgid "Installed packages"
msgstr "Installerte pakkar"

#: dselect/pkgdisplay.cc:113
msgid "Removed packages (configuration still present)"
msgstr "Fjerna pakkar (teke vare på oppsettet)"

#: dselect/pkgdisplay.cc:114
msgid "Purged packages and those never installed"
msgstr "Pakkar som er utreinska eller aldri installerte"

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

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

#: dselect/pkgdisplay.cc:198
msgid "dselect - recursive package listing"
msgstr "dselect - rekursiv pakkeliste"

#: dselect/pkgdisplay.cc:199
msgid "dselect - inspection of package states"
msgstr "dselect - inspeksjon av pakkestatus"

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

#: dselect/pkgdisplay.cc:208
msgid " (by section)"
msgstr " (etter del)"

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

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

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

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

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

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

#: dselect/pkgdisplay.cc:241
msgid " (by availability)"
msgstr " (etter tilgjenge)"

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

#: dselect/pkgdisplay.cc:258
msgid " mark:+/=/- terse:v help:?"
msgstr " marker:+/=/- stutt:v hjelp:?"

#: dselect/pkgdisplay.cc:259
msgid " mark:+/=/- verbose:v help:?"
msgstr " marker:+/=/- fyldig:v hjelp:?"

#: dselect/pkgdisplay.cc:260
msgid " terse:v help:?"
msgstr " stutt:v hjelp:?"

#: dselect/pkgdisplay.cc:261
msgid " verbose:v help:?"
msgstr " fyldig:v hjelp:?"

#: 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 ""
"Du har vald ei linje med mange pakkar. Dersom du vel å installera, fjerna, "
"halda tilbake eller liknande, vil handlinga påverka alle pakkane som passar "
"til kriteriet.\n"
"\n"
"Dersom du flyttar markeringa til ei linje med berre éin pakke, kan du sjå "
"informasjon om den pakken i dette feltet.\n"
"Du kan endra sorteringsrekkjefølgja med «o» og «O» for sjølv å kunna markera "
"pakkar i andre grupper."

#: dselect/pkginfo.cc:93
#, fuzzy
msgid "Interrelationships"
msgstr "samanhengar"

#: dselect/pkginfo.cc:112
#, fuzzy
msgid "No description available."
msgstr "inga skildring tilgjengeleg."

#: dselect/pkginfo.cc:130
#, fuzzy
msgid "Installed control file information"
msgstr "installert kontrollinformasjon for "

#: dselect/pkginfo.cc:146
#, fuzzy
msgid "Available control file information"
msgstr "tilgjengeleg versjon av kontrollfilinformasjon"

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

#: dselect/pkglist.cc:507
msgid "invalid search option given"
msgstr "ugyldig søkjeval oppgjeve"

#: dselect/pkglist.cc:521
msgid "error in regular expression"
msgstr "feil i regulært uttrykk"

#: dselect/pkgsublist.cc:107
msgid " does not appear to be available\n"
msgstr " ser ikkje ut til å vera tilgjengeleg\n"

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

#: dselect/pkgtop.cc:57
msgid "All"
msgstr "Alle"

#: dselect/pkgtop.cc:79
msgid "All packages"
msgstr "Alle pakkar"

#: dselect/pkgtop.cc:83
#, c-format
msgid "%s packages without a section"
msgstr "%s pakkar utan nokon del"

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

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

#: dselect/pkgtop.cc:95
#, c-format
msgid "%s %s packages without a section"
msgstr "%s %s pakkar utan nokon del"

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

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

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

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

#: dselect/pkgtop.cc:271
msgid "Old mark"
msgstr "Gammalt merke"

#: dselect/pkgtop.cc:275
msgid "Marked for"
msgstr "Markert for"

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

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

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

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

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

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

#~ msgid "returned error exit status %d.\n"
#~ msgstr "avslutta med feilstatus %d.\n"

#~ msgid "was interrupted.\n"
#~ msgstr "vart avbrote.\n"

#~ msgid "was terminated by a signal: %s.\n"
#~ msgstr "vart avbrote av eit signal: %s.\n"

#~ msgid "(It left a coredump.)\n"
#~ msgstr "(Lét etter seg ein minnedump.)\n"

#~ msgid "failed with an unknown wait return code %d.\n"
#~ msgstr "mislukkast med ein ukjend ventereturkode %d.\n"

#~ msgid "unable to run %.250s process `%.250s'"
#~ msgstr "klarer ikkje køyra %.250s prosess `%.250s'"

#~ msgid "failed config"
#~ msgstr "mislukka oppsett"

#~ msgid "unable to wait for %.250s"
#~ msgstr "klarer ikkje venta på %.250s"

#~ msgid "got wrong child's status - asked for %ld, got %ld"
#~ msgstr "fekk status frå feil barn - spurde etter %ld, fekk %ld"

#~ msgid "Recommended"
#~ msgstr "Tilrådd"

#~ msgid "Contrib"
#~ msgstr "Bidrag"

#~ msgid "Rec"
#~ msgstr "Tlr"

#~ msgid "Ctb"
#~ msgstr "Bdr"

#~ 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() ferdig ...\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 "[ingen]"

#~ msgid "error un-catching signal %d: %s\n"
#~ msgstr "feil ved slepp av signal %d: %s\n"

#~ msgid "unable to ignore signal %d before running %.250s"
#~ msgstr "klarer ikkje ignorera signal %d før køyring av %.250s"

#~ msgid "(no clientdata)"
#~ msgstr "(ingen klientdata)"

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

#~ msgid "interrelationships affecting "
#~ msgstr "samanhengar som påverkar "

#~ msgid "description of "
#~ msgstr "skildring av "

#~ msgid "description"
#~ msgstr "skildring"

#~ msgid "currently installed control info"
#~ msgstr "installert kontrollinformasjon"

#~ msgid "available version of control info for "
#~ msgstr "tilgjengeleg versjon av kontrollinformasjon for "
