[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [RFR] po4a://fakeroot/doc/po4a/po/de.po



Hallo Erik,
On Tue, Oct 06, 2020 at 01:20:46AM +0200, Pfannenstein Erik wrote:
> # Translation of the fakeroot manpage to German.
> # Copyright (C) 1997-2001 Joost Witteveen, 2002-2009 Clint Adams,
> #               2009 Regis Duchesne.
> # This file is distributed under the same license as the fakeroot package.
> # Copyright (C) of this file 2011 Chris Leick.

Trägst Du Dich hier ein?

> msgid ""
> msgstr ""
> "Project-Id-Version: fakeroot 1.18.1-1\n"
> "Report-Msgid-Bugs-To: fakeroot@packages.debian.org\n"
> "POT-Creation-Date: 2020-09-22 16:23-0400\n"
> "PO-Revision-Date: 2020-10-06 01:14+0200\n"
> "Last-Translator: Chris Leick <c.leick@vollbio.de>\n"

… und hier auch?

> "Language-Team: German <debian-l10n-german@lists.debian.org>\n"
> "Language: de\n"
> "MIME-Version: 1.0\n"
> "Content-Type: text/plain; charset=UTF-8\n"
> "Content-Transfer-Encoding: 8bit\n"
> "Plural-Forms: nplurals=2; plural=(n != 1);\n"
> "X-Generator: Poedit 2.4.1\n"
> # type: Plain text
> #. type: Plain text
> #: ../doc/fakeroot.1:22
> msgid ""
> "fakeroot - run a command in an environment faking root privileges for file "
> "manipulation"
> msgstr ""
> "fakeroot - einen Befehl zur Dateimanipulation in einer Umgebung mit "
> "gefälschten Root-Rechten ausführen"

»gefälscht« finde ich, klingt recht negativ. Ggf. (global)
»imitiierte« oder »fingierte«? (Merke ich nicht weiter an)

> # type: Plain text
> #. type: Plain text
> #: ../doc/fakeroot.1:49
> msgid ""
> "B<fakeroot> runs a command in an environment wherein it appears to have root "
> "privileges for file manipulation.  This is useful for allowing users to "
> "create archives (tar, ar, .deb etc.) with files in them with root "
> "permissions/ownership.  Without B<fakeroot> one would need to have root "
> "privileges to create the constituent files of the archives with the correct "
> "permissions and ownership, and then pack them up, or one would have to "
> "construct the archives directly, without using the archiver."
> msgstr ""
> "B<fakeroot> führt einen Befehl in einer Umgebung aus, in der es scheint, als "
> "habe er Root-Rechte zur Dateimanipulation. Auf diese Weise können einfache "
> "Benutzer Archive (tar, ar, .deb etc.) Archive erstellen, die Dateien "
> "enthalten, die Root-Rechte haben/Root gehören. Ohne B<fakeroot> müsste man "
> "über Root-Rechte verfügen, um die einzelnen Dateien des Archivs mit den "
> "korrekten Zugriffs- und Besitzrechten zu erstellen und sie zu verpacken oder "
> "man müsste diese Archive direkt, ohne Benutzung des Archivierungsprogramms, "
> "erstellen."

s/Archive erstellen/erstellen/

ggf. müsste man → müssten Sie
und
ggf. man müsste diese → Sie müssten diese

> # type: Plain text
> #. type: Plain text
> #: ../doc/fakeroot.1:61
> msgid ""
> "B<fakeroot> works by replacing the file manipulation library functions "
> "(chmod(2), stat(2) etc.) by ones that simulate the effect the real library "
> "functions would have had, had the user really been root. These wrapper "
> "functions are in a shared library B</usr/lib/*/libfakeroot-*.so> or similar "
> "location on your platform.  The shared object is loaded through the "
> "B<LD_PRELOAD> mechanism of the dynamic loader. (See B<ld.so>(8))"
> msgstr ""
> "Die Funktionsweise von B<fakeroot> besteht darin, die Bibiliotheken zur "
> "Dateimanipulation (chmod(2), stat(2) etc.) durch solche zu ersetzen, die "
> "sich so verhalten als ob der Benutzer Root wäre. Diese Wrapper-Funktionen "
> "liegen in einer gemeinsam benutzten Bibliothek B</usr/lib/libfakeroot.so*> "
> "bzw. die entsprechenden Speicherort auf Ihrer Plattform. Das gemeinsame "
> "Objekt wird durch den B<LD_PRELOAD>-Mechanismus des dynamischen "
> "Ladeprogramms geladen. (Siehe B<ld.so>(8))"

s/die entsprechenden Speicherort
 /an dem entsprechenden Speicherort/

> # type: Plain text
> #. type: Plain text
> #: ../doc/fakeroot.1:71
> msgid ""
> "If you intend to build packages with B<fakeroot>, please try building the "
> "fakeroot package first: the \"debian/rules build\" stage has a few tests "
> "(testing mostly for bugs in old fakeroot versions). If those tests fail (for "
> "example because you have certain libc5 programs on your system), other "
> "packages you build with fakeroot will quite likely fail too, but possibly in "
> "much more subtle ways."
> msgstr ""
> "Falls Sie beabsichtigen, Pakete mit B<fakeroot> zu bauen, versuchen Sie "
> "bitte zuerst, das fakeroot-Paket zu bauen: Die Ebene »debian/rules build« "
> "hat ein paar Tests (meist wird getestet, ob Fehler in alten fakeroot-"
> "Versionen vorliegen). Falls diese Tests fehlschlagen (zum Beispiel, weil Sie "
> "bestimmte libc5-Programme auf Ihrem System haben), wird der Bau anderer "
> "Pakete mit fakeroot ziemlich wahrscheinlich ebenfalls scheitern, aber "
> "möglicherweise auf subtilere Art."

Die Ebene → Die Stufe

> # type: Plain text
> #. type: Plain text
> #: ../doc/fakeroot.1:89
> msgid ""
> "Any command you want to be ran as fakeroot. Use \\(oq--\\(cq if in the "
> "command you have other options that may confuse fakeroot's option parsing."
> msgstr ""
> "jeder Befehl, den Sie als fakeroot ausführen möchten. Benutzen Sie \\(oq--"
> "\\(cq, falls Sie im Befehl andere Optionen haben, die fakeroots Auswertung "
> "der Optionen verwirren könnte."

Fehler im Original: to be ran → to be run

\\(oq und \\(cq sind englische Anführungszeichen, ich würde auf die
bei uns gebräuchlichen »« umsteigen.

> # type: Plain text
> #. type: Plain text
> #: ../doc/fakeroot.1:100
> msgid ""
> "Save the fakeroot environment to save-file on exit. This file can be used to "
> "restore the environment later using -i. However, this file will leak and "
> "fakeroot will behave in odd ways unless you leave the files touched inside "
> "the fakeroot alone when outside the environment. Still, this can be useful. "
> "For example, it can be used with rsync(1) to back up and restore whole "
> "directory trees complete with user, group and device information without "
> "needing to be root. See I</usr/share/doc/fakeroot/README.saving> for more "
> "details."
> msgstr ""
> "speichert die fakeroot-Umgebung beim Beenden in zu_speichernde_Datei. Diese "
> "Datei kann benutzt werden, um die Umgebung später mit -i wiederherzustellen. "
> "Diese Datei wird jedoch undicht sein und fakeroot wird sich seltsam "
> "verhalten, sofern Sie nicht die angefassten Dateien innerhalb von fakeroot "
> "belassen, wenn die Umgebung außerhalb liegt. Dies kann dennoch nützlich "
> "sein. Es kann beispielsweise mit rsync(1) benutzt werden, um ganze "
> "Verzeichnisbäume mit Benutzer-, Gruppen und Geräteinformationen zu sichern "
> "und wiederherzustellen, ohne dass Sie Root sein müssen. Weitere Einzelheiten "
> "finden Sie in I</usr/share/doc/fakeroot/README.saving>."

Das »leak« der Datei habe ich auch nicht verstanden. Der ganze Satz
ist schwer verständlich.

s/wenn die Umgebung außerhalb liegt.
 /wenn Sie sich außerhalb der Umgebung befinden./


> # type: Plain text
> #. type: Plain text
> #: ../doc/fakeroot.1:168
> msgid ""
> "B<fakeroot> was specifically written to enable users to create Debian GNU/"
> "Linux packages (in the B<deb(5)> format) without giving them root "
> "privileges.  This can be done by commands like B<dpkg-buildpackage -"
> "rfakeroot> or B<debuild -rfakeroot> (actually, -rfakeroot is default in "
> "debuild nowadays, so you don't need that argument)."
> msgstr ""
> "B<fakeroot> wurde vor allem geschrieben, um es Benutzern zu ermöglichen, "
> "Debian-GNU/Linux-Pakete (im B<deb(5)>-Format) zu erstellen, ohne ihnen Root-"
> "Rechte zu geben. Dies kann durch Befehle wie B<dpkg-buildpackage -rfakeroot> "
> "oder B<debuild -rfakeroot> erledigt werden (tatsächlich ist -rfakeroot "
> "heutzutage in debuild Vorgabe, so dass Sie dieses Argument nicht brauchen)."

ggf. brauchen → benötigen

> # type: Plain text
> #. type: Plain text
> #: ../doc/fakeroot.1:175
> msgid ""
> "I</usr/lib/*/libfakeroot-*.so> The shared library containing the wrapper "
> "functions."
> msgstr ""
> "I</usr/lib/libfakeroot/libfakeroot.so*> – die gemeinsam benutzte Bibliothek, "
> "welche die Wrapper-Funktionen enthält."

Ich würde (global) »shared library« wie in der Wortliste mit
Laufzeit-Bibliothek übersetzen.

> # type: Plain text
> # FIXME s/Fakeroot/fakeroot/ see #: ../../doc/fakeroot.1:216
> #. type: Plain text
> #: ../doc/fakeroot.1:203
> msgid ""
> "Fakeroot is implemented by wrapping system calls.  This is accomplished by "
> "setting LD_LIBRARY_PATH=/usr/lib/fakeroot and LD_PRELOAD=libfakeroot.so.0.  "
> "That library is loaded before the system's C library, and so most of the "
> "library functions are intercepted by it.  If you need to set either "
> "B<LD_LIBRARY_PATH> or B<LD_PRELOAD> from within a fakeroot environment, it "
> "should be set relative to the given paths, as in B<LD_LIBRARY_PATH="
> "$LD_LIBRARY_PATH:/foo/bar/>"
> msgstr ""
> "fakeroot wurde durch Verhüllen von Systemaufrufen implementiert. Dies wird "
> "durch die Einstellungen LD_LIBRARY_PATH=/usr/lib/fakeroot und "
> "LD_PRELOAD=libfakeroot.so.0 bewerkstelligt. Diese Bibliothek wird vor der C-"
> "Bibliothek des Systems geladen. Daher werden die meisten "
> "Bibliotheksfunktionen von ihr abgefangen. Falls Sie entweder "
> "B<LD_LIBRARY_PATH> oder B<LD_PRELOAD> aus einer fakeroot-Umgebung heraus "
> "setzen müssen, sollte es relativ zum angegebenen Pfad geschehen wie in "
> "B<LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/foo/bar/>"

Verhüllen → Einhüllen oder Einpacken

> # type: Plain text
> #. type: Plain text
> #: ../doc/fakeroot.1:217
> msgid ""
> "fakeroot doesn't wrap open(), create(), etc. So, if user B<joost> does either"
> msgstr ""
> "fakeroot umhült nicht open(), create(), etc. Falls Benutzer B<joost> also "
> "entweder"

… umhüllen geht auch. Sollte aber für »to wrap« möglichst einheiltich
sein, der »Wrapper« ist ja schon eine Alternative, die nicht übersetzt
wird. Bitte global prüfen/anpassen, ich merke das nicht weiter an.

> # type: Plain text
> #. type: Plain text
> #: ../doc/fakeroot.1:264
> msgid ""
> "fakeroot has no way of knowing that in the first case, the owner of foo "
> "really should be B<joost> while the second case it should have been "
> "B<root>.  For the Debian packaging, defaulting to giving all \"unknown\" "
> "files uid=gid=0, is always OK. The real way around this is to wrap B<open()> "
> "and B<create()>, but that creates other problems, as demonstrated by the "
> "libtricks package. This package wrapped many more functions, and tried to do "
> "a lot more than B<fakeroot .> It turned out that a minor upgrade of libc "
> "(from one where the B<stat()> function didn't use B<open()> to one with a "
> "B<stat()> function that did (in some cases) use B<open()>), would cause "
> "unexplainable segfaults (that is, the libc6 B<stat()> called the wrapped "
> "B<open()>, which would then call the libc6 B<stat()>, etc).  Fixing them "
> "wasn't all that easy, but once fixed, it was just a matter of time before "
> "another function started to use open(), never mind trying to port it to a "
> "different operating system. Thus I decided to keep the number of functions "
> "wrapped by fakeroot as small as possible, to limit the likelihood of "
> "\\(oqcollisions\\(cq."
> msgstr ""
> "ausführt, hat fakeroot im ersten Fall keine Möglichkeit zu wissen, dass der "
> "Benutzer von foo wirklich B<joost> sein soll, während es im zweiten Fall "
> "B<root> gewesen sein soll. Für die Debian-Paketierung ist es immer in "
> "Ordnung, allen »unbekannten« Dateien uid=gid=0 zu geben. Der wahre Weg, dies "
> "zu umgehen ist, B<open()> und B<create()> zu verhüllen, aber dies erzeugt "
> "neue Probleme, wie vom Paket libtricks gezeigt wird. Dieses Paket verhüllte "
> "mehr Funktionen und versuchte viel mehr als B<fakeroot> zu tun. Es stellte "
> "sich heraus, dass ein unbedeutendes Upgrade von libc (von einer, in der die "
> "Funktion B<stat()> B<open()> nicht nutzte, zu einer mit einer B<stat()>-"
> "Funktion, die (in einigen Fällen) B<open()> benutzte), unerklärbare "
> "Speicherzugriffsfehler verursachen würde (das heißt, das libc6-B<stat()> "
> "ruft das verhüllte B<open()> auf, das dann libc6-B<stat()> aufrufen würde, "
> "etc). Das Beheben war alles andere als einfach, aber einmal behoben, war es "
> "nur eine Frage der Zeit, bevor eine andere Funktion begann open() zu "
> "benutzen, ganz zu schweigen vom Versuch, es auf andere Betriebssysteme zu "
> "portieren. Daher wurde entschieden, die Anzahl der von fakeroot verhüllten "
> "Funktionen so klein wie möglich zu halten, um die Wahrscheinlichkeit von "
> "\\(oqZusammenstößen\\(cq so gering wie möglich zu halten."

mehr Funktionen → viel mehr Funktionen
s/begann/begann,/

Wie oben würde ich auch hier die Anführungszeichen eindeutschen:
\\(oqZusammenstößen\\(cq → »Zusammenstößen«

> # type: Plain text
> #. type: Plain text
> #: ../doc/fakeroot.1:286 ../doc/faked.1:80
> msgid ""
> "B<fakeroot> is distributed under the GNU General Public License.  (GPL 2.0 "
> "or greater)."
> msgstr ""
> "B<fakeroot> wird unter den Bedingungnen der GNU General Public License. (GPL "
> "2.0 oder höher) weitergegeben."

Bedingungnen → Bedingungen

Sowohl in der Übersetzung als auch im Original (das ist selten):
License. → License

> # type: Plain text
> # FIXME s/ Rather/. Rather/
> #. type: Plain text
> #: ../doc/fakeroot.1:299
> msgid ""
> "mostly by J.H.M. Dassen E<lt>jdassen@debian.orgE<gt> Rather a lot mods/"
> "additions by joost and Clint."
> msgstr ""
> "größtenteils von J.H.M. Dassen E<lt>jdassen@debian.orgE<gt>. Ziemlich viele "
> "Mods/Zusätze von Joost und Clint."

s/Mods/Veränderungen/

> # type: Plain text
> # FIXME wrong order
> #. type: Plain text
> #: ../doc/fakeroot.1:304
> msgid ""
> "B<faked>(1)  B<dpkg-buildpackage>(1), B<debuild>(1)  B</usr/share/doc/"
> "fakeroot/DEBUG>"
> msgstr ""
> "B<debuild>(1), B<dpkg-buildpackage>(1), B<faked>(1), B</usr/share/doc/"
> "fakeroot/DEBUG>"

Fehler im Original: Fehlende Kommata nach den B<faked>(1) und
B<debuild>(1).

> # type: Plain text
> # FIXME s/)./.)/
> #. type: Plain text
> #: ../doc/faked.1:52
> msgid ""
> "Don't allocate a new communication channel, but use channel specified by "
> "key. (If the specified channel doesn't exist, it's created)."
> msgstr ""
> "reserviert keinen neuen Kommunikationskanal, benutzt aber den durch den "
> "Schlüssel angegebenen Kanal. (Falls der angegebene Kanal nicht exisitiert, "
> "wird er erzeugt.)"

s/benutzt aber/sondern benutzt/

> # type: Plain text
> #. type: Plain text
> #: ../doc/faked.1:76
> msgid ""
> "None so far. Be warned, though: although I've written quite a few much "
> "larger (and smaller) programs, I've never written anything that was as tiny "
> "as B<fakeroot>, had as many bugs as B<fakeroot>, and still was as usable as, "
> "say, B<fakeroot> version 0.0_3, the first version that could be used to "
> "build itself."
> msgstr ""
> "Weiter nichts. Seien Sie dennoch gewarnt: Obwohl der Autor ziemlich wenige "
> "wesentlich größere (und kleinere) Programme geschrieben hat, hat er nie "
> "etwas geschrieben, das so klein wie B<fakeroot> war und so viele Fehler wie "
> "B<fakeroot> hatte und immer noch so benutzbar war wie etwa B<fakeroot> "
> "Version 0.0_3, der ersten Version, die benutzt werden konnte, um B<fakeroot> "
> "selbst zu erstellen."

s/Weiter nichts./Bisher keine./
s/ziemlich wenige/eine ganze Reihe/

> # type: Plain text
> #. type: Plain text
> #: ../doc/faked.1:93
> msgid ""
> "mostly by J.H.M. Dassen E<lt>jdassen@debian.orgE<gt> mods/additions by joost "
> "and Clint."
> msgstr ""
> "größtenteils von J.H.M. Dassen E<lt>jdassen@debian.orgE<gt>. Mods/Zusätze "
> "von Joost und Clint."

s/Mods/Veränderungen/

> # type: Plain text
> # FIXME wrong order
> #. type: Plain text
> #: ../doc/faked.1:97
> msgid ""
> "B<fakeroot>(1), B<dpkg-buildpackage>(1), B<debuild>(1)  B</usr/share/doc/"
> "fakeroot/DEBUG>"
> msgstr ""
> "B<debuild>(1), B<dpkg-buildpackage>(1), B<fakeroot>(1), B</usr/share/doc/"
> "fakeroot/DEBUG>"

Fehler im Original: Fehlendes Komma nach B<debuild>(1).

Generell frage ich mich, ob die Konvention der alphabetischen (und
Abschnittsweisen) Reihenfolge sinnvoll ist. Berim Fehlerberichten bin
ich da viel auf Unverständnis gestoßen, auch ist es in der Regel
sinnvoller, eine semantische Reihenfolge (wichtigste zuerst) zu
verwenden. Hier zum Beispiel ist B<fakeroot>(1) die wichtigste
Referenz, B<debuild>(1) eher weniger. 

Viele Grüße

          Helge


-- 
      Dr. Helge Kreutzmann                     debian@helgefjell.de
           Dipl.-Phys.                   http://www.helgefjell.de/debian.php
        64bit GNU powered                     gpg signed mail preferred
           Help keep free software "libre": http://www.ffii.de/

Attachment: signature.asc
Description: PGP signature


Reply to: