0 - en to sv-SE translation catalogue (220 entries)

en: Binary package
sv-SE: Binär paket

en: Source package
sv-SE: Källkodspaket

en: dependencies
sv-SE: beroenden

en: conflict
sv-SE: konflikt

en: Packaging System: Tools and Fundamental Principles
sv-SE: Packeteringssystem: Verktyg och Fundamentala Principer

en: As a Debian system administrator, you will routinely handle <filename>.deb</filename> packages, since they contain consistent functional units (applications, documentation, etc.), whose installation and maintenance they facilitate. It is therefore a good idea to know what they are and how to use them.
sv-SE: I egenskap av en Debian systemadministratör kommer du regelbundet hantera paket med filändelsen <filename>.deb</filename>, efterssom de innehåller sammanhängande funktionella enheter (applikationer, dokumentation och så vidare) vars installation och underhållning möjliggörs tack vare paketen. Det är därför en bra idè att känna till vad de är och hur de skall användas.

en: This chapter describes the structure and contents of “binary” and “source” packages. The former are files directly usable by <command>dpkg</command>, while the latter contain the source code, as well as instructions for building binary packages.
sv-SE: Detta kapitel beskriver strukturen och innehållet av "binära-" och "källkods-paket". Det förstnämnda är filer som kan användas direkt av <command>dpkg</command>, den sistnämnda innehåller källkoden så väl som instruktioner hur dess binära paket skall byggas.

en: Structure of a Binary Package
sv-SE: Struktur av ett binär paket

en: <primary>package</primary><secondary>binary package</secondary><seealso><filename>.deb</filename></seealso>
sv-SE: <primary>paket</primary><secondary>binärpaket</secondary><seealso><filename>.deb</filename></seealso>

en: The Debian package format is designed so that its content may be extracted on any Unix system that has the classic commands <command>ar</command>, <command>tar</command>, and <command>xz</command> or sometimes <command>gzip</command> or <command>bzip2</command>. This seemingly trivial property is important for portability and disaster recovery.
sv-SE: Debians format på paket är designad på så vis att dess innehåll kan bli extraherad på samtliga Unixbaserade system som innehar de klassiska kommandona <command>ar</command>, <command>tar</command> och <command>xz</command> eller ibland <command>gzip</command> eller <command>bzip2</command>. Denna till synes triviala egenskap är viktig för portabiliteten samt för återställning i händelse av olycka.

en: Imagine, for example, that you mistakenly deleted the <command>dpkg</command> program, and that you could thus no longer install Debian packages. <command>dpkg</command> being a Debian package itself, it would seem your system would be done for... Fortunately, you know the format of a package and can therefore <ulink url="https://www.debian.org/distrib/packages#search_packages">download</ulink> the <filename>.deb</filename> file of the <emphasis role="pkg">dpkg</emphasis> package and install it manually (see sidebar <xref linkend="sidebar.dpkg-apt-ar" />). If by some misfortune one or more of the programs <command>ar</command>, <command>tar</command> or <command>gzip</command>/<command>xz</command>/<command>bzip2</command> have disappeared, you will only need to copy the missing program from another system (since each of these operates in a completely autonomous manner, without dependencies, a simple copy will suffice). If your system suffered some even more outrageous fortune, and even these don't work (maybe the deepest system libraries are missing?), you should try the static version of <command>busybox</command> (provided in the <emphasis role="pkg">busybox-static</emphasis> package), which is even more self-contained, and provides subcommands such as <command>busybox ar</command>, <command>busybox tar</command> and <command>busybox xz</command>.
sv-SE: Föreställ dig som exempel att du av misstag skulle råka ta bort programmet <command>dpkg</command> och således inte skulle kunna instalera nya Debian paket. Med tanke på att <command>dpkg</command> själv är ett paket skulle man kunna tro att systemet är uträknat. Lyckligtvis känner du dock till formatet på ett paket och kan sålunda <ulink url="https://www.debian.org/distrib/packages#search_packages">ladda ner</ulink> <filename>.deb</filename>-filen för paketet <emphasis role="pkg">dpkg</emphasis> och installera det manuellt (se sidovyn <xref linkend="sidebar.dpkg-apt-ar" />). Om det skulle hända sig att en eller flera av programmen <command>ar</command>, <command>tar</command> eller <command>gzip</command>/<command>xz</command>/<command>bzip2</command> har försvunnit, behöver du bara kopiera det saknade programmet från ett annat system (eftersom varje av dessa fungerar på ett helt självstyrande sätt utan några beroenden så är kopiering av filerna ifråga det enda som behövs). Om ditt system drabbats av ytterligare katastrofal olycka och inte ens dessa verktyg fungerar (kanske något av systemets mest grundläggande bibliotek saknas?) skulle du kunna testa den statiska versionen av <command>busybox</command> (som tillhandahålls av paketet <emphasis role="pkg">busybox-static</emphasis>), vilket är i ännu större grad självisolerad och tillhandahåller kommandon som <command>busybox ar</command>, <command>busybox tar</command> och <command>busybox xz</command>.

en: <emphasis>In case of a misfortune you better also have a backup of your system (see <xref linkend="sect.backup" />).</emphasis>
sv-SE: <emphasis>I händelse av en olyckshändelse är det också bra att ha en återställningskopia på ditt system (se <xref linkend="sect.backup" />).</emphasis>

en: <emphasis>TOOLS</emphasis> <command>dpkg</command>, <command>APT</command> and <command>ar</command>
sv-SE: <emphasis>VERKTYG</emphasis><command>dpkg</command>,<command>APT</command> och <command>ar</command>

en: <command>dpkg</command> is the program that handles <filename>.deb</filename> files (binary packages), notably extracting, analyzing, and unpacking them.
sv-SE: <command>dpkg</command> är programmet som hanterar <filename>.deb</filename> filer (binära paket), särskillt att extrahera, analysera och packa upp dem.

en: <acronym>APT</acronym> (the abbreviation of "Advanced Packaging Tool") is a group of programs that allows the execution of higher-level modifications to the system: installing or removing a package (while keeping dependencies satisfied), updating and upgrading the system, listing the available packages, etc.
sv-SE: <acronym>APT</acronym> (förkortning för Avancerad Packeteringsverktyg, engelska "Advanced Packaging Tool") är en grupp av program som möjliggör ikraftsättande av förändringar i systemet på en högre nivå: installera eller ta bort ett paket (samtidigt som beroenden tillmötesgås), uppdatera och uppgradera systemet, lista tillgängliga paket och så vidare.

en: <primary>unpacking</primary><secondary>binary package</secondary>
sv-SE: <primary>packar upp</primary><secondary>binär paket</secondary>

en: <emphasis>BACK TO BASICS</emphasis> Man page notation
sv-SE: <emphasis>TILLBAKA TILL GRUNDERNA</emphasis> Noteringar till sidor i manualen

en: It can be confusing for beginners to find references to “<citerefentry><refentrytitle>ar</refentrytitle><manvolnum>1</manvolnum></citerefentry>” in the literature. This is generally a convenient means of referring to the man page entitled <literal>ar</literal> in section 1.
sv-SE: Det kan upplevas förvirrande för nytillkomna att hitta referenser till "<citerefentry><refentrytitle>ar</refentrytitle><manvolnum>1</manvolnum></citerefentry>" i litteraturen. Detta sätt är dock generellt ett smidigt sätt att referera till manualsidan med titel <literal>ar</literal> sektion 1.

en: Sometimes this notation is also used to remove ambiguities, for example to distinguish between the <command>printf</command> command that can also be indicated by <citerefentry><refentrytitle>printf</refentrytitle><manvolnum>1</manvolnum></citerefentry> and the <function>printf</function> function in the C programming language, which can also be referred to as <citerefentry><refentrytitle>printf</refentrytitle><manvolnum>3</manvolnum></citerefentry>.
sv-SE: Ibland används också denna notation för att ta bort tvetydigheter, till exempel för att särskilja mellan kommandot <command>printf</command> som också kan anges med <citerefentry><refentrytitle>printf</refentrytitle><manvolnum>1</manvolnum></citerefentry> och funktionen <function>printf</function> i programspråket C, vilket också kan anges som <citerefentry><refentrytitle>printf</refentrytitle><manvolnum>3</manvolnum></citerefentry>.

en: <xref linkend="solving-problems" /> discusses manual pages in further detail (see <xref linkend="sect.manual-pages" />).
sv-SE: <xref linkend="solving-problems" /> diskuterar manualsidor i djupare detalj (se <xref linkend="sect.manual-pages" />).

en: Have a look at the content of a <filename>.deb</filename> file:
sv-SE: Ta en titt på innehållet i en <filename>.deb</filename>-fil:

en: As you can see, the <command>ar</command> archive of a Debian package is comprised of three files:
sv-SE: Som du kan se består <command>ar</command> arkivet av ett Debianpaket av tre filer:

en: This archive file contains all of the available meta-information, like the name and version of the package as well as some scripts to run before, during or after (un-)installation of it. Some of the meta-information allows package management tools to determine if it is possible to install or uninstall it, for example according to the list of packages already on the machine, and if files shipped have been modified locally.
sv-SE: Denna arkivfil innehåller all tillgänglig metainformation, så som namn och version på paketet så väl som några skript som skall köras innan, under eller efter (av-)installation av paketet. En del av metainformationen möjliggör för packeteringsverktygen att avgöra om det är möjligt att installera eller avinstallera paketet, exempelvis i enlighet med listan över redan installerade paket på datorn, samt om filer som skickats har modifierats lokalt.

en: This archive contains all of the files to be extracted from the package; this is where the executable files, libraries, documentation, etc., are all stored. Packages may use different compression formats, in which case the file will be named differently for <command>xz</command>, <command>bzip2</command> or <command>gzip</command>.
sv-SE: Detta arkiv innehåller alla de filer som skall extraheras från paketet; det är här alla körbara filer, bibliotek, dokumentation, och så vidare, förvaras. Paket kan använda olika komprimeringsformat, vilket gör att filen får olika namn för <command>xz</command>, <command>bzip2</command> eller <command>gzip</command>.

en: Package Meta-Information
sv-SE: Pakets Metainformation

en: <primary>package meta-information</primary><seealso>meta-information</seealso>
sv-SE: <primary>pakets metainformation</primary><seealso>metainformation</seealso>

en: <primary>package</primary><secondary>meta-information</secondary>
sv-SE: <primary>paket</primary><secondary>meta-information</secondary>

en: <primary>package</primary><secondary>maintainer scripts</secondary>
sv-SE: <primary>paket</primary><secondary>skript för underhåll</secondary>

en: <primary>package</primary><secondary>checksums</secondary>
sv-SE: <primary>paket</primary><secondary>checksummor</secondary>

en: Description: the <filename>control</filename> File
sv-SE: Beskrivning: <filename>control</filename> filen

en: <primary>package meta-information</primary>
sv-SE: <primary>paket meta-information</primary>

en: <primary>package</primary><secondary><filename>control</filename></secondary>
sv-SE: <primary>paket</primary><secondary><filename>kontroll</filename></secondary>

en: <primary><filename>control</filename></primary><seealso>package meta-information</seealso>
sv-SE: <primary><filename>kontroll</filename></primary><seealso>paket meta-information</seealso>

en: This file uses a structure similar to email headers (as defined by <link linkend="sidebar.rfc">RFC 2822</link>) and is fully described in the Debian Policy and the manual pages <citerefentry><refentrytitle>deb-control</refentrytitle><manvolnum>5</manvolnum></citerefentry> and <citerefentry><refentrytitle>deb822</refentrytitle><manvolnum>5</manvolnum></citerefentry>. <ulink type="block" url="https://www.debian.org/doc/debian-policy/ch-controlfields.html" />
sv-SE: Denna fil använder en struktur som liknar sidhuvudet på ett mail (definierad av <link linkend="sidebar.rfc">RFC 2822</link>) och är beskrivet i sin helhet i Debians policy samt manualsidorna <citerefentry><refentrytitle>deb-control</refentrytitle><manvolnum>5</manvolnum></citerefentry> och <citerefentry><refentrytitle>deb822</refentrytitle><manvolnum>5</manvolnum></citerefentry>. <ulink type="block" url="https://www.debian.org/doc/debian-policy/ch-controlfields.html" />

en: For example, for <emphasis role="pkg">apt</emphasis>, the <filename>control</filename> file looks like the following:
sv-SE: Som exempel, för <emphasis role="pkg">apt</emphasis> ser <filename>control</filename>-filen ut som följande:

en: <emphasis>BACK TO BASICS</emphasis> RFC — Internet standards
sv-SE: <emphasis>TILLBAKA TILL GRUNDERNA</emphasis> RFC — Internetstandarder

en: <acronym>RFC</acronym> is the abbreviation of “Request For Comments”. An RFC is generally a technical document that describes what will become an Internet standard. Before becoming standardized and frozen, these standards are submitted for public review (hence their name). The <acronym>IETF</acronym> (Internet Engineering Task Force) decides on the evolution of the status of these documents (proposed standard, draft standard, or standard).
sv-SE: <acronym>RFC</acronym> är förkortningen för "Efterfrågan På Kommentarer" (Request For Comments på engelska). En RFC är generellt ett tekniskt dokument som beskriver vad som kommer bli en internetstandard. Innan dessa blir standardiserad och fryst läggs standarderna upp för offentlig recensiering (därav dess namn). <acronym>IETF</acronym> (Insattsstyrkan för Internetteknologi, "Internet Engineering Task Force" på engelska) avgör dessa dokuments statusutveckling (föreslagen standard, utkast och standard).

en: RFC 2026 defines the process for standardization of Internet protocols. <ulink type="block" url="http://www.faqs.org/rfcs/rfc2026.html" />
sv-SE: RFC 2026 definierar processen kring standardisering av internetprotokoll. <ulink type="block" url="http://www.faqs.org/rfcs/rfc2026.html" />

en: Dependencies: the <literal>Depends</literal> Field
sv-SE: Beroenden: Fältet <literal>Beror på</literal>

en: <primary>dependency</primary>
sv-SE: <primary>beroende</primary>

en: <primary>package</primary><secondary>dependency</secondary>
sv-SE: <primary>packet</primary><secondary>beroende</secondary>

en: <command>&lt;&lt;</command>: less than;
sv-SE: <command>&lt;&lt;</command>: mindre än;

en: <command>&lt;=</command>: less than or equal to;
sv-SE: <command>&lt;=</command>: mindre än eller lika med;

en: <command>=</command>: equal to (note that “<literal>2.6.1</literal>” is not equal to “<literal>2.6.1-1</literal>”);
sv-SE: <command>=</command>: lika med (notera att exempelvis "<literal>2.6.1</literal>" inte är lika med "<literal>2.6.1-1</literal>");

en: <command>&gt;=</command>: greater than or equal to;
sv-SE: <command>&gt;=</command>: större eller lika med;

en: <command>&gt;&gt;</command>: greater than.
sv-SE: <command>&gt;&gt;</command>: större än.

en: <primary>meta-package</primary>
sv-SE: <primary>meta-paket</primary>

en: <emphasis>DEBIAN POLICY</emphasis> <literal>Recommends</literal>, <literal>Suggests</literal>, and <literal>Enhances</literal> fields
sv-SE: <emphasis>DEBIAN RIKTLINJER</emphasis> Fälten <literal>Recommends</literal>, <literal>Suggests</literal> och <literal>Enhances</literal>

en: <primary>package</primary><secondary>recommendations</secondary>
sv-SE: <primary>paket</primary><secondary>rekommendationer</secondary>

en: <primary>package</primary><secondary>suggestions</secondary>
sv-SE: <primary>paket</primary><secondary>förslag</secondary>

en: The <literal>Recommends</literal> and <literal>Suggests</literal> fields describe dependencies that are not compulsory. The “recommended” dependencies, the most important, considerably improve the functionality offered by the package but are not indispensable to its operation. The “suggested” dependencies, of secondary importance, indicate that certain packages may complement and increase their respective utility, but it is perfectly reasonable to install one without the others.
sv-SE: Fälten <literal>Recommends</literal> och <literal>Suggests</literal> beskriver beroenden som inte är obligatoriska. De "rekomenderade" beroenderna, de högre prioriterade, förbättrar avsevärt paketets funktionalitet, men är inte oersättlig för dess operation. De "föreslagna" beroenden, av sekundär prioritetsordning, indikerar att vissa paket kan komplettera varandra och utveckla varandras användbarhet, men att det är fullt resonligt att installera det ena utan de andra.

en: <primary>package</primary><secondary>enhancements</secondary>
sv-SE: <primary>paket</primary><secondary>förbättringar</secondary>

en: The <literal>Enhances</literal> field also describes a suggestion, but in a different context. It is indeed located in the suggested package, and not in the package that benefits from the suggestion. Its interest lies in that it is possible to add a suggestion without having to modify the package that is concerned. Thus, all add-ons, plug-ins, and other extensions of a program can then appear in the list of suggestions related to the software. Although it has existed for several years, this last field is still largely ignored by programs such as <command>apt</command> or <command>synaptic</command>. Its purpose is for a suggestion made by the <literal>Enhances</literal> field to appear to the user in addition to the traditional suggestions — found in the <literal>Suggests</literal> field.
sv-SE: Fältet <literal>Enhances</literal> beskriver också förslag, men i en annat kontext. Fältet finns i paketet som föreslås, inte i paketet som drar nytta av förslaget. Dess syfte är att möjliggöra att föreslag kan läggas till utan att behöva modifiera paketet som omfattas. På så vis kan alla insticksprogram och andra tillägg till ett program listas som förslag relaterat till en mjukvara. Även om det har funnits i flera år, är detta sista fält oftast ignorerat av program så som <command>apt</command> eller <command>synaptic</command>. Dess syfte är för att ett förslag ställt i fältet <literal>Enhances</literal> skall framträda för användaren, utöver de traditionella föreslagen — funna i fältet <literal>Suggests</literal>.

en: <emphasis>DEBIAN POLICY</emphasis> <literal>Pre-Depends</literal>, a more demanding <literal>Depends</literal>
sv-SE: <emphasis>DEBIAN RIKTLINJER</emphasis> <literal>Pre-Depends</literal>, en mer krävande <literal>Depends</literal>

en: <primary>package</primary><secondary>pre-dependency</secondary>
sv-SE: <primary>paket</primary><secondary>innan-beroende</secondary>

en: <primary>pre-dependency</primary>
sv-SE: <primary>innan-beroende</primary>

en: “Pre-dependencies”, which are listed in the “<literal>Pre-Depends</literal>” field in the package headers, complete the normal dependencies; their syntax is identical. A normal dependency indicates that the package in question must be unpacked and configured before configuration of the package declaring the dependency. A pre-dependency stipulates that the package in question must be unpacked and configured before execution of the pre-installation script of the package declaring the pre-dependency, that is before its installation.
sv-SE: "Innan-beroenden", som listas i fältet “<literal>Pre-Depends</literal>” i paketets sidhuvud, kompletterar de normala beroenden; dess syntax är identisk. Ett normalt beroende indikerar att paketet ifråga måste vara uppackad och konfigurerad innan konfigurering görs för det paket som anger beroendet. Ett innan-beroende föreskriver att paketet i fråga måste vara uppackad och konfigurerad innan pre-installationsskript körs för det paket som deklarerar innan-beroendet, det vill säga innan dess installation.

en: Conflicts: the <literal>Conflicts</literal> field
sv-SE: Konflikter: fältet <literal>Conflicts</literal>

en: <primary>conflicts</primary>
sv-SE: <primary>konflikter</primary>

en: <primary>package</primary><secondary>conflict</secondary>
sv-SE: <primary>paket</primary><secondary>konflikt</secondary>

en: The <literal>Conflicts</literal> field indicates when a package cannot be installed simultaneously with another. The most common reasons for this are that both packages include a file of the same name and path, or provide the same service on the same TCP port, or would hinder each other's operation.
sv-SE: Fältet <literal>Conflicts</literal> indikerar när ett paket inte kan installeras samtidigt som ett annat. De vanligaste orsakerna till detta är att båda paketen inkluderar en fil med samma namn och sökväg, eller tillhandahåller samma tjänst på samma TCP port, eller skulle hindra varandras drift.

en: <command>dpkg</command> will refuse to install a package if it triggers a conflict with an already installed package, except if the new package specifies that it will “replace” the installed package, in which case <command>dpkg</command> will choose to replace the old package with the new one. <command>apt</command> always follows your instructions: if you choose to install a new package, it will automatically offer to uninstall the package that poses a problem.
sv-SE: <command>dpkg</command> kommer vägra att installera ett paket om det skapar en konflikt med ett redan installerat paket, såvida inte det nya paketet specificerar att det kommer "ersätta" det installerade paketet varvid <command>dpkg</command> kommer välja att ersätta et äldre paketet med det nya. <command>apt</command> följer alltid din instruktion: om du väljer att installera ett nytt paket, kommer den automatiskt att erbjuda att avinstallera eventuella paket som utgör ert problem.

en: Incompatibilities: the <literal>Breaks</literal> Field
sv-SE: Oförenligheter: Fältet <literal>Breaks</literal>

en: <primary>incompatibilities</primary>
sv-SE: <primary>oförenligheter</primary>

en: <primary>package</primary><secondary>incompatibility</secondary>
sv-SE: <primary>paket</primary><secondary>oförenlighet</secondary>

en: The <literal>Breaks</literal> field has an effect similar to that of the <literal>Conflicts</literal> field, but with a special meaning. It signals that the installation of a package will “break” another package (or particular versions of it). In general, this incompatibility between two packages is transitory, and the <literal>Breaks</literal> relationship specifically refers to the incompatible versions.
sv-SE: Fältet <literal>Breaks</literal> har en effekt liknande som fältet <literal>Conflicts</literal>, men med en speciell innebörd. Det signalerar att installationen av ett paket kommer "knäcka" ett annat paket (eller en särskild version av det). Generellt är många dylika inkompatibiliteter mellan två paketen övergående, och <literal>Breaks</literal> relationen refererar specifikt till inkompatibla versioner.

en: <command>dpkg</command> will refuse to install a package that breaks an already installed package, and <command>apt</command> will try to resolve the problem by updating the package that would be broken to a newer version (which is assumed to be fixed and, thus, compatible again).
sv-SE: <command>dpkg</command> kommer vägra installera ett paket som knäcker ett redan installerat paket, och <command>apt</command> kommer försöka lösa problemet genom att uppgradera paketet som annars skulle ha knäckts till en nyare version (vilken antas vara fixad, och således kompatibel igen).

en: This type of situation may occur in the case of updates without backwards compatibility: this is the case if the new version no longer functions with the older version, and causes a malfunction in another program without making special provisions. The <literal>Breaks</literal> field prevents the user from running into these problems.
sv-SE: Denna typ av situation kan uppstå vid händelse av en uppdatering utan bakåtkompatibilitet: detta är fallet om den nya versionen inte längre fungerar med den äldre versionen och orsakar funktionsstörningar i andra program utan att skapa särskillda bestämmelser. Fältet <literal>Breaks</literal> skyddar användaren från att hamna i dylika problem.

en: Provided Items: the <literal>Provides</literal> Field
sv-SE: Tillhandahållna element: Fältet <literal>Provides</literal>

en: This field introduces the very interesting concept of a “virtual package”. It has many roles, but two are of particular importance. The first role consists in using a virtual package to associate a generic service with it (the package “provides” the service). The second indicates that a package completely replaces another, and that for this purpose it can also satisfy the dependencies that the other would satisfy. It is thus possible to create a substitution package without having to use the same package name.
sv-SE: Detta fält introducerar det intressanta konceptet av "virtuella paket". Det har många syften, men två av dem är av särskild vikt. Första av dessa syften består av att använda ett virtuellt paket för att kunna knyta en generell tjänst till det (paketet "tillhandahåller" den tjänsten). Det andra syftet är för att indikera att ett paket helt ersätter ett annat, och att det för detta föremål också kan tillmötesgå beroenden likväl som det andra skulle kunna gjort. Det är på så vis möjligt att skapa ett ersättningspaket utan att behöva använda samma namn.

en: <emphasis>VOCABULARY</emphasis> Meta-package and virtual package
sv-SE: <emphasis>VOKABULÄR</emphasis> Metapaket och virtuella paket

en: <primary>package</primary><secondary>virtual package</secondary>
sv-SE: <primary>paket</primary><secondary>virtuellt paket</secondary>

en: <primary>virtual package</primary>
sv-SE: <primary>virtuella paket</primary>

en: It is essential to clearly distinguish meta-packages from virtual packages. The former are real packages (including real <filename>.deb</filename> files), whose only purpose is to express dependencies.
sv-SE: Det är väsentligt att tydligt skilja metapaket från virtuella paket. Det tidigare är ett riktigt paket (inklusive riktiga <filename>.deb</filename> filer), vars enda syfte är att ange beroenden.

en: Virtual packages, however, do not exist physically; they are only a means of identifying real packages based on common, logical criteria (service provided, compatibility with a standard program or a pre-existing package, etc.).
sv-SE: Virtuella paket och andra sidan existerar inte fysiskt; de är enbart ett verktyg för att kunna identifiera verkliga paket baserat på vanliga, logiska kriterier (tillhandahållna tjänster, kompatibilitet med ett standardprogram eller ett tidigare installerat paket, och så vidare).

en: Providing a “Service”
sv-SE: Tillhandahålla en "tjänst"

en: Let us discuss the first case in greater detail with an example: all mail servers, such as <emphasis role="pkg">postfix</emphasis> or <emphasis role="pkg">sendmail</emphasis> are said to “provide” the <emphasis role="pkg">mail-transport-agent</emphasis> virtual package. Thus, any package that needs this service to be functional (e.g. a mailing list manager, such as <emphasis role="pkg">smartlist</emphasis> or <emphasis role="pkg">sympa</emphasis>) simply states in its dependencies that it requires a <emphasis role="pkg">mail-transport-agent</emphasis> instead of specifying a large yet incomplete list of possible solutions (e.g. <command>postfix | sendmail | exim4 | …</command>). Furthermore, it is useless to install two mail servers on the same machine, which is why each of these packages declares a conflict with the <emphasis role="pkg">mail-transport-agent</emphasis> virtual package. A conflict between a package and itself is ignored by the system, but this technique will prohibit the installation of two mail servers side by side.
sv-SE: Låt oss diskutera det första fallet i djupare detalj med ett exempel: varje mailserver, så som <emphasis role="pkg">postfix</emphasis> eller <emphasis role="pkg">sendmail</emphasis>, anges "tillhandahålla" det virtuella paketet <emphasis role="pkg">mail-transport-agent</emphasis>. På så vis kan alla paket som behöver denna tjänst för att fungera (exempelvis epostlistahanterare, så som <emphasis role="pkg">smartlist</emphasis> eller <emphasis role="pkg">sympa</emphasis>) enkelt hänvisa i sina beroenden att det behöver <emphasis role="pkg">mail-transport-agent</emphasis> istället för att lista en lång men ändå inkomplett lista över möjliga lösningar (exempelvis <command>postfix | sendmail | exim4 | …</command>). Vidare är det oanvändbart att installera två mailservrar på samma maskin, vilket är anledningen till att samtliga dessa paket deklarerar en konflikt med det virtuella paketet <emphasis role="pkg">mail-transport-agent</emphasis>. En konflikt mellan paketet och sig själv ignoreras av systemet, men denna teknik kommer motverka att två mailservrar installeras sida vid sida.

en: <emphasis>DEBIAN POLICY</emphasis> List of virtual packages
sv-SE: <emphasis>DEBIAN RIKTLINJER</emphasis> Lista över virtuella paket

en: For virtual packages to be useful, everyone must agree on their name. This is why they are standardized in the Debian Policy. The list includes among others <emphasis role="pkg">mail-transport-agent</emphasis> for mail servers, <emphasis role="pkg">c-compiler</emphasis> for C programming language compilers, <emphasis role="pkg">www-browser</emphasis> for web browsers, <emphasis role="pkg">httpd</emphasis> for web servers, <emphasis role="pkg">ftp-server</emphasis> for FTP servers, <emphasis role="pkg">x-terminal-emulator</emphasis> for terminal emulators in graphical mode (<command>xterm</command>), and <emphasis role="pkg">x-window-manager</emphasis> for window managers.
sv-SE: För att virtuella paket skall kunna vara användbara behöver alla komma överens om deras namn. Detta är varför de är standardiserade i Debians riktlinjer. Listan inkluderar bland många andra <emphasis role="pkg">mail-transport-agent</emphasis> för mailservrar, <emphasis role="pkg">c-compiler</emphasis> för kompilerare till programeringsspråket C, <emphasis role="pkg">www-browser</emphasis> för webbläsare, <emphasis role="pkg">httpd</emphasis> för webbservrar, <emphasis role="pkg">ftp-server</emphasis> för FTP-servrar, <emphasis role="pkg">x-terminal-emulator</emphasis> för terminalemulatorer i grafiska miljöer (<command>xterm</command>) och <emphasis role="pkg">x-window-manager</emphasis> för fönsterhanterare.

en: Interchangeability with Another Package
sv-SE: Utbytbarhet med ett Annat Paket

en: Use of a <literal>Provides</literal> field in order to not break dependencies
sv-SE: Användande av fältet <literal>Provides</literal> i syfte att inte bryta beroenden

en: This feature is very useful, since it is never possible to anticipate the vagaries of development, and it is necessary to be able to adjust to renaming, and other automatic replacement, of obsolete software.
sv-SE: Denna funktion är väldigt användbar, eftersom det aldrig är möjligt att förutse utvecklingens alla nycker och att det är nödvändigt att kunna anpassas efter namnändring, samt andra automatiska ersättningar, av föråldrad mjukvara.

en: <emphasis>BACK TO BASICS</emphasis> Perl, a programming language
sv-SE: <emphasis>TILLBAKA TILL GRUNDERNA</emphasis> Perl, ett programmeringsspråk

en: <primary>CPAN</primary><seealso>Comprehensive Perl Archive Network</seealso>
sv-SE: <primary>CPAN</primary><seealso>Omfattande nätverksarkiv för Perl, Comprehensive Perl Archive Network</seealso>

en: <primary>Comprehensive Perl Archive Network</primary>
sv-SE: <primary>Omfattande nätverksarkiv för Perl, Comprehensive Perl Archive Network</primary>

en: Perl (Practical Extraction and Report Language) is a very popular programming language. It has many ready-to-use modules that cover a vast spectrum of applications, and that are distributed by the <acronym>CPAN</acronym> (Comprehensive Perl Archive Network) servers, an exhaustive network of Perl packages. <ulink type="block" url="https://www.perl.org/" /> <ulink type="block" url="https://www.cpan.org/" />
sv-SE: Perl (Praktiskt språk för Extraktion och Rapportering, Practical Extraction and Report Language) är ett väldigt populärt programmeringsspråk. Det innehar många moduler som är redo att användas och som täcker ett brett spektrum av olika applikationer och som distribueras genom <acronym>CPAN</acronym> (Omfattande nätverksarkiv för Perl, Comprehensive Perl Archive Network) servrar, ett omfattande nätverk av paket för Perl. <ulink type="block" url="https://www.perl.org/" /><ulink type="block" url="https://www.cpan.org/" />

en: Since it is an interpreted language, a program written in Perl does not require compilation prior to execution. This is why they are called “Perl scripts”.
sv-SE: Eftersom det är ett tolkat språk behöver ett program skrivet i Perl inte kompileras innan det kan köras. Detta är anledningen till varför de kallas "Perl-skript".

en: Past Limitations
sv-SE: Tidigare begränsningar

en: Replacing Files: The <literal>Replaces</literal> Field
sv-SE: Ersätta Filer: Fältet <literal>Replaces</literal>

en: <primary>replacement</primary>
sv-SE: <primary>ersättning</primary>

en: <primary>package</primary><secondary>replacement</secondary>
sv-SE: <primary>paket</primary><secondary>ersättning</secondary>

en: The use of this field is justified when package names change or when a package is included in another. This also happens when the maintainer decides to distribute files differently among various binary packages produced from the same source package: a replaced file no longer belongs to the old package, but only to the new one.
sv-SE: Användande av detta fält är motiverat när namn på paket ändras eller när ett paket inkluderas i ett annat. Detta händer också när paketens underhållare beslutar sig för att fördela filer annorlunda mellan olika binära paket producerat från samma källkodspaket: en ersatt fil som inte längre hör till det tidigare paketet, utan enbart till den nya.

en: If all of the files in an installed package have been replaced, the package is considered to be removed. Finally, this field also encourages <command>dpkg</command> to remove the replaced package where there is a conflict.
sv-SE: Om alla filer i ett installerat paket har ersatts så anses paketet ifråga kunna avinstalleras. Slutligen uppmuntrar detta fält <command>dpkg</command> att ta bort det ersatta paketet när det finns en konflikt.

en: <emphasis>GOING FURTHER</emphasis> The <literal>Tag</literal> field
sv-SE: <emphasis>UTVECKLA</emphasis> Fältet <literal>Tag</literal>

en: Configuration Scripts
sv-SE: Konfiguration Scripts

en: <emphasis>GOING FURTHER</emphasis> <command>dpkg</command>'s database
sv-SE: <emphasis>UTVECKLA</emphasis> <command>dpkg</command>'s databas

en: <primary>dpkg</primary><secondary>database</secondary>
sv-SE: <primary>dpkg</primary><secondary>databas</secondary>

en: All of the configuration scripts for installed packages are stored in the <filename>/var/lib/dpkg/info/</filename> directory, in the form of a file prefixed with the package's name. This directory also includes a file with the <filename>.list</filename> extension for each package, containing the list of files that belong to that package.
sv-SE: Alla konfigurationsskript för installerade paket lagras i katalogen <filename>/var/lib/dpkg/info/</filename>, i form av en fil med paketnamnet som prefix. Denna katalog innehåller också en fil med filändelsen <filename>.list</filename> för varje paket, som innehåller en lista över alla filer som hör till paketet.

en: The <filename>/var/lib/dpkg/status</filename> file contains a series of data blocks (in the format of the famous mail headers, RFC 2822) describing the status of each package. The information from the <filename>control</filename> file of the installed packages is also replicated there.
sv-SE: Filen <filename>/var/lib/dpkg/status</filename> innehåller en serie av datablock (i det välkända formatet för mailsidhuvud, RFC 2822) beskrivande statusen för varje paket. Informationen från filen <filename>control</filename> från installerade paket kopieras också in i denna fil.

en: In general, the <filename>preinst</filename> script is executed prior to installation of the package, while <filename>postinst</filename> follows it. Likewise, <filename>prerm</filename> is invoked before removal of a package and <filename>postrm</filename> afterwards. An update of a package is equivalent to removal of the previous version and installation of the new one. It is not possible to describe in detail all the possible scenarios here, but we will discuss the most common two: an installation/update and a removal.
sv-SE: Generellt körs skriptet <filename>preinst</filename> innan paketet installeras, medan <filename>postinst</filename> körs efter installation. På samma sätt åberopas skriptet <filename>prerm</filename> innan ett paket tas bort samt <filename>postrm</filename> efteråt. En uppgradering av ett paket är detsamma som att ta bort den tidigare versionen och installera den nya. Det är inte möjligt att i detalj beskriva alla möjliga scenarion här, men vi kommer diskutera djupare de två mest vanliga: en installation/uppgradering och en borttagande.

en: <emphasis>CAUTION</emphasis> Symbolic names of the scripts
sv-SE: <emphasis>FÖRSIKTIGHET</emphasis> Symboliska namn på skript

en: The sequences described in this section call configuration scripts by specific names, such as <command>old-prerm</command> or <command>new-postinst</command>. They are, respectively, the <command>prerm</command> script contained in the old version of the package (installed before the update) and the <command>postinst</command> script contained in the new version (installed by the update).
sv-SE: Sekvenserna beskrivna i denna sektion kallar konfigurationsskripten med specifika namn, så som <command>gamla-prerm</command> eller <command>nya-postinst</command>. De är, respektive, de <command>prerm</command> skript som tillhandahålls av det gamla paketet (som var installerad innan uppdatering) och de <command>postinst</command> som tillhandahålls i den nya versionen (som installeras i uppdateringen).

en: <emphasis>TIP</emphasis> State diagrams
sv-SE: <emphasis>TIPS</emphasis> Statusdiagram

en: Manoj Srivastava and Margarita Manterola made the following diagrams explaining how the configuration scripts are called by <command>dpkg</command>. <ulink type="block" url="https://people.debian.org/~srivasta/MaintainerScripts.html" /> <ulink type="block" url="https://www.debian.org/doc/debian-policy/ap-flowcharts.html" />
sv-SE: Manoj Srivastava och Margarita Manterola har gjort följande diagram som förklarar hur konfigurationsskripten kallas av <command>dpkg</command>. <ulink type="block" url="https://people.debian.org/~srivasta/MaintainerScripts.html" /> <ulink type="block" url="https://www.debian.org/doc/debian-policy/ap-flowcharts.html" />

en: Installation and Upgrade
sv-SE: Installation och Uppgradera

en: <primary><command>dpkg</command></primary><secondary>internal operation</secondary>
sv-SE: <primary><command>dpkg</command></primary><secondary>intern operation</secondary>

en: <primary>package</primary><secondary>installation</secondary>
sv-SE: <primary>paket</primary><secondary>installation</secondary>

en: The new package files are then unpacked. If a file already exists, it is replaced, but a backup copy is temporarily made.
sv-SE: Filerna i det nya paketet packas sen upp. Om en fil redan existerar så kommer den skrivas över, men en temporär säkerhetskopia skapas innan detta utförs.

en: <command>dpkg</command> updates all of the internal data (file list, configuration scripts, etc.) and removes the backups of the replaced files. This is the point of no return: <command>dpkg</command> no longer has access to all of the elements necessary to return to the previous state.
sv-SE: <command>dpkg</command> uppdaterar all intern data (lista med filer, konfigurations-skript, och så vidare) och tar bort säkerhetskopiorna på de ersatta filerna. Detta är stunden utan återvändo: <command>dpkg</command> kommer inte längre att ha tillgång till alla element nödvändiga för att kunna återgå till tidigare tillstånd.

en: <command>dpkg</command> will update the configuration files, asking the user to decide if it is unable to automatically manage this task. The details of this procedure are discussed in <xref linkend="sect.conffiles" />.
sv-SE: <command>dpkg</command> kommer uppdatera konfigurationsfilerna samt låta användaren avgöra ifall den är oförmögen att automatiskt hantera denna uppgift. Detaljerna kring denna procedur diskuteras vidare i <xref linkend="sect.conffiles" />.

en: Package Removal
sv-SE: Borttagning av Paket

en: <primary>package</primary><secondary>removal</secondary>
sv-SE: <primary>paket</primary><secondary>borttagning</secondary>

en: <emphasis>VOCABULARY</emphasis> Purge, a complete removal
sv-SE: <emphasis>VOKABULÄR</emphasis> Rensning, en komplett borttagning

en: <primary>purging a package</primary>
sv-SE: <primary>fullständig rensning av ett paket</primary>

en: <primary>package</primary><secondary>purge</secondary>
sv-SE: <primary>paket</primary><secondary>rensning</secondary>

en: When a Debian package is removed, the configuration files are retained in order to facilitate possible re-installation. Likewise, the data generated by a daemon (such as the content of an LDAP server directory, or the content of a database for an SQL server) are usually retained.
sv-SE: När ett Debianpaket tas bort så sparas konfigurationsfilerna i syfte att kunna underlätta för en möjlig framtida återinstallation. Av samma anledning så sparas vanligtvis data skapad av en demon (så som innehållet i en LDAP servermapp, eller innehållet i en databas för en SQL-server).

en: To remove all data associated with a package, it is necessary to “purge” the package with the command, <command>dpkg -P <replaceable>package</replaceable></command>, <command>apt-get remove --purge <replaceable>package</replaceable></command> or <command>aptitude purge <replaceable>package</replaceable></command>.
sv-SE: För att ta bort all data som förknippas med ett paket är det nödvändigt att "rensa" paketet med någon av följande kommandon: <command>dpkg -P <replaceable>package</replaceable></command>, <command>apt-get remove --purge <replaceable>package</replaceable></command> eller <command>aptitude purge <replaceable>package</replaceable></command>.

en: Given the definitive nature of such data removals, a purge should not be taken lightly.
sv-SE: Givet det slutgiltiga resultatet av en dylik borttagning av data, bör beslutet att rensa enbart tas efter noga övervägande.

en: <primary><filename>config</filename>, <command>debconf</command> script</primary>
sv-SE: <primary><filename>config</filename>, <command>debconf</command> skript</primary>

en: The four scripts detailed above are complemented by a <filename>config</filename> script, provided by packages using <command>debconf</command> to acquire information from the user for configuration. During installation, this script defines in detail the questions asked by <command>debconf</command>. The responses are recorded in the <command>debconf</command> database for future reference. The script is generally executed by <command>apt</command> prior to installing packages one by one in order to group all the questions and ask them all to the user at the beginning of the process. The pre- and post-installation scripts can then use this information to operate according to the user's wishes.
sv-SE: De fyra skripten beskriven ovan kompletteras med ett <filename>config</filename>-skript som tillhandahålls av paket som använder <command>debconf</command> för att erhålla information till konfigurationen från användaren. Under installation definierar detta skript i detalj de frågor som kommer ställas av <command>debconf</command>. Svaren sparas i databasen för <command>debconf</command> för att kunna användas senare. Skriptet körs som regel en efter en av <command>apt</command> innan paketen packas upp för att klumpa ihop frågorna och ställa dem alla tillsammans i början av processen. Innan- och efterinstallationsskript kan sen använda sig av denna information för att utföra sin uppgift i enlighet med användarens önskemål.

en: <emphasis>TOOL</emphasis> <command>debconf</command>
sv-SE: <emphasis>VERKTYG</emphasis><command>debconf</command>

en: <command>debconf</command> was created to resolve a recurring problem in Debian. All Debian packages unable to function without a minimum of configuration used to ask questions with calls to the <command>echo</command> and <command>read</command> commands in <filename>postinst</filename> shell scripts (and other similar scripts). But this also means that during a large installation or update the user must stay with their computer to respond to various questions that may arise at any time. These manual interactions have now been almost entirely dispensed with, thanks to the <command>debconf</command> tool.
sv-SE: <command>debconf</command> skapades för att lösa ett återkommande problem i Debian. Alla paket till Debian som inte kunde fungera utan ens ett minimum av inställningar brukade ställa frågor genom att använda kommando <command>echo</command> och <command>read</command> i <filename>postinst</filename> skript (och andra liknande skript). Men detta innebär att under en stor installation eller uppdatering så behöver användaren stanna vid dennes dator under hela tiden för att kunna agera på diverse frågor som kan ställas när som helst under processen. Problemet med dessa manuella interaktioner har nu nästan till fullo eliminerats, tack vare verktyget <command>debconf</command>.

en: <command>debconf</command> has many interesting features: it requires the developer to specify user interaction; it allows localization of all the strings displayed to users (all translations are stored in the <filename>templates</filename> file describing the interactions); it has different frontends to display the questions to the user (text mode, graphical mode, non-interactive); and it allows creation of a central database of responses to share the same configuration with several computers... but the most important is that it is now possible to present all of the questions in a row to the user, prior to starting a long installation or update process. The user can go about their business while the system handles the installation on its own, without having to stay there staring at the screen waiting for questions.
sv-SE: <command>debconf</command> har många intressanta funktioner: den kräver att utvecklaren anger interaktionen med användaren; den möjliggör att all text som visas användaren är på det lokala språket (alla översättningar finns lagrade i filen <filename>templates</filename> som beskriver interaktioner); den har olika frontsystem för att kunna ställa frågorna till användaren (textläge, grafiskt läge, icke-interaktiv); och den tillåter skapande av en central databas över givna svar för att kunna dela samma konfigurering med flera datorer… men det mest viktiga är att det nu är möjligt att presentera alla frågor till användaren efter varandra, innan en längre installations- eller uppdateringsprocess startas. Användaren kan lämna och sköta andra ärenden medan systemet själv hanterar installationen, användaren slipper på så vis stanna kvar och stirra på skärmen i väntan på frågor som kan dyka upp.

en: <primary>checksums</primary>
sv-SE: <primary>checksummor</primary>

en: In effect, in this situation, <command>dpkg</command> behaves as intelligently as possible: if the standard configuration file has not changed between the two versions, it does nothing. If, however, the file has changed, it will try to update this file. Two cases are possible: either the administrator has not touched this configuration file, in which case <command>dpkg</command> automatically installs the new version; or the file has been modified, in which case <command>dpkg</command> asks the administrator which version they wish to use (the old one with modifications, or the new one provided with the package). To assist in making this decision, <command>dpkg</command> offers to display a “<command>diff</command>” that shows the difference between the two versions. If the user chooses to retain the old version, the new one will be stored in the same location in a file with the <filename>.dpkg-dist</filename> suffix. If the user chooses the new version, the old one is retained in a file with the <filename>.dpkg-old</filename> suffix. Another available action consists of momentarily interrupting <command>dpkg</command> to edit the file and attempt to re-instate the relevant modifications (previously identified with <command>diff</command>).
sv-SE: I praktiken beter sig <command>dpkg</command>så intelligent som möjligt i dessa situationer: om den ordinarie konfigurationsfilen inte ändrats mellan de två versionerna kommer inget att ändras. Om något däremot ändrats kommer den försöka uppdatera filen. Här existerar 2 möjliga scenarion: antingen har administratören inte modifierat denna konfigurationsfil vilket gör att <command>dpkg</command> automatiskt kommer uppdatera filen till den nya versionen; eller så har filen modifierats, vilket resulterar i att <command>dpkg</command> kommer ställa frågan till administratören vilken fil som önskas användas (den äldre modifierade, eller den som tillhandahålls i den nya versionen av paketet). För att underlätta detta beslut erbjuder <command>dpkg</command> att visa en "<command>diff</command>" som visar skillnaden mellan de två konfigurationsfilerna. Om användaren väljer att behålla den äldre versionen så kommer den nya versionen sparas på samma ställe med suffixet <filename>.dpkg-dist</filename>. Om användaren istället väljer att behålla den nyare versionen så kommer den äldre sparas med suffixet <filename>.dpkg-old</filename>. En annan tillgänglig åtgärd består i att tillfälligt avbryta <command>dpkg</command> för att editera filen och försöka återinföra de relevanta modifikationerna (som tidigare identifierades med <command>diff</command>).

en: <emphasis>GOING FURTHER</emphasis> Force dpkg to ask configuration file questions
sv-SE: <emphasis>UTVECKLA</emphasis> Tvinga dpkg att ställa frågor om konfigurationsfiler

en: The <command>--force-confask</command> option requires <command>dpkg</command> to display the questions about the configuration files, even in cases where they would not normally be necessary. Thus, when reinstalling a package with this option, <command>dpkg</command> will ask the questions again for all of the configuration files modified or deleted by the administrator. This is very convenient, especially for reinstalling the original configuration file if it has been deleted and no other copy is available: a normal re-installation won't work, because <command>dpkg</command> considers removal as a form of legitimate modification, and, thus, doesn't install the desired configuration file.
sv-SE: Flaggan <command>--force-confask</command> tvingar <command>dpkg</command> att ställa frågan om konfigurationsfiler, även i de fall detta normalt inte är nödvändigt. På så vis kommer <command>dpkg</command> ställa frågorna för alla konfigurationsfiler som ändrats eller tagits bort av administratören när ett paket ominstalleras med denna flagga. Detta kan vara tämligen användbart, i synnerhet för att kunna återinstallera en ursprunglig konfigurationsfil om den tagits bort och ingen kopia finns tillgänglig: en normal ominstallation skulle här inte fungera eftersom <command>dpkg</command> anser att borttagande är en legitim modifikation och kommer därför som standard inte installera den önskade konfigurationsfilen.

en: <emphasis>GOING FURTHER</emphasis> Avoiding the configuration file questions
sv-SE: <emphasis>UTVECKLA</emphasis> Undvika frågorna om konfigurationsfiler

en: <command>dpkg</command> handles configuration file updates, but, while doing so, regularly interrupts its work to ask for input from the administrator. This makes it less than enjoyable for those who wish to run updates in a non-interactive manner. This is why this program offers options that allow the system to respond automatically according to the same logic: <command>--force-confold</command> retains the old version of the file; <command>--force-confnew</command> will use the new version of the file (these choices are respected, even if the file has not been changed by the administrator, which only rarely has the desired effect). Adding the <command>--force-confdef</command> option tells <command>dpkg</command> to decide by itself when possible (in other words, when the original configuration file has not been touched), and only uses <command>--force-confnew</command> or <command>--force-confold</command> for other cases.
sv-SE: <command>dpkg</command> hanterar uppdatering av konfigurationsfiler, men när den gör detta avbryter den sitt arbete regelbundet för att begära respons från administratören. Detta resulterar i en inte så trevlig upplevelse för dem som önskar uppdatera på ett icke-interaktivt sätt. Detta är orsaken till att programmet erbjuder flaggor som tillåter systemet att agera automatiskt på eventuella frågor utifrån en given logik: <command>--force-confold</command> behåller den äldre versionen av filen; <command>--force-confnew</command> kommer använda den nya versionen av filen (dessa val kommer att respekteras, även i de fall filen ifråga inte har modifierats av administratören, vilket sällan ger önskad effekt). Genom att lägga till flaggan <command>--force-confdef</command> instruerar <command>dpkg</command> att själv avgöra där det är möjligt (med andra ord när orginalet av konfigurationsfilen inte modifierats) och använder endast <command>--force-confnew</command> eller <command>--force-confold</command> i övriga fall.

en: These options apply to <command>dpkg</command> and are explained in detail in <citerefentry><refentrytitle>dpkg</refentrytitle><manvolnum>1</manvolnum></citerefentry> or <command>dpkg --force-help</command>, but most of the time the administrator will work directly with the <command>aptitude</command> or <command>apt</command> programs. It is, thus, necessary to know the syntax used to indicate the options to pass to the <command>dpkg</command> command (their command line interfaces are very similar).
sv-SE: Dessa flaggor gäller <command>dpkg</command> och förklaras mer i detalj i <citerefentry><refentrytitle>dpkg</refentrytitle><manvolnum>1</manvolnum></citerefentry> eller <command>dpkg --force-help</command>, men i de flesta fall kommer administratören arbeta mest med programmen <command>aptitude</command> eller <command>apt</command>. Det är därav nödvändigt att känna till den syntax som används för att indikera de flaggor som läggs till kommandot <command>dpkg</command> (dess kommandolinjesgränssnitt är väldigt lika).

en: Including this option in the configuration file means that it will also be used in a graphical interface such as <command>aptitude</command>.
sv-SE: Att inkludera denna flagga i konfigurationsfilen innebär också att den även kommer användas i grafiska gränssnitt, så som <command>aptitude</command>.

en: Structure of a Source Package
sv-SE: Ett Källpakets struktur

en: <primary>package</primary><secondary>source package</secondary>
sv-SE: <primary>paket</primary><secondary>käll paket</secondary>

en: <primary>DSC file</primary>
sv-SE: <primary>DSC fil</primary>

en: A source package is usually comprised of three files, a <filename>.dsc</filename>, a <filename>.orig.tar.gz</filename>, and a <filename>.debian.tar.xz</filename> (or <filename>.diff.gz</filename>). They allow creation of binary packages (<filename>.deb</filename> files described above) from the source code files of the program, which are written in a programming language.
sv-SE: Ett källkodspaket består vanligtvis av tre filer, en <filename>.dsc</filename>, en <filename>.orig.tar.gz</filename>, och en <filename>.debian.tar.xz</filename> (eller <filename>.diff.gz</filename>). De möjliggör skapande av binära paket (<filename>.deb</filename>-fil beskriven ovan) från programmets kälkodsfiler, vilka är skrivna i ett programmeringsspråk.

en: The <filename>.dsc</filename> (Debian Source Control) file is a short text file containing an RFC 2822 header (just like the <filename>control</filename> file studied in <xref linkend="sect.control" />) which describes the source package and indicates which other files are part thereof. It is signed by its maintainer, which guarantees authenticity. See <xref linkend="sect.package-authentication" /> for further details on this subject.
sv-SE: Filen <filename>.dsc</filename> (<foreignphrase>Debian Source Control</foreignphrase>) är en liten textfil som innehåller en RFC 2822 sidhuvud (liknande filen <filename>control</filename> som beskrevs i <xref linkend="sect.control" />) vilken beskriver källkodspaketet och indikerar vilka andra filer som är en del av det. Den är signerad av dess upprätthållare, vilket garanterar dess äkthet. Se vidare <xref linkend="sect.package-authentication" /> för ytterligare detaljer på detta ämne.

en: A <filename>.dsc</filename> file
sv-SE: En <filename>.dsc</filename> fil

en: <primary>package</primary><secondary>build dependencies</secondary>
sv-SE: <primary>paket</primary><secondary>beroenden för kompilering</secondary>

en: Note that the source package also has dependencies (<literal>Build-Depends</literal>) completely distinct from those of binary packages, since they indicate tools required to compile the software in question and construct its binary package.
sv-SE: Notera att ett källkodspaket också har beroenden (<literal>Build-Depends</literal>) som helt skiljer sig från dem för binära paket, på så vis att de indikerar verktyg som krävs för att kompilera mjukvaran i fråga och skapa dess binära paket.

en: <emphasis>CAUTION</emphasis> Distinct namespaces
sv-SE: <emphasis>FÖRSIKTIGHET</emphasis> Distinkta namnrum

en: It is important to note here that there is no required correspondence between the name of the source package and that of the binary package(s) that it generates. It is easy enough to understand if you know that each source package may generate several binary packages. This is why the <filename>.dsc</filename> file has the <literal>Source</literal> and <literal>Binary</literal> fields to explicitly name the source package and store the list of binary packages that it generates.
sv-SE: Det är viktigt att känna till att det inte finns något tvingande samband mellan namnet på källkodspaketet och namnet på det binära paket som den genererar. Detta är lättare att förstå om man begrundar det faktum att varje källkodspaket kan potentiellt generera flera binära paket. Detta är varför filen <filename>.dsc</filename> har fälten <literal>Source</literal> och <literal>Binary</literal> för att uttryckligen kunna ange namnet på källkodspaketet och lista de binära paket som det genererar.

en: <emphasis>CULTURE</emphasis> Why divide into several packages
sv-SE: <emphasis>KULTUR</emphasis> Varför dela upp på flera paket

en: Quite frequently, a source package (for a given software) can generate several binary packages. The split is justified by the possibility to use (parts of) the software in different contexts. Consider a shared library, it may be installed to make an application work (for example, <emphasis role="pkg">libc6</emphasis>), or it can be installed to develop a new program (<emphasis role="pkg">libc6-dev</emphasis> will then be the correct package). We find the same logic for client/server services where we want to install the server part on one machine and the client part on others (this is the case, for example, of <emphasis role="pkg">openssh-server</emphasis> and <emphasis role="pkg">openssh-client</emphasis>).
sv-SE: Ganska frekvent kan ett källkodspaket (för en given programvara) generera flera binära paket. Uppdelningen är motiverad av att kunna använda (delar av) mjukvaran i olika sammanhang. Ta ett delat bibliotek som exempel, det kan ha installerats för att möjliggöra att ett program fungerar (exempelvis <emphasis role="pkg">libc6</emphasis>), eller så kan det installeras för att utveckla ett nytt program (<emphasis role="pkg">libc6-dev</emphasis> skulle då vara det korrekta paketet). Vi hittar samma logik för server-/klient-tjänster där vi vill installera serverdelen på en maskin och klientdelen på samtliga övriga (exempel på detta är <emphasis role="pkg">openssh-server</emphasis> och <emphasis role="pkg">openssh-client</emphasis>).

en: <emphasis>PERSPECTIVE</emphasis> Different source package formats
sv-SE: <emphasis>PERSPEKTIV</emphasis> Olika format på källkodspaket

en: <primary>source package</primary><secondary>format</secondary>
sv-SE: <primary>källkodspaket</primary><secondary>format</secondary>

en: Originally there was only one source package format. This is the <literal>1.0</literal> format, which associates an <filename>.orig.tar.gz</filename> archive to a <filename>.diff.gz</filename> “debianization” patch (there is also a variant, consisting of a single <filename>.tar.gz</filename> archive, which is automatically used if no <filename>.orig.tar.gz</filename> is available).
sv-SE: Ursprungligen fanns det bara ett format på kälkodspaket. Detta är formatet <literal>1.0</literal>, för vilken ett <filename>.orig.tar.gz</filename> arkiv associeras med en <filename>.diff.gz</filename> "debianifierande" rättning (det existerar också en variant, som består av ett ensamt <filename>.tar.gz</filename> arkiv, vilket automatiskt används ifall ingen <filename>.orig.tar.gz</filename> finns tillgänglig).

en: Since Debian 6 <emphasis role="distribution">Squeeze</emphasis>, Debian developers have the option to use new formats that correct many problems of the historical format. Format <literal>3.0 (quilt)</literal> can combine multiple upstream archives in the same source package: in addition to the usual <filename>.orig.tar.gz</filename>, supplementary <filename>.orig-<replaceable>component</replaceable>.tar.gz</filename> archives can be included. This is useful with software that is distributed in several upstream components but for which a single source package is desired. These archives can also be compressed with <command>xz</command> rather than <command>gzip</command>, which saves disk space and network resources. Finally, the monolithic patch, <filename>.diff.gz</filename> is replaced by a <filename>.debian.tar.xz</filename> archive containing the compiling instructions and a set of upstream patches contributed by the package maintainer. These last are recorded in a format compatible with <command>quilt</command> — a tool that facilitates the management of a series of patches.
sv-SE: Sedan Debian 6 <emphasis role="distribution">Squeeze</emphasis> har Debianutvecklare haft möjlighet att använda nyare format som korrigerar många problem som det historiska formatet drogs med. Formatet <literal>3.0 (quilt)</literal> kan kombinera flertalet ursprungsarkiv i ett och samma källkodspaket: utöver den ordinarie <filename>.orig.tar.gz</filename> kan ett <filename>.orig-<replaceable>komponent</replaceable>.tar.gz</filename> arkiv inkluderas. Detta är användbart när mjukvara distribueras i flera uppströmskomponenter men där ett ensamt källkodspaket är önskvärt. Dessa arkiv kan också komprimeras med <command>xz</command> i stället för <command>gzip</command>, vilket besparar diskutrymme och nätverksresurser. Slutligen har den monolitiska rättningen <filename>.diff.gz</filename> ersatts av ett <filename>.debian.tar.xz</filename> arkiv innehållande kompileringsinstruktioner samt en uppsättning uppströmsrättningar som tillhandahålls av paketunderhållaren. Dessa sistnämnda sparas i ett format som är kompatibelt med <command>quilt</command> — ett verktyg som underlättar hanteringen av hela serier av rättningar.

en: The <filename>.orig.tar.gz</filename> file is an archive containing the source code as provided by the original developer. Debian package maintainers are asked to not modify this archive in order to be able to easily check the origin and integrity of the file (by simple comparison with a checksum) and to respect the wishes of some authors.
sv-SE: Filen <filename>.orig.tar.gz</filename> är ett arkiv som innehåller den källkod som tillhandahålls av dess ursprungliga utvecklare. Debian's paketunderhållare är ombedd att inte modifiera detta arkiv för att möjliggöra enkel kontroll av filens ursprung och integritet (genom en vanlig jämförelse med en checksumma) samt för att respektera önskan hos en del utvecklare.

en: <emphasis>TOOL</emphasis> Decompressing a source package
sv-SE: <emphasis>VERKTYG</emphasis> Komprimera ett Källkodspaket

en: <primary>decompressing, source package</primary>
sv-SE: <primary>komprimering, Källkodspaket</primary>

en: <primary>uncompressing, source package</primary>
sv-SE: <primary>extraktion, Källkodspaket</primary>

en: <primary>unpacking</primary><secondary>source package</secondary>
sv-SE: <primary>packa upp</primary><secondary>källpaket</secondary>

en: <primary>source package</primary><secondary>unpacking</secondary>
sv-SE: <primary>källpaket</primary><secondary>packa upp</secondary>

en: If you have a source package, you can use the <command>dpkg-source</command> command (from the <emphasis role="pkg">dpkg-dev</emphasis> package) to decompress it:
sv-SE: Om du har ett Källkodspaket kan du använda kommandot <command>dpkg-source</command> (från paketet <emphasis role="pkg">dpkg-dev</emphasis>) för att komprimera det:

en: You can also use <command>apt</command> to download a source package and unpack it right away. It requires that the appropriate <literal>deb-src</literal> lines be present in the <filename>/etc/apt/sources.list</filename> file, however (for further details, see <xref linkend="sect.apt-sources.list" />). These are used to list the “sources” of source packages (meaning the servers on which a group of source packages are hosted).
sv-SE: Du kan också använda <command>apt</command> för att ladda ner ett källkodspaket och packa upp det direkt. Det kräver dock att lämpliga rader av <literal>deb-src</literal> finns närvarande i filen <filename>/etc/apt/sources.list</filename> (se <xref linkend="sect.apt-sources.list" /> för ytterligare detaljer). Dessa används för att lista "källorna" för källkodspaketen (vilket betyder de servrar som tillhandahåller grupper av källkodspaket).

en: Usage within Debian
sv-SE: Användning inom Debian

en: <emphasis>GOING FURTHER</emphasis> Source only maintainer uploads
sv-SE: <emphasis>UTVECKLA</emphasis> Endast källkod vid underhållares uppladdningar

en: Manipulating Packages with <command>dpkg</command>
sv-SE: Manipulera paket med <command>dpkg</command>

en: <command>dpkg</command> is the base command for handling Debian packages on the system. If you have <filename>.deb</filename> packages, it is <command>dpkg</command> that allows installation or analysis of their contents. But this program only has a partial view of the Debian universe: it knows what is installed on the system, and whatever it is given on the command line, but knows nothing of the other available packages. As such, it will fail if a dependency is not met. Tools such as <command>apt</command> and <command>aptitude</command>, on the contrary, will create a list of dependencies to install everything as automatically as possible.
sv-SE: <command>dpkg</command> är baskommandot för att hantera Debian-paket i systemet. Om du har ett eller flera <filename>.deb</filename> paket så är det <command>dpkg</command> som möjliggör installation eller analysering av deras innehåll. Men detta program har enbart en begränsad uppfattning av Debians universium: den vet vad som är installerat på systemet samt vad den får tillsagt via kommandoraden, men vet ingenting om andra tillgängliga paket. På grund av detta kommer den misslyckas om ett beroende inte är uppfyllt. Verktyg så som <command>apt</command> och <command>aptitude</command> kommer och andra sidan skapa en lista av beroenden för att kunna installera allt så automatiserat som möjligt.

en: <emphasis>NOTE</emphasis> <command>dpkg</command> or <command>apt</command>?
sv-SE: <emphasis>NOTERA</emphasis><command>dpkg</command> eller <command>apt</command>?

en: <command>dpkg</command> should be seen as a system tool (backend), and <command>apt</command> as a tool closer to the user, which overcomes the limitations of the former. These tools work together, each one with its particularities, suited to specific tasks.
sv-SE: <command>dpkg</command> bör ses som ett systemverktyg (inre system), samt <command>apt</command> som ett verktyg närmare användaren, vilket överkommer de begränsningar som det tidigare nämnda har. Dessa verktyg arbetar tillsammans, båda med sina särdrag, anpassade för specifika arbetsuppgifter.

en: Installing Packages
sv-SE: Installerar paket

en: <primary>installation</primary><secondary>package installation</secondary>
sv-SE: <primary>installation</primary><secondary>paket installation</secondary>

en: <command>dpkg</command> is, above all, the tool for installing an already available Debian package (because it does not download anything). To do this, we use its <literal>-i</literal> or <literal>--install</literal> option.
sv-SE: <command>dpkg</command> är i första hand ett verktyg för att installera ett Debian-paket som redan finns tillgängligt (eftersom verktyget inte laddar ner någonting). För att genomföra en sådan operation använder vi flaggorna <literal>-i</literal> eller <literal>--install</literal>.

en: Installation of a package with <command>dpkg</command>
sv-SE: Installation av paket med <command>dpkg</command>

en: We can see the different steps performed by <command>dpkg</command>; we know, thus, at what point any error may have occurred. The installation can also be effected in two stages: first unpacking, then configuration. <command>apt</command> takes advantage of this, limiting the number of calls to <command>dpkg</command> (since each call is costly, due to loading of the database in memory, especially the list of already installed files).
sv-SE: Vi kan se de olika steg som <command>dpkg</command> utför, således kan vi veta vid vilket steg ett problem kan ha uppstått. Installationen kan också utföras i två etapper: uppackning först, och sen konfigurering. <command>apt</command> drar nytta av detta och kan på så vis minska antalet anrop på kommandot <command>dpkg</command> (och varje anrop är kostsam för systemet på grund av inläsning av databasen i minnet, i synnehet listan över redan installerade filer).

en: Separate unpacking and configuration
sv-SE: Separat uppackning och konfiguration

en: <primary>package</primary><secondary>unpacking</secondary>
sv-SE: <primary>paket</primary><secondary>upppackning</secondary>

en: Sometimes <command>dpkg</command> will fail to install a package and return an error; if the user orders it to ignore this, it will only issue a warning; it is for this reason that we have the different <literal>--force-*</literal> options. The <command>dpkg --force-help</command> command, or documentation of this command, will give a complete list of these options. The most frequent error, which you are bound to encounter sooner or later, is a file collision. When a package contains a file that is already installed by another package, <command>dpkg</command> will refuse to install it. The following messages will then appear:
sv-SE: Ibland kommer <command>dpkg</command> misslyckas med att installera ett paket och returnerar då ett felmeddelande; om användaren anger att ignorera detta, så kommer enbart en varning att registreras. Det är på grund av denna anledning som vi har alla <literal>--force-*</literal> flaggor. Kommandot <command>dpkg --force-help</command>, eller dokumentation om detta kommando, kommer ge en komplett lista över dessa flaggor. Den mest vanliga felorsaken, som du troligen kommer stöta på förr eller senare, är konflikt över en fil. När ett paket innehåller en fil som redan finns installerad av ett annat paket kommer <command>dpkg</command> vägra att installera detta. Följande meddelande kommer då visas:

en: In this case, if you think that replacing this file is not a significant risk to the stability of your system (which is usually the case), you can use the option <literal>--force-overwrite</literal>, which tells <command>dpkg</command> to ignore this error and overwrite the file.
sv-SE: I detta fallet, om du tror att ett utbyte av denna fil inte utgör en signifikant risk för systemets stabilitet (vilket det vanligtvis inte utgör), så kan du använda flaggan <literal>--force-overwrite</literal> som meddelar <command>dpkg</command> att ignorera detta felmeddelande och skriva över filen.

en: <emphasis>CAUTION</emphasis> Effective use of <literal>--force-*</literal>
sv-SE: <emphasis>FÖRSIKTIGHET</emphasis> Effektivt användande av <literal>--force-*</literal>

en: <primary>broken dependency</primary>
sv-SE: <primary>brutet beroende</primary>

en: If you are not careful, the use of an option <literal>--force-*</literal> can lead to a system where the APT family of commands will refuse to function. In effect, some of these options allow installation of a package when a dependency is not met, or when there is a conflict. The result is an inconsistent system from the point of view of dependencies, and the APT commands will refuse to execute any action except those that will bring the system back to a consistent state (this often consists of installing the missing dependency or removing a problematic package). This often results in a message like this one, obtained after installing a new version of <emphasis role="pkg">rdesktop</emphasis> while ignoring its dependency on a newer version of the <emphasis role="pkg">libc6</emphasis>:
sv-SE: Om du inte är försiktig kan användande av flaggorna <literal>--force-*</literal> leda till ett system där kommandon i APT-familjen vägrar att fungera. Som exempel så kommer några av dessa flaggor tillåta installation av ett paket utan att dess beroenden är mött, eller där der finns en konflikt. Resultatet blir ett inkonsekvent system med hänsyn till beroenden, och APT-kommandon kommer vägra utföra någon åtgärd som inte återställer systemet till ett konsekvent tillstånd (vilket oftast består av att installera ett avsaknat beroende eller avinstallera ett problematiskt paket). Detta leder ofta till ett meddelande likt denna, som uppstår vid installation av en ny version av <emphasis role="pkg">rdesktop</emphasis> utan att ta hänsyn till dess beroende av en nyare version av <emphasis role="pkg">libc6</emphasis>:

en: A courageous administrator who is certain of the correctness of their analysis may choose to ignore a dependency or conflict and use the corresponding <literal>--force-*</literal> option. In this case, if they want to be able to continue to use <command>apt</command> or <command>aptitude</command>, they must edit <filename>/var/lib/dpkg/status</filename> to delete/modify the dependency, or conflict, that they chose to override.
sv-SE: En modig administratör som är säker på korrektheten i sin analys kan välja att ignorera ett beroende eller en konflikt genom att använda motsvarande <literal>--force-*</literal> flagga. Om de önskar fortsätta använda <command>apt</command> eller <command>aptitude</command> i dessa fall behöver de göra ändringar i filen <filename>/var/lib/dpkg/status</filename> och ta bort/modifiera de beroenden, eller konflikter, som de önskar åsidosätta.

en: This manipulation is an ugly hack, and should never be used, except in the most extreme case of necessity. Quite frequently, a more fitting solution is to recompile the package that is causing the problem (see <xref linkend="sect.rebuilding-package" />) or use a new version (potentially corrected) from a repository such as the <literal>stable-backports</literal> one (see <xref linkend="sect.apt-sources.list.stable.backports" />).
sv-SE: Denna manipulation är en ful-lösning och bör aldrig användas, förutom i de mest extrema situationer av nödtvång. För det mesta är en mer lämplig lösning att packa on paketet som orsakar problemet (se <xref linkend="sect.rebuilding-package" />) eller använda en nyare version (förhoppningsvis rättad) från ett kodföråd så som <literal>stable-backports</literal> (se <xref linkend="sect.apt-sources.list.stable.backports" />).

en: Invoking <command>dpkg</command> with the <literal>-r</literal> or <literal>--remove</literal> option, followed by the name of a package, removes that package. This removal is, however, not complete: all of the configuration files, maintainer scripts, log files (system logs) and other user data handled by the package remain. That way disabling the program is easily done by uninstalling it, and it is still possible to quickly reinstall it with the same configuration. To completely remove everything associated with a package, use the <literal>-P</literal> or <literal>--purge</literal> option, followed by the package name.
sv-SE: Genom att åberopa <command>dpkg</command> med flaggan <literal>-r</literal> eller <literal>--remove</literal>, följt av ett namn på ett paket, så kommer paketet ifråga avinstalleras. Detta bottagande är dock inte komplett, alla konfigurationsfiler, undehållsskript, loggfiler (systemnivå) och andra användardata som tillhandahållts för eller av paketet kvarstår. På det sättet är den enkelt att inaktivera ett program genom att avinstallera det, och möjligheten kvarstår att snabbt kunna återinstallera med samma konfiguration. För att helt rensa ut allt som kan associeras med paketet, använd flaggan <literal>-P</literal> eller <literal>--purge</literal> följt av paketnamnet.

en: Removal and purge of the <emphasis role="pkg">debian-cd</emphasis> package
sv-SE: Borttagning och fullständig rensning av paketet <emphasis role="pkg">debian-cd</emphasis>

en: Querying <command>dpkg</command>'s Database and Inspecting <filename>.deb</filename> Files
sv-SE: Undersöka <command>dpkg</command>'s databas och inspektera <filename>.deb</filename> filer

en: <primary>package</primary><secondary>status</secondary>
sv-SE: <primary>paket</primary><secondary>status</secondary>

en: <primary>package</primary><secondary>file list</secondary>
sv-SE: <primary>paket</primary><secondary>fil lista</secondary>

en: <primary>package</primary><secondary>content inspection</secondary>
sv-SE: <primary>paket</primary><secondary>innehållsinspektion</secondary>

en: <emphasis>BACK TO BASICS</emphasis> Option syntax
sv-SE: <emphasis>TILLBAKA TILL GRUNDERNA</emphasis> Flaggors syntax

en: Most options are available in a “long” version (one or more relevant words, preceded by a double dash) and a “short” version (a single letter, often the initial of one word from the long version, and preceded by a single dash). This convention is so common that it is a POSIX standard.
sv-SE: De flesta flaggor finns tillgänglig både i en 'lång" version (ett eller flera relevanta ord som föregås av två streck) och en "kort" version (en enskild bokstav, oftast första bokstaven i ett av de ord som utgör den längre versionen, som föregås av ett enskillt bindestreck). Detta tillvägagångssätt är så vanligt att de blivit en POSIX standard.

en: <emphasis>CAUTION</emphasis> <command>dpkg --search</command> and merged <filename>/usr</filename>
sv-SE: <emphasis>VARNING</emphasis><command>dpkg --search</command> och sammanslaget <filename>/usr/</filename>

en: <primary>merged <filename>/usr</filename></primary>
sv-SE: <primary>slog samman<filename>/usr/</filename></primary>

en: For <ulink url="https://www.freedesktop.org/wiki/Software/systemd/TheCaseForTheUsrMerge/">various reasons</ulink>, Debian now installs by default a few top-level directories as symlinks to their counterparts below <filename>/usr</filename>. For instance, <filename>/bin</filename>, <filename>/sbin</filename> and <filename>/lib</filename> are now symlinks to, respectively, <filename>/usr/bin</filename>, <filename>/usr/sbin</filename> and <filename>/usr/lib</filename>.
sv-SE: Av <ulink url="https://www.freedesktop.org/wiki/Software/systemd/TheCaseForTheUsrMerge/">olika anledningar</ulink>, installerar Debian nu en del topplager-kataloger som symboliska länkar till deras motsvarighet under <filename>/usr</filename>. Som exempel, <filename>/bin</filename>, <filename>/sbin</filename> och <filename>/lib</filename> är nu symboliskt länkade till, respektive, <filename>/usr/bin</filename>, <filename>/usr/sbin</filename> och <filename>/usr/lib</filename>.

en: While this does provide desirable benefits, it can also be a source of confusion. For example, when you query <command>dpkg</command> which package is owning a given file, it will only be able to answer when you ask for its original path:
sv-SE: Även om detta ger önskade fördelar kan det även vara en källa för förvirring. Som exempel, när du frågar <command>dpkg</command> vilket paket som äger en given fil, så kommer den enbart kunna svara när du frågar om dess ursprungliga platts:

en: Various queries with <command>dpkg</command>
sv-SE: Olika undersökningar med <command>dpkg</command>

en: <emphasis>GOING FURTHER</emphasis> Comparison of versions
sv-SE: <emphasis>GÅ VIDARE</emphasis> Jämförelse av versioner

en: <primary>version, comparison</primary>
sv-SE: <primary>version, jämförelse</primary>

en: <primary>comparison of versions</primary>
sv-SE: <primary>jämförelse av versioner</primary>

en: <primary>package</primary><secondary>version, comparison</secondary>
sv-SE: <primary>paket</primary><secondary>version,jämförelse</secondary>

en: Since <command>dpkg</command> is the program for handling Debian packages, it also provides the reference implementation of the logic of comparing version numbers. This is why it has a <literal>--compare-versions</literal> option, usable by external programs (especially configuration scripts executed by <command>dpkg</command> itself). This option requires three parameters: a version number, a comparison operator, and a second version number. The different possible operators are <literal>lt</literal> (strictly less than), <literal>le</literal> (less than or equal to), <literal>eq</literal> (equal), <literal>ne</literal> (not equal), <literal>ge</literal> (greater than or equal to), and <literal>gt</literal> (strictly greater than). If the comparison is correct, <command>dpkg</command> returns 0 (success); if not, it gives a non-zero return value (indicating failure).
sv-SE: Eftersom <command>dpkg</command> är programmet som hanterar Debian-paket, tillhandahåller den även referensimplementationen för logiken bakom jämförelse av versionsnummer. Detta är varför den har flaggan <literal>--compare-versions</literal>, användbar för externa program (i synnerhet konfigurationsskript som körs av <command>dpkg</command>). Denna flagga kräver tre parametrar: ett versionsnummer, en jämförande operator, samt ett andra versionsnummer. De möjliga operatörerna är <literal>lt</literal> (strikt mindre än), <literal>le</literal> (mindre än eller lika med), <literal>eq</literal> (lika med), <literal>ne</literal> (inte lika med), <literal>ge</literal> (större än eller lika med), och <literal>gt</literal> (strikt större än). Om jämförelsen är korrekt returnerar <command>dpkg</command> värdet 0 (lyckat/possitivt resultat), annars returneras ett icke-noll värde (vilket indikerar misslyckat/negativt resultat).

en: Note the unexpected failure of the last comparison: for <command>dpkg</command>, <literal>pre</literal>, usually denoting a pre-release, has no particular meaning, and this program compares the alphabetic characters in the same way as the numbers (a &lt; b &lt; c ...), in alphabetical order. This is why it considers “<literal>0pre3</literal>” to be greater than “<literal>0</literal>”. When we want a package's version number to indicate that it is a pre-release, we use the tilde character, “<literal>~</literal>”:
sv-SE: Notera den oförväntade misslyckade kontrollen av den sista jämförelsen: för <command>dpkg</command> har beteckningen <literal>pre</literal>, som vanligtvis indikerar en innan-frisläppningsversion, ingen specifik innebörd och programmet jämför de alfabetiska bokstäverna på samma sätt som nummer (a &lt; b &lt; c ...) i alfabetisk ordning. Detta är anledningen till varför den anser att “<literal>0pre3</literal>” är större än “<literal>0</literal>”. När vi vill att ett pakets versionsnummer skall indikera att det är en innan-frisläppningsversion använder vi oss utav tilde-tecknet, "<literal>~</literal>":

en: <command>dpkg</command>'s Log File
sv-SE: <command>dpkg</command>'s loggfil

en: <command>dpkg</command> keeps a log of all of its actions in <filename>/var/log/dpkg.log</filename>. This log is extremely verbose, since it details every one of the stages through which packages handled by <command>dpkg</command> go. In addition to offering a way to track dpkg's behavior, it helps, above all, to keep a history of the development of the system: one can find the exact moment when each package has been installed or updated, and this information can be extremely useful in understanding a recent change in behavior. Additionally, all versions being recorded, it is easy to cross-check the information with the <filename>changelog.Debian.gz</filename> for packages in question, or even with online bug reports.
sv-SE: <command>dpkg</command> loggar alla sina aktiviteter i <filename>/var/log/dpkg.log</filename>. Denna logg är extremt utförlig, eftersom den i detalj redovisar samtliga av alla de steg som ett paket som handhas av <command>dpkg</command> går igenom. Utöver att den erbjuder en möjlighet att spåra dpkg's beteende, är den framför allt en hjälp för att ge en historisk överblick över ett systems utveckling. Man kan finna exakt vid vilken tidpunkt som samtliga paket har installerats och/eller uppdaterats, vilket kan vara extremt användbart vid utredning av en ändring i systemets beteende. Vidare registreras alla versioner och det är enkelt att jämföra och koppla informationen med <filename>changelog.Debian.gz</filename> för paketen ifråga, eller till och med buggrapporter registrerade på nätet.

en: Multi-Arch Support
sv-SE: Support för Multi-Instruktionsuppsättning

en: <primary>Multi-Arch</primary>
sv-SE: <primary>Multi-Instruktionsuppsättning</primary>

en: <primary>architecture</primary><secondary>multi-arch support</secondary>
sv-SE: <primary>instruktionsuppsättning</primary><secondary>support för multi-instruktionsuppsättning</secondary>

en: All Debian packages have an <literal>Architecture</literal> field in their control information. This field can contain either “<literal>all</literal>” (for packages that are architecture independent) or the name of the architecture that it targets (like “amd64”, “armhf”, …). In the latter case, by default, <command>dpkg</command> will only accept to install the package if its architecture matches the host's architecture as returned by <command>dpkg --print-architecture</command>.
sv-SE: Alla Debian-paket har ett fällt för <literal>instruktionsuppsättning</literal> i deras kontrollinformation. Detta fällt kan innehålla antingen "<literal>all</literal>" (för paket som är oberoende av instruktionsuppsättning) eller namnet på den instruktionsuppsättning som den är avsedd för (exempelvis “amd64”, “armhf”, …). I det senare fallet kommer <command>dpkg</command>, som standard, enbart acceptera att installera paketet ifall dess instruktionsuppsättning matchar värdsystemets instruktionsuppsättning så som det redovisas av <command>dpkg --print-architecture</command>.

en: This restriction ensures that users do not end up with binaries compiled for an incorrect architecture. Everything would be perfect except that (some) computers can run binaries for multiple architectures, either natively (an “amd64“ system can run “i386” binaries) or through emulators.
sv-SE: Denna restriktion försäkrar att användaren inte kommer till en situation med installerade binära program som är översatt till fel instruktionsuppsättning. Allt hade varit perfekt om det inte varit för att (en del) datorer kan köra binära program för flera olika instruktionsuppsättningar, antingen naturligt (ett "amd64"-system kan köra binärer översatta till "i386") eller med hjälp av emulatorer.

en: Enabling Multi-Arch
sv-SE: Aktivera Multi-Instruktionsuppsättning

en: <command>dpkg</command>'s multi-arch support allows users to define “foreign architectures” that can be installed on the current system. This is simply done with <command>dpkg --add-architecture</command> like in the example below. There is a corresponding <command>dpkg --remove-architecture</command> to drop support of a foreign architecture, but it can only be used when no packages of this architecture remain.
sv-SE: <command>dpkg</command>'s support för multi-instruktionsuppsättning tillåter användare att definiera "främmande instruktionsuppsättningar" som kan installeras på nuvarande system. Detta utförs enkelt med <command>dpkg --add-architecture</command> så som i exemplet nedan. Det finns en motsvarande <command>dpkg --remove-architecture</command> för att ta bort stöd för en främmande instruktionsuppsättning, med det kan enbart användas om det inte finns något installerat paket kvarstående för denna instruktionsuppsättning.

en: <emphasis>NOTE</emphasis> APT's multi-arch support
sv-SE: <emphasis>NOTERA</emphasis> APT's support för multi-instruktionsuppsättning

en: APT will automatically detect when dpkg has been configured to support foreign architectures and will start downloading the corresponding <filename>Packages</filename> files during its update process.
sv-SE: APT kommer automatiskt upptäcka när dpkg har blivit konfigurerad att stödja främmande instruktionsuppsättningar och kommer börja ladda ner motsvarande <filename>Paket</filename>-filer under dess uppdateringsprocess.

en: Foreign packages can then be installed with <command>apt install <replaceable>package</replaceable>:<replaceable>architecture</replaceable></command>.
sv-SE: Främmande paket kan sen installeras med <command>apt install <replaceable>packet</replaceable>:<replaceable>instruktionsuppsättning</replaceable></command>.

en: <emphasis>IN PRACTICE</emphasis> Using proprietary i386 binaries on amd64
sv-SE: <emphasis>I PRAKTIKEN</emphasis>Använd proprietära i386 binärer på amd64

en: There are multiple use cases for multi-arch, but the most popular ones are the possibility to execute (sometimes proprietary) 32 bit binaries (i386) on 64 bit systems (amd64), and the possibility to cross-compile software for a platform or an architecture different from the host one.
sv-SE: Det finns åtskilliga användningsområden för multi-instruktionsuppsättning, men de mest vanliga är för möjligheten att köra (ibland proprietära) 32-bitars binärer (i386) på ett 64-bitars system (amd64), och möjligheten att kors-översätta mjukvara för en plattform eller instruktionsuppsättning som skiljer sig från värdsystemets.

en: Multi-Arch Related Changes
sv-SE: Multi-Instruktionsuppsättningsrelaterade Ändringar

en: To make multi-arch actually useful and usable, libraries had to be repackaged and moved to an architecture-specific directory so that multiple copies (targeting different architectures) can be installed alongside. Such updated packages contain the “<literal>Multi-Arch: same</literal>” header field to tell the packaging system that the various architectures of the package can be safely co-installed (and that those packages can only satisfy dependencies of packages of the same architecture). The most important libraries have been converted since the introduction of multi-arch in Debian 7 <emphasis role="distribution">Wheezy</emphasis>, but there are many libraries that will likely never be converted unless someone specifically requests it (through a bug report for example).
sv-SE: För att verkligen dra nytta av multi-instruktionsuppsättning och göra den användbar, behövde bibliotek packas om och flyttas till en instruktionsuppsättningsspecifik katalog så att flera kopior (som vänder sig till olika instruktionsuppsättningar) kan vara installerad samtidigt på samma system. Dylika uppdaterade paket innehåller sidhuvudsfälltet “<literal>Multi-Arch: same</literal>” i syfte att meddela pakethanteraren att paketen för de olika instruktionsuppsättningarna säkert kan samexistera på samma system (och att de olika paketen enbart kan uppfylla beroenden för andra paket av samma instruktionsuppsättning). De allra flesta bibliotek har omvandlats sedan introduktionen av multi-instruktionsuppsättning i Debian 7<emphasis role="distribution">Wheezy</emphasis>, men det finns många bibliotek som sannolikt aldrig kommer omvandlas så länge inte någon specifikt begär det (genom en felrapport exempelvis).

en: It is worth noting that <literal>Multi-Arch: same</literal> packages must have their names qualified with their architecture to be unambiguously identifiable. They also have the possibility to share files with other instances of the same package; <command>dpkg</command> ensures that all packages have bit-for-bit identical files when they are shared. Last but not least, all instances of a package must have the same version. They must thus be upgraded together.
sv-SE: Det är värt att notera att paket med <literal>Multi-Arch: same</literal> måste ha sitt namn kvalificerad med sin instruktionsuppsättning för att vara entydigt identifierbar. De har också möjligheten att dela filer med andra instanser av samma paket, <command>dpkg</command> säkerställer att alla paket har i detalj identiska filer när de är delade. Sist men inte minst, alla instanser av samma paket behöver ha samma version. De behöver därför uppgraderas samtidigt.

en: Multi-Arch support also brings some interesting challenges in the way dependencies are handled. Satisfying a dependency requires either a package marked “<literal>Multi-Arch: foreign</literal>” or a package whose architecture matches the one of the package declaring the dependency (in this dependency resolution process, architecture-independent packages are assumed to be of the same architecture than the host). A dependency can also be weakened to allow any architecture to fulfill it, with the <literal><replaceable>package</replaceable>:any</literal> syntax, but foreign packages can only satisfy such a dependency if they are marked “<literal>Multi-Arch: allowed</literal>”.
sv-SE: Support för Multi-Instruktionsuppsättning tillför även några intressanta utmaningar kring hur beroenden hanteras. Att tillmötesgå ett beroende kräver antingen ett paket markerad “<literal>Multi-Arch: foreign</literal>” eller ett paket vars instruktionsuppsättning är desamma som det paket som framställer beroendet (i denna process att lösa beroenden anses instruktionsuppsättningsoberoende paket vara av samma instruktionsuppsättning som värden). Ett beroende kan också försvagas så att alla instruktionsuppsättningar tillåts uppfylla det, med uttrycket <literal><replaceable>package</replaceable>:any</literal>, men utomstående paket kan enbart uppfylla ett sådant beroende ifall de är märkta “<literal>Multi-Arch: allowed</literal>”.

en: Coexistence with Other Packaging Systems
sv-SE: Samexistens med andra paketeringsingssystem

en: Debian packages are not the only software packages used in the free software world. The main competitor is the RPM format of the Red Hat Linux distribution and its many derivatives. Red Hat is a very popular, commercial distribution. It is thus common for software provided by third parties to be offered as RPM packages rather than Debian.
sv-SE: Debian-paket är inte det enda paketformatet för mjukvara som används i den fria mjukvauvärlden. Dess största konkurent är RPM-formatet som används av Red Hat Linux distribution och dess många derivater. Red Hat är en väldigt populär komerciell distribution. Det är därför vanligt att mjukvara tillhandahållen av tredjepart erbjuds som RPM paket snarare än Debian.

en: In this case, you should know that the program <command>rpm</command>, which handles RPM packages, is available as a Debian package, so it is possible to use this package format on Debian. Care should be taken, however, to limit these manipulations to extract the information from a package or to verify its integrity. It is, in truth, unreasonable to use <command>rpm</command> to install an RPM on a Debian system; RPM uses its own database, separate from those of native software (such as <command>dpkg</command>). This is why it is not possible to ensure a stable coexistence of two packaging systems.
sv-SE: I detta fallet bör du känna till att programmet <command>rpm</command>, som hanterar RPM-paket, finns tillgänglig som ett Debian-paket, så det är möjligt att använda detta paketformat på Debian. Man bör dock vara försiktig och begränsa dessa manipulationer till att erhålla informationen från ett paket eller verifiera dess integritet. Det är i sanning orimligt att använda <command>rpm</command> för att installera ett RPM i ett Debian-system. RPM använder sin egen databas, avskild från de som används för inhemsk programvara (så som <command>dpkg</command>). Detta är orsaken till att det inte är möjligt att erhålla en stabil sammexistens av två olika pakethanteringssystem.

en: On the other hand, the <emphasis role="pkg">alien</emphasis> utility can convert RPM packages into Debian packages, and vice versa.
sv-SE: Och andra sidan kan verktyget <emphasis role="pkg">alien</emphasis> användas för att konvertera RPM-paket till Debian-paket, och tvärt om.

en: <emphasis>COMMUNITY</emphasis> Encouraging the adoption of <filename>.deb</filename>
sv-SE: <emphasis>GEMENSKAPEN</emphasis> Uppmuntran till att öka användandet av <filename>.deb</filename>

en: You will find that this process is extremely simple. You must know, however, that the package generated does not have any dependency information, since the dependencies in the two packaging formats don't have systematic correspondence. The administrator must thus manually ensure that the converted package will function correctly, and this is why Debian packages thus generated should be avoided as much as possible. Fortunately, Debian has the largest collection of software packages of all distributions, and it is likely that whatever you seek is already in there.
sv-SE: Du kommer finna att denna process är extremt enkel. Du bör dock känna till att paket genererad på detta sätt saknar helt information om beroenden, eftersom beroenden mellan de olika paketformaten inte har något systematiskt korrespondens. Det åligger därav administratören att manuellt försäkra sig om att det konverterade paketet kommer fungera på ett adekvat sätt, vilket också är anledningen till att paket genererade på detta sätt bör undvikas om möjligt. Lyckligtvis har Debian den största samlingen av mjukvarupaket av alla distributioner, och det är troligt att vad än du söker så kommer du finna det där.

en: Looking at the man page for the <command>alien</command> command, you will also note that this program handles other packaging formats, especially the one used by the Slackware distribution (it is made of a simple <filename>tar.gz</filename> archive).
sv-SE: Om du tittar i manualsidan för kommandot <command>alien</command> kommer du också att finna att detta program handhar även andra paketformat, i synnerhet det som används av distributionen Slackware (det består av ett enkelt <filename>tar.gz</filename>-arkiv).

en: The stability of the software deployed using the <command>dpkg</command> tool contributes to Debian's fame. The APT suite of tools, described in the following chapter, preserves this advantage, while relieving the administrator from managing the status of packages, a necessary but difficult task.
sv-SE: Stabiliteten av den mjukvara som utplaceras av verktyget <command>dpkg</command> bidrar till Debian's goda ryckte. Samlingen av APT-verktyg, som beskrivs vidare i nästa kapitel, bevarar denna fördel samtidigt som administratören avlastas hanteringen med att hålla koll på status för alla pakets, en nödvändig men svår uppgift.
