From 4630a6ecd8f0cc21348f432b966e2bcb15f6859d Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Sun, 19 May 2013 11:39:44 +0200 Subject: streamline .gitignore further adding some comments, regrouping files and use some patterns to avoid updating the ignore file for new translations or abi changes Git-Dch: Ignore --- .gitignore | 66 ++++++++++++++++++++++++++++++++++---------------------------- 1 file changed, 36 insertions(+), 30 deletions(-) diff --git a/.gitignore b/.gitignore index bcdb18914..e66f9df3b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,30 +1,36 @@ -aclocal.m4 -autom4te.cache/ -build/ -buildlib/config.guess -buildlib/config.sub -configure -debian/copyright -doc/de/ -doc/es/ -doc/fr/ -doc/it/ -doc/ja/ -doc/pl/ -doc/pt/ -doc/pt_BR/ -doc/examples/sources.list -marks.bzr -marks.git -debian/*.log -debian/*.substvars -debian/*.debhelper -debian/apt-doc -debian/apt -debian/apt-utils -debian/libapt-pkg4.12 -debian/libapt-inst1.5 -debian/libapt-pkg-dev -debian/libapt-pkg-doc -debian/apt-transport-https -debian/files +# build artifacts +/aclocal.m4 +/autom4te.cache/ +/build/ +/buildlib/config.guess +/buildlib/config.sub +/configure + +# copy of COPYING +/debian/copyright + +# generated files in the process to build all +# apt man pages and other documentation +/doc/*/ +!/doc/examples/ +!/doc/po/ + +# package building artifacts +/debian/*.log +/debian/*.substvars +/debian/*.debhelper +/debian/files +/debian/apt/ +/debian/apt-doc/ +/debian/apt-utils/ +/debian/libapt-pkg*/ +/debian/libapt-inst*/ +/debian/libapt-pkg-dev/ +/debian/libapt-pkg-doc/ +/debian/apt-transport-https/ + +# generated from *.in files +/doc/examples/sources.list +/debian/libapt-pkg*.install +/debian/libapt-inst*.install +/debian/libapt-pkg-dev.install -- cgit v1.2.3 From ac62eb38b0bca7a45835903eb421c19f4f78aca3 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Sun, 19 May 2013 15:49:24 +0200 Subject: build the en manpages in subdirectory doc/en Building manpages becames more consistent this way and it is simpler to ignore build artefacts, too. --- .gitignore | 1 + buildlib/po4a_manpage.mak | 12 ++++---- debian/changelog | 7 +++++ debian/rules | 4 +-- doc/en/makefile | 38 +++++++++++++++++++++++++ doc/makefile | 72 +++++++++++++---------------------------------- 6 files changed, 74 insertions(+), 60 deletions(-) create mode 100644 doc/en/makefile diff --git a/.gitignore b/.gitignore index e66f9df3b..3e07e241b 100644 --- a/.gitignore +++ b/.gitignore @@ -14,6 +14,7 @@ /doc/*/ !/doc/examples/ !/doc/po/ +!/doc/en/makefile # package building artifacts /debian/*.log diff --git a/buildlib/po4a_manpage.mak b/buildlib/po4a_manpage.mak index 09eca0ec2..1e778cf11 100644 --- a/buildlib/po4a_manpage.mak +++ b/buildlib/po4a_manpage.mak @@ -25,6 +25,7 @@ $(LOCAL)-LIST := $(SOURCE) # Install generation hooks manpages: $($(LOCAL)-LIST) +clean: clean/$(LOCAL) veryclean: veryclean/$(LOCAL) apt-verbatim.ent: ../apt-verbatim.ent @@ -37,15 +38,16 @@ manpage-style.xsl: ../manpage-style.xsl $($(LOCAL)-LIST) :: % : %.xml $(STYLESHEET) $(INCLUDES) echo Creating man page $@ $(XSLTPROC) -o $@ $(STYLESHEET) $< || exit 200 # why xsltproc doesn't respect the -o flag here??? - test -f $(subst .$(LC),,$@) || echo FIXME: xsltproc respect the -o flag now, workaround can be removed + test -f $(subst .$(LC),,$@) || echo 'FIXME: xsltproc respects the -o flag now, workaround can be removed' mv -f $(subst .$(LC),,$@) $@ # Clean rule -.PHONY: veryclean/$(LOCAL) +.PHONY: clean/$(LOCAL) veryclean/$(LOCAL) +clean/$(LOCAL): + rm -f $($(@F)-LIST) apt.ent apt-verbatim.ent veryclean/$(LOCAL): - -rm -rf $($(@F)-LIST) apt.ent apt-verbatim.ent apt.$(LC).8 \ - $(addsuffix .xml,$($(@F)-LIST)) \ - offline.$(LC).sgml guide.$(LC).sgml + # we are nuking the directory we are working in as it is auto-generated + rm -rf $(shell readlink -f .) HAVE_PO4A=yes endif diff --git a/debian/changelog b/debian/changelog index aa8553251..1a8604e09 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +apt (0.9.8.3) UNRELEASED; urgency=low + + [ David Kalnischkies ] + * build the en manpages in subdirectory doc/en + + -- David Kalnischkies Sun, 09 Jun 2013 15:06:24 +0200 + apt (0.9.8.2) unstable; urgency=low [ Programs translations ] diff --git a/debian/rules b/debian/rules index 5051dab4f..79a6dbe0c 100755 --- a/debian/rules +++ b/debian/rules @@ -203,7 +203,7 @@ apt: build build-manpages dh_bugfiles -p$@ dh_lintian -p$@ dh_installexamples -p$@ $(BLD)/docs/examples/* - dh_installman -p$@ $(wildcard $(patsubst %,doc/%.[158],$(apt_MANPAGES)) $(patsubst %,doc/*/%.*.[158],$(apt_MANPAGES))) + dh_installman -p$@ $(wildcard $(patsubst %,doc/en/%.[158],$(apt_MANPAGES)) $(patsubst %,doc/*/%.*.[158],$(apt_MANPAGES))) dh_installcron -p$@ dh_installdocs -p$@ dh_installchangelogs -p$@ @@ -253,7 +253,7 @@ apt-utils: build build-manpages dh_installexamples -p$@ # Install the man pages.. - dh_installman -p$@ $(wildcard $(patsubst %,doc/%.[158],$(apt-utils_MANPAGES)) $(patsubst %,doc/*/%.*.[158],$(apt-utils_MANPAGES))) + dh_installman -p$@ $(wildcard $(patsubst %,doc/en/%.[158],$(apt-utils_MANPAGES)) $(patsubst %,doc/*/%.*.[158],$(apt-utils_MANPAGES))) dh_installchangelogs -p$@ dh_strip -p$@ diff --git a/doc/en/makefile b/doc/en/makefile new file mode 100644 index 000000000..a4fb232d4 --- /dev/null +++ b/doc/en/makefile @@ -0,0 +1,38 @@ +# -*- make -*- +BASE=../.. +SUBDIR=doc/en + +# Bring in the default rules +include ../../buildlib/defaults.mak + +# Do not use XMLTO, build the manpages directly with XSLTPROC +ifdef XSLTPROC +# generate a list of accepted man page translations +SOURCE = $(patsubst ../%.xml,%,$(wildcard ../*.?.xml)) +INCLUDES = ../apt.ent ../apt-verbatim.ent +STYLESHEET=../manpage-style.xsl + +LOCAL := manpage-$(firstword $(SOURCE)) +$(LOCAL)-LIST := $(SOURCE) + +# Install generation hooks +manpages: $($(LOCAL)-LIST) apt.8 + +$($(LOCAL)-LIST) :: % : ../%.xml $(STYLESHEET) $(INCLUDES) + echo Creating man page $@ + $(XSLTPROC) -o $@ $(STYLESHEET) $< + +apt.8: ../apt.8 + cp -a ../apt.8 apt.8 + +# Clean rule +.PHONY: clean/$(LOCAL) +veryclean: clean/$(LOCAL) +clean: clean/$(LOCAL) +clean/$(LOCAL): + -rm -rf $($(@F)-LIST) apt.8 +endif + +# Chain to the manpage rule +SOURCE = apt.8 +include $(MANPAGE_H) diff --git a/doc/makefile b/doc/makefile index be8357d80..44a22a597 100644 --- a/doc/makefile +++ b/doc/makefile @@ -1,7 +1,6 @@ # -*- make -*- BASE=.. SUBDIR=doc -SUBDIRS= $(dir $(wildcard */makefile)) # Bring in the default rules include ../buildlib/defaults.mak @@ -13,34 +12,6 @@ include $(DEBIANDOC_H) doc: manpages debiandoc -# Do not use XMLTO, build the manpages directly with XSLTPROC -ifdef XSLTPROC -# generate a list of accepted man page translations -SOURCE = $(patsubst %.xml,%,$(wildcard *.?.xml)) -INCLUDES = apt.ent apt-verbatim.ent -STYLESHEET=manpage-style.xsl - -LOCAL := manpage-$(firstword $(SOURCE)) -$(LOCAL)-LIST := $(SOURCE) - -# Install generation hooks -manpages: $($(LOCAL)-LIST) - -$($(LOCAL)-LIST) :: % : %.xml $(STYLESHEET) $(INCLUDES) - echo Creating man page $@ - $(XSLTPROC) -o $@ $(STYLESHEET) $< - -# Clean rule -.PHONY: veryclean/$(LOCAL) -veryclean: veryclean/$(LOCAL) -veryclean/$(LOCAL): - -rm -rf $($(@F)-LIST) -endif - -# Chain to the manpage rule -SOURCE = apt.8 -include $(MANPAGE_H) - examples/sources.list: examples/sources.list.in apt-verbatim.ent sed -e 's#&stable-codename;#$(shell grep --max-count=1 '^ examples/sources.list @@ -50,42 +21,43 @@ TO = $(DOC) TARGET = binary include $(COPY_H) -.PHONY: clean clean-subdirs veryclean veryclean-subdirs all binary doc stats +.PHONY: clean clean/subdirs veryclean veryclean/subdirs manpages/subdirs debiandoc/subdirs all binary doc stats -clean: clean-subdirs -veryclean: veryclean-subdirs +clean: clean/subdirs +veryclean: veryclean/subdirs +manpages: manpages/subdirs +debiandoc: debiandoc/subdirs -clean-subdirs: - for dir in $(SUBDIRS); do\ - $(MAKE) -C $$dir clean; \ - done +DOCUMENTATIONPO = $(patsubst %.po,%,$(notdir $(wildcard po/*.po))) +DOCDIRLIST = $(addsuffix /makefile,$(DOCUMENTATIONPO)) -veryclean-subdirs: - for dir in $(SUBDIRS); do\ - rm -rf $$dir; \ +dirs: $(DOCDIRLIST) +$(DOCDIRLIST) :: %/makefile : lang.makefile + test -d $(dir $@) || mkdir $(dir $@) + sed "s#@@LANG@@#$(subst /,,$(dir $@))#" $< > $@ + +debiandoc/subdirs manpages/subdirs clean/subdirs veryclean/subdirs: dirs + for dir in en $(dir $(DOCDIRLIST)); do \ + $(MAKE) -C $$dir $(patsubst %/subdirs,%,$@); \ done stats: for i in po/*.po; do echo -n "$$i: "; msgfmt --output-file=/dev/null --statistics $$i; done ifdef PO4A -DOCUMENTATIONPO = $(patsubst %.po,%,$(notdir $(wildcard po/*.po))) MANPAGEPOLIST = $(addprefix manpages-translation-,$(DOCUMENTATIONPO)) DEBIANDOCPOLIST = $(addprefix debiandoc-translation-,$(DOCUMENTATIONPO)) -MANPAGEDIRLIST = $(addsuffix /makefile,$(DOCUMENTATIONPO)) +.PHONY: update-po po4a $(MANPAGEPOLIST) $(DEBIANDOCPOLIST) $(DOCDIRLIST) -.PHONY: update-po po4a $(MANPAGEPOLIST) $(MANPAGEDIRLIST) - -manpages: $(MANPAGEPOLIST) -debiandoc: $(DEBIANDOCPOLIST) -po4a: $(MANPAGEPOLIST) $(DEBIANDOCPOLIST) +po4a: manpages/subdirs debiandoc/subdirs update-po: po4a --previous --no-backups --force --no-translations \ --package-name='$(PACKAGE)-doc' --package-version='$(PACKAGE_VERSION)' \ --msgid-bugs-address='$(PACKAGE_MAIL)' po4a.conf +manpages/subdirs: $(MANPAGEPOLIST) $(MANPAGEPOLIST) :: manpages-translation-% : %/makefile po4a.conf # first line is for apt.8 (see Bug#696923) po4a --previous --no-backups --translate-only $(dir $<)apt.ent \ @@ -100,19 +72,13 @@ $(MANPAGEPOLIST) :: manpages-translation-% : %/makefile po4a.conf $(patsubst %,--translate-only $(dir $<)%,$(patsubst %.8.xml,%.$(subst /,,$(dir $<)).8.xml,$(wildcard *.8.xml))) \ --package-name='$(PACKAGE)-doc' --package-version='$(PACKAGE_VERSION)' \ --msgid-bugs-address='$(PACKAGE_MAIL)' po4a.conf - $(MAKE) -C $(dir $<) manpages +debiandoc/subdirs: $(DEBIANDOCPOLIST) $(DEBIANDOCPOLIST) :: debiandoc-translation-% : %/makefile po4a.conf po4a --previous --no-backups --translate-only $(dir $<)apt.ent \ $(patsubst %,--translate-only $(dir $<)%,$(patsubst %.sgml,%.$(subst /,,$(dir $<)).sgml,$(wildcard *.sgml))) \ --package-name='$(PACKAGE)-doc' --package-version='$(PACKAGE_VERSION)' \ --msgid-bugs-address='$(PACKAGE_MAIL)' po4a.conf - $(MAKE) -C $(dir $<) debiandoc - -dirs: $(MANPAGEDIRLIST) -$(MANPAGEDIRLIST) :: %/makefile : lang.makefile - test -d $(dir $@) || mkdir $(dir $@) - sed "s#@@LANG@@#$(subst /,,$(dir $@))#" $< > $@ endif ifdef DOXYGEN -- cgit v1.2.3 From 3a61adbba8bfc9ba76d1262e0e8118f78920f9fe Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Sun, 19 May 2013 18:53:19 +0200 Subject: remove -ldl from cdrom and -lutil from apt-get linkage Building src:apt shows: dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/apt/usr/lib/apt/methods/cdrom was not linked against libdl.so.2 (it uses none of the library's symbols) dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/apt/usr/bin/apt-get was not linked against libutil.so.1 (it uses none of the library's symbols) --- cmdline/makefile | 2 +- debian/changelog | 2 +- methods/makefile | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/cmdline/makefile b/cmdline/makefile index f3712232a..460a71240 100644 --- a/cmdline/makefile +++ b/cmdline/makefile @@ -14,7 +14,7 @@ include $(PROGRAM_H) # The apt-get program PROGRAM=apt-get -SLIBS = -lapt-pkg -lutil $(INTLLIBS) +SLIBS = -lapt-pkg $(INTLLIBS) LIB_MAKES = apt-pkg/makefile SOURCE = apt-get.cc acqprogress.cc include $(PROGRAM_H) diff --git a/debian/changelog b/debian/changelog index 1a8604e09..662289fba 100644 --- a/debian/changelog +++ b/debian/changelog @@ -2,6 +2,7 @@ apt (0.9.8.3) UNRELEASED; urgency=low [ David Kalnischkies ] * build the en manpages in subdirectory doc/en + * remove -ldl from cdrom and -lutil from apt-get linkage -- David Kalnischkies Sun, 09 Jun 2013 15:06:24 +0200 @@ -24,7 +25,6 @@ apt (0.9.8.2) unstable; urgency=low * Fix crash when the "mirror" method does not find any entry (closes: #699303) - [ Johan Kiviniemi ] * cmdline/apt-key: - Create new keyrings with mode 0644 instead of 0600. diff --git a/methods/makefile b/methods/makefile index a271aff5e..294c55d23 100644 --- a/methods/makefile +++ b/methods/makefile @@ -39,7 +39,7 @@ include $(PROGRAM_H) # The cdrom method PROGRAM=cdrom -SLIBS = -lapt-pkg -ldl $(INTLLIBS) +SLIBS = -lapt-pkg $(INTLLIBS) LIB_MAKES = apt-pkg/makefile SOURCE = cdrom.cc include $(PROGRAM_H) -- cgit v1.2.3 From 2de7157775551185beb3d7cb56e9f9f353e57ab4 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Tue, 21 May 2013 00:05:14 +0200 Subject: rewrite pkgOrderList::DepRemove to stop incorrect immediate setting MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Some squeeze → wheezy upgrades indicate that DepRemove runs amok in complicated setups as it wasn't correctly working with or-groups. Completely rewritten the check is now moving from or-group to or-group instead. The behavior should be the same as the code before, but (hopefully) with less bugs and more comments. Closes: 645713 --- apt-pkg/orderlist.cc | 219 ++++++++++++++++++++++++--------------------------- debian/changelog | 2 + 2 files changed, 105 insertions(+), 116 deletions(-) diff --git a/apt-pkg/orderlist.cc b/apt-pkg/orderlist.cc index 80d8fd490..86d2a9478 100644 --- a/apt-pkg/orderlist.cc +++ b/apt-pkg/orderlist.cc @@ -893,149 +893,136 @@ bool pkgOrderList::DepConfigure(DepIterator D) /*}}}*/ // OrderList::DepRemove - Removal ordering /*{{{*/ // --------------------------------------------------------------------- -/* Removal visits all reverse depends. It considers if the dependency - of the Now state version to see if it is okay with removing this - package. This check should always fail, but is provided for symetery - with the other critical handlers. - - Loops are preprocessed and logged. Removal loops can also be - detected in the critical handler. They are characterized by an - old version of A depending on B but the new version of A conflicting - with B, thus either A or B must break to install. */ -bool pkgOrderList::DepRemove(DepIterator D) +/* Checks all given dependencies if they are broken by the remove of a + package and if so fix it by visiting another provider or or-group + member to ensure that the dependee keeps working which is especially + important for Immediate packages like e.g. those depending on an + awk implementation. If the dependency can't be fixed with another + package this means an upgrade of the package will solve the problem. */ +bool pkgOrderList::DepRemove(DepIterator Broken) { - if (D.Reverse() == false) + if (Broken.Reverse() == false) return true; - for (; D.end() == false; ++D) - if (D->Type == pkgCache::Dep::Depends || D->Type == pkgCache::Dep::PreDepends) + + for (; Broken.end() == false; ++Broken) + { + if (Broken->Type != pkgCache::Dep::Depends && + Broken->Type != pkgCache::Dep::PreDepends) + continue; + + PkgIterator BrokenPkg = Broken.ParentPkg(); + // uninstalled packages can't break via a remove + if (BrokenPkg->CurrentVer == 0) + continue; + + // if its already added, we can't do anything useful + if (IsFlag(BrokenPkg, AddPending) == true || IsFlag(BrokenPkg, Added) == true) + continue; + + // if the dependee is going to be removed, visit it now + if (Cache[BrokenPkg].Delete() == true) + return VisitNode(BrokenPkg, "Remove-Dependee"); + + // The package stays around, so find out how this is possible + for (DepIterator D = BrokenPkg.CurrentVer().DependsList(); D.end() == false;) { - // Duplication elimination, consider the current version only - if (D.ParentPkg().CurrentVer() != D.ParentVer()) + // only important or-groups need fixing + if (D->Type != pkgCache::Dep::Depends && + D->Type != pkgCache::Dep::PreDepends) + { + ++D; continue; + } - /* We wish to see if the dep on the parent package is okay - in the removed (install) state of the target pkg. */ - bool tryFixDeps = false; - if (CheckDep(D) == true) + // Start is the beginning of the or-group, D is the first one after or + DepIterator Start = D; + bool foundBroken = false; + for (bool LastOR = true; D.end() == false && LastOR == true; ++D) { - // We want to catch loops with the code below. - if (IsFlag(D.ParentPkg(),AddPending) == false) - continue; + LastOR = (D->CompareOp & pkgCache::Dep::Or) == pkgCache::Dep::Or; + if (D == Broken) + foundBroken = true; } - else - tryFixDeps = true; - // This is the loop detection - if (IsFlag(D.ParentPkg(),Added) == true || - IsFlag(D.ParentPkg(),AddPending) == true) - { - if (IsFlag(D.ParentPkg(),AddPending) == true) - AddLoop(D); + // this or-group isn't the broken one: keep searching + if (foundBroken == false) continue; + + // iterate over all members of the or-group searching for a ready replacement + bool readyReplacement = false; + for (DepIterator OrMember = Start; OrMember != D && readyReplacement == false; ++OrMember) + { + Version ** Replacements = OrMember.AllTargets(); + for (Version **R = Replacements; *R != 0; ++R) + { + VerIterator Ver(Cache,*R); + // only currently installed packages can be a replacement + PkgIterator RPkg = Ver.ParentPkg(); + if (RPkg.CurrentVer() != Ver) + continue; + + // packages going to be removed can't be a replacement + if (Cache[RPkg].Delete() == true) + continue; + + readyReplacement = true; + break; + } + delete[] Replacements; } - if (tryFixDeps == true) + // something else is ready to take over, do nothing + if (readyReplacement == true) + continue; + + // see if we can visit a replacement + bool visitReplacement = false; + for (DepIterator OrMember = Start; OrMember != D && visitReplacement == false; ++OrMember) { - for (pkgCache::DepIterator F = D.ParentPkg().CurrentVer().DependsList(); - F.end() == false; ++F) + Version ** Replacements = OrMember.AllTargets(); + for (Version **R = Replacements; *R != 0; ++R) { - if (F->Type != pkgCache::Dep::Depends && F->Type != pkgCache::Dep::PreDepends) + VerIterator Ver(Cache,*R); + // consider only versions we plan to install + PkgIterator RPkg = Ver.ParentPkg(); + if (Cache[RPkg].Install() == false || Cache[RPkg].InstallVer != Ver) continue; - // Check the Providers - if (F.TargetPkg()->ProvidesList != 0) - { - pkgCache::PrvIterator Prov = F.TargetPkg().ProvidesList(); - for (; Prov.end() == false; ++Prov) - { - pkgCache::PkgIterator const P = Prov.OwnerPkg(); - if (IsFlag(P, InList) == true && - IsFlag(P, AddPending) == true && - IsFlag(P, Added) == false && - Cache[P].InstallVer == 0) - break; - } - if (Prov.end() == false) - for (pkgCache::PrvIterator Prv = F.TargetPkg().ProvidesList(); - Prv.end() == false; ++Prv) - { - pkgCache::PkgIterator const P = Prv.OwnerPkg(); - if (IsFlag(P, InList) == true && - IsFlag(P, AddPending) == false && - Cache[P].InstallVer != 0 && - VisitNode(P, "Remove-P") == true) - { - Flag(P, Immediate); - tryFixDeps = false; - break; - } - } - if (tryFixDeps == false) - break; - } - // Check for Or groups - if ((F->CompareOp & pkgCache::Dep::Or) != pkgCache::Dep::Or) + // loops are not going to help us, so don't create them + if (IsFlag(RPkg, AddPending) == true) continue; - // Lets see if the package is part of the Or group - pkgCache::DepIterator S = F; - for (; S.end() == false; ++S) + + if (IsMissing(RPkg) == true) + continue; + + visitReplacement = true; + if (IsFlag(BrokenPkg, Immediate) == false) { - if (S.TargetPkg() == D.TargetPkg()) + if (VisitNode(RPkg, "Remove-Rep") == true) break; - if ((S->CompareOp & pkgCache::Dep::Or) != pkgCache::Dep::Or || - CheckDep(S)) // Or group is satisfied by another package - for (;S.end() == false; ++S); } - if (S.end() == true) - continue; - // skip to the end of the or group - for (;S.end() == false && (S->CompareOp & pkgCache::Dep::Or) == pkgCache::Dep::Or; ++S); - ++S; - // The soon to be removed is part of the Or group - // start again in the or group and find something which will serve as replacement - for (; F.end() == false && F != S; ++F) + else { - if (IsFlag(F.TargetPkg(), InList) == true && - IsFlag(F.TargetPkg(), AddPending) == false && - Cache[F.TargetPkg()].InstallVer != 0 && - VisitNode(F.TargetPkg(), "Remove-Target") == true) - { - Flag(F.TargetPkg(), Immediate); - tryFixDeps = false; + Flag(RPkg, Immediate); + if (VisitNode(RPkg, "Remove-ImmRep") == true) break; - } - else if (F.TargetPkg()->ProvidesList != 0) - { - pkgCache::PrvIterator Prv = F.TargetPkg().ProvidesList(); - for (; Prv.end() == false; ++Prv) - { - if (IsFlag(Prv.OwnerPkg(), InList) == true && - IsFlag(Prv.OwnerPkg(), AddPending) == false && - Cache[Prv.OwnerPkg()].InstallVer != 0 && - VisitNode(Prv.OwnerPkg(), "Remove-Owner") == true) - { - Flag(Prv.OwnerPkg(), Immediate); - tryFixDeps = false; - break; - } - } - if (Prv.end() == false) - break; - } } - if (tryFixDeps == false) - break; + visitReplacement = false; } + delete[] Replacements; } - - // Skip over missing files - if (IsMissing(D.ParentPkg()) == true) + if (visitReplacement == true) continue; - - if (VisitNode(D.ParentPkg(), "Remove-Parent") == false) + + // the broken package in current version can't be fixed, so install new version + if (IsMissing(BrokenPkg) == true) + break; + + if (VisitNode(BrokenPkg, "Remove-Upgrade") == false) return false; } - + } + return true; } /*}}}*/ diff --git a/debian/changelog b/debian/changelog index 662289fba..d7c3494ce 100644 --- a/debian/changelog +++ b/debian/changelog @@ -3,6 +3,8 @@ apt (0.9.8.3) UNRELEASED; urgency=low [ David Kalnischkies ] * build the en manpages in subdirectory doc/en * remove -ldl from cdrom and -lutil from apt-get linkage + * rewrite pkgOrderList::DepRemove to stop incorrect immediate setting + (Closes: 645713) -- David Kalnischkies Sun, 09 Jun 2013 15:06:24 +0200 -- cgit v1.2.3 From 978844db25deb7cd88b053bc2f4685caf2c61a75 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Tue, 21 May 2013 17:10:21 +0200 Subject: prefer Essentials over Removals in ordering score Doing Removes early is good to have them out of the way, so they don't break 'Inst' or 'Conf' chains, but scoring them above Essentials means that we end up upgrading (many) less important packages before we handle big stuff like libc6 or debconf which not only fails if those less important packages have unannounced (strict) dependencies, but also leads to having these packages unconfigured for a long time triggering bugs in maintainer scripts for no good reason (#708831). So this commits sets the default value for remove scores to 100, which is below the one for essentials (200) and a lot lower than the previous default value (500). --- apt-pkg/orderlist.cc | 5 ++--- debian/changelog | 1 + 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/apt-pkg/orderlist.cc b/apt-pkg/orderlist.cc index 86d2a9478..984ae1d10 100644 --- a/apt-pkg/orderlist.cc +++ b/apt-pkg/orderlist.cc @@ -301,9 +301,8 @@ bool pkgOrderList::OrderConfigure() /* Higher scores order earlier */ int pkgOrderList::Score(PkgIterator Pkg) { - static int const ScoreDelete = _config->FindI("OrderList::Score::Delete", 500); - - // Removal is always done first + // Removals should be done after we dealt with essentials + static int const ScoreDelete = _config->FindI("OrderList::Score::Delete", 100); if (Cache[Pkg].Delete() == true) return ScoreDelete; diff --git a/debian/changelog b/debian/changelog index d7c3494ce..f57a8334f 100644 --- a/debian/changelog +++ b/debian/changelog @@ -5,6 +5,7 @@ apt (0.9.8.3) UNRELEASED; urgency=low * remove -ldl from cdrom and -lutil from apt-get linkage * rewrite pkgOrderList::DepRemove to stop incorrect immediate setting (Closes: 645713) + * prefer Essentials over Removals in ordering score -- David Kalnischkies Sun, 09 Jun 2013 15:06:24 +0200 -- cgit v1.2.3 From 69335858269845904635c592268cf9519e75c1a9 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Tue, 21 May 2013 18:06:17 +0200 Subject: fix priority sorting by prefering higher in MarkInstall Used to work until a certain (here unnamed) person came along and used the wrong operator causing low-priority packages to be sorted above high-priority packages while choosing a provider in commit 2b5c35c7bb915dbd46fefd7c79f05364ba22f93b from Nov 2011 --- apt-pkg/depcache.cc | 2 +- debian/changelog | 1 + .../test-prefer-higher-priority-providers | 36 ++++++++++++++++++++++ 3 files changed, 38 insertions(+), 1 deletion(-) create mode 100755 test/integration/test-prefer-higher-priority-providers diff --git a/apt-pkg/depcache.cc b/apt-pkg/depcache.cc index 6a3e9bfc4..5ca0c2ea5 100644 --- a/apt-pkg/depcache.cc +++ b/apt-pkg/depcache.cc @@ -1004,7 +1004,7 @@ struct CompareProviders { } // higher priority seems like a good idea if (AV->Priority != BV->Priority) - return AV->Priority < BV->Priority; + return AV->Priority > BV->Priority; // prefer native architecture if (strcmp(A.Arch(), B.Arch()) != 0) { diff --git a/debian/changelog b/debian/changelog index f57a8334f..af606453d 100644 --- a/debian/changelog +++ b/debian/changelog @@ -6,6 +6,7 @@ apt (0.9.8.3) UNRELEASED; urgency=low * rewrite pkgOrderList::DepRemove to stop incorrect immediate setting (Closes: 645713) * prefer Essentials over Removals in ordering score + * fix priority sorting by prefering higher in MarkInstall -- David Kalnischkies Sun, 09 Jun 2013 15:06:24 +0200 diff --git a/test/integration/test-prefer-higher-priority-providers b/test/integration/test-prefer-higher-priority-providers new file mode 100755 index 000000000..66458bee0 --- /dev/null +++ b/test/integration/test-prefer-higher-priority-providers @@ -0,0 +1,36 @@ +#!/bin/sh +set -e + +TESTDIR=$(readlink -f $(dirname $0)) +. $TESTDIR/framework +setupenvironment +configarchitecture 'native' + +insertpackage 'unstable' 'foo' 'all' '1' 'Provides: stuff' 'important' +insertpackage 'unstable' 'bar' 'all' '1' 'Provides: stuff' 'optional' +insertpackage 'unstable' 'baz' 'all' '1' 'Provides: stuff' 'extra' +insertpackage 'unstable' 'awesome' 'all' '1' 'Depends: stuff' + +setupaptarchive + +testequal 'Reading package lists... +Building dependency tree... +The following extra packages will be installed: + foo +The following NEW packages will be installed: + awesome foo +0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded. +Inst foo (1 unstable [all]) +Inst awesome (1 unstable [all]) +Conf foo (1 unstable [all]) +Conf awesome (1 unstable [all])' aptget install awesome -s + +testequal 'Reading package lists... +Building dependency tree... +The following NEW packages will be installed: + awesome foo +0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded. +Inst foo (1 unstable [all]) +Inst awesome (1 unstable [all]) +Conf foo (1 unstable [all]) +Conf awesome (1 unstable [all])' aptget install awesome foo -s -- cgit v1.2.3 From 66706285737a895d0baf64c2387c58d5211be4f9 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Tue, 21 May 2013 21:50:30 +0200 Subject: try all providers in order if uninstallable in MarkInstall --- apt-pkg/depcache.cc | 18 ++++-- debian/changelog | 1 + .../test-prefer-higher-priority-providers | 70 ++++++++++++++++++++++ 3 files changed, 84 insertions(+), 5 deletions(-) diff --git a/apt-pkg/depcache.cc b/apt-pkg/depcache.cc index 5ca0c2ea5..5bed10d95 100644 --- a/apt-pkg/depcache.cc +++ b/apt-pkg/depcache.cc @@ -1200,16 +1200,23 @@ bool pkgDepCache::MarkInstall(PkgIterator const &Pkg,bool AutoInst, verlist.insert(Cand); } CompareProviders comp(Start); - APT::VersionList::iterator InstVer = std::max_element(verlist.begin(), verlist.end(), comp); - if (InstVer != verlist.end()) - { + do { + APT::VersionList::iterator InstVer = std::max_element(verlist.begin(), verlist.end(), comp); + + if (InstVer == verlist.end()) + break; + pkgCache::PkgIterator InstPkg = InstVer.ParentPkg(); if(DebugAutoInstall == true) std::clog << OutputInDepth(Depth) << "Installing " << InstPkg.Name() << " as " << Start.DepType() << " of " << Pkg.Name() << std::endl; - MarkInstall(InstPkg, true, Depth + 1, false, ForceImportantDeps); + if (MarkInstall(InstPkg, true, Depth + 1, false, ForceImportantDeps) == false) + { + verlist.erase(InstVer); + continue; + } // now check if we should consider it a automatic dependency or not if(InstPkg->CurrentVer == 0 && Pkg->Section != 0 && ConfigValueInSubTree("APT::Never-MarkAuto-Sections", Pkg.Section())) { @@ -1218,7 +1225,8 @@ bool pkgDepCache::MarkInstall(PkgIterator const &Pkg,bool AutoInst, << Start.DepType() << " of pkg in APT::Never-MarkAuto-Sections)" << std::endl; MarkAuto(InstPkg, false); } - } + break; + } while(true); continue; } /* Negative dependencies have no or-group diff --git a/debian/changelog b/debian/changelog index af606453d..b64a57bef 100644 --- a/debian/changelog +++ b/debian/changelog @@ -7,6 +7,7 @@ apt (0.9.8.3) UNRELEASED; urgency=low (Closes: 645713) * prefer Essentials over Removals in ordering score * fix priority sorting by prefering higher in MarkInstall + * try all providers in order if uninstallable in MarkInstall -- David Kalnischkies Sun, 09 Jun 2013 15:06:24 +0200 diff --git a/test/integration/test-prefer-higher-priority-providers b/test/integration/test-prefer-higher-priority-providers index 66458bee0..64b901dd0 100755 --- a/test/integration/test-prefer-higher-priority-providers +++ b/test/integration/test-prefer-higher-priority-providers @@ -34,3 +34,73 @@ Inst foo (1 unstable [all]) Inst awesome (1 unstable [all]) Conf foo (1 unstable [all]) Conf awesome (1 unstable [all])' aptget install awesome foo -s + +testequal "Reading package lists... +Building dependency tree... +Package 'bar' is not installed, so not removed +Package 'baz' is not installed, so not removed +The following extra packages will be installed: + foo +The following NEW packages will be installed: + awesome foo +0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded. +Inst foo (1 unstable [all]) +Inst awesome (1 unstable [all]) +Conf foo (1 unstable [all]) +Conf awesome (1 unstable [all])" aptget install awesome bar- baz- -s + +testequal "Reading package lists... +Building dependency tree... +Package 'foo' is not installed, so not removed +The following extra packages will be installed: + bar +The following NEW packages will be installed: + awesome bar +0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded. +Inst bar (1 unstable [all]) +Inst awesome (1 unstable [all]) +Conf bar (1 unstable [all]) +Conf awesome (1 unstable [all])" aptget install awesome foo- -s + +testequal "Reading package lists... +Building dependency tree... +Package 'foo' is not installed, so not removed +Package 'baz' is not installed, so not removed +The following extra packages will be installed: + bar +The following NEW packages will be installed: + awesome bar +0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded. +Inst bar (1 unstable [all]) +Inst awesome (1 unstable [all]) +Conf bar (1 unstable [all]) +Conf awesome (1 unstable [all])" aptget install awesome foo- baz- -s + +testequal "Reading package lists... +Building dependency tree... +Package 'foo' is not installed, so not removed +Package 'bar' is not installed, so not removed +The following extra packages will be installed: + baz +The following NEW packages will be installed: + awesome baz +0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded. +Inst baz (1 unstable [all]) +Inst awesome (1 unstable [all]) +Conf baz (1 unstable [all]) +Conf awesome (1 unstable [all])" aptget install awesome foo- bar- -s + +testequal "Reading package lists... +Building dependency tree... +Package 'foo' is not installed, so not removed +Package 'bar' is not installed, so not removed +Package 'baz' is not installed, so not removed +Some packages could not be installed. This may mean that you have +requested an impossible situation or if you are using the unstable +distribution that some required packages have not yet been created +or been moved out of Incoming. +The following information may help to resolve the situation: + +The following packages have unmet dependencies: + awesome : Depends: stuff +E: Unable to correct problems, you have held broken packages." aptget install awesome foo- bar- baz- -s -- cgit v1.2.3 From 42d51f333e8ef522fed02cdfc48663488d56c3a3 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Thu, 23 May 2013 12:14:56 +0200 Subject: do unpacks before configures in SmartConfigure MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Splits the big loop over dependencies in SmartConfigure which unpacks and configures dependencies into two loops and reverse their order, so that all dependencies which need to be unpacked are handled first and only after that configures are issued for dependencies. This is needed as otherwise the unpack of a (new) dependency will be issued in between a configure call for two (or more) packages which form a loop, which means the configure calls aren't part of the same dpkg call and therefore dpkg bails out. Such tight loops should really be avoided as they are usually wrong – and in reality the dependencies in libreoffice were greatly simplified thanks to Rene Engelhard so the problem is gone for the benefit of all. Closes: 707578 --- apt-pkg/packagemanager.cc | 113 +++++++++++++-------- debian/changelog | 1 + ...ight-loop-configure-with-unpacking-new-packages | 46 +++++++++ 3 files changed, 115 insertions(+), 45 deletions(-) create mode 100755 test/integration/test-very-tight-loop-configure-with-unpacking-new-packages diff --git a/apt-pkg/packagemanager.cc b/apt-pkg/packagemanager.cc index e2d7dbf2a..b8932753d 100644 --- a/apt-pkg/packagemanager.cc +++ b/apt-pkg/packagemanager.cc @@ -340,6 +340,7 @@ bool pkgPackageManager::SmartConfigure(PkgIterator Pkg, int const Depth) bool Bad = false, Changed = false; const unsigned int max_loops = _config->FindI("APT::pkgPackageManager::MaxLoopCount", 500); unsigned int i=0; + std::list needConfigure; do { Changed = false; @@ -353,7 +354,7 @@ bool pkgPackageManager::SmartConfigure(PkgIterator Pkg, int const Depth) continue; Bad = true; - // Search for dependencies which are unpacked but aren't configured yet (maybe loops) + // Check for dependencies that have not been unpacked, probably due to loops. for (DepIterator Cur = Start; true; ++Cur) { SPtrArray VList = Cur.AllTargets(); @@ -373,51 +374,63 @@ bool pkgPackageManager::SmartConfigure(PkgIterator Pkg, int const Depth) } // Check if the version that is going to be installed will satisfy the dependency - if (Cache[DepPkg].InstallVer != *I) + if (Cache[DepPkg].InstallVer != *I || List->IsNow(DepPkg) == false) continue; - if (List->IsFlag(DepPkg,pkgOrderList::UnPacked)) + if (PkgLoop == true) { - if (List->IsFlag(DepPkg,pkgOrderList::Loop) && PkgLoop) - { - // This dependency has already been dealt with by another SmartConfigure on Pkg - Bad = false; - break; - } - /* Check for a loop to prevent one forming - If A depends on B and B depends on A, SmartConfigure will - just hop between them if this is not checked. Dont remove the - loop flag after finishing however as loop is already set. - This means that there is another SmartConfigure call for this - package and it will remove the loop flag */ + if (Debug) + std::clog << OutputInDepth(Depth) << "Package " << Pkg << " loops in SmartConfigure" << std::endl; + Bad = false; + break; + } + else + { + if (Debug) + clog << OutputInDepth(Depth) << "Unpacking " << DepPkg.FullName() << " to avoid loop " << Cur << endl; if (PkgLoop == false) List->Flag(Pkg,pkgOrderList::Loop); - if (SmartConfigure(DepPkg, Depth + 1) == true) + if (SmartUnPack(DepPkg, true, Depth + 1) == true) { Bad = false; if (List->IsFlag(DepPkg,pkgOrderList::Loop) == false) - Changed = true; + Changed = true; } if (PkgLoop == false) - List->RmFlag(Pkg,pkgOrderList::Loop); - // If SmartConfigure was succesfull, Bad is false, so break + List->RmFlag(Pkg,pkgOrderList::Loop); if (Bad == false) break; } - else if (List->IsFlag(DepPkg,pkgOrderList::Configured)) - { - Bad = false; - break; - } } - if (Cur == End) + + if (Cur == End || Bad == false) break; - } + } if (Bad == false) continue; - // Check for dependencies that have not been unpacked, probably due to loops. + needConfigure.push_back(Start); + } + if (i++ > max_loops) + return _error->Error("Internal error: MaxLoopCount reached in SmartUnPack (1) for %s, aborting", Pkg.FullName().c_str()); + } while (Changed == true); + + Bad = false, Changed = false, i = 0; + do + { + Changed = false; + for (std::list::iterator D = needConfigure.begin(); D != needConfigure.end(); ++D) + { + // Compute a single dependency element (glob or) + pkgCache::DepIterator Start, End; + D->GlobOr(Start,End); + + if (End->Type != pkgCache::Dep::Depends) + continue; + Bad = true; + + // Search for dependencies which are unpacked but aren't configured yet (maybe loops) for (DepIterator Cur = Start; true; ++Cur) { SPtrArray VList = Cur.AllTargets(); @@ -428,44 +441,54 @@ bool pkgPackageManager::SmartConfigure(PkgIterator Pkg, int const Depth) PkgIterator DepPkg = Ver.ParentPkg(); // Check if the version that is going to be installed will satisfy the dependency - if (Cache[DepPkg].InstallVer != *I || List->IsNow(DepPkg) == false) + if (Cache[DepPkg].InstallVer != *I) continue; - if (PkgLoop == true) - { - if (Debug) - std::clog << OutputInDepth(Depth) << "Package " << Pkg << " loops in SmartConfigure" << std::endl; - Bad = false; - break; - } - else + if (List->IsFlag(DepPkg,pkgOrderList::UnPacked)) { - if (Debug) - clog << OutputInDepth(Depth) << "Unpacking " << DepPkg.FullName() << " to avoid loop " << Cur << endl; + if (List->IsFlag(DepPkg,pkgOrderList::Loop) && PkgLoop) + { + // This dependency has already been dealt with by another SmartConfigure on Pkg + Bad = false; + break; + } + /* Check for a loop to prevent one forming + If A depends on B and B depends on A, SmartConfigure will + just hop between them if this is not checked. Dont remove the + loop flag after finishing however as loop is already set. + This means that there is another SmartConfigure call for this + package and it will remove the loop flag */ if (PkgLoop == false) List->Flag(Pkg,pkgOrderList::Loop); - if (SmartUnPack(DepPkg, true, Depth + 1) == true) + if (SmartConfigure(DepPkg, Depth + 1) == true) { Bad = false; if (List->IsFlag(DepPkg,pkgOrderList::Loop) == false) - Changed = true; + Changed = true; } if (PkgLoop == false) - List->RmFlag(Pkg,pkgOrderList::Loop); + List->RmFlag(Pkg,pkgOrderList::Loop); + // If SmartConfigure was succesfull, Bad is false, so break if (Bad == false) break; } + else if (List->IsFlag(DepPkg,pkgOrderList::Configured)) + { + Bad = false; + break; + } } - - if (Cur == End) + if (Cur == End || Bad == false) break; - } + } + + if (Bad == true && Changed == false && Debug == true) std::clog << OutputInDepth(Depth) << "Could not satisfy " << Start << std::endl; } if (i++ > max_loops) - return _error->Error("Internal error: MaxLoopCount reached in SmartUnPack for %s, aborting", Pkg.FullName().c_str()); + return _error->Error("Internal error: MaxLoopCount reached in SmartUnPack (2) for %s, aborting", Pkg.FullName().c_str()); } while (Changed == true); if (Bad) { diff --git a/debian/changelog b/debian/changelog index b64a57bef..8a1194b1b 100644 --- a/debian/changelog +++ b/debian/changelog @@ -8,6 +8,7 @@ apt (0.9.8.3) UNRELEASED; urgency=low * prefer Essentials over Removals in ordering score * fix priority sorting by prefering higher in MarkInstall * try all providers in order if uninstallable in MarkInstall + * do unpacks before configures in SmartConfigure (Closes: #707578) -- David Kalnischkies Sun, 09 Jun 2013 15:06:24 +0200 diff --git a/test/integration/test-very-tight-loop-configure-with-unpacking-new-packages b/test/integration/test-very-tight-loop-configure-with-unpacking-new-packages new file mode 100755 index 000000000..7f3b05e59 --- /dev/null +++ b/test/integration/test-very-tight-loop-configure-with-unpacking-new-packages @@ -0,0 +1,46 @@ +#!/bin/sh +set -e + +TESTDIR=$(readlink -f $(dirname $0)) +. $TESTDIR/framework +setupenvironment +configarchitecture 'amd64' + +# the difference between version 3 and 4 is the new package 'ure' which +# we have to unpack before we start configuring parts of the loop +insertinstalledpackage 'libreoffice' 'amd64' '3' 'Depends: libreoffice-core (= 3)' +insertinstalledpackage 'libreoffice-core' 'amd64' '3' 'Depends: libreoffice-common (>= 3)' +insertinstalledpackage 'libreoffice-common' 'all' '3' 'Depends: libreoffice-style +Breaks: libreoffice-core (>= 3+), libreoffice-core (<= 3~), libreoffice-style-galaxy (>= 3+), libreoffice-style-galaxy (<= 3~)' +insertinstalledpackage 'libreoffice-style-galaxy' 'amd64' '3' 'Depends: libreoffice-core +Provides: libreoffice-style' + +buildsimplenativepackage 'libreoffice' 'amd64' '4' 'sid' 'Depends: libreoffice-core (= 4)' +buildsimplenativepackage 'libreoffice-core' 'amd64' '4' 'sid' 'Depends: libreoffice-common (>= 4) +Breaks: libreoffice-common (<< 4), libreoffice-style-galaxy (<< 4)' +buildsimplenativepackage 'libreoffice-common' 'all' '4' 'sid' 'Depends: libreoffice-style, ure +Breaks: libreoffice-core (>= 4+), libreoffice-core (<= 4~), libreoffice-style-galaxy (>= 4+), libreoffice-style-galaxy (<= 4~)' +buildsimplenativepackage 'libreoffice-style-galaxy' 'amd64' '4' 'sid' 'Depends: libreoffice-core +Provides: libreoffice-style' + +buildsimplenativepackage 'ure' 'amd64' '4' 'sid' + +setupaptarchive + +testequal 'Reading package lists... +Building dependency tree... +The following NEW packages will be installed: + ure +The following packages will be upgraded: + libreoffice libreoffice-common libreoffice-core libreoffice-style-galaxy +4 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. +Inst libreoffice [3] (4 sid [amd64]) [] +Inst libreoffice-style-galaxy [3] (4 sid [amd64]) [libreoffice-common:amd64 on libreoffice-style-galaxy:amd64] [libreoffice-common:amd64 ] +Inst libreoffice-core [3] (4 sid [amd64]) [libreoffice-core:amd64 on libreoffice-common:amd64] [libreoffice-common:amd64 on libreoffice-core:amd64] [libreoffice-common:amd64 on libreoffice-style-galaxy:amd64] [libreoffice-common:amd64 ] +Inst libreoffice-common [3] (4 sid [all]) [] +Inst ure (4 sid [amd64]) +Conf ure (4 sid [amd64]) +Conf libreoffice-style-galaxy (4 sid [amd64]) +Conf libreoffice-common (4 sid [all]) +Conf libreoffice-core (4 sid [amd64]) +Conf libreoffice (4 sid [amd64])' aptget dist-upgrade -s -- cgit v1.2.3 From f3c736f9b6fdef1d8045846c465d675858eb1471 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Fri, 24 May 2013 10:20:38 +0200 Subject: deprecate InstallProtect as a cpu-eating no-op In the past packages were flagged "Protected" so that install/ remove markings where issued before the ProblemResolver. Nowadays, the marking methods check if they are allowed to modify the marking of a package instead, so that markings set by FromUser calls are not overwritten anymore by automatic calls which elimates the need for InstallProtect which just eats CPU now. The method itself is left untouched for now in case frontend needs it still for some wierd usecase, but they should be eliminated. --- apt-pkg/algorithms.cc | 6 ++++-- apt-pkg/algorithms.h | 7 ++++--- cmdline/apt-get.cc | 4 +--- 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/apt-pkg/algorithms.cc b/apt-pkg/algorithms.cc index 6cde4d6cc..d19783983 100644 --- a/apt-pkg/algorithms.cc +++ b/apt-pkg/algorithms.cc @@ -1440,9 +1440,11 @@ bool pkgProblemResolver::ResolveByKeepInternal() return true; } /*}}}*/ -// ProblemResolver::InstallProtect - Install all protected packages /*{{{*/ +// ProblemResolver::InstallProtect - deprecated cpu-eating no-op /*{{{*/ // --------------------------------------------------------------------- -/* This is used to make sure protected packages are installed */ +/* Actions issued with FromUser bit set are protected from further + modification (expect by other calls with FromUser set) nowadays , so we + don't need to reissue actions here, they are already set in stone. */ void pkgProblemResolver::InstallProtect() { pkgDepCache::ActionGroup group(Cache); diff --git a/apt-pkg/algorithms.h b/apt-pkg/algorithms.h index aff8a68f2..7f58c8eed 100644 --- a/apt-pkg/algorithms.h +++ b/apt-pkg/algorithms.h @@ -36,6 +36,8 @@ #include +#include + #ifndef APT_8_CLEANER_HEADERS #include using std::ostream; @@ -132,9 +134,8 @@ class pkgProblemResolver /*{{{*/ // Try to resolve problems only by using keep bool ResolveByKeep(); - // Install all protected packages - void InstallProtect(); - + __deprecated void InstallProtect(); + pkgProblemResolver(pkgDepCache *Cache); ~pkgProblemResolver(); }; diff --git a/cmdline/apt-get.cc b/cmdline/apt-get.cc index 999f2a6a7..85ed80a95 100644 --- a/cmdline/apt-get.cc +++ b/cmdline/apt-get.cc @@ -1962,7 +1962,6 @@ bool DoInstall(CommandLine &CmdL) if (Fix != NULL) { // Call the scored problem resolver - Fix->InstallProtect(); Fix->Resolve(true); delete Fix; } @@ -3123,8 +3122,7 @@ bool DoBuildDep(CommandLine &CmdL) } } } - - Fix.InstallProtect(); + if (Fix.Resolve(true) == false) _error->Discard(); -- cgit v1.2.3 From 991e690a693cf3724b815c1fb358aa033af73c03 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Sat, 25 May 2013 19:47:28 +0200 Subject: initialize the whole search array with zero Git-Dch: Ignore --- cmdline/apt-cache.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmdline/apt-cache.cc b/cmdline/apt-cache.cc index 0a2c28d23..de263a300 100644 --- a/cmdline/apt-cache.cc +++ b/cmdline/apt-cache.cc @@ -1247,7 +1247,7 @@ bool Search(CommandLine &CmdL) } ExDescFile *DFList = new ExDescFile[Cache->HeaderP->GroupCount+1]; - memset(DFList,0,sizeof(*DFList)*Cache->HeaderP->GroupCount+1); + memset(DFList, 0, sizeof(*DFList) * (Cache->HeaderP->GroupCount + 1)); // Map versions that we want to write out onto the VerList array. for (pkgCache::GrpIterator G = Cache->GrpBegin(); G.end() == false; ++G) -- cgit v1.2.3 From 8ba17539a3ec33abc283ca382cca6e59876a0f07 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Sat, 25 May 2013 19:57:48 +0200 Subject: fix support for multiple patterns in apt-cache search Patterns can appear in the name as well as in the description, they don't have to match all in the name/description only. Closes: 691453 --- cmdline/apt-cache.cc | 79 ++++++++++++++-------- debian/changelog | 6 +- test/integration/framework | 12 +++- .../test-bug-691453-apt-cache-search-multi-pattern | 33 +++++++++ 4 files changed, 94 insertions(+), 36 deletions(-) create mode 100755 test/integration/test-bug-691453-apt-cache-search-multi-pattern diff --git a/cmdline/apt-cache.cc b/cmdline/apt-cache.cc index de263a300..bda09a5a1 100644 --- a/cmdline/apt-cache.cc +++ b/cmdline/apt-cache.cc @@ -1203,7 +1203,7 @@ bool DisplayRecord(pkgCacheFile &CacheFile, pkgCache::VerIterator V) struct ExDescFile { pkgCache::DescFile *Df; - bool NameMatch; + map_ptrloc ID; }; // Search - Perform a search /*{{{*/ @@ -1246,37 +1246,48 @@ bool Search(CommandLine &CmdL) return false; } - ExDescFile *DFList = new ExDescFile[Cache->HeaderP->GroupCount+1]; - memset(DFList, 0, sizeof(*DFList) * (Cache->HeaderP->GroupCount + 1)); + size_t const descCount = Cache->HeaderP->GroupCount + 1; + ExDescFile *DFList = new ExDescFile[descCount]; + memset(DFList,0,sizeof(*DFList) * descCount); + + bool PatternMatch[descCount * NumPatterns]; + memset(PatternMatch,false,sizeof(PatternMatch)); // Map versions that we want to write out onto the VerList array. for (pkgCache::GrpIterator G = Cache->GrpBegin(); G.end() == false; ++G) { - if (DFList[G->ID].NameMatch == true) - continue; - - DFList[G->ID].NameMatch = true; - for (unsigned I = 0; I != NumPatterns; I++) + size_t const PatternOffset = G->ID * NumPatterns; + size_t unmatched = 0, matched = 0; + for (unsigned I = 0; I < NumPatterns; ++I) { - if (regexec(&Patterns[I],G.Name(),0,0,0) == 0) - continue; - DFList[G->ID].NameMatch = false; - break; + if (PatternMatch[PatternOffset + I] == true) + ++matched; + else if (regexec(&Patterns[I],G.Name(),0,0,0) == 0) + PatternMatch[PatternOffset + I] = true; + else + ++unmatched; } - - // Doing names only, drop any that dont match.. - if (NamesOnly == true && DFList[G->ID].NameMatch == false) + + // already dealt with this package? + if (matched == NumPatterns) continue; - + + // Doing names only, drop any that don't match.. + if (NamesOnly == true && unmatched == NumPatterns) + continue; + // Find the proper version to use pkgCache::PkgIterator P = G.FindPreferredPkg(); if (P.end() == true) continue; pkgCache::VerIterator V = Plcy->GetCandidateVer(P); if (V.end() == false) + { DFList[G->ID].Df = V.TranslatedDescription().FileList(); + DFList[G->ID].ID = G->ID; + } - if (DFList[G->ID].NameMatch == false) + if (unmatched == NumPatterns) continue; // Include all the packages that provide matching names too @@ -1288,33 +1299,45 @@ bool Search(CommandLine &CmdL) unsigned long id = Prv.OwnerPkg().Group()->ID; DFList[id].Df = V.TranslatedDescription().FileList(); - DFList[id].NameMatch = true; + DFList[id].ID = id; + + size_t const PrvPatternOffset = id * NumPatterns; + for (unsigned I = 0; I < NumPatterns; ++I) + PatternMatch[PrvPatternOffset + I] = PatternMatch[PatternOffset + I]; } } - + LocalitySort(&DFList->Df,Cache->HeaderP->GroupCount,sizeof(*DFList)); // Create the text record parser pkgRecords Recs(*Cache); // Iterate over all the version records and check them - for (ExDescFile *J = DFList; J->Df != 0; J++) + for (ExDescFile *J = DFList; J->Df != 0; ++J) { pkgRecords::Parser &P = Recs.Lookup(pkgCache::DescFileIterator(*Cache,J->Df)); + size_t const PatternOffset = J->ID * NumPatterns; - if (J->NameMatch == false && NamesOnly == false) + if (NamesOnly == false) { string const LongDesc = P.LongDesc(); - J->NameMatch = true; - for (unsigned I = 0; I != NumPatterns; I++) + for (unsigned I = 0; I < NumPatterns; ++I) { - if (regexec(&Patterns[I],LongDesc.c_str(),0,0,0) == 0) + if (PatternMatch[PatternOffset + I] == true) continue; - J->NameMatch = false; - break; + else if (regexec(&Patterns[I],LongDesc.c_str(),0,0,0) == 0) + PatternMatch[PatternOffset + I] = true; } } - - if (J->NameMatch == true) + + bool matchedAll = true; + for (unsigned I = 0; I < NumPatterns; ++I) + if (PatternMatch[PatternOffset + I] == false) + { + matchedAll = false; + break; + } + + if (matchedAll == true) { if (ShowFull == true) { diff --git a/debian/changelog b/debian/changelog index 8a1194b1b..9f35441f9 100644 --- a/debian/changelog +++ b/debian/changelog @@ -9,6 +9,7 @@ apt (0.9.8.3) UNRELEASED; urgency=low * fix priority sorting by prefering higher in MarkInstall * try all providers in order if uninstallable in MarkInstall * do unpacks before configures in SmartConfigure (Closes: #707578) + * fix support for multiple patterns in apt-cache search (Closes: #691453) -- David Kalnischkies Sun, 09 Jun 2013 15:06:24 +0200 @@ -31,11 +32,6 @@ apt (0.9.8.2) unstable; urgency=low * Fix crash when the "mirror" method does not find any entry (closes: #699303) - [ Johan Kiviniemi ] - * cmdline/apt-key: - - Create new keyrings with mode 0644 instead of 0600. - - Accept a nonexistent --keyring file with the adv subcommand as well. - -- Michael Vogt Thu, 06 Jun 2013 19:15:14 +0200 apt (0.9.8.1) unstable; urgency=low diff --git a/test/integration/framework b/test/integration/framework index 31b12e8bf..e3e868d45 100644 --- a/test/integration/framework +++ b/test/integration/framework @@ -483,6 +483,7 @@ insertpackage() { local VERSION="$4" local DEPENDENCIES="$5" local PRIORITY="${6:-optional}" + local DESCRIPTION="${7}" local ARCHS="" for arch in $(echo "$ARCH" | sed -e 's#,#\n#g' | sed -e "s#^native\$#$(getarchitecture 'native')#"); do if [ "$arch" = 'all' -o "$arch" = 'none' ]; then @@ -504,11 +505,16 @@ Maintainer: Joe Sixpack " >> $FILE echo "Version: $VERSION Filename: pool/main/${NAME}/${NAME}_${VERSION}_${arch}.deb" >> $FILE test -z "$DEPENDENCIES" || echo "$DEPENDENCIES" >> $FILE - echo "Description: an autogenerated dummy ${NAME}=${VERSION}/${RELEASE} + echo -n 'Description: ' >> $FILE + if [ -z "$DESCRIPTION" ]; then + echo "an autogenerated dummy ${NAME}=${VERSION}/${RELEASE} If you find such a package installed on your system, YOU did something horribly wrong! They are autogenerated - und used only by testcases for APT and surf no other propose… -" >> $FILE + und used only by testcases for APT and surf no other propose…" >> $FILE + else + echo "$DESCRIPTION" >> $FILE + fi + echo >> $FILE done done } diff --git a/test/integration/test-bug-691453-apt-cache-search-multi-pattern b/test/integration/test-bug-691453-apt-cache-search-multi-pattern new file mode 100755 index 000000000..0367892fc --- /dev/null +++ b/test/integration/test-bug-691453-apt-cache-search-multi-pattern @@ -0,0 +1,33 @@ +#!/bin/sh +set -e + +TESTDIR=$(readlink -f $(dirname $0)) +. $TESTDIR/framework +setupenvironment +configarchitecture 'native' + +insertpackage 'unstable' 'foobar' 'native' '1' '' '' 'funky tool' +insertpackage 'unstable' 'coolstuff' 'native' '1' '' '' 'funky tool just like foo and bar' +insertpackage 'unstable' 'foo' 'native' '1' '' '' 'tool best used with bar' +insertpackage 'unstable' 'bar' 'native' '1' '' '' 'tool best used with foo' +insertpackage 'unstable' 'baz' 'native' '1' 'Provides: bar' '' 'alternative tool best used with foo' + +setupaptarchive + +# in this special case the following queries should be equal +FOOBAR='foobar - funky tool +coolstuff - funky tool just like foo and bar +foo - tool best used with bar +bar - tool best used with foo +baz - alternative tool best used with foo' + +testequal "$FOOBAR" aptcache search foo +testequal "$FOOBAR" aptcache search bar +testequal "$FOOBAR" aptcache search foo bar + +testequal 'foobar - funky tool +foo - tool best used with bar' aptcache search -n foo +testequal 'foobar - funky tool +bar - tool best used with foo +baz - alternative tool best used with foo' aptcache search -n bar +testequal 'foobar - funky tool' aptcache search -n foo bar -- cgit v1.2.3 From c7873955a3b9419c5de49ee4665a6006b3bf6563 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Sat, 25 May 2013 20:18:15 +0200 Subject: make the vprintf like _error->Insert public Git-Dch: Ignore --- apt-pkg/contrib/error.h | 41 +++++++++++++++++++++++++++++++++++------ 1 file changed, 35 insertions(+), 6 deletions(-) diff --git a/apt-pkg/contrib/error.h b/apt-pkg/contrib/error.h index 21c51c1be..7d09b2d4a 100644 --- a/apt-pkg/contrib/error.h +++ b/apt-pkg/contrib/error.h @@ -123,6 +123,25 @@ public: /*{{{*/ bool InsertErrno(MsgType const &type, const char* Function, const char* Description,...) __like_printf(4) __cold; + /** \brief adds an errno message with the given type + * + * args needs to be initialized with va_start and terminated + * with va_end by the caller. msgSize is also an out-parameter + * in case the msgSize was not enough to store the complete message. + * + * \param type of the error message + * \param Function which failed + * \param Description is the format string for args + * \param args list from a printf-like function + * \param errsv is the errno the error is for + * \param msgSize is the size of the char[] used to store message + * \return true if the message was added, false if not - the caller + * should call this method again in that case + */ + bool InsertErrno(MsgType type, const char* Function, + const char* Description, va_list &args, + int const errsv, size_t &msgSize); + /** \brief add an fatal error message to the list * * Most of the stuff we consider as "error" is also "fatal" for @@ -185,6 +204,22 @@ public: /*{{{*/ */ bool Insert(MsgType const &type, const char* Description,...) __like_printf(3) __cold; + /** \brief adds an error message with the given type + * + * args needs to be initialized with va_start and terminated + * with va_end by the caller. msgSize is also an out-parameter + * in case the msgSize was not enough to store the complete message. + * + * \param type of the error message + * \param Description is the format string for args + * \param args list from a printf-like function + * \param msgSize is the size of the char[] used to store message + * \return true if the message was added, false if not - the caller + * should call this method again in that case + */ + bool Insert(MsgType type, const char* Description, + va_list &args, size_t &msgSize) __cold; + /** \brief is an error in the list? * * \return \b true if an error is included in the list, \b false otherwise @@ -305,12 +340,6 @@ private: /*{{{*/ }; std::list Stacks; - - bool InsertErrno(MsgType type, const char* Function, - const char* Description, va_list &args, - int const errsv, size_t &msgSize); - bool Insert(MsgType type, const char* Description, - va_list &args, size_t &msgSize); /*}}}*/ }; /*}}}*/ -- cgit v1.2.3 From ae635e3cf7559f3455b88a2499e7521d2094c416 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Sat, 25 May 2013 20:22:06 +0200 Subject: set Fail flag in FileFd on all errors consistently Previously some errors would set the Fail flag while some didn't without a clear reason as all errors leave a bad FileFd behind, so we use a helper now to ensure that all errors set the flag. --- apt-pkg/contrib/fileutl.cc | 167 +++++++++++++++++++-------------------------- apt-pkg/contrib/fileutl.h | 4 ++ debian/changelog | 1 + 3 files changed, 76 insertions(+), 96 deletions(-) diff --git a/apt-pkg/contrib/fileutl.cc b/apt-pkg/contrib/fileutl.cc index 46661887a..4a7299e99 100644 --- a/apt-pkg/contrib/fileutl.cc +++ b/apt-pkg/contrib/fileutl.cc @@ -861,7 +861,7 @@ bool FileFd::Open(string FileName,unsigned int const Mode,CompressMode Compress, return Open(FileName, ReadOnly, Gzip, Perms); if (Compress == Auto && (Mode & WriteOnly) == WriteOnly) - return _error->Error("Autodetection on %s only works in ReadOnly openmode!", FileName.c_str()); + return FileFdError("Autodetection on %s only works in ReadOnly openmode!", FileName.c_str()); std::vector const compressors = APT::Configuration::getCompressors(); std::vector::const_iterator compressor = compressors.begin(); @@ -914,17 +914,17 @@ bool FileFd::Open(string FileName,unsigned int const Mode,CompressMode Compress, case Auto: case Extension: // Unreachable - return _error->Error("Opening File %s in None, Auto or Extension should be already handled?!?", FileName.c_str()); + return FileFdError("Opening File %s in None, Auto or Extension should be already handled?!?", FileName.c_str()); } for (; compressor != compressors.end(); ++compressor) if (compressor->Name == name) break; if (compressor == compressors.end()) - return _error->Error("Can't find a configured compressor %s for file %s", name.c_str(), FileName.c_str()); + return FileFdError("Can't find a configured compressor %s for file %s", name.c_str(), FileName.c_str()); } if (compressor == compressors.end()) - return _error->Error("Can't find a match for specified compressor mode for file %s", FileName.c_str()); + return FileFdError("Can't find a match for specified compressor mode for file %s", FileName.c_str()); return Open(FileName, Mode, *compressor, Perms); } bool FileFd::Open(string FileName,unsigned int const Mode,APT::Configuration::Compressor const &compressor, unsigned long const Perms) @@ -933,9 +933,9 @@ bool FileFd::Open(string FileName,unsigned int const Mode,APT::Configuration::Co Flags = AutoClose; if ((Mode & WriteOnly) != WriteOnly && (Mode & (Atomic | Create | Empty | Exclusive)) != 0) - return _error->Error("ReadOnly mode for %s doesn't accept additional flags!", FileName.c_str()); + return FileFdError("ReadOnly mode for %s doesn't accept additional flags!", FileName.c_str()); if ((Mode & ReadWrite) == 0) - return _error->Error("No openmode provided in FileFd::Open for %s", FileName.c_str()); + return FileFdError("No openmode provided in FileFd::Open for %s", FileName.c_str()); if ((Mode & Atomic) == Atomic) { @@ -981,7 +981,7 @@ bool FileFd::Open(string FileName,unsigned int const Mode,APT::Configuration::Co close (iFd); iFd = -1; } - return _error->Errno("open",_("Could not open file %s"), FileName.c_str()); + return FileFdErrno("open",_("Could not open file %s"), FileName.c_str()); } SetCloseExec(iFd,true); @@ -1010,13 +1010,13 @@ bool FileFd::OpenDescriptor(int Fd, unsigned int const Mode, CompressMode Compre case Xz: name = "xz"; break; case Auto: case Extension: - return _error->Error("Opening Fd %d in Auto or Extension compression mode is not supported", Fd); + return FileFdError("Opening Fd %d in Auto or Extension compression mode is not supported", Fd); } for (; compressor != compressors.end(); ++compressor) if (compressor->Name == name) break; if (compressor == compressors.end()) - return _error->Error("Can't find a configured compressor %s for file %s", name.c_str(), FileName.c_str()); + return FileFdError("Can't find a configured compressor %s for file %s", name.c_str(), FileName.c_str()); return OpenDescriptor(Fd, Mode, *compressor, AutoClose); } @@ -1043,7 +1043,7 @@ bool FileFd::OpenDescriptor(int Fd, unsigned int const Mode, APT::Configuration: { if (AutoClose) close (iFd); - return _error->Errno("gzdopen",_("Could not open file descriptor %d"), Fd); + return FileFdErrno("gzdopen",_("Could not open file descriptor %d"), Fd); } return true; } @@ -1105,10 +1105,7 @@ bool FileFd::OpenInternDescriptor(unsigned int const Mode, APT::Configuration::C ExecWait(d->compressor_pid, "FileFdCompressor", true); if ((Mode & ReadWrite) == ReadWrite) - { - Flags |= Fail; - return _error->Error("ReadWrite mode is not supported for file %s", FileName.c_str()); - } + return FileFdError("ReadWrite mode is not supported for file %s", FileName.c_str()); bool const Comp = (Mode & WriteOnly) == WriteOnly; if (Comp == false) @@ -1131,10 +1128,7 @@ bool FileFd::OpenInternDescriptor(unsigned int const Mode, APT::Configuration::C // Create a data pipe int Pipe[2] = {-1,-1}; if (pipe(Pipe) != 0) - { - Flags |= Fail; - return _error->Errno("pipe",_("Failed to create subprocess IPC")); - } + return FileFdErrno("pipe",_("Failed to create subprocess IPC")); for (int J = 0; J != 2; J++) SetCloseExec(Pipe[J],true); @@ -1244,14 +1238,13 @@ bool FileFd::Read(void *To,unsigned long long Size,unsigned long long *Actual) { if (errno == EINTR) continue; - Flags |= Fail; #ifdef HAVE_ZLIB if (d != NULL && d->gz != NULL) { int err; char const * const errmsg = gzerror(d->gz, &err); if (err != Z_ERRNO) - return _error->Error("gzread: %s (%d: %s)", _("Read error"), err, errmsg); + return FileFdError("gzread: %s (%d: %s)", _("Read error"), err, errmsg); } #endif #ifdef HAVE_BZ2 @@ -1260,10 +1253,10 @@ bool FileFd::Read(void *To,unsigned long long Size,unsigned long long *Actual) int err; char const * const errmsg = BZ2_bzerror(d->bz2, &err); if (err != BZ_IO_ERROR) - return _error->Error("BZ2_bzread: %s (%d: %s)", _("Read error"), err, errmsg); + return FileFdError("BZ2_bzread: %s (%d: %s)", _("Read error"), err, errmsg); } #endif - return _error->Errno("read",_("Read error")); + return FileFdErrno("read",_("Read error")); } To = (char *)To + Res; @@ -1284,9 +1277,8 @@ bool FileFd::Read(void *To,unsigned long long Size,unsigned long long *Actual) Flags |= HitEof; return true; } - - Flags |= Fail; - return _error->Error(_("read, still have %llu to read but none left"), Size); + + return FileFdError(_("read, still have %llu to read but none left"), Size); } /*}}}*/ // FileFd::ReadLine - Read a complete line from the file /*{{{*/ @@ -1342,14 +1334,13 @@ bool FileFd::Write(const void *From,unsigned long long Size) continue; if (Res < 0) { - Flags |= Fail; #ifdef HAVE_ZLIB if (d != NULL && d->gz != NULL) { int err; char const * const errmsg = gzerror(d->gz, &err); if (err != Z_ERRNO) - return _error->Error("gzwrite: %s (%d: %s)", _("Write error"), err, errmsg); + return FileFdError("gzwrite: %s (%d: %s)", _("Write error"), err, errmsg); } #endif #ifdef HAVE_BZ2 @@ -1358,10 +1349,10 @@ bool FileFd::Write(const void *From,unsigned long long Size) int err; char const * const errmsg = BZ2_bzerror(d->bz2, &err); if (err != BZ_IO_ERROR) - return _error->Error("BZ2_bzwrite: %s (%d: %s)", _("Write error"), err, errmsg); + return FileFdError("BZ2_bzwrite: %s (%d: %s)", _("Write error"), err, errmsg); } #endif - return _error->Errno("write",_("Write error")); + return FileFdErrno("write",_("Write error")); } From = (char *)From + Res; @@ -1373,9 +1364,8 @@ bool FileFd::Write(const void *From,unsigned long long Size) if (Size == 0) return true; - - Flags |= Fail; - return _error->Error(_("write, still have %llu to write but couldn't"), Size); + + return FileFdError(_("write, still have %llu to write but couldn't"), Size); } bool FileFd::Write(int Fd, const void *From, unsigned long long Size) { @@ -1419,10 +1409,7 @@ bool FileFd::Seek(unsigned long long To) return Skip(To - seekpos); if ((d->openmode & ReadOnly) != ReadOnly) - { - Flags |= Fail; - return _error->Error("Reopen is only implemented for read-only files!"); - } + return FileFdError("Reopen is only implemented for read-only files!"); #ifdef HAVE_BZ2 if (d->bz2 != NULL) { @@ -1443,17 +1430,11 @@ bool FileFd::Seek(unsigned long long To) if (lseek(d->compressed_fd, 0, SEEK_SET) != 0) iFd = d->compressed_fd; if (iFd < 0) - { - Flags |= Fail; - return _error->Error("Reopen is not implemented for pipes opened with FileFd::OpenDescriptor()!"); - } + return FileFdError("Reopen is not implemented for pipes opened with FileFd::OpenDescriptor()!"); } if (OpenInternDescriptor(d->openmode, d->compressor) == false) - { - Flags |= Fail; - return _error->Error("Seek on file %s because it couldn't be reopened", FileName.c_str()); - } + return FileFdError("Seek on file %s because it couldn't be reopened", FileName.c_str()); if (To != 0) return Skip(To); @@ -1469,10 +1450,7 @@ bool FileFd::Seek(unsigned long long To) #endif res = lseek(iFd,To,SEEK_SET); if (res != (signed)To) - { - Flags |= Fail; - return _error->Error("Unable to seek to %llu", To); - } + return FileFdError("Unable to seek to %llu", To); if (d != NULL) d->seekpos = To; @@ -1496,10 +1474,7 @@ bool FileFd::Skip(unsigned long long Over) { unsigned long long toread = std::min((unsigned long long) sizeof(buffer), Over); if (Read(buffer, toread) == false) - { - Flags |= Fail; - return _error->Error("Unable to seek ahead %llu",Over); - } + return FileFdError("Unable to seek ahead %llu",Over); Over -= toread; } return true; @@ -1513,10 +1488,7 @@ bool FileFd::Skip(unsigned long long Over) #endif res = lseek(iFd,Over,SEEK_CUR); if (res < 0) - { - Flags |= Fail; - return _error->Error("Unable to seek ahead %llu",Over); - } + return FileFdError("Unable to seek ahead %llu",Over); if (d != NULL) d->seekpos = res; @@ -1530,17 +1502,11 @@ bool FileFd::Truncate(unsigned long long To) { #if defined HAVE_ZLIB || defined HAVE_BZ2 if (d != NULL && (d->gz != NULL || d->bz2 != NULL)) - { - Flags |= Fail; - return _error->Error("Truncating compressed files is not implemented (%s)", FileName.c_str()); - } + return FileFdError("Truncating compressed files is not implemented (%s)", FileName.c_str()); #endif if (ftruncate(iFd,To) != 0) - { - Flags |= Fail; - return _error->Error("Unable to truncate to %llu",To); - } - + return FileFdError("Unable to truncate to %llu",To); + return true; } /*}}}*/ @@ -1568,10 +1534,7 @@ unsigned long long FileFd::Tell() #endif Res = lseek(iFd,0,SEEK_CUR); if (Res == (off_t)-1) - { - Flags |= Fail; - _error->Errno("lseek","Failed to determine the current file position"); - } + FileFdErrno("lseek","Failed to determine the current file position"); if (d != NULL) d->seekpos = Res; return Res; @@ -1584,10 +1547,7 @@ unsigned long long FileFd::FileSize() { struct stat Buf; if ((d == NULL || d->pipe == false) && fstat(iFd,&Buf) != 0) - { - Flags |= Fail; - return _error->Errno("fstat","Unable to determine the file size"); - } + return FileFdErrno("fstat","Unable to determine the file size"); // for compressor pipes st_size is undefined and at 'best' zero if ((d != NULL && d->pipe == true) || S_ISFIFO(Buf.st_mode)) @@ -1597,10 +1557,7 @@ unsigned long long FileFd::FileSize() if (d != NULL) d->pipe = true; if (stat(FileName.c_str(), &Buf) != 0) - { - Flags |= Fail; - return _error->Errno("stat","Unable to determine the file size"); - } + return FileFdErrno("stat","Unable to determine the file size"); } return Buf.st_size; @@ -1642,16 +1599,10 @@ unsigned long long FileFd::Size() * bits of the file */ // FIXME: Size for gz-files is limited by 32bit… no largefile support if (lseek(iFd, -4, SEEK_END) < 0) - { - Flags |= Fail; - return _error->Errno("lseek","Unable to seek to end of gzipped file"); - } + return FileFdErrno("lseek","Unable to seek to end of gzipped file"); size = 0L; if (read(iFd, &size, 4) != 4) - { - Flags |= Fail; - return _error->Errno("read","Unable to read original size of gzipped file"); - } + return FileFdErrno("read","Unable to read original size of gzipped file"); #ifdef WORDS_BIGENDIAN uint32_t tmp_size = size; @@ -1661,10 +1612,7 @@ unsigned long long FileFd::Size() #endif if (lseek(iFd, oldPos, SEEK_SET) < 0) - { - Flags |= Fail; - return _error->Errno("lseek","Unable to seek in gzipped file"); - } + return FileFdErrno("lseek","Unable to seek in gzipped file"); return size; } @@ -1681,8 +1629,7 @@ time_t FileFd::ModificationTime() struct stat Buf; if ((d == NULL || d->pipe == false) && fstat(iFd,&Buf) != 0) { - Flags |= Fail; - _error->Errno("fstat","Unable to determine the modification time of file %s", FileName.c_str()); + FileFdErrno("fstat","Unable to determine the modification time of file %s", FileName.c_str()); return 0; } @@ -1695,8 +1642,7 @@ time_t FileFd::ModificationTime() d->pipe = true; if (stat(FileName.c_str(), &Buf) != 0) { - Flags |= Fail; - _error->Errno("fstat","Unable to determine the modification time of file %s", FileName.c_str()); + FileFdErrno("fstat","Unable to determine the modification time of file %s", FileName.c_str()); return 0; } } @@ -1752,11 +1698,40 @@ bool FileFd::Close() bool FileFd::Sync() { if (fsync(iFd) != 0) + return FileFdErrno("sync",_("Problem syncing the file")); + return true; +} + /*}}}*/ +// FileFd::FileFdErrno - set Fail and call _error->Errno *{{{*/ +bool FileFd::FileFdErrno(const char *Function, const char *Description,...) +{ + Flags |= Fail; + va_list args; + size_t msgSize = 400; + int const errsv = errno; + while (true) { - Flags |= Fail; - return _error->Errno("sync",_("Problem syncing the file")); + va_start(args,Description); + if (_error->InsertErrno(GlobalError::ERROR, Function, Description, args, errsv, msgSize) == false) + break; + va_end(args); } - return true; + return false; +} + /*}}}*/ +// FileFd::FileFdError - set Fail and call _error->Error *{{{*/ +bool FileFd::FileFdError(const char *Description,...) { + Flags |= Fail; + va_list args; + size_t msgSize = 400; + while (true) + { + va_start(args,Description); + if (_error->Insert(GlobalError::ERROR, Description, args, msgSize) == false) + break; + va_end(args); + } + return false; } /*}}}*/ diff --git a/apt-pkg/contrib/fileutl.h b/apt-pkg/contrib/fileutl.h index 426664d3a..3ec01dd9a 100644 --- a/apt-pkg/contrib/fileutl.h +++ b/apt-pkg/contrib/fileutl.h @@ -149,6 +149,10 @@ class FileFd private: FileFdPrivate* d; bool OpenInternDescriptor(unsigned int const Mode, APT::Configuration::Compressor const &compressor); + + // private helpers to set Fail flag and call _error->Error + bool FileFdErrno(const char* Function, const char* Description,...) __like_printf(3) __cold; + bool FileFdError(const char* Description,...) __like_printf(2) __cold; }; bool RunScripts(const char *Cnf); diff --git a/debian/changelog b/debian/changelog index 9f35441f9..056025509 100644 --- a/debian/changelog +++ b/debian/changelog @@ -10,6 +10,7 @@ apt (0.9.8.3) UNRELEASED; urgency=low * try all providers in order if uninstallable in MarkInstall * do unpacks before configures in SmartConfigure (Closes: #707578) * fix support for multiple patterns in apt-cache search (Closes: #691453) + * set Fail flag in FileFd on all errors consistently -- David Kalnischkies Sun, 09 Jun 2013 15:06:24 +0200 -- cgit v1.2.3 From bf35c19b817cc1474b3deabce0b0953c248bad42 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Sat, 25 May 2013 20:27:33 +0200 Subject: don't explicitly init ExtractTar InFd with invalid fd The default constructor of the FileFd will kick in anyway, which will know that the Fd is invalid while with this explicit call it must be assumed that the fd is in fact valid, which might generate errors in the future --- apt-inst/contrib/extracttar.cc | 1 - debian/changelog | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/apt-inst/contrib/extracttar.cc b/apt-inst/contrib/extracttar.cc index 806ba796d..49ed5db56 100644 --- a/apt-inst/contrib/extracttar.cc +++ b/apt-inst/contrib/extracttar.cc @@ -63,7 +63,6 @@ ExtractTar::ExtractTar(FileFd &Fd,unsigned long Max,string DecompressionProgram) { GZPid = -1; - InFd = -1; Eof = false; } /*}}}*/ diff --git a/debian/changelog b/debian/changelog index 056025509..a80bac3d7 100644 --- a/debian/changelog +++ b/debian/changelog @@ -11,6 +11,7 @@ apt (0.9.8.3) UNRELEASED; urgency=low * do unpacks before configures in SmartConfigure (Closes: #707578) * fix support for multiple patterns in apt-cache search (Closes: #691453) * set Fail flag in FileFd on all errors consistently + * don't explicitly init ExtractTar InFd with invalid fd -- David Kalnischkies Sun, 09 Jun 2013 15:06:24 +0200 -- cgit v1.2.3 From f97bb5237489134cb971ce38b93c5d6220341ea8 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Sat, 25 May 2013 20:33:15 +0200 Subject: OpenDescriptor should autoclose fd always on error OpenInternDescriptor failures would cause additional errors to be generated by double-closing an fd. Other errors (although these are generated if the method is used incorrectly, so unlikely) didn't close the fd aswell. Closes: 704608 --- apt-pkg/contrib/fileutl.cc | 23 +++++++++++++++++++---- debian/changelog | 1 + 2 files changed, 20 insertions(+), 4 deletions(-) diff --git a/apt-pkg/contrib/fileutl.cc b/apt-pkg/contrib/fileutl.cc index 4a7299e99..7c3a302e2 100644 --- a/apt-pkg/contrib/fileutl.cc +++ b/apt-pkg/contrib/fileutl.cc @@ -1010,14 +1010,19 @@ bool FileFd::OpenDescriptor(int Fd, unsigned int const Mode, CompressMode Compre case Xz: name = "xz"; break; case Auto: case Extension: + if (AutoClose == true && Fd != -1) + close(Fd); return FileFdError("Opening Fd %d in Auto or Extension compression mode is not supported", Fd); } for (; compressor != compressors.end(); ++compressor) if (compressor->Name == name) break; if (compressor == compressors.end()) + { + if (AutoClose == true && Fd != -1) + close(Fd); return FileFdError("Can't find a configured compressor %s for file %s", name.c_str(), FileName.c_str()); - + } return OpenDescriptor(Fd, Mode, *compressor, AutoClose); } bool FileFd::OpenDescriptor(int Fd, unsigned int const Mode, APT::Configuration::Compressor const &compressor, bool AutoClose) @@ -1039,11 +1044,21 @@ bool FileFd::OpenDescriptor(int Fd, unsigned int const Mode, APT::Configuration: else iFd = Fd; this->FileName = ""; - if (OpenInternDescriptor(Mode, compressor) == false) + if (Fd == -1 || OpenInternDescriptor(Mode, compressor) == false) { - if (AutoClose) + if (iFd != -1 && ( +#ifdef HAVE_ZLIB + compressor.Name == "gzip" || +#endif +#ifdef HAVE_BZ2 + compressor.Name == "bzip2" || +#endif + AutoClose == true)) + { close (iFd); - return FileFdErrno("gzdopen",_("Could not open file descriptor %d"), Fd); + iFd = -1; + } + return FileFdError(_("Could not open file descriptor %d"), Fd); } return true; } diff --git a/debian/changelog b/debian/changelog index a80bac3d7..42a8e540e 100644 --- a/debian/changelog +++ b/debian/changelog @@ -12,6 +12,7 @@ apt (0.9.8.3) UNRELEASED; urgency=low * fix support for multiple patterns in apt-cache search (Closes: #691453) * set Fail flag in FileFd on all errors consistently * don't explicitly init ExtractTar InFd with invalid fd + * OpenDescriptor should autoclose fd always on error (Closes: #704608) -- David Kalnischkies Sun, 09 Jun 2013 15:06:24 +0200 -- cgit v1.2.3 From 8437b7d4a699c8a0bfa6c2c2bff66ffff2e36a22 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Tue, 28 May 2013 18:08:32 +0200 Subject: tests: trap-adding can be post- as well as prefix For testcases it might sometimes be handy to add trap-actions before the general cleanup, e.g. if it has set directories read- only which rm doesn't want to remove even with --force applied (its fine with files though) Git-Dch: Ignore --- test/integration/framework | 9 ++++++--- test/integration/test-apt-cdrom | 2 +- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/test/integration/framework b/test/integration/framework index e3e868d45..7c2aed592 100644 --- a/test/integration/framework +++ b/test/integration/framework @@ -125,7 +125,11 @@ exitwithstatus() { } addtrap() { - CURRENTTRAP="$CURRENTTRAP $1" + if [ "$1" = 'prefix' ]; then + CURRENTTRAP="$2 $CURRENTTRAP" + else + CURRENTTRAP="$CURRENTTRAP $1" + fi trap "$CURRENTTRAP exitwithstatus;" 0 HUP INT QUIT ILL ABRT FPE SEGV PIPE TERM } @@ -135,8 +139,7 @@ setupenvironment() { msgninfo "Preparing environment for ${CCMD}$(basename $0)${CINFO} in ${TMPWORKINGDIRECTORY}… " BUILDDIRECTORY="${TESTDIRECTORY}/../../build/bin" test -x "${BUILDDIRECTORY}/apt-get" || msgdie "You need to build tree first" - local OLDWORKINGDIRECTORY=$(pwd) - addtrap "cd /; rm -rf $TMPWORKINGDIRECTORY; cd $OLDWORKINGDIRECTORY;" + addtrap "cd /; rm -rf $TMPWORKINGDIRECTORY;" cd $TMPWORKINGDIRECTORY mkdir rootdir aptarchive keys cd rootdir diff --git a/test/integration/test-apt-cdrom b/test/integration/test-apt-cdrom index f1c4fd9d3..3394aa505 100755 --- a/test/integration/test-apt-cdrom +++ b/test/integration/test-apt-cdrom @@ -24,7 +24,7 @@ cat Translation-de | xz --format=lzma > Translation-de.lzma cat Translation-de | xz > Translation-de.xz rm Translation-en Translation-de cd - > /dev/null -addtrap "chmod -R +w $PWD/rootdir/media/cdrom/dists/;" +addtrap 'prefix' "chmod -R +w $PWD/rootdir/media/cdrom/dists/;" chmod -R -w rootdir/media/cdrom/dists aptcdrom add -m -o quiet=1 > apt-cdrom.log 2>&1 -- cgit v1.2.3 From 2842f3e6c42ac6c6512a290064326d55bfa62a40 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Tue, 28 May 2013 18:17:55 +0200 Subject: tests: add expected port for cve-2013-105 testcase Git-Dch: Ignore --- test/integration/test-cve-2013-1051-InRelease-parsing | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/integration/test-cve-2013-1051-InRelease-parsing b/test/integration/test-cve-2013-1051-InRelease-parsing index bd68fccf6..853da5ff6 100755 --- a/test/integration/test-cve-2013-1051-InRelease-parsing +++ b/test/integration/test-cve-2013-1051-InRelease-parsing @@ -12,7 +12,7 @@ insertpackage 'stable' 'good-pkg' 'all' '1.0' setupaptarchive changetowebserver -ARCHIVE='http://localhost/' +ARCHIVE='http://localhost:8080/' msgtest 'Initial apt-get update should work with' 'InRelease' aptget update -qq && msgpass || msgfail -- cgit v1.2.3 From 564fcbf93c78deb48fa44a9a63b5602eedfa53a9 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Tue, 28 May 2013 18:48:28 +0200 Subject: depend on libapt-pkg in the libapt-inst build process MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit fixing parallel build in the handcrafted buildsystem is a pain, so its not enabled by default, but its works for me – sometimes Git-Dch: Ignore --- apt-inst/makefile | 1 + buildlib/library.mak | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/apt-inst/makefile b/apt-inst/makefile index cfb22741a..da983df5f 100644 --- a/apt-inst/makefile +++ b/apt-inst/makefile @@ -18,6 +18,7 @@ MAJOR=1.5 MINOR=0 SLIBS=$(PTHREADLIB) -lapt-pkg APT_DOMAIN:=libapt-inst$(MAJOR) +LIBRARYDEPENDS=$(LIB)/libapt-pkg.so # Source code for the contributed non-core things SOURCE = contrib/extracttar.cc contrib/arfile.cc diff --git a/buildlib/library.mak b/buildlib/library.mak index 029e87463..ef1306b66 100644 --- a/buildlib/library.mak +++ b/buildlib/library.mak @@ -51,7 +51,7 @@ $(LIB)/lib$(LIBRARY).so: $(LIB)/lib$(LIBRARY).so.$(MAJOR).$(MINOR) ln -sf $( /dev/null echo Building shared library $@ $(CXX) $(CXXFLAGS) $(LDFLAGS) $(PICFLAGS) $(LFLAGS) $(LFLAGS_SO)\ @@ -61,7 +61,7 @@ $(LIB)/lib$(LIBRARY).so.$(MAJOR).$(MINOR): $($(LOCAL)-HEADERS) $($(LOCAL)-OBJS) # Compilation rules vpath %.cc $(SUBDIRS) -$(OBJ)/%.opic: %.cc +$(OBJ)/%.opic: %.cc $(LIBRARYDEPENDS) echo Compiling $< to $@ $(CXX) -c $(INLINEDEPFLAG) $(CPPFLAGS) $(CXXFLAGS) $(PICFLAGS) -o $@ $< $(DoDep) -- cgit v1.2.3 From 57da1b4bd21aceced30f658993fb811a5232cff7 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Fri, 31 May 2013 18:19:09 +0200 Subject: stop building l10n if strings are unchanged The buildsystem tried to build l10n for test applications which never produced the output it expected causing it to try building it all the time. --- buildlib/copy.mak | 2 +- buildlib/podomain.mak | 7 ++++++- doc/makefile | 2 +- po/makefile | 15 +++++++++++---- test/interactive-helper/makefile | 1 + test/libapt/makefile | 1 + 6 files changed, 21 insertions(+), 7 deletions(-) diff --git a/buildlib/copy.mak b/buildlib/copy.mak index e8fe43deb..3ae11a7eb 100644 --- a/buildlib/copy.mak +++ b/buildlib/copy.mak @@ -21,7 +21,7 @@ veryclean: veryclean/$(LOCAL) MKDIRS += $(dir $($(LOCAL)-LIST)) -$($(LOCAL)-LIST) : $(TO)/% : % dirs +$($(LOCAL)-LIST) : $(TO)/% : % echo Installing $< to $(@D) cp $< $(@D) diff --git a/buildlib/podomain.mak b/buildlib/podomain.mak index cca7d55be..265359abc 100644 --- a/buildlib/podomain.mak +++ b/buildlib/podomain.mak @@ -4,6 +4,8 @@ # declared domain of the make file. It also arranges to set the DOMAIN # CPPFLAG for the compilation. +ifneq ($(APT_DOMAIN),none) + MY_DOMAIN := $(PACKAGE) ifdef APT_DOMAIN $($(LOCAL)-OBJS): CPPFLAGS := $(CPPFLAGS) -DAPT_DOMAIN='"$(APT_DOMAIN)"' @@ -13,10 +15,13 @@ endif MKDIRS += $(PO_DOMAINS)/$(MY_DOMAIN) $(PO_DOMAINS)/$(MY_DOMAIN)/$(LOCAL).$(TYPE)list: SRC := $(addprefix $(SUBDIR)/,$(SOURCE)) $(PO_DOMAINS)/$(MY_DOMAIN)/$(LOCAL).$(TYPE)list: makefile dirs - (echo $(SRC) | xargs -n1 echo) > $@ + (echo $(SRC) | xargs -n1 echo) > $@.tmp + cmp --silent $@.tmp $@ || mv $@.tmp $@ startup binary program clean update-po: $(PO_DOMAINS)/$(MY_DOMAIN)/$(LOCAL).$(TYPE)list veryclean: veryclean/$(LOCAL) veryclean/po/$(LOCAL): LIST := $(PO_DOMAINS)/$(MY_DOMAIN)/$(LOCAL).$(TYPE)list veryclean/po/$(LOCAL): rm -f $(LIST) + +endif diff --git a/doc/makefile b/doc/makefile index 44a22a597..274fbc278 100644 --- a/doc/makefile +++ b/doc/makefile @@ -36,7 +36,7 @@ $(DOCDIRLIST) :: %/makefile : lang.makefile test -d $(dir $@) || mkdir $(dir $@) sed "s#@@LANG@@#$(subst /,,$(dir $@))#" $< > $@ -debiandoc/subdirs manpages/subdirs clean/subdirs veryclean/subdirs: dirs +debiandoc/subdirs manpages/subdirs clean/subdirs veryclean/subdirs: for dir in en $(dir $(DOCDIRLIST)); do \ $(MAKE) -C $$dir $(patsubst %/subdirs,%,$@); \ done diff --git a/po/makefile b/po/makefile index ebf6c06d0..5a3c7fb67 100644 --- a/po/makefile +++ b/po/makefile @@ -30,17 +30,23 @@ GETDOMAIN = $(word 1,$(subst /, ,$(1))) # and produce the .pot file. $(POTFILES) : $(PO)/%.pot : echo "Generating POT file $@" - echo $@ : $(wildcard $(PO)/domains/$*/*.*list) $(addprefix $(BASE)/,$(shell cat $(wildcard $(PO)/domains/$*/*.srclist))) > $@.d + echo $@ : $(wildcard $(PO)/domains/$*/*.*list) $(addprefix $(BASE)/,$(shell cat $(wildcard $(PO)/domains/$*/*.srclist))) > $@.d.tmp + cmp --silent $@.d.tmp $@.d || mv $@.d.tmp $@.d # From sh source - cat $(PO)/domains/$*/*.shlist 2> /dev/null | (cd $(BASE) && xargs -n1 bash --dump-po-strings) > $(PO)/domains/$*/sh.pot + cat $(PO)/domains/$*/*.shlist 2> /dev/null | (cd $(BASE) && xargs -n1 bash --dump-po-strings) > $(PO)/domains/$*/sh.pot.tmp + cmp --silent $(PO)/domains/$*/sh.pot.tmp $(PO)/domains/$*/sh.pot || \ + mv $(PO)/domains/$*/sh.pot.tmp $(PO)/domains/$*/sh.pot # From C/C++ source cat $(PO)/domains/$*/*.srclist > $(PO)/POTFILES_$*.in $(XGETTEXT) --default-domain=$* --directory=$(BASE) \ --add-comments --foreign --keyword=_ --keyword=N_ \ --keyword=P_:1,2 \ - --files-from=$(PO)/POTFILES_$*.in -o $(PO)/domains/$*/c.pot + --files-from=$(PO)/POTFILES_$*.in -o $(PO)/domains/$*/c.pot.tmp + cmp --silent $(PO)/domains/$*/c.pot.tmp $(PO)/domains/$*/c.pot || \ + mv $(PO)/domains/$*/c.pot.tmp $(PO)/domains/$*/c.pot rm -f $(PO)/POTFILES_$*.in - $(MSGCOMM) --omit-header --more-than=0 $(PO)/domains/$*/c.pot $(PO)/domains/$*/sh.pot --output=$@ + $(MSGCOMM) --omit-header --more-than=0 $(PO)/domains/$*/c.pot $(PO)/domains/$*/sh.pot --output=$@.tmp + cmp --silent $@ $@.tmp || mv $@.tmp $@ # copy into the domain dirs to make rosetta happy rm -f $(PO)/domains/$*/*.pot cp $@ $(PO)/domains/$* @@ -93,4 +99,5 @@ ifneq ($(words $(The_DFiles)),0) include $(The_DFiles) endif +# otherwise the output is completely screwed .NOTPARALLEL: diff --git a/test/interactive-helper/makefile b/test/interactive-helper/makefile index 10d1e44ec..fa4f5fecb 100644 --- a/test/interactive-helper/makefile +++ b/test/interactive-helper/makefile @@ -1,6 +1,7 @@ # -*- make -*- BASE=../.. SUBDIR=test/interactive-helper +APT_DOMAIN=none # Bring in the default rules include ../../buildlib/defaults.mak diff --git a/test/libapt/makefile b/test/libapt/makefile index 953e455e0..1b67cba9d 100644 --- a/test/libapt/makefile +++ b/test/libapt/makefile @@ -2,6 +2,7 @@ BASE=../.. SUBDIR=test/libapt BASENAME=_libapt_test +APT_DOMAIN=none # Bring in the default rules include ../../buildlib/defaults.mak -- cgit v1.2.3 From 2128d3fce44da34ecb1f0d784b703807f66b20f9 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Sun, 9 Jun 2013 18:33:48 +0200 Subject: fail in CopyFile if the FileFds have error flag set Testing for global PendingErrors in users of CopyFile is incorrect in so far as unrelated errors will prevent us from copying perfectly fine files and checking for the validity of the files is just better in CopyFiles as it already checks if files are at least opened. Add also a higher-level error message to the error stack if it fails. --- apt-pkg/contrib/fileutl.cc | 3 ++- apt-pkg/indexcopy.cc | 6 ++---- debian/changelog | 1 + 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/apt-pkg/contrib/fileutl.cc b/apt-pkg/contrib/fileutl.cc index 7c3a302e2..0f88923cf 100644 --- a/apt-pkg/contrib/fileutl.cc +++ b/apt-pkg/contrib/fileutl.cc @@ -184,7 +184,8 @@ bool RunScripts(const char *Cnf) /* The caller is expected to set things so that failure causes erasure */ bool CopyFile(FileFd &From,FileFd &To) { - if (From.IsOpen() == false || To.IsOpen() == false) + if (From.IsOpen() == false || To.IsOpen() == false || + From.Failed() == true || To.Failed() == true) return false; // Buffered copy between fds diff --git a/apt-pkg/indexcopy.cc b/apt-pkg/indexcopy.cc index 0e36b3ded..1d61b974d 100644 --- a/apt-pkg/indexcopy.cc +++ b/apt-pkg/indexcopy.cc @@ -544,11 +544,9 @@ bool SigVerify::CopyMetaIndex(string CDROM, string CDName, /*{{{*/ FileFd Rel; Target.Open(TargetF,FileFd::WriteAtomic); Rel.Open(prefix + file,FileFd::ReadOnly); - if (_error->PendingError() == true) - return false; if (CopyFile(Rel,Target) == false) - return false; - + return _error->Error("Copying of '%s' for '%s' from '%s' failed", file.c_str(), CDName.c_str(), prefix.c_str()); + return true; } /*}}}*/ diff --git a/debian/changelog b/debian/changelog index 42a8e540e..cde0aba2f 100644 --- a/debian/changelog +++ b/debian/changelog @@ -13,6 +13,7 @@ apt (0.9.8.3) UNRELEASED; urgency=low * set Fail flag in FileFd on all errors consistently * don't explicitly init ExtractTar InFd with invalid fd * OpenDescriptor should autoclose fd always on error (Closes: #704608) + * fail in CopyFile if the FileFds have error flag set -- David Kalnischkies Sun, 09 Jun 2013 15:06:24 +0200 -- cgit v1.2.3 From b2ea1a47531266377abe4f12c6f21417ea96eea0 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Sun, 9 Jun 2013 18:58:34 +0200 Subject: ensure state-dir exists before coyping cdrom files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit We do the same in the acquire system which handles the 'normal' downloads, so do it here as well even though its unlikely anyone will ever notice (beside testcases of course …) --- apt-pkg/cdrom.cc | 8 ++++++++ debian/changelog | 1 + test/integration/framework | 8 +++++--- test/integration/test-apt-cdrom | 2 +- 4 files changed, 15 insertions(+), 4 deletions(-) diff --git a/apt-pkg/cdrom.cc b/apt-pkg/cdrom.cc index 9a9a854bf..a5668a50a 100644 --- a/apt-pkg/cdrom.cc +++ b/apt-pkg/cdrom.cc @@ -829,6 +829,14 @@ bool pkgCdrom::Add(pkgCdromStatus *log) /*{{{*/ log->Update(msg.str()); log->Update(_("Copying package lists..."), STEP_COPY); } + + // check for existence and possibly create state directory for copying + string const listDir = _config->FindDir("Dir::State::lists"); + string const partialListDir = listDir + "partial/"; + if (CreateAPTDirectoryIfNeeded(_config->FindDir("Dir::State"), partialListDir) == false && + CreateAPTDirectoryIfNeeded(listDir, partialListDir) == false) + return _error->Errno("cdrom", _("List directory %spartial is missing."), listDir.c_str()); + // take care of the signatures and copy them if they are ok // (we do this before PackageCopy as it modifies "List" and "SourceList") SigVerify SignVerify; diff --git a/debian/changelog b/debian/changelog index cde0aba2f..7582b4f35 100644 --- a/debian/changelog +++ b/debian/changelog @@ -14,6 +14,7 @@ apt (0.9.8.3) UNRELEASED; urgency=low * don't explicitly init ExtractTar InFd with invalid fd * OpenDescriptor should autoclose fd always on error (Closes: #704608) * fail in CopyFile if the FileFds have error flag set + * ensure state-dir exists before coyping cdrom files -- David Kalnischkies Sun, 09 Jun 2013 15:06:24 +0200 diff --git a/test/integration/framework b/test/integration/framework index 7c2aed592..5c50498a2 100644 --- a/test/integration/framework +++ b/test/integration/framework @@ -692,9 +692,11 @@ setupaptarchive() { setupflataptarchive fi signreleasefiles - msgninfo "\tSync APT's cache with the archive… " - aptget update -qq - msgdone "info" + if [ "$1" != '--no-update' ]; then + msgninfo "\tSync APT's cache with the archive… " + aptget update -qq + msgdone "info" + fi } signreleasefiles() { diff --git a/test/integration/test-apt-cdrom b/test/integration/test-apt-cdrom index 3394aa505..6e3533152 100755 --- a/test/integration/test-apt-cdrom +++ b/test/integration/test-apt-cdrom @@ -7,7 +7,7 @@ setupenvironment configarchitecture 'amd64' 'i386' buildsimplenativepackage 'testing' 'amd64,i386' '0.8.15' 'stable' -setupaptarchive +setupaptarchive --no-update changetocdrom 'Debian APT Testdisk 0.8.15' -- cgit v1.2.3 From 8b8cc7bf85ac187bb9333f56c4c2c4dba27d3a7e Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Sun, 9 Jun 2013 22:13:20 +0200 Subject: tests: add an interactive 'test' with multiple cdroms Can't be used as a test as is, but shows how to build multiple CD-ROMs for tests and can be used to reproduce debbug #711456. Git-Dch: Ignore --- ...kip-bug-711456-apt-cdrom-multiple-cds-multiarch | 47 ++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100755 test/integration/skip-bug-711456-apt-cdrom-multiple-cds-multiarch diff --git a/test/integration/skip-bug-711456-apt-cdrom-multiple-cds-multiarch b/test/integration/skip-bug-711456-apt-cdrom-multiple-cds-multiarch new file mode 100755 index 000000000..9e683b5b9 --- /dev/null +++ b/test/integration/skip-bug-711456-apt-cdrom-multiple-cds-multiarch @@ -0,0 +1,47 @@ +#!/bin/sh +set -e + +TESTDIR=$(readlink -f $(dirname $0)) +. $TESTDIR/framework +setupenvironment +configarchitecture 'amd64' 'i386' + +buildsimplenativepackage 'testing' 'amd64,i386' '0.8.15' 'stable' 'Depends: libtest' +buildsimplenativepackage 'libtest' 'amd64,i386' '0.8.15' 'stable' 'Multi-Arch: same' +buildsimplenativepackage 'libtest' 'amd64,i386' '1' 'unstable' 'Multi-Arch: same' + +# needed by the ftparchive.conf +cd aptarchive +ln -s ../incoming pool +createaptftparchiveconfig +cd - >/dev/null +# create an amd64 cdrom +sed -i 's#Architectures .*$#Architectures "amd64 source";#' aptarchive/ftparchive.conf +setupaptarchive --no-update +changetocdrom 'Debian APT Testdisk amd64 0.8.15' +mv rootdir/media/cdrom rootdir/media/cdrom-amd64 +addtrap 'prefix' "chmod -R +w $PWD/rootdir/media/cdrom-amd64/dists/;" +chmod -R -w rootdir/media/cdrom-amd64/dists +ln -s $PWD/rootdir/media/cdrom-amd64 $PWD/rootdir/media/cdrom +aptcdrom add -m -o quiet=1 +rm $PWD/rootdir/media/cdrom +# do it again to create a i386 cdrom +sed -i 's#Architectures .*$#Architectures "i386 source";#' aptarchive/ftparchive.conf +setupaptarchive --no-update +changetocdrom 'Debian APT Testdisk i386 0.8.15' +mv rootdir/media/cdrom rootdir/media/cdrom-i386 +addtrap 'prefix' "chmod -R +w $PWD/rootdir/media/cdrom-i386/dists/;" +chmod -R -w rootdir/media/cdrom-i386/dists +ln -s $PWD/rootdir/media/cdrom-i386 $PWD/rootdir/media/cdrom +aptcdrom add -m -o quiet=1 + +# play with the cdroms +testdpkgnotinstalled testing +aptget install testing -t stable -y #> /dev/null 2>&1 +testdpkginstalled testing + +testdpkgnotinstalled testing:i386 +aptget install testing:i386 -t stable -y #> /dev/null 2>&1 +testdpkginstalled testing:i386 + +aptget dist-upgrade -y -- cgit v1.2.3 From 00612a8c55aab3560966533fe77e4940f902b3b6 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Thu, 13 Jun 2013 13:52:18 +0200 Subject: fix file location for configure-index.gz in apt.conf(5) Closes: #711921 --- debian/changelog | 1 + doc/apt.conf.5.xml | 3 +- doc/po/apt-doc.pot | 279 +++++++++++++++++++------------------ doc/po/de.po | 359 ++++++++++++++++++++++++----------------------- doc/po/es.po | 323 +++++++++++++++++++++---------------------- doc/po/fr.po | 325 ++++++++++++++++++++++--------------------- doc/po/it.po | 399 ++++++++++++++++++++++++++++------------------------- doc/po/ja.po | 320 +++++++++++++++++++++--------------------- doc/po/pl.po | 306 ++++++++++++++++++++-------------------- doc/po/pt.po | 333 ++++++++++++++++++++++---------------------- doc/po/pt_BR.po | 306 ++++++++++++++++++++-------------------- 11 files changed, 1489 insertions(+), 1465 deletions(-) diff --git a/debian/changelog b/debian/changelog index 7582b4f35..23e0a065a 100644 --- a/debian/changelog +++ b/debian/changelog @@ -15,6 +15,7 @@ apt (0.9.8.3) UNRELEASED; urgency=low * OpenDescriptor should autoclose fd always on error (Closes: #704608) * fail in CopyFile if the FileFds have error flag set * ensure state-dir exists before coyping cdrom files + * fix file location for configure-index.gz in apt.conf(5) (Closes: #711921) -- David Kalnischkies Sun, 09 Jun 2013 15:06:24 +0200 diff --git a/doc/apt.conf.5.xml b/doc/apt.conf.5.xml index be1d7ade8..3cf3136d3 100644 --- a/doc/apt.conf.5.xml +++ b/doc/apt.conf.5.xml @@ -98,8 +98,7 @@ APT { DPkg::Pre-Install-Pkgs {"/usr/sbin/dpkg-preconfigure --apt";}; - In general the sample configuration file in - &docdir;examples/apt.conf &configureindex; + In general the sample configuration file &configureindex; is a good guide for how it should look. Case is not significant in names of configuration items, so in the diff --git a/doc/po/apt-doc.pot b/doc/po/apt-doc.pot index d329a1be1..43c184106 100644 --- a/doc/po/apt-doc.pot +++ b/doc/po/apt-doc.pot @@ -6,9 +6,9 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: apt-doc 0.9.8~20130508\n" +"Project-Id-Version: apt-doc 0.9.8.1\n" "Report-Msgid-Bugs-To: APT Development Team \n" -"POT-Creation-Date: 2013-05-08 18:12+0300\n" +"POT-Creation-Date: 2013-06-13 13:46+0300\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -1105,12 +1105,12 @@ msgid "" msgstr "" #. type: Content of: -#: apt-get.8.xml:518 apt-cache.8.xml:343 apt-key.8.xml:174 apt-mark.8.xml:125 apt.conf.5.xml:1168 apt_preferences.5.xml:698 +#: apt-get.8.xml:518 apt-cache.8.xml:343 apt-key.8.xml:174 apt-mark.8.xml:125 apt.conf.5.xml:1167 apt_preferences.5.xml:698 msgid "Files" msgstr "" #. type: Content of: <refentry><refsect1><title> -#: apt-get.8.xml:528 apt-cache.8.xml:350 apt-key.8.xml:195 apt-mark.8.xml:131 apt-secure.8.xml:191 apt-cdrom.8.xml:144 apt-config.8.xml:109 apt.conf.5.xml:1174 apt_preferences.5.xml:705 sources.list.5.xml:252 apt-extracttemplates.1.xml:70 apt-sortpkgs.1.xml:63 apt-ftparchive.1.xml:607 +#: apt-get.8.xml:528 apt-cache.8.xml:350 apt-key.8.xml:195 apt-mark.8.xml:131 apt-secure.8.xml:191 apt-cdrom.8.xml:144 apt-config.8.xml:109 apt.conf.5.xml:1173 apt_preferences.5.xml:705 sources.list.5.xml:252 apt-extracttemplates.1.xml:70 apt-sortpkgs.1.xml:63 apt-ftparchive.1.xml:607 msgid "See Also" msgstr "" @@ -2332,20 +2332,19 @@ msgstr "" #. type: Content of: <refentry><refsect1><para> #: apt.conf.5.xml:101 msgid "" -"In general the sample configuration file in " -"<filename>&docdir;examples/apt.conf</filename> &configureindex; is a good " -"guide for how it should look." +"In general the sample configuration file &configureindex; is a good guide " +"for how it should look." msgstr "" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:105 +#: apt.conf.5.xml:104 msgid "" "Case is not significant in names of configuration items, so in the previous " "example you could use <literal>dpkg::pre-install-pkgs</literal>." msgstr "" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:108 +#: apt.conf.5.xml:107 msgid "" "Names for the configuration items are optional if a list is defined as can " "be seen in the <literal>DPkg::Pre-Install-Pkgs</literal> example above. If " @@ -2355,7 +2354,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:113 +#: apt.conf.5.xml:112 msgid "" "Two special commands are defined: <literal>#include</literal> (which is " "deprecated and not supported by alternative implementations) and " @@ -2367,7 +2366,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:123 +#: apt.conf.5.xml:122 msgid "" "The <literal>#clear</literal> command is the only way to delete a list or a " "complete scope. Reopening a scope (or using the syntax described below with " @@ -2377,7 +2376,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:131 +#: apt.conf.5.xml:130 msgid "" "All of the APT tools take an -o option which allows an arbitrary " "configuration directive to be specified on the command line. The syntax is a " @@ -2389,7 +2388,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:139 +#: apt.conf.5.xml:138 msgid "" "Note that appending items to a list using <literal>::</literal> only works " "for one item per line, and that you should not use it in combination with " @@ -2406,19 +2405,19 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:154 +#: apt.conf.5.xml:153 msgid "The APT Group" msgstr "" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:155 +#: apt.conf.5.xml:154 msgid "" "This group of options controls general APT behavior as well as holding the " "options for all of the tools." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:160 +#: apt.conf.5.xml:159 msgid "" "System Architecture; sets the architecture to use when fetching files and " "parsing package lists. The internal default is the architecture apt was " @@ -2426,7 +2425,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:167 +#: apt.conf.5.xml:166 msgid "" "All Architectures the system supports. For instance, CPUs implementing the " "<literal>amd64</literal> (also called <literal>x86-64</literal>) " @@ -2440,7 +2439,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:180 +#: apt.conf.5.xml:179 msgid "" "Default release to install packages from if more than one version is " "available. Contains release name, codename or release version. Examples: " @@ -2449,14 +2448,14 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:186 +#: apt.conf.5.xml:185 msgid "" "Ignore held packages; this global option causes the problem resolver to " "ignore held packages in its decision making." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:191 +#: apt.conf.5.xml:190 msgid "" "Defaults to on. When turned on the autoclean feature will remove any " "packages which can no longer be downloaded from the cache. If turned off " @@ -2465,7 +2464,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:199 +#: apt.conf.5.xml:198 msgid "" "Defaults to on, which will cause APT to install essential and important " "packages as soon as possible in an install/upgrade operation, in order to " @@ -2480,7 +2479,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:211 +#: apt.conf.5.xml:210 msgid "" "The immediate configuration marker is also applied in the potentially " "problematic case of circular dependencies, since a dependency with the " @@ -2497,7 +2496,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:224 +#: apt.conf.5.xml:223 msgid "" "Before a big operation like <literal>dist-upgrade</literal> is run with this " "option disabled you should try to explicitly <literal>install</literal> the " @@ -2508,7 +2507,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:235 +#: apt.conf.5.xml:234 msgid "" "Never enable this option unless you <emphasis>really</emphasis> know what " "you are doing. It permits APT to temporarily remove an essential package to " @@ -2521,7 +2520,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:247 +#: apt.conf.5.xml:246 msgid "" "APT uses since version 0.7.26 a resizable memory mapped cache file to store " "the available information. <literal>Cache-Start</literal> acts as a hint of " @@ -2542,38 +2541,38 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:263 +#: apt.conf.5.xml:262 msgid "Defines which packages are considered essential build dependencies." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:267 +#: apt.conf.5.xml:266 msgid "" "The Get subsection controls the &apt-get; tool; please see its documentation " "for more information about the options here." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:272 +#: apt.conf.5.xml:271 msgid "" "The Cache subsection controls the &apt-cache; tool; please see its " "documentation for more information about the options here." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:277 +#: apt.conf.5.xml:276 msgid "" "The CDROM subsection controls the &apt-cdrom; tool; please see its " "documentation for more information about the options here." msgstr "" #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:283 +#: apt.conf.5.xml:282 msgid "The Acquire Group" msgstr "" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:284 +#: apt.conf.5.xml:283 msgid "" "The <literal>Acquire</literal> group of options controls the download of " "packages as well as the various \"acquire methods\" responsible for the " @@ -2581,7 +2580,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:291 +#: apt.conf.5.xml:290 msgid "" "Security related option defaulting to true, as giving a Release file's " "validation an expiration date prevents replay attacks over a long timescale, " @@ -2594,7 +2593,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:304 +#: apt.conf.5.xml:303 msgid "" "Maximum time (in seconds) after its creation (as indicated by the " "<literal>Date</literal> header) that the <filename>Release</filename> file " @@ -2606,7 +2605,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:316 +#: apt.conf.5.xml:315 msgid "" "Minimum time (in seconds) after its creation (as indicated by the " "<literal>Date</literal> header) that the <filename>Release</filename> file " @@ -2618,7 +2617,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:328 +#: apt.conf.5.xml:327 msgid "" "Try to download deltas called <literal>PDiffs</literal> for indexes (like " "<filename>Packages</filename> files) instead of downloading whole ones. True " @@ -2626,7 +2625,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:331 +#: apt.conf.5.xml:330 msgid "" "Two sub-options to limit the use of PDiffs are also available: " "<literal>FileLimit</literal> can be used to specify a maximum number of " @@ -2638,7 +2637,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:341 +#: apt.conf.5.xml:340 msgid "" "Queuing mode; <literal>Queue-Mode</literal> can be one of " "<literal>host</literal> or <literal>access</literal> which determines how " @@ -2648,21 +2647,21 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:349 +#: apt.conf.5.xml:348 msgid "" "Number of retries to perform. If this is non-zero APT will retry failed " "files the given number of times." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:354 +#: apt.conf.5.xml:353 msgid "" "Use symlinks for source archives. If set to true then source archives will " "be symlinked when possible instead of copying. True is the default." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:359 +#: apt.conf.5.xml:358 msgid "" "<literal>http::Proxy</literal> sets the default proxy to use for HTTP " "URIs. It is in the standard form of " @@ -2675,7 +2674,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:367 +#: apt.conf.5.xml:366 msgid "" "Three settings are provided for cache control with HTTP/1.1 compliant proxy " "caches. <literal>No-Cache</literal> tells the proxy not to use its cached " @@ -2687,14 +2686,14 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:377 apt.conf.5.xml:449 +#: apt.conf.5.xml:376 apt.conf.5.xml:448 msgid "" "The option <literal>timeout</literal> sets the timeout timer used by the " "method; this value applies to the connection as well as the data timeout." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:380 +#: apt.conf.5.xml:379 msgid "" "The setting <literal>Acquire::http::Pipeline-Depth</literal> can be used to " "enable HTTP pipelining (RFC 2616 section 8.1.2.2) which can be beneficial " @@ -2706,14 +2705,14 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:387 +#: apt.conf.5.xml:386 msgid "" "<literal>Acquire::http::AllowRedirect</literal> controls whether APT will " "follow redirects, which is enabled by default." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:390 +#: apt.conf.5.xml:389 msgid "" "The used bandwidth can be limited with " "<literal>Acquire::http::Dl-Limit</literal> which accepts integer values in " @@ -2723,7 +2722,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:395 +#: apt.conf.5.xml:394 msgid "" "<literal>Acquire::http::User-Agent</literal> can be used to set a different " "User-Agent for the http download method as some proxies allow access for " @@ -2731,7 +2730,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:403 +#: apt.conf.5.xml:402 msgid "" "The <literal>Cache-control</literal>, <literal>Timeout</literal>, " "<literal>AllowRedirect</literal>, <literal>Dl-Limit</literal> and " @@ -2742,7 +2741,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:411 +#: apt.conf.5.xml:410 msgid "" "<literal>CaInfo</literal> suboption specifies place of file that holds info " "about trusted certificates. <literal><host>::CaInfo</literal> is the " @@ -2766,7 +2765,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:432 +#: apt.conf.5.xml:431 msgid "" "<literal>ftp::Proxy</literal> sets the default proxy to use for FTP URIs. " "It is in the standard form of " @@ -2787,7 +2786,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:452 +#: apt.conf.5.xml:451 msgid "" "Several settings are provided to control passive mode. Generally it is safe " "to leave passive mode on; it works in nearly every environment. However, " @@ -2797,7 +2796,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:459 +#: apt.conf.5.xml:458 msgid "" "It is possible to proxy FTP over HTTP by setting the " "<envar>ftp_proxy</envar> environment variable to an HTTP URL - see the " @@ -2807,7 +2806,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:464 +#: apt.conf.5.xml:463 msgid "" "The setting <literal>ForceExtended</literal> controls the use of RFC2428 " "<literal>EPSV</literal> and <literal>EPRT</literal> commands. The default is " @@ -2817,13 +2816,13 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><literallayout> -#: apt.conf.5.xml:478 +#: apt.conf.5.xml:477 #, no-wrap msgid "/cdrom/::Mount \"foo\";" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:473 +#: apt.conf.5.xml:472 msgid "" "For URIs using the <literal>cdrom</literal> method, the only configurable " "option is the mount point, <literal>cdrom::Mount</literal>, which must be " @@ -2836,7 +2835,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:486 +#: apt.conf.5.xml:485 msgid "" "For GPGV URIs the only configurable option is " "<literal>gpgv::Options</literal>, which passes additional parameters to " @@ -2844,7 +2843,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><synopsis> -#: apt.conf.5.xml:497 +#: apt.conf.5.xml:496 #, no-wrap msgid "" "Acquire::CompressionTypes::<replaceable>FileExtension</replaceable> " @@ -2852,7 +2851,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:492 +#: apt.conf.5.xml:491 msgid "" "List of compression types which are understood by the acquire methods. " "Files like <filename>Packages</filename> can be available in various " @@ -2864,19 +2863,19 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><synopsis> -#: apt.conf.5.xml:502 +#: apt.conf.5.xml:501 #, no-wrap msgid "Acquire::CompressionTypes::Order:: \"gz\";" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><synopsis> -#: apt.conf.5.xml:505 +#: apt.conf.5.xml:504 #, no-wrap msgid "Acquire::CompressionTypes::Order { \"lzma\"; \"gz\"; };" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:498 +#: apt.conf.5.xml:497 msgid "" "Also, the <literal>Order</literal> subgroup can be used to define in which " "order the acquire system will try to download the compressed files. The " @@ -2894,13 +2893,13 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><literallayout> -#: apt.conf.5.xml:512 +#: apt.conf.5.xml:511 #, no-wrap msgid "Dir::Bin::bzip2 \"/bin/bzip2\";" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:507 +#: apt.conf.5.xml:506 msgid "" "Note that the " "<literal>Dir::Bin::<replaceable>Methodname</replaceable></literal> will be " @@ -2916,7 +2915,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:517 +#: apt.conf.5.xml:516 msgid "" "The special type <literal>uncompressed</literal> can be used to give " "uncompressed files a preference, but note that most archives don't provide " @@ -2924,7 +2923,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:524 +#: apt.conf.5.xml:523 msgid "" "When downloading <literal>gzip</literal> compressed indexes (Packages, " "Sources, or Translations), keep them gzip compressed locally instead of " @@ -2933,7 +2932,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:532 +#: apt.conf.5.xml:531 msgid "" "The Languages subsection controls which <filename>Translation</filename> " "files are downloaded and in which order APT tries to display the " @@ -2945,13 +2944,13 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><programlisting> -#: apt.conf.5.xml:549 +#: apt.conf.5.xml:548 #, no-wrap msgid "Acquire::Languages { \"environment\"; \"de\"; \"en\"; \"none\"; \"fr\"; };" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:537 +#: apt.conf.5.xml:536 msgid "" "The default list includes \"environment\" and " "\"en\". \"<literal>environment</literal>\" has a special meaning here: it " @@ -2973,7 +2972,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:550 +#: apt.conf.5.xml:549 msgid "" "Note: To prevent problems resulting from APT being executed in different " "environments (e.g. by different users or by other programs) all Translation " @@ -2983,22 +2982,22 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:559 +#: apt.conf.5.xml:558 msgid "When downloading, force to use only the IPv4 protocol." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:565 +#: apt.conf.5.xml:564 msgid "When downloading, force to use only the IPv6 protocol." msgstr "" #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:572 +#: apt.conf.5.xml:571 msgid "Directories" msgstr "" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:574 +#: apt.conf.5.xml:573 msgid "" "The <literal>Dir::State</literal> section has directories that pertain to " "local state information. <literal>lists</literal> is the directory to place " @@ -3010,7 +3009,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:581 +#: apt.conf.5.xml:580 msgid "" "<literal>Dir::Cache</literal> contains locations pertaining to local cache " "information, such as the two package caches <literal>srcpkgcache</literal> " @@ -3023,7 +3022,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:590 +#: apt.conf.5.xml:589 msgid "" "<literal>Dir::Etc</literal> contains the location of configuration files, " "<literal>sourcelist</literal> gives the location of the sourcelist and " @@ -3033,7 +3032,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:596 +#: apt.conf.5.xml:595 msgid "" "The <literal>Dir::Parts</literal> setting reads in all the config fragments " "in lexical order from the directory specified. After this is done then the " @@ -3041,7 +3040,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:600 +#: apt.conf.5.xml:599 msgid "" "Binary programs are pointed to by " "<literal>Dir::Bin</literal>. <literal>Dir::Bin::Methods</literal> specifies " @@ -3053,7 +3052,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:608 +#: apt.conf.5.xml:607 msgid "" "The configuration item <literal>RootDir</literal> has a special meaning. If " "set, all paths in <literal>Dir::</literal> will be relative to " @@ -3066,7 +3065,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:621 +#: apt.conf.5.xml:620 msgid "" "The <literal>Ignore-Files-Silently</literal> list can be used to specify " "which files APT should silently ignore while parsing the files in the " @@ -3077,12 +3076,12 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:630 +#: apt.conf.5.xml:629 msgid "APT in DSelect" msgstr "" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:632 +#: apt.conf.5.xml:631 msgid "" "When APT is used as a &dselect; method several configuration directives " "control the default behavior. These are in the <literal>DSelect</literal> " @@ -3090,7 +3089,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:637 +#: apt.conf.5.xml:636 msgid "" "Cache Clean mode; this value may be one of <literal>always</literal>, " "<literal>prompt</literal>, <literal>auto</literal>, " @@ -3104,40 +3103,40 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:651 +#: apt.conf.5.xml:650 msgid "" "The contents of this variable are passed to &apt-get; as command line " "options when it is run for the install phase." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:656 +#: apt.conf.5.xml:655 msgid "" "The contents of this variable are passed to &apt-get; as command line " "options when it is run for the update phase." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:661 +#: apt.conf.5.xml:660 msgid "" "If true the [U]pdate operation in &dselect; will always prompt to continue. " "The default is to prompt only on error." msgstr "" #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:667 +#: apt.conf.5.xml:666 msgid "How APT calls &dpkg;" msgstr "" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:668 +#: apt.conf.5.xml:667 msgid "" "Several configuration directives control how APT invokes &dpkg;. These are " "in the <literal>DPkg</literal> section." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:673 +#: apt.conf.5.xml:672 msgid "" "This is a list of options to pass to &dpkg;. The options must be specified " "using the list notation and each list item is passed as a single argument to " @@ -3145,7 +3144,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:679 +#: apt.conf.5.xml:678 msgid "" "This is a list of shell commands to run before/after invoking &dpkg;. Like " "<literal>options</literal> this must be specified in list notation. The " @@ -3154,7 +3153,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:686 +#: apt.conf.5.xml:685 msgid "" "This is a list of shell commands to run before invoking &dpkg;. Like " "<literal>options</literal> this must be specified in list notation. The " @@ -3164,7 +3163,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:692 +#: apt.conf.5.xml:691 msgid "" "Version 2 of this protocol dumps more information, including the protocol " "version, the APT configuration space and the packages, files and versions " @@ -3175,26 +3174,26 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:700 +#: apt.conf.5.xml:699 msgid "" "APT chdirs to this directory before invoking &dpkg;, the default is " "<filename>/</filename>." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:705 +#: apt.conf.5.xml:704 msgid "" "These options are passed to &dpkg-buildpackage; when compiling packages; the " "default is to disable signing and produce all binaries." msgstr "" #. type: Content of: <refentry><refsect1><refsect2><title> -#: apt.conf.5.xml:710 +#: apt.conf.5.xml:709 msgid "dpkg trigger usage (and related options)" msgstr "" #. type: Content of: <refentry><refsect1><refsect2><para> -#: apt.conf.5.xml:711 +#: apt.conf.5.xml:710 msgid "" "APT can call &dpkg; in such a way as to let it make aggressive use of " "triggers over multiple calls of &dpkg;. Without further options &dpkg; will " @@ -3209,7 +3208,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><refsect2><para><literallayout> -#: apt.conf.5.xml:726 +#: apt.conf.5.xml:725 #, no-wrap msgid "" "DPkg::NoTriggers \"true\";\n" @@ -3219,7 +3218,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><refsect2><para> -#: apt.conf.5.xml:720 +#: apt.conf.5.xml:719 msgid "" "Note that it is not guaranteed that APT will support these options or that " "these options will not cause (big) trouble in the future. If you have " @@ -3233,7 +3232,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:733 +#: apt.conf.5.xml:732 msgid "" "Add the no triggers flag to all &dpkg; calls (except the ConfigurePending " "call). See &dpkg; if you are interested in what this actually means. In " @@ -3246,7 +3245,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:741 +#: apt.conf.5.xml:740 msgid "" "Valid values are \"<literal>all</literal>\", \"<literal>smart</literal>\" " "and \"<literal>no</literal>\". The default value is " @@ -3264,7 +3263,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:756 +#: apt.conf.5.xml:755 msgid "" "If this option is set APT will call <command>dpkg --configure " "--pending</command> to let &dpkg; handle all required configurations and " @@ -3276,7 +3275,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:763 +#: apt.conf.5.xml:762 msgid "" "Useful for the <literal>smart</literal> configuration as a package which has " "pending triggers is not considered as <literal>installed</literal>, and " @@ -3287,7 +3286,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para><literallayout> -#: apt.conf.5.xml:776 +#: apt.conf.5.xml:775 #, no-wrap msgid "" "OrderList::Score {\n" @@ -3299,7 +3298,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:769 +#: apt.conf.5.xml:768 msgid "" "Essential packages (and their dependencies) should be configured immediately " "after unpacking. It is a good idea to do this quite early in the upgrade " @@ -3313,12 +3312,12 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:789 +#: apt.conf.5.xml:788 msgid "Periodic and Archives options" msgstr "" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:790 +#: apt.conf.5.xml:789 msgid "" "<literal>APT::Periodic</literal> and <literal>APT::Archives</literal> groups " "of options configure behavior of apt periodic updates, which is done by the " @@ -3327,12 +3326,12 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:798 +#: apt.conf.5.xml:797 msgid "Debug options" msgstr "" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:800 +#: apt.conf.5.xml:799 msgid "" "Enabling options in the <literal>Debug::</literal> section will cause " "debugging information to be sent to the standard error stream of the program " @@ -3343,7 +3342,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para> -#: apt.conf.5.xml:811 +#: apt.conf.5.xml:810 msgid "" "<literal>Debug::pkgProblemResolver</literal> enables output about the " "decisions made by <literal>dist-upgrade, upgrade, install, remove, " @@ -3351,7 +3350,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para> -#: apt.conf.5.xml:819 +#: apt.conf.5.xml:818 msgid "" "<literal>Debug::NoLocking</literal> disables all file locking. This can be " "used to run some operations (for instance, <literal>apt-get -s " @@ -3359,7 +3358,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para> -#: apt.conf.5.xml:828 +#: apt.conf.5.xml:827 msgid "" "<literal>Debug::pkgDPkgPM</literal> prints out the actual command line each " "time that <literal>apt</literal> invokes &dpkg;." @@ -3369,65 +3368,65 @@ msgstr "" #. motivating example, except I haven't a clue why you'd want #. to do this. #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para> -#: apt.conf.5.xml:836 +#: apt.conf.5.xml:835 msgid "" "<literal>Debug::IdentCdrom</literal> disables the inclusion of statfs data " "in CD-ROM IDs." msgstr "" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:846 +#: apt.conf.5.xml:845 msgid "A full list of debugging options to apt follows." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:855 +#: apt.conf.5.xml:854 msgid "Print information related to accessing <literal>cdrom://</literal> sources." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:866 +#: apt.conf.5.xml:865 msgid "Print information related to downloading packages using FTP." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:877 +#: apt.conf.5.xml:876 msgid "Print information related to downloading packages using HTTP." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:888 +#: apt.conf.5.xml:887 msgid "Print information related to downloading packages using HTTPS." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:899 +#: apt.conf.5.xml:898 msgid "" "Print information related to verifying cryptographic signatures using " "<literal>gpg</literal>." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:910 +#: apt.conf.5.xml:909 msgid "" "Output information about the process of accessing collections of packages " "stored on CD-ROMs." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:920 +#: apt.conf.5.xml:919 msgid "Describes the process of resolving build-dependencies in &apt-get;." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:930 +#: apt.conf.5.xml:929 msgid "" "Output each cryptographic hash that is generated by the " "<literal>apt</literal> libraries." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:940 +#: apt.conf.5.xml:939 msgid "" "Do not include information from <literal>statfs</literal>, namely the number " "of used and free blocks on the CD-ROM filesystem, when generating an ID for " @@ -3435,52 +3434,52 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:951 +#: apt.conf.5.xml:950 msgid "" "Disable all file locking. For instance, this will allow two instances of " "<quote><literal>apt-get update</literal></quote> to run at the same time." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:963 +#: apt.conf.5.xml:962 msgid "Log when items are added to or removed from the global download queue." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:973 +#: apt.conf.5.xml:972 msgid "" "Output status messages and errors related to verifying checksums and " "cryptographic signatures of downloaded files." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:983 +#: apt.conf.5.xml:982 msgid "" "Output information about downloading and applying package index list diffs, " "and errors relating to package index list diffs." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:995 +#: apt.conf.5.xml:994 msgid "" "Output information related to patching apt package lists when downloading " "index diffs instead of full indices." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1006 +#: apt.conf.5.xml:1005 msgid "Log all interactions with the sub-processes that actually perform downloads." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1017 +#: apt.conf.5.xml:1016 msgid "" "Log events related to the automatically-installed status of packages and to " "the removal of unused packages." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1027 +#: apt.conf.5.xml:1026 msgid "" "Generate debug messages describing which packages are being automatically " "installed to resolve dependencies. This corresponds to the initial " @@ -3490,7 +3489,7 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1041 +#: apt.conf.5.xml:1040 msgid "" "Generate debug messages describing which packages are marked as " "keep/install/remove while the ProblemResolver does his work. Each addition " @@ -3508,45 +3507,45 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1062 +#: apt.conf.5.xml:1061 msgid "" "When invoking &dpkg;, output the precise command line with which it is being " "invoked, with arguments separated by a single space character." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1073 +#: apt.conf.5.xml:1072 msgid "" "Output all the data received from &dpkg; on the status file descriptor and " "any errors encountered while parsing it." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1084 +#: apt.conf.5.xml:1083 msgid "" "Generate a trace of the algorithm that decides the order in which " "<literal>apt</literal> should pass packages to &dpkg;." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1096 +#: apt.conf.5.xml:1095 msgid "Output status messages tracing the steps performed when invoking &dpkg;." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1107 +#: apt.conf.5.xml:1106 msgid "Output the priority of each package list on startup." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1117 +#: apt.conf.5.xml:1116 msgid "" "Trace the execution of the dependency resolver (this applies only to what " "happens when a complex dependency problem is encountered)." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1128 +#: apt.conf.5.xml:1127 msgid "" "Display a list of all installed packages with their calculated score used by " "the pkgProblemResolver. The description of the package is the same as " @@ -3554,19 +3553,19 @@ msgid "" msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1140 +#: apt.conf.5.xml:1139 msgid "" "Print information about the vendors read from " "<filename>/etc/apt/vendors.list</filename>." msgstr "" #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:1162 apt_preferences.5.xml:545 sources.list.5.xml:211 apt-ftparchive.1.xml:596 +#: apt.conf.5.xml:1161 apt_preferences.5.xml:545 sources.list.5.xml:211 apt-ftparchive.1.xml:596 msgid "Examples" msgstr "" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:1163 +#: apt.conf.5.xml:1162 msgid "" "&configureindex; is a configuration file showing example values for all " "possible options." @@ -3574,7 +3573,7 @@ msgstr "" #. ? reading apt.conf #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:1175 +#: apt.conf.5.xml:1174 msgid "&apt-cache;, &apt-config;, &apt-preferences;." msgstr "" diff --git a/doc/po/de.po b/doc/po/de.po index e4c7420b4..8ecbf4cbf 100644 --- a/doc/po/de.po +++ b/doc/po/de.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: apt-doc 0.9.7\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2013-04-02 15:13+0300\n" +"POT-Creation-Date: 2013-06-13 13:46+0300\n" "PO-Revision-Date: 2012-06-25 22:49+0100\n" "Last-Translator: Chris Leick <c.leick@vollbio.de>\n" "Language-Team: German <debian-l10n-german@lists.debian.org>\n" @@ -763,9 +763,9 @@ msgid "" "installation or upgrading. Each package is a package name, not a fully " "qualified filename (for instance, in a Debian system, <package>apt-utils</" "package> would be the argument provided, not <filename>apt-utils_&apt-" -"product-version;_amd64.deb</filename>). All packages required by the package" -"(s) specified for installation will also be retrieved and installed. The " -"<filename>/etc/apt/sources.list</filename> file is used to locate the " +"product-version;_amd64.deb</filename>). All packages required by the " +"package(s) specified for installation will also be retrieved and installed. " +"The <filename>/etc/apt/sources.list</filename> file is used to locate the " "desired packages. If a hyphen is appended to the package name (with no " "intervening space), the identified package will be removed if it is " "installed. Similarly a plus sign can be used to designate a package to " @@ -1543,14 +1543,14 @@ msgstr "" #. type: Content of: <refentry><refsect1><title> #: apt-get.8.xml:518 apt-cache.8.xml:343 apt-key.8.xml:174 apt-mark.8.xml:125 -#: apt.conf.5.xml:1168 apt_preferences.5.xml:698 +#: apt.conf.5.xml:1167 apt_preferences.5.xml:698 msgid "Files" msgstr "Dateien" #. type: Content of: <refentry><refsect1><title> #: apt-get.8.xml:528 apt-cache.8.xml:350 apt-key.8.xml:195 apt-mark.8.xml:131 #: apt-secure.8.xml:191 apt-cdrom.8.xml:144 apt-config.8.xml:109 -#: apt.conf.5.xml:1174 apt_preferences.5.xml:705 sources.list.5.xml:252 +#: apt.conf.5.xml:1173 apt_preferences.5.xml:705 sources.list.5.xml:252 #: apt-extracttemplates.1.xml:70 apt-sortpkgs.1.xml:63 #: apt-ftparchive.1.xml:607 msgid "See Also" @@ -3258,15 +3258,14 @@ msgstr "DPkg::Pre-Install-Pkgs {\"/usr/sbin/dpkg-preconfigure --apt\";};\n" #. type: Content of: <refentry><refsect1><para> #: apt.conf.5.xml:101 msgid "" -"In general the sample configuration file in <filename>&docdir;examples/apt." -"conf</filename> &configureindex; is a good guide for how it should look." +"In general the sample configuration file &configureindex; is a good guide " +"for how it should look." msgstr "" -"Im Allgemeinen bietet die Beispielkonfigurationsdatei in <filename>&docdir;" -"examples/apt.conf</filename> &configureindex; eine gute Anleitung, wie dies " -"aussehen könnte." +"Im Allgemeinen bietet die Beispielkonfigurationsdatei &configureindex; eine " +"gute Anleitung, wie dies aussehen könnte." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:105 +#: apt.conf.5.xml:104 msgid "" "Case is not significant in names of configuration items, so in the previous " "example you could use <literal>dpkg::pre-install-pkgs</literal>." @@ -3276,7 +3275,7 @@ msgstr "" "<literal>dpkg::pre-install-pkgs</literal> benutzen." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:108 +#: apt.conf.5.xml:107 msgid "" "Names for the configuration items are optional if a list is defined as can " "be seen in the <literal>DPkg::Pre-Install-Pkgs</literal> example above. If " @@ -3292,7 +3291,7 @@ msgstr "" "überschreiben, indem Sie der Option erneut einen neuen Wert zuweisen." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:113 +#: apt.conf.5.xml:112 msgid "" "Two special commands are defined: <literal>#include</literal> (which is " "deprecated and not supported by alternative implementations) and " @@ -3312,7 +3311,7 @@ msgstr "" "(Beachten Sie, dass diese Zeilen auch mit einem Schrägstrich enden müssen.)" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:123 +#: apt.conf.5.xml:122 msgid "" "The <literal>#clear</literal> command is the only way to delete a list or a " "complete scope. Reopening a scope (or using the syntax described below with " @@ -3329,7 +3328,7 @@ msgstr "" "nicht außer Kraft gesetzt, sondern nur bereinigt werden." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:131 +#: apt.conf.5.xml:130 msgid "" "All of the APT tools take an -o option which allows an arbitrary " "configuration directive to be specified on the command line. The syntax is a " @@ -3349,7 +3348,7 @@ msgstr "" "Befehlszeile benutzt werden.)" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:139 +#: apt.conf.5.xml:138 msgid "" "Note that appending items to a list using <literal>::</literal> only works " "for one item per line, and that you should not use it in combination with " @@ -3381,12 +3380,12 @@ msgstr "" "beklagt." #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:154 +#: apt.conf.5.xml:153 msgid "The APT Group" msgstr "Die APT-Gruppe" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:155 +#: apt.conf.5.xml:154 msgid "" "This group of options controls general APT behavior as well as holding the " "options for all of the tools." @@ -3395,7 +3394,7 @@ msgstr "" "wie es die Optionen für alle Werkzeuge enthält." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:160 +#: apt.conf.5.xml:159 msgid "" "System Architecture; sets the architecture to use when fetching files and " "parsing package lists. The internal default is the architecture apt was " @@ -3406,7 +3405,7 @@ msgstr "" "die Architektur für die APT kompiliert wurde." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:167 +#: apt.conf.5.xml:166 msgid "" "All Architectures the system supports. For instance, CPUs implementing the " "<literal>amd64</literal> (also called <literal>x86-64</literal>) " @@ -3428,7 +3427,7 @@ msgstr "" "print-architectures</command> registriert werden." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:180 +#: apt.conf.5.xml:179 msgid "" "Default release to install packages from if more than one version is " "available. Contains release name, codename or release version. Examples: " @@ -3441,7 +3440,7 @@ msgstr "" "codename;«, »4.0«, »5.0*«. Siehe auch &apt-preferences;." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:186 +#: apt.conf.5.xml:185 msgid "" "Ignore held packages; this global option causes the problem resolver to " "ignore held packages in its decision making." @@ -3450,7 +3449,7 @@ msgstr "" "Problemlöser, gehaltene Pakete beim Treffen von Entscheidungen zu ignorieren." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:191 +#: apt.conf.5.xml:190 msgid "" "Defaults to on. When turned on the autoclean feature will remove any " "packages which can no longer be downloaded from the cache. If turned off " @@ -3465,7 +3464,7 @@ msgstr "" "Möglichkeiten bereitstellt, um sie erneut zu installieren." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:199 +#: apt.conf.5.xml:198 msgid "" "Defaults to on, which will cause APT to install essential and important " "packages as soon as possible in an install/upgrade operation, in order to " @@ -3493,7 +3492,7 @@ msgstr "" "Abhängigkeit von A nicht länger erfüllt wird." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:211 +#: apt.conf.5.xml:210 msgid "" "The immediate configuration marker is also applied in the potentially " "problematic case of circular dependencies, since a dependency with the " @@ -3523,7 +3522,7 @@ msgstr "" "Stelle verhindern kann." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:224 +#: apt.conf.5.xml:223 msgid "" "Before a big operation like <literal>dist-upgrade</literal> is run with this " "option disabled you should try to explicitly <literal>install</literal> the " @@ -3541,7 +3540,7 @@ msgstr "" "des Upgrade-Prozesses arbeiten können." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:235 +#: apt.conf.5.xml:234 msgid "" "Never enable this option unless you <emphasis>really</emphasis> know what " "you are doing. It permits APT to temporarily remove an essential package to " @@ -3563,7 +3562,7 @@ msgstr "" "davon abhängt, sind." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:247 +#: apt.conf.5.xml:246 msgid "" "APT uses since version 0.7.26 a resizable memory mapped cache file to store " "the available information. <literal>Cache-Start</literal> acts as a hint of " @@ -3600,13 +3599,13 @@ msgstr "" "auf 0 gesetzt ist, kann der Zwischenspeicher nicht automatisch wachsen." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:263 +#: apt.conf.5.xml:262 msgid "Defines which packages are considered essential build dependencies." msgstr "" "definiert, welche Pakete als essentielle Bauabhängigkeiten betrachtet werden." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:267 +#: apt.conf.5.xml:266 msgid "" "The Get subsection controls the &apt-get; tool; please see its documentation " "for more information about the options here." @@ -3616,7 +3615,7 @@ msgstr "" "erhalten." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:272 +#: apt.conf.5.xml:271 msgid "" "The Cache subsection controls the &apt-cache; tool; please see its " "documentation for more information about the options here." @@ -3626,7 +3625,7 @@ msgstr "" "erhalten." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:277 +#: apt.conf.5.xml:276 msgid "" "The CDROM subsection controls the &apt-cdrom; tool; please see its " "documentation for more information about the options here." @@ -3636,12 +3635,12 @@ msgstr "" "erhalten." #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:283 +#: apt.conf.5.xml:282 msgid "The Acquire Group" msgstr "Die Erwerbgruppe" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:284 +#: apt.conf.5.xml:283 msgid "" "The <literal>Acquire</literal> group of options controls the download of " "packages as well as the various \"acquire methods\" responsible for the " @@ -3652,7 +3651,7 @@ msgstr "" "Herunterladen selbst zuständig sind (siehe auch &sources-list;)." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:291 +#: apt.conf.5.xml:290 msgid "" "Security related option defaulting to true, as giving a Release file's " "validation an expiration date prevents replay attacks over a long timescale, " @@ -3674,7 +3673,7 @@ msgstr "" "ValidTime</literal> unten benutzt werden." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:304 +#: apt.conf.5.xml:303 msgid "" "Maximum time (in seconds) after its creation (as indicated by the " "<literal>Date</literal> header) that the <filename>Release</filename> file " @@ -3693,7 +3692,7 @@ msgstr "" "Anhängen der Archivbezeichnung an den Optionsnamen vorgenommen werden." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:316 +#: apt.conf.5.xml:315 msgid "" "Minimum time (in seconds) after its creation (as indicated by the " "<literal>Date</literal> header) that the <filename>Release</filename> file " @@ -3713,7 +3712,7 @@ msgstr "" "Optionsnamen vorgenommen werden." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:328 +#: apt.conf.5.xml:327 msgid "" "Try to download deltas called <literal>PDiffs</literal> for indexes (like " "<filename>Packages</filename> files) instead of downloading whole ones. True " @@ -3724,7 +3723,7 @@ msgstr "" "der kompletten Dateien. Vorgabe ist True." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:331 +#: apt.conf.5.xml:330 msgid "" "Two sub-options to limit the use of PDiffs are also available: " "<literal>FileLimit</literal> can be used to specify a maximum number of " @@ -3742,7 +3741,7 @@ msgstr "" "komplette Datei anstelle der Patche heruntergeladen." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:341 +#: apt.conf.5.xml:340 msgid "" "Queuing mode; <literal>Queue-Mode</literal> can be one of <literal>host</" "literal> or <literal>access</literal> which determines how APT parallelizes " @@ -3758,7 +3757,7 @@ msgstr "" "URI-Art geöffnet wird." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:349 +#: apt.conf.5.xml:348 msgid "" "Number of retries to perform. If this is non-zero APT will retry failed " "files the given number of times." @@ -3767,7 +3766,7 @@ msgstr "" "APT fehlgeschlagene Dateien in der angegebenen Zahl erneut versuchen." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:354 +#: apt.conf.5.xml:353 msgid "" "Use symlinks for source archives. If set to true then source archives will " "be symlinked when possible instead of copying. True is the default." @@ -3777,7 +3776,7 @@ msgstr "" "kopiert zu werden. True ist die Vorgabe." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:359 +#: apt.conf.5.xml:358 msgid "" "<literal>http::Proxy</literal> sets the default proxy to use for HTTP URIs. " "It is in the standard form of <literal>http://[[user][:pass]@]host[:port]/</" @@ -3788,15 +3787,15 @@ msgid "" "be used." msgstr "" "<literal>http::Proxy</literal> ist der zu benutzende Standard-HTTP-Proxy. Er " -"wird standardmäßig in der Form <literal>http://[[Anwender][:Passwort]@]" -"Rechner[:Port]/</literal> angegeben. Durch Rechner-Proxies kann außerdem in " -"der Form <literal>http::Proxy::<host></literal> mit dem speziellen " -"Schlüsselwort <literal>DIRECT</literal> angegeben werden, dass keine Proxies " -"benutzt werden. Falls keine der obigen Einstellungen angegeben wurde, wird " -"die Umgebungsvariable <envar>http_proxy</envar> benutzt." +"wird standardmäßig in der Form <literal>http://[[Anwender][:" +"Passwort]@]Rechner[:Port]/</literal> angegeben. Durch Rechner-Proxies kann " +"außerdem in der Form <literal>http::Proxy::<host></literal> mit dem " +"speziellen Schlüsselwort <literal>DIRECT</literal> angegeben werden, dass " +"keine Proxies benutzt werden. Falls keine der obigen Einstellungen angegeben " +"wurde, wird die Umgebungsvariable <envar>http_proxy</envar> benutzt." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:367 +#: apt.conf.5.xml:366 msgid "" "Three settings are provided for cache control with HTTP/1.1 compliant proxy " "caches. <literal>No-Cache</literal> tells the proxy not to use its cached " @@ -3817,7 +3816,7 @@ msgstr "" "Zwischenspeicher mit (großen) .deb-Dateien verunreinigt." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:377 apt.conf.5.xml:449 +#: apt.conf.5.xml:376 apt.conf.5.xml:448 msgid "" "The option <literal>timeout</literal> sets the timeout timer used by the " "method; this value applies to the connection as well as the data timeout." @@ -3827,7 +3826,7 @@ msgstr "" "Datenzeitüberschreitungen angewandt." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:380 +#: apt.conf.5.xml:379 msgid "" "The setting <literal>Acquire::http::Pipeline-Depth</literal> can be used to " "enable HTTP pipelining (RFC 2616 section 8.1.2.2) which can be beneficial e." @@ -3847,7 +3846,7 @@ msgstr "" "HTTP/1.1-Spezifikation entsprechen." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:387 +#: apt.conf.5.xml:386 msgid "" "<literal>Acquire::http::AllowRedirect</literal> controls whether APT will " "follow redirects, which is enabled by default." @@ -3856,7 +3855,7 @@ msgstr "" "folgen wird, was standardmäßig aktiviert ist." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:390 +#: apt.conf.5.xml:389 msgid "" "The used bandwidth can be limited with <literal>Acquire::http::Dl-Limit</" "literal> which accepts integer values in kilobytes. The default value is 0 " @@ -3872,7 +3871,7 @@ msgstr "" "deaktiviert.)" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:395 +#: apt.conf.5.xml:394 msgid "" "<literal>Acquire::http::User-Agent</literal> can be used to set a different " "User-Agent for the http download method as some proxies allow access for " @@ -3884,7 +3883,7 @@ msgstr "" "bekannten Bezeichner verwendet." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:403 +#: apt.conf.5.xml:402 msgid "" "The <literal>Cache-control</literal>, <literal>Timeout</literal>, " "<literal>AllowRedirect</literal>, <literal>Dl-Limit</literal> and " @@ -3901,7 +3900,7 @@ msgstr "" "<literal>Pipeline-Depth</literal> wird noch nicht unterstützt." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:411 +#: apt.conf.5.xml:410 msgid "" "<literal>CaInfo</literal> suboption specifies place of file that holds info " "about trusted certificates. <literal><host>::CaInfo</literal> is the " @@ -3942,7 +3941,7 @@ msgstr "" "Rechner ist <literal><host>::SslForceVersion</literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:432 +#: apt.conf.5.xml:431 msgid "" "<literal>ftp::Proxy</literal> sets the default proxy to use for FTP URIs. " "It is in the standard form of <literal>ftp://[[user][:pass]@]host[:port]/</" @@ -3977,7 +3976,7 @@ msgstr "" "literal> und <literal>$(SITE_PORT)</literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:452 +#: apt.conf.5.xml:451 msgid "" "Several settings are provided to control passive mode. Generally it is safe " "to leave passive mode on; it works in nearly every environment. However, " @@ -3994,7 +3993,7 @@ msgstr "" "Musterkonfigurationsdatei)." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:459 +#: apt.conf.5.xml:458 msgid "" "It is possible to proxy FTP over HTTP by setting the <envar>ftp_proxy</" "envar> environment variable to an HTTP URL - see the discussion of the http " @@ -4008,7 +4007,7 @@ msgstr "" "Effizienz nicht empfohlen FTP über HTTP zu benutzen." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:464 +#: apt.conf.5.xml:463 msgid "" "The setting <literal>ForceExtended</literal> controls the use of RFC2428 " "<literal>EPSV</literal> and <literal>EPRT</literal> commands. The default is " @@ -4024,13 +4023,13 @@ msgstr "" "Server RFC2428 unterstützen." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><literallayout> -#: apt.conf.5.xml:478 +#: apt.conf.5.xml:477 #, no-wrap msgid "/cdrom/::Mount \"foo\";" msgstr "/cdrom/::Mount \"foo\";" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:473 +#: apt.conf.5.xml:472 msgid "" "For URIs using the <literal>cdrom</literal> method, the only configurable " "option is the mount point, <literal>cdrom::Mount</literal>, which must be " @@ -4052,7 +4051,7 @@ msgstr "" "Aushängebefehle können per UMount angegeben werden." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:486 +#: apt.conf.5.xml:485 msgid "" "For GPGV URIs the only configurable option is <literal>gpgv::Options</" "literal>, which passes additional parameters to gpgv." @@ -4061,13 +4060,13 @@ msgstr "" "literal>, um zusätzliche Parameter an Gpgv weiterzuleiten." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><synopsis> -#: apt.conf.5.xml:497 +#: apt.conf.5.xml:496 #, no-wrap msgid "Acquire::CompressionTypes::<replaceable>FileExtension</replaceable> \"<replaceable>Methodname</replaceable>\";" msgstr "Acquire::CompressionTypes::<replaceable>Dateierweiterung</replaceable> \"<replaceable>Methodenname</replaceable>\";" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:492 +#: apt.conf.5.xml:491 msgid "" "List of compression types which are understood by the acquire methods. " "Files like <filename>Packages</filename> can be available in various " @@ -4087,19 +4086,19 @@ msgstr "" "\"synopsis\" id=\"0\"/>" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><synopsis> -#: apt.conf.5.xml:502 +#: apt.conf.5.xml:501 #, no-wrap msgid "Acquire::CompressionTypes::Order:: \"gz\";" msgstr "Acquire::CompressionTypes::Order:: \"gz\";" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><synopsis> -#: apt.conf.5.xml:505 +#: apt.conf.5.xml:504 #, no-wrap msgid "Acquire::CompressionTypes::Order { \"lzma\"; \"gz\"; };" msgstr "Acquire::CompressionTypes::Order { \"lzma\"; \"gz\"; };" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:498 +#: apt.conf.5.xml:497 msgid "" "Also, the <literal>Order</literal> subgroup can be used to define in which " "order the acquire system will try to download the compressed files. The " @@ -4131,13 +4130,13 @@ msgstr "" "explizit zur Liste hinzuzufügen, da es automatisch hinzufügt wird." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><literallayout> -#: apt.conf.5.xml:512 +#: apt.conf.5.xml:511 #, no-wrap msgid "Dir::Bin::bzip2 \"/bin/bzip2\";" msgstr "Dir::Bin::bzip2 \"/bin/bzip2\";" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:507 +#: apt.conf.5.xml:506 msgid "" "Note that the <literal>Dir::Bin::<replaceable>Methodname</replaceable></" "literal> will be checked at run time. If this option has been set, the " @@ -4163,7 +4162,7 @@ msgstr "" "nicht überschreiben, es wird diesen Typ nur vor die Liste setzen." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:517 +#: apt.conf.5.xml:516 msgid "" "The special type <literal>uncompressed</literal> can be used to give " "uncompressed files a preference, but note that most archives don't provide " @@ -4175,7 +4174,7 @@ msgstr "" "dies meist nur für lokale Spiegel benutzt werden kann." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:524 +#: apt.conf.5.xml:523 msgid "" "When downloading <literal>gzip</literal> compressed indexes (Packages, " "Sources, or Translations), keep them gzip compressed locally instead of " @@ -4189,7 +4188,7 @@ msgstr "" "False." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:532 +#: apt.conf.5.xml:531 msgid "" "The Languages subsection controls which <filename>Translation</filename> " "files are downloaded and in which order APT tries to display the description-" @@ -4209,13 +4208,13 @@ msgstr "" "langen Sprachcodes selten." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><programlisting> -#: apt.conf.5.xml:549 +#: apt.conf.5.xml:548 #, no-wrap msgid "Acquire::Languages { \"environment\"; \"de\"; \"en\"; \"none\"; \"fr\"; };" msgstr "Acquire::Languages { \"environment\"; \"de\"; \"en\"; \"none\"; \"fr\"; };" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:537 +#: apt.conf.5.xml:536 msgid "" "The default list includes \"environment\" and \"en\". " "\"<literal>environment</literal>\" has a special meaning here: it will be " @@ -4256,7 +4255,7 @@ msgstr "" "\"0\"/>" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:550 +#: apt.conf.5.xml:549 msgid "" "Note: To prevent problems resulting from APT being executed in different " "environments (e.g. by different users or by other programs) all Translation " @@ -4270,22 +4269,22 @@ msgstr "" "Liste hinzugefügt (nach einem impliziten »<literal>none</literal>«)." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:559 +#: apt.conf.5.xml:558 msgid "When downloading, force to use only the IPv4 protocol." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:565 +#: apt.conf.5.xml:564 msgid "When downloading, force to use only the IPv6 protocol." msgstr "" #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:572 +#: apt.conf.5.xml:571 msgid "Directories" msgstr "Verzeichnisse" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:574 +#: apt.conf.5.xml:573 msgid "" "The <literal>Dir::State</literal> section has directories that pertain to " "local state information. <literal>lists</literal> is the directory to place " @@ -4305,7 +4304,7 @@ msgstr "" "nicht mit <filename>/</filename> oder <filename>./</filename> beginnen." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:581 +#: apt.conf.5.xml:580 msgid "" "<literal>Dir::Cache</literal> contains locations pertaining to local cache " "information, such as the two package caches <literal>srcpkgcache</literal> " @@ -4328,7 +4327,7 @@ msgstr "" "Standardverzeichnis in <literal>Dir::Cache</literal> enthalten." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:590 +#: apt.conf.5.xml:589 msgid "" "<literal>Dir::Etc</literal> contains the location of configuration files, " "<literal>sourcelist</literal> gives the location of the sourcelist and " @@ -4343,7 +4342,7 @@ msgstr "" "Konfigurationsdatei erfolgt)." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:596 +#: apt.conf.5.xml:595 msgid "" "The <literal>Dir::Parts</literal> setting reads in all the config fragments " "in lexical order from the directory specified. After this is done then the " @@ -4355,7 +4354,7 @@ msgstr "" "geladen." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:600 +#: apt.conf.5.xml:599 msgid "" "Binary programs are pointed to by <literal>Dir::Bin</literal>. <literal>Dir::" "Bin::Methods</literal> specifies the location of the method handlers and " @@ -4373,7 +4372,7 @@ msgstr "" "Programms an." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:608 +#: apt.conf.5.xml:607 msgid "" "The configuration item <literal>RootDir</literal> has a special meaning. If " "set, all paths in <literal>Dir::</literal> will be relative to " @@ -4393,7 +4392,7 @@ msgstr "" "<filename>/tmp/staging/var/lib/dpkg/status</filename> nachgesehen." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:621 +#: apt.conf.5.xml:620 msgid "" "The <literal>Ignore-Files-Silently</literal> list can be used to specify " "which files APT should silently ignore while parsing the files in the " @@ -4411,12 +4410,12 @@ msgstr "" "diese Muster verwandt werden." #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:630 +#: apt.conf.5.xml:629 msgid "APT in DSelect" msgstr "APT in DSelect" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:632 +#: apt.conf.5.xml:631 msgid "" "When APT is used as a &dselect; method several configuration directives " "control the default behavior. These are in the <literal>DSelect</literal> " @@ -4427,7 +4426,7 @@ msgstr "" "<literal>DSelect</literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:637 +#: apt.conf.5.xml:636 msgid "" "Cache Clean mode; this value may be one of <literal>always</literal>, " "<literal>prompt</literal>, <literal>auto</literal>, <literal>pre-auto</" @@ -4450,7 +4449,7 @@ msgstr "" "vor dem Herunterladen neuer Pakete durch." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:651 +#: apt.conf.5.xml:650 msgid "" "The contents of this variable are passed to &apt-get; as command line " "options when it is run for the install phase." @@ -4459,7 +4458,7 @@ msgstr "" "übermittelt, wenn es für die Installationsphase durchlaufen wird." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:656 +#: apt.conf.5.xml:655 msgid "" "The contents of this variable are passed to &apt-get; as command line " "options when it is run for the update phase." @@ -4468,7 +4467,7 @@ msgstr "" "übermittelt, wenn es für die Aktualisierungsphase durchlaufen wird." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:661 +#: apt.conf.5.xml:660 msgid "" "If true the [U]pdate operation in &dselect; will always prompt to continue. " "The default is to prompt only on error." @@ -4477,12 +4476,12 @@ msgstr "" "nachfragen, um fortzufahren. Vorgabe ist es, nur bei Fehlern nachzufragen." #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:667 +#: apt.conf.5.xml:666 msgid "How APT calls &dpkg;" msgstr "Wie APT &dpkg; aufruft" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:668 +#: apt.conf.5.xml:667 msgid "" "Several configuration directives control how APT invokes &dpkg;. These are " "in the <literal>DPkg</literal> section." @@ -4491,7 +4490,7 @@ msgstr "" "stehen im Abschnitt <literal>DPkg</literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:673 +#: apt.conf.5.xml:672 msgid "" "This is a list of options to pass to &dpkg;. The options must be specified " "using the list notation and each list item is passed as a single argument to " @@ -4502,7 +4501,7 @@ msgstr "" "jedes Listenelement wird als einzelnes Argument an &dpkg; übermittelt." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:679 +#: apt.conf.5.xml:678 msgid "" "This is a list of shell commands to run before/after invoking &dpkg;. Like " "<literal>options</literal> this must be specified in list notation. The " @@ -4516,7 +4515,7 @@ msgstr "" "APT abgebrochen." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:686 +#: apt.conf.5.xml:685 msgid "" "This is a list of shell commands to run before invoking &dpkg;. Like " "<literal>options</literal> this must be specified in list notation. The " @@ -4532,7 +4531,7 @@ msgstr "" "die es installieren wird, auf der Standardeingabe übergeben, einen pro Zeile." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:692 +#: apt.conf.5.xml:691 msgid "" "Version 2 of this protocol dumps more information, including the protocol " "version, the APT configuration space and the packages, files and versions " @@ -4548,7 +4547,7 @@ msgstr "" "literal> gegeben wird." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:700 +#: apt.conf.5.xml:699 msgid "" "APT chdirs to this directory before invoking &dpkg;, the default is " "<filename>/</filename>." @@ -4557,7 +4556,7 @@ msgstr "" "die Vorgabe ist <filename>/</filename>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:705 +#: apt.conf.5.xml:704 msgid "" "These options are passed to &dpkg-buildpackage; when compiling packages; the " "default is to disable signing and produce all binaries." @@ -4567,12 +4566,12 @@ msgstr "" "Programme werden erstellt." #. type: Content of: <refentry><refsect1><refsect2><title> -#: apt.conf.5.xml:710 +#: apt.conf.5.xml:709 msgid "dpkg trigger usage (and related options)" msgstr "Dpkd-Trigger-Benutzung (und zugehörige Optionen)" #. type: Content of: <refentry><refsect1><refsect2><para> -#: apt.conf.5.xml:711 +#: apt.conf.5.xml:710 msgid "" "APT can call &dpkg; in such a way as to let it make aggressive use of " "triggers over multiple calls of &dpkg;. Without further options &dpkg; will " @@ -4599,7 +4598,7 @@ msgstr "" "Pakete konfiguriert werden." #. type: Content of: <refentry><refsect1><refsect2><para><literallayout> -#: apt.conf.5.xml:726 +#: apt.conf.5.xml:725 #, no-wrap msgid "" "DPkg::NoTriggers \"true\";\n" @@ -4613,7 +4612,7 @@ msgstr "" "DPkg::TriggersPending \"true\";" #. type: Content of: <refentry><refsect1><refsect2><para> -#: apt.conf.5.xml:720 +#: apt.conf.5.xml:719 msgid "" "Note that it is not guaranteed that APT will support these options or that " "these options will not cause (big) trouble in the future. If you have " @@ -4638,7 +4637,7 @@ msgstr "" "Optionenkombination wäre <placeholder type=\"literallayout\" id=\"0\"/>" #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:733 +#: apt.conf.5.xml:732 msgid "" "Add the no triggers flag to all &dpkg; calls (except the ConfigurePending " "call). See &dpkg; if you are interested in what this actually means. In " @@ -4661,7 +4660,7 @@ msgstr "" "anhängen." #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:741 +#: apt.conf.5.xml:740 msgid "" "Valid values are \"<literal>all</literal>\", \"<literal>smart</literal>\" " "and \"<literal>no</literal>\". The default value is \"<literal>all</literal>" @@ -4691,7 +4690,7 @@ msgstr "" "enden könnte und möglicherweise nicht mehr startbar ist." #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:756 +#: apt.conf.5.xml:755 msgid "" "If this option is set APT will call <command>dpkg --configure --pending</" "command> to let &dpkg; handle all required configurations and triggers. This " @@ -4710,7 +4709,7 @@ msgstr "" "deaktivieren." #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:763 +#: apt.conf.5.xml:762 msgid "" "Useful for the <literal>smart</literal> configuration as a package which has " "pending triggers is not considered as <literal>installed</literal>, and " @@ -4726,7 +4725,7 @@ msgstr "" "benötigt werden." #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para><literallayout> -#: apt.conf.5.xml:776 +#: apt.conf.5.xml:775 #, no-wrap msgid "" "OrderList::Score {\n" @@ -4744,7 +4743,7 @@ msgstr "" "};" #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:769 +#: apt.conf.5.xml:768 msgid "" "Essential packages (and their dependencies) should be configured immediately " "after unpacking. It is a good idea to do this quite early in the upgrade " @@ -4768,12 +4767,12 @@ msgstr "" "mit ihren Vorgabewerten. <placeholder type=\"literallayout\" id=\"0\"/>" #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:789 +#: apt.conf.5.xml:788 msgid "Periodic and Archives options" msgstr "Periodische- und Archivoptionen" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:790 +#: apt.conf.5.xml:789 msgid "" "<literal>APT::Periodic</literal> and <literal>APT::Archives</literal> groups " "of options configure behavior of apt periodic updates, which is done by the " @@ -4787,12 +4786,12 @@ msgstr "" "Dokumentation dieser Optionen zu erhalten." #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:798 +#: apt.conf.5.xml:797 msgid "Debug options" msgstr "Fehlersuchoptionen" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:800 +#: apt.conf.5.xml:799 msgid "" "Enabling options in the <literal>Debug::</literal> section will cause " "debugging information to be sent to the standard error stream of the program " @@ -4810,7 +4809,7 @@ msgstr "" "könnten es sein:" #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para> -#: apt.conf.5.xml:811 +#: apt.conf.5.xml:810 msgid "" "<literal>Debug::pkgProblemResolver</literal> enables output about the " "decisions made by <literal>dist-upgrade, upgrade, install, remove, purge</" @@ -4821,7 +4820,7 @@ msgstr "" "getroffenen Entscheidungen ein." #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para> -#: apt.conf.5.xml:819 +#: apt.conf.5.xml:818 msgid "" "<literal>Debug::NoLocking</literal> disables all file locking. This can be " "used to run some operations (for instance, <literal>apt-get -s install</" @@ -4832,7 +4831,7 @@ msgstr "" "<literal>apt-get -s install</literal>) als nicht root-Anwender auszuführen." #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para> -#: apt.conf.5.xml:828 +#: apt.conf.5.xml:827 msgid "" "<literal>Debug::pkgDPkgPM</literal> prints out the actual command line each " "time that <literal>apt</literal> invokes &dpkg;." @@ -4844,7 +4843,7 @@ msgstr "" #. motivating example, except I haven't a clue why you'd want #. to do this. #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para> -#: apt.conf.5.xml:836 +#: apt.conf.5.xml:835 msgid "" "<literal>Debug::IdentCdrom</literal> disables the inclusion of statfs data " "in CD-ROM IDs." @@ -4853,12 +4852,12 @@ msgstr "" "Daten in CD-ROM-IDs aus." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:846 +#: apt.conf.5.xml:845 msgid "A full list of debugging options to apt follows." msgstr "Eine vollständige Liste der Fehlersuchoptionen von APT folgt." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:855 +#: apt.conf.5.xml:854 msgid "" "Print information related to accessing <literal>cdrom://</literal> sources." msgstr "" @@ -4866,28 +4865,28 @@ msgstr "" "literal>-Quellen beziehen." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:866 +#: apt.conf.5.xml:865 msgid "Print information related to downloading packages using FTP." msgstr "" "gibt Informationen aus, die sich auf das Herunterladen von Paketen per FTP " "beziehen." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:877 +#: apt.conf.5.xml:876 msgid "Print information related to downloading packages using HTTP." msgstr "" "gibt Informationen aus, die sich auf das Herunterladen von Paketen per HTTP " "beziehen." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:888 +#: apt.conf.5.xml:887 msgid "Print information related to downloading packages using HTTPS." msgstr "" "gibt Informationen aus, die sich auf das Herunterladen von Paketen per HTTPS " "beziehen." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:899 +#: apt.conf.5.xml:898 msgid "" "Print information related to verifying cryptographic signatures using " "<literal>gpg</literal>." @@ -4896,7 +4895,7 @@ msgstr "" "mittels <literal>gpg</literal> beziehen." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:910 +#: apt.conf.5.xml:909 msgid "" "Output information about the process of accessing collections of packages " "stored on CD-ROMs." @@ -4905,13 +4904,13 @@ msgstr "" "CD-ROMs gespeichert sind." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:920 +#: apt.conf.5.xml:919 msgid "Describes the process of resolving build-dependencies in &apt-get;." msgstr "" "beschreibt den Prozess der Auflösung von Bauabhängigkeiten in &apt-get;." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:930 +#: apt.conf.5.xml:929 msgid "" "Output each cryptographic hash that is generated by the <literal>apt</" "literal> libraries." @@ -4920,7 +4919,7 @@ msgstr "" "Bibliotheken generiert wurde." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:940 +#: apt.conf.5.xml:939 msgid "" "Do not include information from <literal>statfs</literal>, namely the number " "of used and free blocks on the CD-ROM filesystem, when generating an ID for " @@ -4931,7 +4930,7 @@ msgstr "" "ID für eine CD-ROM generiert wird." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:951 +#: apt.conf.5.xml:950 msgid "" "Disable all file locking. For instance, this will allow two instances of " "<quote><literal>apt-get update</literal></quote> to run at the same time." @@ -4941,14 +4940,14 @@ msgstr "" "gleichen Zeit laufen." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:963 +#: apt.conf.5.xml:962 msgid "Log when items are added to or removed from the global download queue." msgstr "" "protokolliert, wenn Elemente aus der globalen Warteschlange zum " "Herunterladen hinzugefügt oder entfernt werden." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:973 +#: apt.conf.5.xml:972 msgid "" "Output status messages and errors related to verifying checksums and " "cryptographic signatures of downloaded files." @@ -4957,7 +4956,7 @@ msgstr "" "und kryptografischen Signaturen von heruntergeladenen Dateien beziehen." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:983 +#: apt.conf.5.xml:982 msgid "" "Output information about downloading and applying package index list diffs, " "and errors relating to package index list diffs." @@ -4966,7 +4965,7 @@ msgstr "" "Diffs und Fehler, die die Paketindexlisten-Diffs betreffen, aus." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:995 +#: apt.conf.5.xml:994 msgid "" "Output information related to patching apt package lists when downloading " "index diffs instead of full indices." @@ -4976,7 +4975,7 @@ msgstr "" "werden." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1006 +#: apt.conf.5.xml:1005 msgid "" "Log all interactions with the sub-processes that actually perform downloads." msgstr "" @@ -4984,7 +4983,7 @@ msgstr "" "durchführen." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1017 +#: apt.conf.5.xml:1016 msgid "" "Log events related to the automatically-installed status of packages and to " "the removal of unused packages." @@ -4994,7 +4993,7 @@ msgstr "" "beziehen." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1027 +#: apt.conf.5.xml:1026 msgid "" "Generate debug messages describing which packages are being automatically " "installed to resolve dependencies. This corresponds to the initial auto-" @@ -5010,7 +5009,7 @@ msgstr "" "literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1041 +#: apt.conf.5.xml:1040 msgid "" "Generate debug messages describing which packages are marked as keep/install/" "remove while the ProblemResolver does his work. Each addition or deletion " @@ -5032,18 +5031,18 @@ msgstr "" "auslösen. Sie werden nach zwei eingerückten Leerzeichen unter dem " "Originaleintrag angezeigt. Jede Zeile hat das Format <literal>MarkKeep</" "literal>, <literal>MarkDelete</literal> oder <literal>MarkInstall</literal> " -"gefolgt von <literal>Paketname <a.b.c -> d.e.f | x.y.z> (Abschnitt)" -"</literal> wobei <literal>a.b.c</literal> die aktuelle Version des Paketes " -"ist, <literal>d.e.f</literal> die Version ist, die zur Installation " -"vorgesehen ist und <literal>x.y.z</literal> eine neuere Version ist, die " -"aber nicht zur Installation vorgesehen ist (aufgrund einer niedrigen Pinning-" -"Bewertung). Die letzten beiden können weggelassen werden, wenn es keine gibt " -"oder wenn sie die gleiche Version haben, wie die, die installiert ist. " -"<literal>section</literal> ist der Name des Abschnitts, in dem das Paket " -"erscheint." +"gefolgt von <literal>Paketname <a.b.c -> d.e.f | x.y.z> " +"(Abschnitt)</literal> wobei <literal>a.b.c</literal> die aktuelle Version " +"des Paketes ist, <literal>d.e.f</literal> die Version ist, die zur " +"Installation vorgesehen ist und <literal>x.y.z</literal> eine neuere Version " +"ist, die aber nicht zur Installation vorgesehen ist (aufgrund einer " +"niedrigen Pinning-Bewertung). Die letzten beiden können weggelassen werden, " +"wenn es keine gibt oder wenn sie die gleiche Version haben, wie die, die " +"installiert ist. <literal>section</literal> ist der Name des Abschnitts, in " +"dem das Paket erscheint." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1062 +#: apt.conf.5.xml:1061 msgid "" "When invoking &dpkg;, output the precise command line with which it is being " "invoked, with arguments separated by a single space character." @@ -5053,7 +5052,7 @@ msgstr "" "sind, aus." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1073 +#: apt.conf.5.xml:1072 msgid "" "Output all the data received from &dpkg; on the status file descriptor and " "any errors encountered while parsing it." @@ -5062,7 +5061,7 @@ msgstr "" "und alle während deren Auswertung gefundenen Fehler aus." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1084 +#: apt.conf.5.xml:1083 msgid "" "Generate a trace of the algorithm that decides the order in which " "<literal>apt</literal> should pass packages to &dpkg;." @@ -5072,7 +5071,7 @@ msgstr "" "soll." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1096 +#: apt.conf.5.xml:1095 msgid "" "Output status messages tracing the steps performed when invoking &dpkg;." msgstr "" @@ -5080,12 +5079,12 @@ msgstr "" "von &dpkg; ausgeführt werden." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1107 +#: apt.conf.5.xml:1106 msgid "Output the priority of each package list on startup." msgstr "gibt die Priorität jeder Paketliste beim Start aus." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1117 +#: apt.conf.5.xml:1116 msgid "" "Trace the execution of the dependency resolver (this applies only to what " "happens when a complex dependency problem is encountered)." @@ -5095,7 +5094,7 @@ msgstr "" "aufgetreten ist)." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1128 +#: apt.conf.5.xml:1127 msgid "" "Display a list of all installed packages with their calculated score used by " "the pkgProblemResolver. The description of the package is the same as " @@ -5107,7 +5106,7 @@ msgstr "" "Marker</literal> beschrieben." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1140 +#: apt.conf.5.xml:1139 msgid "" "Print information about the vendors read from <filename>/etc/apt/vendors." "list</filename>." @@ -5116,13 +5115,13 @@ msgstr "" "filename> gelesenen Anbieter aus." #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:1162 apt_preferences.5.xml:545 sources.list.5.xml:211 +#: apt.conf.5.xml:1161 apt_preferences.5.xml:545 sources.list.5.xml:211 #: apt-ftparchive.1.xml:596 msgid "Examples" msgstr "Beispiele" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:1163 +#: apt.conf.5.xml:1162 msgid "" "&configureindex; is a configuration file showing example values for all " "possible options." @@ -5132,7 +5131,7 @@ msgstr "" #. ? reading apt.conf #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:1175 +#: apt.conf.5.xml:1174 msgid "&apt-cache;, &apt-config;, &apt-preferences;." msgstr "&apt-cache;, &apt-config;, &apt-preferences;." @@ -6285,9 +6284,9 @@ msgid "" "id=\"0\"/>" msgstr "" "Mit einer geeigneten &sources-list;-Datei und der obigen Einstellungsdatei " -"wird jeder der folgenden Befehle APT veranlassen, ein Upgrade auf die neuste" -"(n) <literal>stable</literal>-Version(en) durchzuführen. <placeholder type=" -"\"programlisting\" id=\"0\"/>" +"wird jeder der folgenden Befehle APT veranlassen, ein Upgrade auf die " +"neuste(n) <literal>stable</literal>-Version(en) durchzuführen. <placeholder " +"type=\"programlisting\" id=\"0\"/>" #. type: Content of: <refentry><refsect1><refsect2><para><programlisting> #: apt_preferences.5.xml:584 @@ -6368,9 +6367,9 @@ msgid "" "id=\"0\"/>" msgstr "" "Mit einer geeigneten &sources-list;-Datei und der obigen Einstellungsdatei " -"wird jeder der folgenden Befehle APT veranlassen, ein Upgrade auf die neuste" -"(n) <literal>testing</literal>-Version(en) durchzuführen. <placeholder type=" -"\"programlisting\" id=\"0\"/>" +"wird jeder der folgenden Befehle APT veranlassen, ein Upgrade auf die " +"neuste(n) <literal>testing</literal>-Version(en) durchzuführen. <placeholder " +"type=\"programlisting\" id=\"0\"/>" #. type: Content of: <refentry><refsect1><refsect2><para><programlisting> #: apt_preferences.5.xml:633 @@ -6473,8 +6472,8 @@ msgid "" "<placeholder type=\"programlisting\" id=\"0\"/>" msgstr "" "Mit einer geeigneten &sources-list;-Datei und der obigen Einstellungsdatei " -"wird jeder der folgenden Befehle APT veranlassen, ein Upgrade auf die letzte" -"(n) Version(en) im Release mit Codenamen <literal>&testing-codename;</" +"wird jeder der folgenden Befehle APT veranlassen, ein Upgrade auf die " +"letzte(n) Version(en) im Release mit Codenamen <literal>&testing-codename;</" "literal> durchzuführen. <placeholder type=\"programlisting\" id=\"0\"/>" #. type: Content of: <refentry><refsect1><refsect2><para><programlisting> @@ -6642,13 +6641,13 @@ msgstr "" #. type: Content of: <refentry><refsect1><para> #: sources.list.5.xml:92 msgid "" -"<literal>distribution</literal> may also contain a variable, <literal>$(ARCH)" -"</literal> which expands to the Debian architecture (such as <literal>amd64</" -"literal> or <literal>armel</literal>) used on the system. This permits " -"architecture-independent <filename>sources.list</filename> files to be used. " -"In general this is only of interest when specifying an exact path, " -"<literal>APT</literal> will automatically generate a URI with the current " -"architecture otherwise." +"<literal>distribution</literal> may also contain a variable, <literal>" +"$(ARCH)</literal> which expands to the Debian architecture (such as " +"<literal>amd64</literal> or <literal>armel</literal>) used on the system. " +"This permits architecture-independent <filename>sources.list</filename> " +"files to be used. In general this is only of interest when specifying an " +"exact path, <literal>APT</literal> will automatically generate a URI with " +"the current architecture otherwise." msgstr "" "<literal>distribution</literal> könnte außerdem eine Variable, <literal>" "$(ARCH)</literal>, enthalten, die zur Debian-Architektur (wie " @@ -8167,9 +8166,9 @@ msgstr "BESCHREIBUNG" #: apt.8:31 msgid "" "APT is a management system for software packages. For normal day to day " -"package management there are several frontends available, such as B<aptitude>" -"(8) for the command line or B<synaptic>(8) for the X Window System. Some " -"options are only implemented in B<apt-get>(8) though." +"package management there are several frontends available, such as " +"B<aptitude>(8) for the command line or B<synaptic>(8) for the X Window " +"System. Some options are only implemented in B<apt-get>(8) though." msgstr "" "APT ist ein Verwaltungssystem für Softwarepakete. Für normale alltägliche " "Paketverwaltung sind mehrere Oberflächen, wie B<aptitude>(8) für die " @@ -8754,9 +8753,9 @@ msgstr "" "Bevor sie beginnen, <prgn>dselect</prgn> zu benutzen, ist es notwendig, die " "Verfügbarkeitsliste zu aktualisieren, indem sie aus dem Menü [E]rneuern " "auswählen. Dies ist eine Obermenge von <tt>apt-get update</tt>, das " -"<prgn>dselect</prgn> heruntergeladene Informationen zur Verfügung stellt. [E]" -"rneuern muss auch dann durchgeführt werden, wenn vorher <tt>apt-get update</" -"tt> ausgeführt wurde." +"<prgn>dselect</prgn> heruntergeladene Informationen zur Verfügung stellt. " +"[E]rneuern muss auch dann durchgeführt werden, wenn vorher <tt>apt-get " +"update</tt> ausgeführt wurde." #. type: <p></p> #: guide.sgml:253 diff --git a/doc/po/es.po b/doc/po/es.po index ade98d9cb..38b2645ea 100644 --- a/doc/po/es.po +++ b/doc/po/es.po @@ -38,7 +38,7 @@ msgid "" msgstr "" "Project-Id-Version: apt 0.9.7.1\n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2013-04-02 15:13+0300\n" +"POT-Creation-Date: 2013-06-13 13:46+0300\n" "PO-Revision-Date: 2012-07-14 12:21+0200\n" "Last-Translator: Omar Campagne <ocampagne@gmail.com>\n" "Language-Team: Debian l10n Spanish <debian-l10n-spanish@lists.debian.org>\n" @@ -848,9 +848,9 @@ msgid "" "installation or upgrading. Each package is a package name, not a fully " "qualified filename (for instance, in a Debian system, <package>apt-utils</" "package> would be the argument provided, not <filename>apt-utils_&apt-" -"product-version;_amd64.deb</filename>). All packages required by the package" -"(s) specified for installation will also be retrieved and installed. The " -"<filename>/etc/apt/sources.list</filename> file is used to locate the " +"product-version;_amd64.deb</filename>). All packages required by the " +"package(s) specified for installation will also be retrieved and installed. " +"The <filename>/etc/apt/sources.list</filename> file is used to locate the " "desired packages. If a hyphen is appended to the package name (with no " "intervening space), the identified package will be removed if it is " "installed. Similarly a plus sign can be used to designate a package to " @@ -1619,14 +1619,14 @@ msgstr "" #. type: Content of: <refentry><refsect1><title> #: apt-get.8.xml:518 apt-cache.8.xml:343 apt-key.8.xml:174 apt-mark.8.xml:125 -#: apt.conf.5.xml:1168 apt_preferences.5.xml:698 +#: apt.conf.5.xml:1167 apt_preferences.5.xml:698 msgid "Files" msgstr "Ficheros" #. type: Content of: <refentry><refsect1><title> #: apt-get.8.xml:528 apt-cache.8.xml:350 apt-key.8.xml:195 apt-mark.8.xml:131 #: apt-secure.8.xml:191 apt-cdrom.8.xml:144 apt-config.8.xml:109 -#: apt.conf.5.xml:1174 apt_preferences.5.xml:705 sources.list.5.xml:252 +#: apt.conf.5.xml:1173 apt_preferences.5.xml:705 sources.list.5.xml:252 #: apt-extracttemplates.1.xml:70 apt-sortpkgs.1.xml:63 #: apt-ftparchive.1.xml:607 msgid "See Also" @@ -3319,15 +3319,14 @@ msgstr "DPkg::Pre-Install-Pkgs {\"/usr/sbin/dpkg-preconfigure --apt\";};\n" #. type: Content of: <refentry><refsect1><para> #: apt.conf.5.xml:101 msgid "" -"In general the sample configuration file in <filename>&docdir;examples/apt." -"conf</filename> &configureindex; is a good guide for how it should look." +"In general the sample configuration file &configureindex; is a good guide " +"for how it should look." msgstr "" -"En general, el fichero de configuración de ejemplo <filename>&docdir;" -"examples/apt.conf</filename> &configureindex; es una buena guía para " -"entender su aspecto." +"En general, el fichero de configuración de ejemplo &configureindex; es una " +"buena guía para entender su aspecto." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:105 +#: apt.conf.5.xml:104 msgid "" "Case is not significant in names of configuration items, so in the previous " "example you could use <literal>dpkg::pre-install-pkgs</literal>." @@ -3337,7 +3336,7 @@ msgstr "" "<literal>dpkg::pre-install-pkgs</literal>." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:108 +#: apt.conf.5.xml:107 msgid "" "Names for the configuration items are optional if a list is defined as can " "be seen in the <literal>DPkg::Pre-Install-Pkgs</literal> example above. If " @@ -3352,7 +3351,7 @@ msgstr "" "cualquier otra opción reasignando un nuevo valor a la opción." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:113 +#: apt.conf.5.xml:112 msgid "" "Two special commands are defined: <literal>#include</literal> (which is " "deprecated and not supported by alternative implementations) and " @@ -3372,7 +3371,7 @@ msgstr "" "acabar con punto y coma)." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:123 +#: apt.conf.5.xml:122 msgid "" "The <literal>#clear</literal> command is the only way to delete a list or a " "complete scope. Reopening a scope (or using the syntax described below with " @@ -3388,7 +3387,7 @@ msgstr "" "los ámbitos no se pueden redefinir, sólo eliminar." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:131 +#: apt.conf.5.xml:130 msgid "" "All of the APT tools take an -o option which allows an arbitrary " "configuration directive to be specified on the command line. The syntax is a " @@ -3407,7 +3406,7 @@ msgstr "" "sintaxis de ámbitos en la línea de órdenes)." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:139 +#: apt.conf.5.xml:138 msgid "" "Note that appending items to a list using <literal>::</literal> only works " "for one item per line, and that you should not use it in combination with " @@ -3437,12 +3436,12 @@ msgstr "" "declaraciones ahora que APT no muestra fallos de forma explícita." #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:154 +#: apt.conf.5.xml:153 msgid "The APT Group" msgstr "El grupo APT" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:155 +#: apt.conf.5.xml:154 msgid "" "This group of options controls general APT behavior as well as holding the " "options for all of the tools." @@ -3451,7 +3450,7 @@ msgstr "" "mantiene las opciones para todas las herramientas." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:160 +#: apt.conf.5.xml:159 msgid "" "System Architecture; sets the architecture to use when fetching files and " "parsing package lists. The internal default is the architecture apt was " @@ -3462,7 +3461,7 @@ msgstr "" "arquitectura para la que apt se compiló." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:167 +#: apt.conf.5.xml:166 msgid "" "All Architectures the system supports. For instance, CPUs implementing the " "<literal>amd64</literal> (also called <literal>x86-64</literal>) " @@ -3484,7 +3483,7 @@ msgstr "" "add-architecture</command>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:180 +#: apt.conf.5.xml:179 msgid "" "Default release to install packages from if more than one version is " "available. Contains release name, codename or release version. Examples: " @@ -3498,7 +3497,7 @@ msgstr "" "«5.0*». Consulte también &apt-preferences;." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:186 +#: apt.conf.5.xml:185 msgid "" "Ignore held packages; this global option causes the problem resolver to " "ignore held packages in its decision making." @@ -3507,7 +3506,7 @@ msgstr "" "problemas ignore los paquetes retenidos en la toma de decisiones." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:191 +#: apt.conf.5.xml:190 msgid "" "Defaults to on. When turned on the autoclean feature will remove any " "packages which can no longer be downloaded from the cache. If turned off " @@ -3521,7 +3520,7 @@ msgstr "" "mecanismo directo para reinstalarlos." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:199 +#: apt.conf.5.xml:198 msgid "" "Defaults to on, which will cause APT to install essential and important " "packages as soon as possible in an install/upgrade operation, in order to " @@ -3548,7 +3547,7 @@ msgstr "" "del paquete A, ya que no se satisface la dependencia sobre éste." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:211 +#: apt.conf.5.xml:210 msgid "" "The immediate configuration marker is also applied in the potentially " "problematic case of circular dependencies, since a dependency with the " @@ -3577,7 +3576,7 @@ msgstr "" "anteriormente." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:224 +#: apt.conf.5.xml:223 msgid "" "Before a big operation like <literal>dist-upgrade</literal> is run with this " "option disabled you should try to explicitly <literal>install</literal> the " @@ -3594,7 +3593,7 @@ msgstr "" "para que así pueden mejorar y corregir el proceso de actualización." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:235 +#: apt.conf.5.xml:234 msgid "" "Never enable this option unless you <emphasis>really</emphasis> know what " "you are doing. It permits APT to temporarily remove an essential package to " @@ -3615,7 +3614,7 @@ msgstr "" "sobre la que estos paquetes dependen." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:247 +#: apt.conf.5.xml:246 msgid "" "APT uses since version 0.7.26 a resizable memory mapped cache file to store " "the available information. <literal>Cache-Start</literal> acts as a hint of " @@ -3652,14 +3651,14 @@ msgstr "" "desactiva el crecimiento automático de la caché." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:263 +#: apt.conf.5.xml:262 msgid "Defines which packages are considered essential build dependencies." msgstr "" "Define los paquetes que se consideran dependencias de construcción " "esenciales." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:267 +#: apt.conf.5.xml:266 msgid "" "The Get subsection controls the &apt-get; tool; please see its documentation " "for more information about the options here." @@ -3668,7 +3667,7 @@ msgstr "" "documentación para más información sobre esta opción." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:272 +#: apt.conf.5.xml:271 msgid "" "The Cache subsection controls the &apt-cache; tool; please see its " "documentation for more information about the options here." @@ -3677,7 +3676,7 @@ msgstr "" "documentación para más información sobre esta opción." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:277 +#: apt.conf.5.xml:276 msgid "" "The CDROM subsection controls the &apt-cdrom; tool; please see its " "documentation for more information about the options here." @@ -3686,12 +3685,12 @@ msgstr "" "documentación para más información sobre esta opción." #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:283 +#: apt.conf.5.xml:282 msgid "The Acquire Group" msgstr "El grupo Acquire" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:284 +#: apt.conf.5.xml:283 msgid "" "The <literal>Acquire</literal> group of options controls the download of " "packages as well as the various \"acquire methods\" responsible for the " @@ -3702,7 +3701,7 @@ msgstr "" "sí mismo (consulte también &sources-list;)." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:291 +#: apt.conf.5.xml:290 msgid "" "Security related option defaulting to true, as giving a Release file's " "validation an expiration date prevents replay attacks over a long timescale, " @@ -3723,7 +3722,7 @@ msgstr "" "utilizar la opción <literal>Max-ValidTime</literal> a continuación." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:304 +#: apt.conf.5.xml:303 msgid "" "Maximum time (in seconds) after its creation (as indicated by the " "<literal>Date</literal> header) that the <filename>Release</filename> file " @@ -3742,7 +3741,7 @@ msgstr "" "se pueden realizar añadiendo la etiqueta del archivo al nombre de opción." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:316 +#: apt.conf.5.xml:315 msgid "" "Minimum time (in seconds) after its creation (as indicated by the " "<literal>Date</literal> header) that the <filename>Release</filename> file " @@ -3762,7 +3761,7 @@ msgstr "" "y deben utilizar añadiendo la etiqueta del archivo al nombre de opción." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:328 +#: apt.conf.5.xml:327 msgid "" "Try to download deltas called <literal>PDiffs</literal> for indexes (like " "<filename>Packages</filename> files) instead of downloading whole ones. True " @@ -3773,7 +3772,7 @@ msgstr "" "enteros. Su valor predeterminado es «true»." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:331 +#: apt.conf.5.xml:330 msgid "" "Two sub-options to limit the use of PDiffs are also available: " "<literal>FileLimit</literal> can be used to specify a maximum number of " @@ -3791,7 +3790,7 @@ msgstr "" "parches." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:341 +#: apt.conf.5.xml:340 msgid "" "Queuing mode; <literal>Queue-Mode</literal> can be one of <literal>host</" "literal> or <literal>access</literal> which determines how APT parallelizes " @@ -3806,7 +3805,7 @@ msgstr "" "se abrirá una conexión por cada tipo de URI." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:349 +#: apt.conf.5.xml:348 msgid "" "Number of retries to perform. If this is non-zero APT will retry failed " "files the given number of times." @@ -3815,7 +3814,7 @@ msgstr "" "intentar obtener los ficheros fallidos el número de veces proporcionado." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:354 +#: apt.conf.5.xml:353 msgid "" "Use symlinks for source archives. If set to true then source archives will " "be symlinked when possible instead of copying. True is the default." @@ -3825,7 +3824,7 @@ msgstr "" "«true» de forma predeterminada." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:359 +#: apt.conf.5.xml:358 msgid "" "<literal>http::Proxy</literal> sets the default proxy to use for HTTP URIs. " "It is in the standard form of <literal>http://[[user][:pass]@]host[:port]/</" @@ -3845,7 +3844,7 @@ msgstr "" "opciones anteriores." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:367 +#: apt.conf.5.xml:366 msgid "" "Three settings are provided for cache control with HTTP/1.1 compliant proxy " "caches. <literal>No-Cache</literal> tells the proxy not to use its cached " @@ -3864,7 +3863,7 @@ msgstr "" "impedir que el proxy contamine la caché con ficheros «.deb» (de gran tamaño)." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:377 apt.conf.5.xml:449 +#: apt.conf.5.xml:376 apt.conf.5.xml:448 msgid "" "The option <literal>timeout</literal> sets the timeout timer used by the " "method; this value applies to the connection as well as the data timeout." @@ -3874,7 +3873,7 @@ msgstr "" "y a la recepción de datos." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:380 +#: apt.conf.5.xml:379 msgid "" "The setting <literal>Acquire::http::Pipeline-Depth</literal> can be used to " "enable HTTP pipelining (RFC 2616 section 8.1.2.2) which can be beneficial e." @@ -3894,7 +3893,7 @@ msgstr "" "cumplir la especificación HTTP/1.1." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:387 +#: apt.conf.5.xml:386 msgid "" "<literal>Acquire::http::AllowRedirect</literal> controls whether APT will " "follow redirects, which is enabled by default." @@ -3903,7 +3902,7 @@ msgstr "" "redirección; activado por omisión." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:390 +#: apt.conf.5.xml:389 msgid "" "The used bandwidth can be limited with <literal>Acquire::http::Dl-Limit</" "literal> which accepts integer values in kilobytes. The default value is 0 " @@ -3918,7 +3917,7 @@ msgstr "" "implícitamente la descarga simultánea desde varios servidores)." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:395 +#: apt.conf.5.xml:394 msgid "" "<literal>Acquire::http::User-Agent</literal> can be used to set a different " "User-Agent for the http download method as some proxies allow access for " @@ -3929,7 +3928,7 @@ msgstr "" "permiten el acceso para clientes que usan un identificador conocido." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:403 +#: apt.conf.5.xml:402 msgid "" "The <literal>Cache-control</literal>, <literal>Timeout</literal>, " "<literal>AllowRedirect</literal>, <literal>Dl-Limit</literal> and " @@ -3946,7 +3945,7 @@ msgstr "" "<literal>Pipeline-Depth</literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:411 +#: apt.conf.5.xml:410 msgid "" "<literal>CaInfo</literal> suboption specifies place of file that holds info " "about trusted certificates. <literal><host>::CaInfo</literal> is the " @@ -3986,7 +3985,7 @@ msgstr "" "SslForceVersion</literal> es la opción correspondiente para cada servidor." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:432 +#: apt.conf.5.xml:431 msgid "" "<literal>ftp::Proxy</literal> sets the default proxy to use for FTP URIs. " "It is in the standard form of <literal>ftp://[[user][:pass]@]host[:port]/</" @@ -4019,7 +4018,7 @@ msgstr "" "<literal>$(SITE)</literal> y <literal>$(SITE_PORT)</literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:452 +#: apt.conf.5.xml:451 msgid "" "Several settings are provided to control passive mode. Generally it is safe " "to leave passive mode on; it works in nearly every environment. However, " @@ -4036,7 +4035,7 @@ msgstr "" "ejemplos)." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:459 +#: apt.conf.5.xml:458 msgid "" "It is possible to proxy FTP over HTTP by setting the <envar>ftp_proxy</" "envar> environment variable to an HTTP URL - see the discussion of the http " @@ -4050,7 +4049,7 @@ msgstr "" "a su poca eficiencia." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:464 +#: apt.conf.5.xml:463 msgid "" "The setting <literal>ForceExtended</literal> controls the use of RFC2428 " "<literal>EPSV</literal> and <literal>EPRT</literal> commands. The default is " @@ -4066,13 +4065,13 @@ msgstr "" "compatibles con la RFC 2428." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><literallayout> -#: apt.conf.5.xml:478 +#: apt.conf.5.xml:477 #, no-wrap msgid "/cdrom/::Mount \"foo\";" msgstr "/cdrom/::Mount \"algo\";" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:473 +#: apt.conf.5.xml:472 msgid "" "For URIs using the <literal>cdrom</literal> method, the only configurable " "option is the mount point, <literal>cdrom::Mount</literal>, which must be " @@ -4094,7 +4093,7 @@ msgstr "" "especificar órdenes para desmontar mediante UMount." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:486 +#: apt.conf.5.xml:485 msgid "" "For GPGV URIs the only configurable option is <literal>gpgv::Options</" "literal>, which passes additional parameters to gpgv." @@ -4103,13 +4102,13 @@ msgstr "" "Options</literal>, que introduce parámetros adicionales a gpgv." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><synopsis> -#: apt.conf.5.xml:497 +#: apt.conf.5.xml:496 #, no-wrap msgid "Acquire::CompressionTypes::<replaceable>FileExtension</replaceable> \"<replaceable>Methodname</replaceable>\";" msgstr "Acquire::CompressionTypes::<replaceable>extensión-del-fichero</replaceable> \"<replaceable>nombre-del-método</replaceable>\";" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:492 +#: apt.conf.5.xml:491 msgid "" "List of compression types which are understood by the acquire methods. " "Files like <filename>Packages</filename> can be available in various " @@ -4129,19 +4128,19 @@ msgstr "" "\"0\"/>" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><synopsis> -#: apt.conf.5.xml:502 +#: apt.conf.5.xml:501 #, no-wrap msgid "Acquire::CompressionTypes::Order:: \"gz\";" msgstr "Acquire::CompressionTypes::Order:: \"gz\";" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><synopsis> -#: apt.conf.5.xml:505 +#: apt.conf.5.xml:504 #, no-wrap msgid "Acquire::CompressionTypes::Order { \"lzma\"; \"gz\"; };" msgstr "Acquire::CompressionTypes::Order { \"lzma\"; \"gz\"; };" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:498 +#: apt.conf.5.xml:497 msgid "" "Also, the <literal>Order</literal> subgroup can be used to define in which " "order the acquire system will try to download the compressed files. The " @@ -4173,13 +4172,13 @@ msgstr "" "explícita ya que se añadirá de forma automática." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><literallayout> -#: apt.conf.5.xml:512 +#: apt.conf.5.xml:511 #, no-wrap msgid "Dir::Bin::bzip2 \"/bin/bzip2\";" msgstr "Dir::Bin::bzip2 \"/bin/bzip2\";" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:507 +#: apt.conf.5.xml:506 msgid "" "Note that the <literal>Dir::Bin::<replaceable>Methodname</replaceable></" "literal> will be checked at run time. If this option has been set, the " @@ -4204,7 +4203,7 @@ msgstr "" "omite la lista definida, simplemente prefija la lista con este tipo." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:517 +#: apt.conf.5.xml:516 msgid "" "The special type <literal>uncompressed</literal> can be used to give " "uncompressed files a preference, but note that most archives don't provide " @@ -4216,7 +4215,7 @@ msgstr "" "así que habitualmente esto solo sirve con réplicas locales." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:524 +#: apt.conf.5.xml:523 msgid "" "When downloading <literal>gzip</literal> compressed indexes (Packages, " "Sources, or Translations), keep them gzip compressed locally instead of " @@ -4230,7 +4229,7 @@ msgstr "" "paquetes locales. El valor predeterminado es «false»." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:532 +#: apt.conf.5.xml:531 msgid "" "The Languages subsection controls which <filename>Translation</filename> " "files are downloaded and in which order APT tries to display the description-" @@ -4249,13 +4248,13 @@ msgstr "" "idioma (especialmente para los códigos de idioma largos)." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><programlisting> -#: apt.conf.5.xml:549 +#: apt.conf.5.xml:548 #, no-wrap msgid "Acquire::Languages { \"environment\"; \"de\"; \"en\"; \"none\"; \"fr\"; };" msgstr "Acquire::Languages { \"environment\"; \"de\"; \"en\"; \"none\"; \"fr\"; }" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:537 +#: apt.conf.5.xml:536 msgid "" "The default list includes \"environment\" and \"en\". " "\"<literal>environment</literal>\" has a special meaning here: it will be " @@ -4294,7 +4293,7 @@ msgstr "" "\"programlisting\" id=\"0\"/>" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:550 +#: apt.conf.5.xml:549 msgid "" "Note: To prevent problems resulting from APT being executed in different " "environments (e.g. by different users or by other programs) all Translation " @@ -4308,22 +4307,22 @@ msgstr "" "implícito)." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:559 +#: apt.conf.5.xml:558 msgid "When downloading, force to use only the IPv4 protocol." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:565 +#: apt.conf.5.xml:564 msgid "When downloading, force to use only the IPv6 protocol." msgstr "" #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:572 +#: apt.conf.5.xml:571 msgid "Directories" msgstr "Directorios" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:574 +#: apt.conf.5.xml:573 msgid "" "The <literal>Dir::State</literal> section has directories that pertain to " "local state information. <literal>lists</literal> is the directory to place " @@ -4344,7 +4343,7 @@ msgstr "" "filename> ó <filename>./</filename>." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:581 +#: apt.conf.5.xml:580 msgid "" "<literal>Dir::Cache</literal> contains locations pertaining to local cache " "information, such as the two package caches <literal>srcpkgcache</literal> " @@ -4366,7 +4365,7 @@ msgstr "" "directorio predeterminado está en <literal>Dir::Cache</literal>" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:590 +#: apt.conf.5.xml:589 msgid "" "<literal>Dir::Etc</literal> contains the location of configuration files, " "<literal>sourcelist</literal> gives the location of the sourcelist and " @@ -4382,7 +4381,7 @@ msgstr "" "<envar>APT_CONFIG</envar>)." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:596 +#: apt.conf.5.xml:595 msgid "" "The <literal>Dir::Parts</literal> setting reads in all the config fragments " "in lexical order from the directory specified. After this is done then the " @@ -4393,7 +4392,7 @@ msgstr "" "Al finalizar este proceso carga el fichero de configuración principal." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:600 +#: apt.conf.5.xml:599 msgid "" "Binary programs are pointed to by <literal>Dir::Bin</literal>. <literal>Dir::" "Bin::Methods</literal> specifies the location of the method handlers and " @@ -4410,7 +4409,7 @@ msgstr "" "literal> especifican la ubicación de sus respectivos programas." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:608 +#: apt.conf.5.xml:607 msgid "" "The configuration item <literal>RootDir</literal> has a special meaning. If " "set, all paths in <literal>Dir::</literal> will be relative to " @@ -4431,7 +4430,7 @@ msgstr "" "staging/var/lib/dpkg/status</filename>." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:621 +#: apt.conf.5.xml:620 msgid "" "The <literal>Ignore-Files-Silently</literal> list can be used to specify " "which files APT should silently ignore while parsing the files in the " @@ -4449,12 +4448,12 @@ msgstr "" "de expresiones regulares." #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:630 +#: apt.conf.5.xml:629 msgid "APT in DSelect" msgstr "APT con DSelect" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:632 +#: apt.conf.5.xml:631 msgid "" "When APT is used as a &dselect; method several configuration directives " "control the default behavior. These are in the <literal>DSelect</literal> " @@ -4465,7 +4464,7 @@ msgstr "" "encuentran en la sección <literal>DSelect</literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:637 +#: apt.conf.5.xml:636 msgid "" "Cache Clean mode; this value may be one of <literal>always</literal>, " "<literal>prompt</literal>, <literal>auto</literal>, <literal>pre-auto</" @@ -4487,7 +4486,7 @@ msgstr "" "realiza esta acción antes de descargar paquetes nuevos." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:651 +#: apt.conf.5.xml:650 msgid "" "The contents of this variable are passed to &apt-get; as command line " "options when it is run for the install phase." @@ -4496,7 +4495,7 @@ msgstr "" "la línea de ordenes al ejecutar la fase de instalación." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:656 +#: apt.conf.5.xml:655 msgid "" "The contents of this variable are passed to &apt-get; as command line " "options when it is run for the update phase." @@ -4505,7 +4504,7 @@ msgstr "" "la línea de ordenes al ejecutar la fase de actualización." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:661 +#: apt.conf.5.xml:660 msgid "" "If true the [U]pdate operation in &dselect; will always prompt to continue. " "The default is to prompt only on error." @@ -4515,12 +4514,12 @@ msgstr "" "preguntará en caso de error." #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:667 +#: apt.conf.5.xml:666 msgid "How APT calls &dpkg;" msgstr "Invocación de APT a dpkg" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:668 +#: apt.conf.5.xml:667 msgid "" "Several configuration directives control how APT invokes &dpkg;. These are " "in the <literal>DPkg</literal> section." @@ -4529,7 +4528,7 @@ msgstr "" "se encuentran en la sección <literal>DPkg</literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:673 +#: apt.conf.5.xml:672 msgid "" "This is a list of options to pass to &dpkg;. The options must be specified " "using the list notation and each list item is passed as a single argument to " @@ -4540,7 +4539,7 @@ msgstr "" "introduce a &dpkg; como un sólo argumento." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:679 +#: apt.conf.5.xml:678 msgid "" "This is a list of shell commands to run before/after invoking &dpkg;. Like " "<literal>options</literal> this must be specified in list notation. The " @@ -4553,7 +4552,7 @@ msgstr "" "sh</filename>; en caso de fallo, APT cancela la acción." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:686 +#: apt.conf.5.xml:685 msgid "" "This is a list of shell commands to run before invoking &dpkg;. Like " "<literal>options</literal> this must be specified in list notation. The " @@ -4569,7 +4568,7 @@ msgstr "" "la entrada estándar." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:692 +#: apt.conf.5.xml:691 msgid "" "Version 2 of this protocol dumps more information, including the protocol " "version, the APT configuration space and the packages, files and versions " @@ -4585,7 +4584,7 @@ msgstr "" "literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:700 +#: apt.conf.5.xml:699 msgid "" "APT chdirs to this directory before invoking &dpkg;, the default is " "<filename>/</filename>." @@ -4594,7 +4593,7 @@ msgstr "" "predeterminado es <filename>/</filename>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:705 +#: apt.conf.5.xml:704 msgid "" "These options are passed to &dpkg-buildpackage; when compiling packages; the " "default is to disable signing and produce all binaries." @@ -4604,12 +4603,12 @@ msgstr "" "paquetes y a producir todos los binarios." #. type: Content of: <refentry><refsect1><refsect2><title> -#: apt.conf.5.xml:710 +#: apt.conf.5.xml:709 msgid "dpkg trigger usage (and related options)" msgstr "Uso del disparador de dpkg (y de las opciones relacionadas)" #. type: Content of: <refentry><refsect1><refsect2><para> -#: apt.conf.5.xml:711 +#: apt.conf.5.xml:710 msgid "" "APT can call &dpkg; in such a way as to let it make aggressive use of " "triggers over multiple calls of &dpkg;. Without further options &dpkg; will " @@ -4636,7 +4635,7 @@ msgstr "" "tiempo (o más) durante la configuración de todos los paquetes." #. type: Content of: <refentry><refsect1><refsect2><para><literallayout> -#: apt.conf.5.xml:726 +#: apt.conf.5.xml:725 #, no-wrap msgid "" "DPkg::NoTriggers \"true\";\n" @@ -4650,7 +4649,7 @@ msgstr "" "DPkg::TriggersPending \"true\";" #. type: Content of: <refentry><refsect1><refsect2><para> -#: apt.conf.5.xml:720 +#: apt.conf.5.xml:719 msgid "" "Note that it is not guaranteed that APT will support these options or that " "these options will not cause (big) trouble in the future. If you have " @@ -4674,7 +4673,7 @@ msgstr "" "type=\"literallayout\" id=\"0\"/>" #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:733 +#: apt.conf.5.xml:732 msgid "" "Add the no triggers flag to all &dpkg; calls (except the ConfigurePending " "call). See &dpkg; if you are interested in what this actually means. In " @@ -4697,7 +4696,7 @@ msgstr "" "eliminación." #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:741 +#: apt.conf.5.xml:740 msgid "" "Valid values are \"<literal>all</literal>\", \"<literal>smart</literal>\" " "and \"<literal>no</literal>\". The default value is \"<literal>all</literal>" @@ -4727,7 +4726,7 @@ msgstr "" "imposibilidad de arrancar el sistema. " #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:756 +#: apt.conf.5.xml:755 msgid "" "If this option is set APT will call <command>dpkg --configure --pending</" "command> to let &dpkg; handle all required configurations and triggers. This " @@ -4745,7 +4744,7 @@ msgstr "" "desactivar esta opción en todas las ejecuciones menos la última." #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:763 +#: apt.conf.5.xml:762 msgid "" "Useful for the <literal>smart</literal> configuration as a package which has " "pending triggers is not considered as <literal>installed</literal>, and " @@ -4761,7 +4760,7 @@ msgstr "" "los disparadores necesarios para configurar este paquete." #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para><literallayout> -#: apt.conf.5.xml:776 +#: apt.conf.5.xml:775 #, no-wrap msgid "" "OrderList::Score {\n" @@ -4779,7 +4778,7 @@ msgstr "" "};" #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:769 +#: apt.conf.5.xml:768 msgid "" "Essential packages (and their dependencies) should be configured immediately " "after unpacking. It is a good idea to do this quite early in the upgrade " @@ -4804,12 +4803,12 @@ msgstr "" "<placeholder type=\"literallayout\" id=\"0\"/>" #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:789 +#: apt.conf.5.xml:788 msgid "Periodic and Archives options" msgstr "Las opciones «Periodic» y «Archives»" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:790 +#: apt.conf.5.xml:789 msgid "" "<literal>APT::Periodic</literal> and <literal>APT::Archives</literal> groups " "of options configure behavior of apt periodic updates, which is done by the " @@ -4823,12 +4822,12 @@ msgstr "" "documentación de estas opciones." #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:798 +#: apt.conf.5.xml:797 msgid "Debug options" msgstr "Opciones de depuración" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:800 +#: apt.conf.5.xml:799 msgid "" "Enabling options in the <literal>Debug::</literal> section will cause " "debugging information to be sent to the standard error stream of the program " @@ -4845,7 +4844,7 @@ msgstr "" "para un usuario normal, aunque unas cuantas sí son:" #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para> -#: apt.conf.5.xml:811 +#: apt.conf.5.xml:810 msgid "" "<literal>Debug::pkgProblemResolver</literal> enables output about the " "decisions made by <literal>dist-upgrade, upgrade, install, remove, purge</" @@ -4856,7 +4855,7 @@ msgstr "" "purge</literal>." #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para> -#: apt.conf.5.xml:819 +#: apt.conf.5.xml:818 msgid "" "<literal>Debug::NoLocking</literal> disables all file locking. This can be " "used to run some operations (for instance, <literal>apt-get -s install</" @@ -4867,7 +4866,7 @@ msgstr "" "<literal>apt-get -s install</literal>) como un usuario normal." #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para> -#: apt.conf.5.xml:828 +#: apt.conf.5.xml:827 msgid "" "<literal>Debug::pkgDPkgPM</literal> prints out the actual command line each " "time that <literal>apt</literal> invokes &dpkg;." @@ -4879,7 +4878,7 @@ msgstr "" #. motivating example, except I haven't a clue why you'd want #. to do this. #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para> -#: apt.conf.5.xml:836 +#: apt.conf.5.xml:835 msgid "" "<literal>Debug::IdentCdrom</literal> disables the inclusion of statfs data " "in CD-ROM IDs." @@ -4888,14 +4887,14 @@ msgstr "" "statfs en los identificadores de los discos ópticos." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:846 +#: apt.conf.5.xml:845 msgid "A full list of debugging options to apt follows." msgstr "" "A continuación, se muestra la lista completa de las opciones de depuración " "de apt." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:855 +#: apt.conf.5.xml:854 msgid "" "Print information related to accessing <literal>cdrom://</literal> sources." msgstr "" @@ -4903,26 +4902,26 @@ msgstr "" "<literal>cdrom://</literal>" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:866 +#: apt.conf.5.xml:865 msgid "Print information related to downloading packages using FTP." msgstr "" "Muestra la información relacionada con la descarga de paquetes mediante FTP." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:877 +#: apt.conf.5.xml:876 msgid "Print information related to downloading packages using HTTP." msgstr "" "Muestra la información relacionada con la descarga de paquetes mediante HTTP." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:888 +#: apt.conf.5.xml:887 msgid "Print information related to downloading packages using HTTPS." msgstr "" "Muestra la información relacionada con la descarga de paquetes mediante " "HTTPS." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:899 +#: apt.conf.5.xml:898 msgid "" "Print information related to verifying cryptographic signatures using " "<literal>gpg</literal>." @@ -4931,7 +4930,7 @@ msgstr "" "criptográficas mediante <literal>gpg</literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:910 +#: apt.conf.5.xml:909 msgid "" "Output information about the process of accessing collections of packages " "stored on CD-ROMs." @@ -4940,14 +4939,14 @@ msgstr "" "paquetes almacenadas en CD-ROM." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:920 +#: apt.conf.5.xml:919 msgid "Describes the process of resolving build-dependencies in &apt-get;." msgstr "" "Describe el proceso de resolución de dependencias de compilación en &apt-" "get;." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:930 +#: apt.conf.5.xml:929 msgid "" "Output each cryptographic hash that is generated by the <literal>apt</" "literal> libraries." @@ -4956,7 +4955,7 @@ msgstr "" "<literal>apt</literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:940 +#: apt.conf.5.xml:939 msgid "" "Do not include information from <literal>statfs</literal>, namely the number " "of used and free blocks on the CD-ROM filesystem, when generating an ID for " @@ -4967,7 +4966,7 @@ msgstr "" "identificador de un CD-ROM." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:951 +#: apt.conf.5.xml:950 msgid "" "Disable all file locking. For instance, this will allow two instances of " "<quote><literal>apt-get update</literal></quote> to run at the same time." @@ -4977,14 +4976,14 @@ msgstr "" "a la vez." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:963 +#: apt.conf.5.xml:962 msgid "Log when items are added to or removed from the global download queue." msgstr "" "Registra los elementos que se añaden o se borran de la cola de descarga " "global." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:973 +#: apt.conf.5.xml:972 msgid "" "Output status messages and errors related to verifying checksums and " "cryptographic signatures of downloaded files." @@ -4994,7 +4993,7 @@ msgstr "" "ficheros descargados." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:983 +#: apt.conf.5.xml:982 msgid "" "Output information about downloading and applying package index list diffs, " "and errors relating to package index list diffs." @@ -5003,7 +5002,7 @@ msgstr "" "lista de índices de paquetes, y los errores relacionados con éstos." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:995 +#: apt.conf.5.xml:994 msgid "" "Output information related to patching apt package lists when downloading " "index diffs instead of full indices." @@ -5013,7 +5012,7 @@ msgstr "" "índices completos." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1006 +#: apt.conf.5.xml:1005 msgid "" "Log all interactions with the sub-processes that actually perform downloads." msgstr "" @@ -5021,7 +5020,7 @@ msgstr "" "descargas." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1017 +#: apt.conf.5.xml:1016 msgid "" "Log events related to the automatically-installed status of packages and to " "the removal of unused packages." @@ -5030,7 +5029,7 @@ msgstr "" "de los paquetes y con la eliminación de los paquetes sin usar." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1027 +#: apt.conf.5.xml:1026 msgid "" "Generate debug messages describing which packages are being automatically " "installed to resolve dependencies. This corresponds to the initial auto-" @@ -5046,7 +5045,7 @@ msgstr "" "literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1041 +#: apt.conf.5.xml:1040 msgid "" "Generate debug messages describing which packages are marked as keep/install/" "remove while the ProblemResolver does his work. Each addition or deletion " @@ -5077,7 +5076,7 @@ msgstr "" "la sección en la que aparece el paquete." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1062 +#: apt.conf.5.xml:1061 msgid "" "When invoking &dpkg;, output the precise command line with which it is being " "invoked, with arguments separated by a single space character." @@ -5086,7 +5085,7 @@ msgstr "" "invocó, con los argumentos separados por un espacio." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1073 +#: apt.conf.5.xml:1072 msgid "" "Output all the data received from &dpkg; on the status file descriptor and " "any errors encountered while parsing it." @@ -5095,7 +5094,7 @@ msgstr "" "estado y cualquier error encontrado durante el análisis." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1084 +#: apt.conf.5.xml:1083 msgid "" "Generate a trace of the algorithm that decides the order in which " "<literal>apt</literal> should pass packages to &dpkg;." @@ -5104,7 +5103,7 @@ msgstr "" "literal> debería entregar los paquetes a &dpkg;." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1096 +#: apt.conf.5.xml:1095 msgid "" "Output status messages tracing the steps performed when invoking &dpkg;." msgstr "" @@ -5112,12 +5111,12 @@ msgstr "" "&dpkg;." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1107 +#: apt.conf.5.xml:1106 msgid "Output the priority of each package list on startup." msgstr "Muestra la prioridad de cada lista de paquetes al iniciarse." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1117 +#: apt.conf.5.xml:1116 msgid "" "Trace the execution of the dependency resolver (this applies only to what " "happens when a complex dependency problem is encountered)." @@ -5126,7 +5125,7 @@ msgstr "" "lo que ocurre cuando se encuentra un problema de dependencias complejo)." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1128 +#: apt.conf.5.xml:1127 msgid "" "Display a list of all installed packages with their calculated score used by " "the pkgProblemResolver. The description of the package is the same as " @@ -5137,7 +5136,7 @@ msgstr "" "misma que la descrita en <literal>Debug::pkgDepCache::Marker</literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1140 +#: apt.conf.5.xml:1139 msgid "" "Print information about the vendors read from <filename>/etc/apt/vendors." "list</filename>." @@ -5146,13 +5145,13 @@ msgstr "" "vendors.list</filename>." #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:1162 apt_preferences.5.xml:545 sources.list.5.xml:211 +#: apt.conf.5.xml:1161 apt_preferences.5.xml:545 sources.list.5.xml:211 #: apt-ftparchive.1.xml:596 msgid "Examples" msgstr "Ejemplos" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:1163 +#: apt.conf.5.xml:1162 msgid "" "&configureindex; is a configuration file showing example values for all " "possible options." @@ -5162,7 +5161,7 @@ msgstr "" #. ? reading apt.conf #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:1175 +#: apt.conf.5.xml:1174 msgid "&apt-cache;, &apt-config;, &apt-preferences;." msgstr "&apt-cache;, &apt-config;, &apt-preferences;." @@ -6665,18 +6664,18 @@ msgstr "" #. type: Content of: <refentry><refsect1><para> #: sources.list.5.xml:92 msgid "" -"<literal>distribution</literal> may also contain a variable, <literal>$(ARCH)" -"</literal> which expands to the Debian architecture (such as <literal>amd64</" -"literal> or <literal>armel</literal>) used on the system. This permits " -"architecture-independent <filename>sources.list</filename> files to be used. " -"In general this is only of interest when specifying an exact path, " -"<literal>APT</literal> will automatically generate a URI with the current " -"architecture otherwise." -msgstr "" -"<literal>distribución</literal> puede contener una variable, <literal>$(ARCH)" -"</literal>, que se expandirá a la arquitectura de Debian usada en el sistema " -"(por ejemplo, <literal>amd64</literal> o <literal>armel</literal>). Esto " -"permite que los ficheros <filename>sources.list</filename> sean " +"<literal>distribution</literal> may also contain a variable, <literal>" +"$(ARCH)</literal> which expands to the Debian architecture (such as " +"<literal>amd64</literal> or <literal>armel</literal>) used on the system. " +"This permits architecture-independent <filename>sources.list</filename> " +"files to be used. In general this is only of interest when specifying an " +"exact path, <literal>APT</literal> will automatically generate a URI with " +"the current architecture otherwise." +msgstr "" +"<literal>distribución</literal> puede contener una variable, <literal>" +"$(ARCH)</literal>, que se expandirá a la arquitectura de Debian usada en el " +"sistema (por ejemplo, <literal>amd64</literal> o <literal>armel</literal>). " +"Esto permite que los ficheros <filename>sources.list</filename> sean " "independientes de la arquitectura. En general, esta característica sólo es " "de interés si se especifica una ruta completa, de lo contrario <literal>APT</" "literal> generará automáticamente una URI con la arquitectura actual del " @@ -8180,9 +8179,9 @@ msgstr "DESCRIPCIÓN" #: apt.8:31 msgid "" "APT is a management system for software packages. For normal day to day " -"package management there are several frontends available, such as B<aptitude>" -"(8) for the command line or B<synaptic>(8) for the X Window System. Some " -"options are only implemented in B<apt-get>(8) though." +"package management there are several frontends available, such as " +"B<aptitude>(8) for the command line or B<synaptic>(8) for the X Window " +"System. Some options are only implemented in B<apt-get>(8) though." msgstr "" "APT es un sistema de gestión de paquetes de software. Dispone de varias " "interfaces para la gestión de paquetes normal del día a día, tales como " @@ -8752,9 +8751,9 @@ msgid "" "<prgn>dselect</prgn>. [U]pdate must be performed even if <tt>apt-get update</" "tt> has been run before." msgstr "" -"Es necesario actualizar la lista disponible mediante el elemento de menú [A]" -"ctualizar antes de iniciar <prgn>dselect</prgn>. Éste es un superconjunto de " -"<tt>apt-get update</tt> que permite a <prgn>dselect</prgn> disponer de la " +"Es necesario actualizar la lista disponible mediante el elemento de menú " +"[A]ctualizar antes de iniciar <prgn>dselect</prgn>. Éste es un superconjunto " +"de <tt>apt-get update</tt> que permite a <prgn>dselect</prgn> disponer de la " "información obtenida. Debe ejecutar [A]ctualizar aunque haya ejecutado " "<tt>apt-get update</tt> con anterioridad." diff --git a/doc/po/fr.po b/doc/po/fr.po index 54f666372..c2f4b6d83 100644 --- a/doc/po/fr.po +++ b/doc/po/fr.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2013-05-08 18:12+0300\n" +"POT-Creation-Date: 2013-06-13 13:46+0300\n" "PO-Revision-Date: 2013-04-09 07:56+0200\n" "Last-Translator: Christian Perrier <bubulle@debian.org>\n" "Language-Team: French <debian-l10n-french@lists.debian.org>\n" @@ -760,9 +760,9 @@ msgid "" "installation or upgrading. Each package is a package name, not a fully " "qualified filename (for instance, in a Debian system, <package>apt-utils</" "package> would be the argument provided, not <filename>apt-utils_&apt-" -"product-version;_amd64.deb</filename>). All packages required by the package" -"(s) specified for installation will also be retrieved and installed. The " -"<filename>/etc/apt/sources.list</filename> file is used to locate the " +"product-version;_amd64.deb</filename>). All packages required by the " +"package(s) specified for installation will also be retrieved and installed. " +"The <filename>/etc/apt/sources.list</filename> file is used to locate the " "desired packages. If a hyphen is appended to the package name (with no " "intervening space), the identified package will be removed if it is " "installed. Similarly a plus sign can be used to designate a package to " @@ -824,10 +824,10 @@ msgstr "" "déjà installés sans mettre à jour les autres paquets du système. À la " "différence de la commande « upgrade » qui installera la dernière version " "disponible de tous les paquets installés au moment de son exécution, " -"« install » n'installera la nouvelle version que pour le(s) paquet(s) indiqué" -"(s). Il suffit de fournir le nom du(des) paquet(s) à mettre à jour et si une " -"nouvelle version est disponible, cette version (et ses dépendances, comme " -"décrit plus haut) sera récupérée et installée." +"« install » n'installera la nouvelle version que pour le(s) paquet(s) " +"indiqué(s). Il suffit de fournir le nom du(des) paquet(s) à mettre à jour et " +"si une nouvelle version est disponible, cette version (et ses dépendances, " +"comme décrit plus haut) sera récupérée et installée." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-get.8.xml:137 @@ -1538,14 +1538,14 @@ msgstr "" #. type: Content of: <refentry><refsect1><title> #: apt-get.8.xml:518 apt-cache.8.xml:343 apt-key.8.xml:174 apt-mark.8.xml:125 -#: apt.conf.5.xml:1168 apt_preferences.5.xml:698 +#: apt.conf.5.xml:1167 apt_preferences.5.xml:698 msgid "Files" msgstr "Fichiers" #. type: Content of: <refentry><refsect1><title> #: apt-get.8.xml:528 apt-cache.8.xml:350 apt-key.8.xml:195 apt-mark.8.xml:131 #: apt-secure.8.xml:191 apt-cdrom.8.xml:144 apt-config.8.xml:109 -#: apt.conf.5.xml:1174 apt_preferences.5.xml:705 sources.list.5.xml:252 +#: apt.conf.5.xml:1173 apt_preferences.5.xml:705 sources.list.5.xml:252 #: apt-extracttemplates.1.xml:70 apt-sortpkgs.1.xml:63 #: apt-ftparchive.1.xml:607 msgid "See Also" @@ -3248,15 +3248,14 @@ msgstr "DPkg::Pre-Install-Pkgs {\"/usr/sbin/dpkg-preconfigure --apt\";};\n" #. type: Content of: <refentry><refsect1><para> #: apt.conf.5.xml:101 msgid "" -"In general the sample configuration file in <filename>&docdir;examples/apt." -"conf</filename> &configureindex; is a good guide for how it should look." +"In general the sample configuration file &configureindex; is a good guide " +"for how it should look." msgstr "" -"Les modèles <filename>&docdir;examples/apt.conf</filename> et " -"&configureindex; montrent à quoi devrait ressembler le fichier de " -"configuration." +"Les modèles &configureindex; montrent à quoi devrait ressembler le fichier " +"de configuration." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:105 +#: apt.conf.5.xml:104 msgid "" "Case is not significant in names of configuration items, so in the previous " "example you could use <literal>dpkg::pre-install-pkgs</literal>." @@ -3266,7 +3265,7 @@ msgstr "" "<literal>dpkg::pre-install-pkgs</literal>." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:108 +#: apt.conf.5.xml:107 msgid "" "Names for the configuration items are optional if a list is defined as can " "be seen in the <literal>DPkg::Pre-Install-Pkgs</literal> example above. If " @@ -3282,7 +3281,7 @@ msgstr "" "réaffectant une valeur." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:113 +#: apt.conf.5.xml:112 msgid "" "Two special commands are defined: <literal>#include</literal> (which is " "deprecated and not supported by alternative implementations) and " @@ -3302,7 +3301,7 @@ msgstr "" "également se terminer avec un point-virgule." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:123 +#: apt.conf.5.xml:122 msgid "" "The <literal>#clear</literal> command is the only way to delete a list or a " "complete scope. Reopening a scope (or using the syntax described below with " @@ -3318,7 +3317,7 @@ msgstr "" "peuvent être remplacés mais seulement effacés." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:131 +#: apt.conf.5.xml:130 msgid "" "All of the APT tools take an -o option which allows an arbitrary " "configuration directive to be specified on the command line. The syntax is a " @@ -3337,7 +3336,7 @@ msgstr "" "champ d'action (« scope ») ne peut pas être indiquée à la ligne de commande." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:139 +#: apt.conf.5.xml:138 msgid "" "Note that appending items to a list using <literal>::</literal> only works " "for one item per line, and that you should not use it in combination with " @@ -3369,12 +3368,12 @@ msgstr "" "explicitement." #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:154 +#: apt.conf.5.xml:153 msgid "The APT Group" msgstr "Le groupe APT" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:155 +#: apt.conf.5.xml:154 msgid "" "This group of options controls general APT behavior as well as holding the " "options for all of the tools." @@ -3383,7 +3382,7 @@ msgstr "" "également des options communes à tous les outils." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:160 +#: apt.conf.5.xml:159 msgid "" "System Architecture; sets the architecture to use when fetching files and " "parsing package lists. The internal default is the architecture apt was " @@ -3394,7 +3393,7 @@ msgstr "" "valeur interne par défaut est l'architecture pour laquelle APT a été compilé." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:167 +#: apt.conf.5.xml:166 msgid "" "All Architectures the system supports. For instance, CPUs implementing the " "<literal>amd64</literal> (also called <literal>x86-64</literal>) " @@ -3416,7 +3415,7 @@ msgstr "" "sont enregistrées avec <command>dpkg --add-architecture</command>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:180 +#: apt.conf.5.xml:179 msgid "" "Default release to install packages from if more than one version is " "available. Contains release name, codename or release version. Examples: " @@ -3430,7 +3429,7 @@ msgstr "" "&apt-preferences;." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:186 +#: apt.conf.5.xml:185 msgid "" "Ignore held packages; this global option causes the problem resolver to " "ignore held packages in its decision making." @@ -3440,7 +3439,7 @@ msgstr "" "décision." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:191 +#: apt.conf.5.xml:190 msgid "" "Defaults to on. When turned on the autoclean feature will remove any " "packages which can no longer be downloaded from the cache. If turned off " @@ -3454,7 +3453,7 @@ msgstr "" "direct pour les réinstaller." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:199 +#: apt.conf.5.xml:198 msgid "" "Defaults to on, which will cause APT to install essential and important " "packages as soon as possible in an install/upgrade operation, in order to " @@ -3481,7 +3480,7 @@ msgstr "" "dépendances ne sont pas satisfaites." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:211 +#: apt.conf.5.xml:210 msgid "" "The immediate configuration marker is also applied in the potentially " "problematic case of circular dependencies, since a dependency with the " @@ -3510,7 +3509,7 @@ msgstr "" "le seul qu'elle permet d'éviter." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:224 +#: apt.conf.5.xml:223 msgid "" "Before a big operation like <literal>dist-upgrade</literal> is run with this " "option disabled you should try to explicitly <literal>install</literal> the " @@ -3528,7 +3527,7 @@ msgstr "" "corriger les processus de mise à jour." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:235 +#: apt.conf.5.xml:234 msgid "" "Never enable this option unless you <emphasis>really</emphasis> know what " "you are doing. It permits APT to temporarily remove an essential package to " @@ -3550,7 +3549,7 @@ msgstr "" "tous les paquets dont ces paquets dépendent." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:247 +#: apt.conf.5.xml:246 msgid "" "APT uses since version 0.7.26 a resizable memory mapped cache file to store " "the available information. <literal>Cache-Start</literal> acts as a hint of " @@ -3590,14 +3589,14 @@ msgstr "" "l'augmentation automatique de la taille du cache est désactivée." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:263 +#: apt.conf.5.xml:262 msgid "Defines which packages are considered essential build dependencies." msgstr "" "Cette option définit les paquets qui sont considérés comme faisant partie " "des dépendances essentielles pour la construction de paquets." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:267 +#: apt.conf.5.xml:266 msgid "" "The Get subsection controls the &apt-get; tool; please see its documentation " "for more information about the options here." @@ -3607,7 +3606,7 @@ msgstr "" "question." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:272 +#: apt.conf.5.xml:271 msgid "" "The Cache subsection controls the &apt-cache; tool; please see its " "documentation for more information about the options here." @@ -3617,7 +3616,7 @@ msgstr "" "options en question." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:277 +#: apt.conf.5.xml:276 msgid "" "The CDROM subsection controls the &apt-cdrom; tool; please see its " "documentation for more information about the options here." @@ -3627,12 +3626,12 @@ msgstr "" "options en question." #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:283 +#: apt.conf.5.xml:282 msgid "The Acquire Group" msgstr "Le groupe Acquire" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:284 +#: apt.conf.5.xml:283 msgid "" "The <literal>Acquire</literal> group of options controls the download of " "packages as well as the various \"acquire methods\" responsible for the " @@ -3643,7 +3642,7 @@ msgstr "" "effectuent ce téléchargement (voir aussi &sources-list;)." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:291 +#: apt.conf.5.xml:290 msgid "" "Security related option defaulting to true, as giving a Release file's " "validation an expiration date prevents replay attacks over a long timescale, " @@ -3664,7 +3663,7 @@ msgstr "" "alors utilisée." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:304 +#: apt.conf.5.xml:303 msgid "" "Maximum time (in seconds) after its creation (as indicated by the " "<literal>Date</literal> header) that the <filename>Release</filename> file " @@ -3683,7 +3682,7 @@ msgstr "" "l'option." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:316 +#: apt.conf.5.xml:315 msgid "" "Minimum time (in seconds) after its creation (as indicated by the " "<literal>Date</literal> header) that the <filename>Release</filename> file " @@ -3703,7 +3702,7 @@ msgstr "" "nom de l'option." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:328 +#: apt.conf.5.xml:327 msgid "" "Try to download deltas called <literal>PDiffs</literal> for indexes (like " "<filename>Packages</filename> files) instead of downloading whole ones. True " @@ -3714,7 +3713,7 @@ msgstr "" "filename>), plutôt que de les télécharger entièrement. Par défaut à « true »." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:331 +#: apt.conf.5.xml:330 msgid "" "Two sub-options to limit the use of PDiffs are also available: " "<literal>FileLimit</literal> can be used to specify a maximum number of " @@ -3733,7 +3732,7 @@ msgstr "" "fichiers de différences." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:341 +#: apt.conf.5.xml:340 msgid "" "Queuing mode; <literal>Queue-Mode</literal> can be one of <literal>host</" "literal> or <literal>access</literal> which determines how APT parallelizes " @@ -3749,7 +3748,7 @@ msgstr "" "initiée." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:349 +#: apt.conf.5.xml:348 msgid "" "Number of retries to perform. If this is non-zero APT will retry failed " "files the given number of times." @@ -3759,7 +3758,7 @@ msgstr "" "échoué." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:354 +#: apt.conf.5.xml:353 msgid "" "Use symlinks for source archives. If set to true then source archives will " "be symlinked when possible instead of copying. True is the default." @@ -3769,7 +3768,7 @@ msgstr "" "archives de sources au lieu de les copier. Par défaut à « true »." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:359 +#: apt.conf.5.xml:358 msgid "" "<literal>http::Proxy</literal> sets the default proxy to use for HTTP URIs. " "It is in the standard form of <literal>http://[[user][:pass]@]host[:port]/</" @@ -3790,7 +3789,7 @@ msgstr "" "options de mandataire HTTP." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:367 +#: apt.conf.5.xml:366 msgid "" "Three settings are provided for cache control with HTTP/1.1 compliant proxy " "caches. <literal>No-Cache</literal> tells the proxy not to use its cached " @@ -3810,7 +3809,7 @@ msgstr "" "fichiers .deb très grands." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:377 apt.conf.5.xml:449 +#: apt.conf.5.xml:376 apt.conf.5.xml:448 msgid "" "The option <literal>timeout</literal> sets the timeout timer used by the " "method; this value applies to the connection as well as the data timeout." @@ -3820,7 +3819,7 @@ msgstr "" "connexion qu'aux données." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:380 +#: apt.conf.5.xml:379 msgid "" "The setting <literal>Acquire::http::Pipeline-Depth</literal> can be used to " "enable HTTP pipelining (RFC 2616 section 8.1.2.2) which can be beneficial e." @@ -3840,7 +3839,7 @@ msgstr "" "qui ne respectent pas la norme HTTP/1.1." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:387 +#: apt.conf.5.xml:386 msgid "" "<literal>Acquire::http::AllowRedirect</literal> controls whether APT will " "follow redirects, which is enabled by default." @@ -3849,7 +3848,7 @@ msgstr "" "suive les redirections. Ce réglage est activé par défaut." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:390 +#: apt.conf.5.xml:389 msgid "" "The used bandwidth can be limited with <literal>Acquire::http::Dl-Limit</" "literal> which accepts integer values in kilobytes. The default value is 0 " @@ -3864,7 +3863,7 @@ msgstr "" "implicitement le téléchargement simultané depuis plusieurs serveurs." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:395 +#: apt.conf.5.xml:394 msgid "" "<literal>Acquire::http::User-Agent</literal> can be used to set a different " "User-Agent for the http download method as some proxies allow access for " @@ -3876,7 +3875,7 @@ msgstr "" "n'autorisent l'accès qu'aux client s'identifiant de manière spécifique.." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:403 +#: apt.conf.5.xml:402 msgid "" "The <literal>Cache-control</literal>, <literal>Timeout</literal>, " "<literal>AllowRedirect</literal>, <literal>Dl-Limit</literal> and " @@ -3893,7 +3892,7 @@ msgstr "" "literal> n'est pas encore gérée." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:411 +#: apt.conf.5.xml:410 msgid "" "<literal>CaInfo</literal> suboption specifies place of file that holds info " "about trusted certificates. <literal><host>::CaInfo</literal> is the " @@ -3926,7 +3925,7 @@ msgstr "" "<literal>TLSv1</literal> ou <literal>SSLv3</literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:432 +#: apt.conf.5.xml:431 msgid "" "<literal>ftp::Proxy</literal> sets the default proxy to use for FTP URIs. " "It is in the standard form of <literal>ftp://[[user][:pass]@]host[:port]/</" @@ -3962,7 +3961,7 @@ msgstr "" "literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:452 +#: apt.conf.5.xml:451 msgid "" "Several settings are provided to control passive mode. Generally it is safe " "to leave passive mode on; it works in nearly every environment. However, " @@ -3979,7 +3978,7 @@ msgstr "" "modèle de fichier de configuration)." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:459 +#: apt.conf.5.xml:458 msgid "" "It is possible to proxy FTP over HTTP by setting the <envar>ftp_proxy</" "envar> environment variable to an HTTP URL - see the discussion of the http " @@ -3994,7 +3993,7 @@ msgstr "" "efficacité de cette méthode." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:464 +#: apt.conf.5.xml:463 msgid "" "The setting <literal>ForceExtended</literal> controls the use of RFC2428 " "<literal>EPSV</literal> and <literal>EPRT</literal> commands. The default is " @@ -4010,13 +4009,13 @@ msgstr "" "des serveurs FTP ne suivent pas la RFC 2428." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><literallayout> -#: apt.conf.5.xml:478 +#: apt.conf.5.xml:477 #, no-wrap msgid "/cdrom/::Mount \"foo\";" msgstr "/cdrom/::Mount \"foo\";" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:473 +#: apt.conf.5.xml:472 msgid "" "For URIs using the <literal>cdrom</literal> method, the only configurable " "option is the mount point, <literal>cdrom::Mount</literal>, which must be " @@ -4039,7 +4038,7 @@ msgstr "" "<literal>UMount</literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:486 +#: apt.conf.5.xml:485 msgid "" "For GPGV URIs the only configurable option is <literal>gpgv::Options</" "literal>, which passes additional parameters to gpgv." @@ -4048,13 +4047,13 @@ msgstr "" "permet de passer des paramètres à gpgv" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><synopsis> -#: apt.conf.5.xml:497 +#: apt.conf.5.xml:496 #, no-wrap msgid "Acquire::CompressionTypes::<replaceable>FileExtension</replaceable> \"<replaceable>Methodname</replaceable>\";" msgstr "Acquire::CompressionTypes::<replaceable>ExtensionFichier</replaceable> \"<replaceable>NomMethode</replaceable>\";" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:492 +#: apt.conf.5.xml:491 msgid "" "List of compression types which are understood by the acquire methods. " "Files like <filename>Packages</filename> can be available in various " @@ -4074,19 +4073,19 @@ msgstr "" "type=\"synopsis\" id=\"0\"/>" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><synopsis> -#: apt.conf.5.xml:502 +#: apt.conf.5.xml:501 #, no-wrap msgid "Acquire::CompressionTypes::Order:: \"gz\";" msgstr "Acquire::CompressionTypes::Order:: \"gz\";" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><synopsis> -#: apt.conf.5.xml:505 +#: apt.conf.5.xml:504 #, no-wrap msgid "Acquire::CompressionTypes::Order { \"lzma\"; \"gz\"; };" msgstr "Acquire::CompressionTypes::Order { \"lzma\"; \"gz\"; };" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:498 +#: apt.conf.5.xml:497 msgid "" "Also, the <literal>Order</literal> subgroup can be used to define in which " "order the acquire system will try to download the compressed files. The " @@ -4118,13 +4117,13 @@ msgstr "" "<literal>bz2</literal> à liste car il sera ajouté automatiquement." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><literallayout> -#: apt.conf.5.xml:512 +#: apt.conf.5.xml:511 #, no-wrap msgid "Dir::Bin::bzip2 \"/bin/bzip2\";" msgstr "Dir::Bin::bzip2 \"/bin/bzip2\";" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:507 +#: apt.conf.5.xml:506 msgid "" "Note that the <literal>Dir::Bin::<replaceable>Methodname</replaceable></" "literal> will be checked at run time. If this option has been set, the " @@ -4151,7 +4150,7 @@ msgstr "" "question." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:517 +#: apt.conf.5.xml:516 msgid "" "The special type <literal>uncompressed</literal> can be used to give " "uncompressed files a preference, but note that most archives don't provide " @@ -4163,7 +4162,7 @@ msgstr "" "surtout destiné aux miroirs locaux." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:524 +#: apt.conf.5.xml:523 msgid "" "When downloading <literal>gzip</literal> compressed indexes (Packages, " "Sources, or Translations), keep them gzip compressed locally instead of " @@ -4178,7 +4177,7 @@ msgstr "" "(« False »)." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:532 +#: apt.conf.5.xml:531 msgid "" "The Languages subsection controls which <filename>Translation</filename> " "files are downloaded and in which order APT tries to display the description-" @@ -4198,13 +4197,13 @@ msgstr "" "langues étant particulièrement rares." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><programlisting> -#: apt.conf.5.xml:549 +#: apt.conf.5.xml:548 #, no-wrap msgid "Acquire::Languages { \"environment\"; \"de\"; \"en\"; \"none\"; \"fr\"; };" msgstr "Acquire::Languages { \"environment\"; \"fr\"; \"en\"; \"none\"; \"de\"; };" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:537 +#: apt.conf.5.xml:536 msgid "" "The default list includes \"environment\" and \"en\". " "\"<literal>environment</literal>\" has a special meaning here: it will be " @@ -4244,7 +4243,7 @@ msgstr "" "alors « de, fr, en ». <placeholder type=\"programlisting\" id=\"0\"/>" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:550 +#: apt.conf.5.xml:549 msgid "" "Note: To prevent problems resulting from APT being executed in different " "environments (e.g. by different users or by other programs) all Translation " @@ -4258,22 +4257,22 @@ msgstr "" "(après un « <literal>none</literal> » implicite)." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:559 +#: apt.conf.5.xml:558 msgid "When downloading, force to use only the IPv4 protocol." msgstr "Utilisation imposée du protocole IPv4 lors des téléchargements." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:565 +#: apt.conf.5.xml:564 msgid "When downloading, force to use only the IPv6 protocol." msgstr "Utilisation imposée du protocole IPv6 lors des téléchargements." #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:572 +#: apt.conf.5.xml:571 msgid "Directories" msgstr "Les répertoires" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:574 +#: apt.conf.5.xml:573 msgid "" "The <literal>Dir::State</literal> section has directories that pertain to " "local state information. <literal>lists</literal> is the directory to place " @@ -4293,7 +4292,7 @@ msgstr "" "<filename>./</filename>." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:581 +#: apt.conf.5.xml:580 msgid "" "<literal>Dir::Cache</literal> contains locations pertaining to local cache " "information, such as the two package caches <literal>srcpkgcache</literal> " @@ -4316,7 +4315,7 @@ msgstr "" "Cache</literal>." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:590 +#: apt.conf.5.xml:589 msgid "" "<literal>Dir::Etc</literal> contains the location of configuration files, " "<literal>sourcelist</literal> gives the location of the sourcelist and " @@ -4331,7 +4330,7 @@ msgstr "" "fichier de configuration indiqué par la variable <envar>APT_CONFIG</envar>)." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:596 +#: apt.conf.5.xml:595 msgid "" "The <literal>Dir::Parts</literal> setting reads in all the config fragments " "in lexical order from the directory specified. After this is done then the " @@ -4342,7 +4341,7 @@ msgstr "" "configuration est chargé." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:600 +#: apt.conf.5.xml:599 msgid "" "Binary programs are pointed to by <literal>Dir::Bin</literal>. <literal>Dir::" "Bin::Methods</literal> specifies the location of the method handlers and " @@ -4360,7 +4359,7 @@ msgstr "" "programmes correspondants." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:608 +#: apt.conf.5.xml:607 msgid "" "The configuration item <literal>RootDir</literal> has a special meaning. If " "set, all paths in <literal>Dir::</literal> will be relative to " @@ -4382,7 +4381,7 @@ msgstr "" "staging/var/lib/dpkg/status</filename>." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:621 +#: apt.conf.5.xml:620 msgid "" "The <literal>Ignore-Files-Silently</literal> list can be used to specify " "which files APT should silently ignore while parsing the files in the " @@ -4400,12 +4399,12 @@ msgstr "" "est possible d'utiliser la syntaxe des expressions rationnelles." #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:630 +#: apt.conf.5.xml:629 msgid "APT in DSelect" msgstr "APT et DSelect" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:632 +#: apt.conf.5.xml:631 msgid "" "When APT is used as a &dselect; method several configuration directives " "control the default behavior. These are in the <literal>DSelect</literal> " @@ -4416,7 +4415,7 @@ msgstr "" "<literal>DSelect</literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:637 +#: apt.conf.5.xml:636 msgid "" "Cache Clean mode; this value may be one of <literal>always</literal>, " "<literal>prompt</literal>, <literal>auto</literal>, <literal>pre-auto</" @@ -4439,7 +4438,7 @@ msgstr "" "avant de récupérer de nouveaux paquets." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:651 +#: apt.conf.5.xml:650 msgid "" "The contents of this variable are passed to &apt-get; as command line " "options when it is run for the install phase." @@ -4448,7 +4447,7 @@ msgstr "" "&apt-get; lors de la phase d'installation." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:656 +#: apt.conf.5.xml:655 msgid "" "The contents of this variable are passed to &apt-get; as command line " "options when it is run for the update phase." @@ -4457,7 +4456,7 @@ msgstr "" "&apt-get; lors de la phase de mise à jour." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:661 +#: apt.conf.5.xml:660 msgid "" "If true the [U]pdate operation in &dselect; will always prompt to continue. " "The default is to prompt only on error." @@ -4467,12 +4466,12 @@ msgstr "" "d'erreur que l'on propose à l'utilisateur d'intervenir." #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:667 +#: apt.conf.5.xml:666 msgid "How APT calls &dpkg;" msgstr "Méthode d'appel de &dpkg; par APT" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:668 +#: apt.conf.5.xml:667 msgid "" "Several configuration directives control how APT invokes &dpkg;. These are " "in the <literal>DPkg</literal> section." @@ -4481,7 +4480,7 @@ msgstr "" "&dpkg; : elles figurent dans la section <literal>DPkg</literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:673 +#: apt.conf.5.xml:672 msgid "" "This is a list of options to pass to &dpkg;. The options must be specified " "using the list notation and each list item is passed as a single argument to " @@ -4492,7 +4491,7 @@ msgstr "" "est passé comme un seul paramètre à &dpkg;." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:679 +#: apt.conf.5.xml:678 msgid "" "This is a list of shell commands to run before/after invoking &dpkg;. Like " "<literal>options</literal> this must be specified in list notation. The " @@ -4505,7 +4504,7 @@ msgstr "" "<filename>/bin/sh</filename> : APT s'arrête dès que l'une d'elles échoue." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:686 +#: apt.conf.5.xml:685 msgid "" "This is a list of shell commands to run before invoking &dpkg;. Like " "<literal>options</literal> this must be specified in list notation. The " @@ -4521,7 +4520,7 @@ msgstr "" "qu'il va installer, à raison d'un par ligne." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:692 +#: apt.conf.5.xml:691 msgid "" "Version 2 of this protocol dumps more information, including the protocol " "version, the APT configuration space and the packages, files and versions " @@ -4537,7 +4536,7 @@ msgstr "" "literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:700 +#: apt.conf.5.xml:699 msgid "" "APT chdirs to this directory before invoking &dpkg;, the default is " "<filename>/</filename>." @@ -4546,7 +4545,7 @@ msgstr "" "le répertoire <filename>/</filename>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:705 +#: apt.conf.5.xml:704 msgid "" "These options are passed to &dpkg-buildpackage; when compiling packages; the " "default is to disable signing and produce all binaries." @@ -4556,14 +4555,14 @@ msgstr "" "créés." #. type: Content of: <refentry><refsect1><refsect2><title> -#: apt.conf.5.xml:710 +#: apt.conf.5.xml:709 msgid "dpkg trigger usage (and related options)" msgstr "" "utilisation des actions différées (« triggers ») de dpkg (et options " "associées)" #. type: Content of: <refentry><refsect1><refsect2><para> -#: apt.conf.5.xml:711 +#: apt.conf.5.xml:710 msgid "" "APT can call &dpkg; in such a way as to let it make aggressive use of " "triggers over multiple calls of &dpkg;. Without further options &dpkg; will " @@ -4590,7 +4589,7 @@ msgstr "" "pendant la configuration des paquets." #. type: Content of: <refentry><refsect1><refsect2><para><literallayout> -#: apt.conf.5.xml:726 +#: apt.conf.5.xml:725 #, no-wrap msgid "" "DPkg::NoTriggers \"true\";\n" @@ -4604,7 +4603,7 @@ msgstr "" "DPkg::TriggersPending \"true\";" #. type: Content of: <refentry><refsect1><refsect2><para> -#: apt.conf.5.xml:720 +#: apt.conf.5.xml:719 msgid "" "Note that it is not guaranteed that APT will support these options or that " "these options will not cause (big) trouble in the future. If you have " @@ -4628,7 +4627,7 @@ msgstr "" "<placeholder type=\"literallayout\" id=\"0\"/>." #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:733 +#: apt.conf.5.xml:732 msgid "" "Add the no triggers flag to all &dpkg; calls (except the ConfigurePending " "call). See &dpkg; if you are interested in what this actually means. In " @@ -4651,7 +4650,7 @@ msgstr "" "options « unpack » et « remove »." #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:741 +#: apt.conf.5.xml:740 msgid "" "Valid values are \"<literal>all</literal>\", \"<literal>smart</literal>\" " "and \"<literal>no</literal>\". The default value is \"<literal>all</literal>" @@ -4681,7 +4680,7 @@ msgstr "" "configuré et donc éventuellement non amorçable." #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:756 +#: apt.conf.5.xml:755 msgid "" "If this option is set APT will call <command>dpkg --configure --pending</" "command> to let &dpkg; handle all required configurations and triggers. This " @@ -4700,7 +4699,7 @@ msgstr "" "peut conserver l'option active." #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:763 +#: apt.conf.5.xml:762 msgid "" "Useful for the <literal>smart</literal> configuration as a package which has " "pending triggers is not considered as <literal>installed</literal>, and " @@ -4718,7 +4717,7 @@ msgstr "" "celles concernant le paquet en cours de traitement." #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para><literallayout> -#: apt.conf.5.xml:776 +#: apt.conf.5.xml:775 #, no-wrap msgid "" "OrderList::Score {\n" @@ -4736,7 +4735,7 @@ msgstr "" "};" #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:769 +#: apt.conf.5.xml:768 msgid "" "Essential packages (and their dependencies) should be configured immediately " "after unpacking. It is a good idea to do this quite early in the upgrade " @@ -4762,12 +4761,12 @@ msgstr "" "id=\"0\"/>" #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:789 +#: apt.conf.5.xml:788 msgid "Periodic and Archives options" msgstr "Options « Periodic » et « Archive »" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:790 +#: apt.conf.5.xml:789 msgid "" "<literal>APT::Periodic</literal> and <literal>APT::Archives</literal> groups " "of options configure behavior of apt periodic updates, which is done by the " @@ -4779,12 +4778,12 @@ msgstr "" "script <literal>/etc/cron.daily/apt</literal>, lancé quotidiennement." #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:798 +#: apt.conf.5.xml:797 msgid "Debug options" msgstr "Les options de débogage" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:800 +#: apt.conf.5.xml:799 msgid "" "Enabling options in the <literal>Debug::</literal> section will cause " "debugging information to be sent to the standard error stream of the program " @@ -4802,7 +4801,7 @@ msgstr "" "peuvent tout de même être utiles :" #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para> -#: apt.conf.5.xml:811 +#: apt.conf.5.xml:810 msgid "" "<literal>Debug::pkgProblemResolver</literal> enables output about the " "decisions made by <literal>dist-upgrade, upgrade, install, remove, purge</" @@ -4813,7 +4812,7 @@ msgstr "" "upgrade, upgrade, install, remove et purge</literal>." #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para> -#: apt.conf.5.xml:819 +#: apt.conf.5.xml:818 msgid "" "<literal>Debug::NoLocking</literal> disables all file locking. This can be " "used to run some operations (for instance, <literal>apt-get -s install</" @@ -4825,7 +4824,7 @@ msgstr "" "superutilisateur." #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para> -#: apt.conf.5.xml:828 +#: apt.conf.5.xml:827 msgid "" "<literal>Debug::pkgDPkgPM</literal> prints out the actual command line each " "time that <literal>apt</literal> invokes &dpkg;." @@ -4837,7 +4836,7 @@ msgstr "" #. motivating example, except I haven't a clue why you'd want #. to do this. #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para> -#: apt.conf.5.xml:836 +#: apt.conf.5.xml:835 msgid "" "<literal>Debug::IdentCdrom</literal> disables the inclusion of statfs data " "in CD-ROM IDs." @@ -4846,12 +4845,12 @@ msgstr "" "type statfs dans les identifiants de CD." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:846 +#: apt.conf.5.xml:845 msgid "A full list of debugging options to apt follows." msgstr "Liste complète des options de débogage de APT :" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:855 +#: apt.conf.5.xml:854 msgid "" "Print information related to accessing <literal>cdrom://</literal> sources." msgstr "" @@ -4859,24 +4858,24 @@ msgstr "" "literal>" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:866 +#: apt.conf.5.xml:865 msgid "Print information related to downloading packages using FTP." msgstr "" "Affiche les informations concernant le téléchargement de paquets par FTP." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:877 +#: apt.conf.5.xml:876 msgid "Print information related to downloading packages using HTTP." msgstr "" "Affiche les informations concernant le téléchargement de paquets par HTTP." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:888 +#: apt.conf.5.xml:887 msgid "Print information related to downloading packages using HTTPS." msgstr "Print information related to downloading packages using HTTPS." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:899 +#: apt.conf.5.xml:898 msgid "" "Print information related to verifying cryptographic signatures using " "<literal>gpg</literal>." @@ -4885,7 +4884,7 @@ msgstr "" "cryptographiques avec <literal>gpg</literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:910 +#: apt.conf.5.xml:909 msgid "" "Output information about the process of accessing collections of packages " "stored on CD-ROMs." @@ -4894,14 +4893,14 @@ msgstr "" "stockées sur CD." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:920 +#: apt.conf.5.xml:919 msgid "Describes the process of resolving build-dependencies in &apt-get;." msgstr "" "Décrit le processus de résolution des dépendances pour la construction de " "paquets source ( « build-dependencies » ) par &apt-get;." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:930 +#: apt.conf.5.xml:929 msgid "" "Output each cryptographic hash that is generated by the <literal>apt</" "literal> libraries." @@ -4910,7 +4909,7 @@ msgstr "" "librairies d'<literal>apt</literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:940 +#: apt.conf.5.xml:939 msgid "" "Do not include information from <literal>statfs</literal>, namely the number " "of used and free blocks on the CD-ROM filesystem, when generating an ID for " @@ -4921,7 +4920,7 @@ msgstr "" "utilisés sur le système de fichier du CD." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:951 +#: apt.conf.5.xml:950 msgid "" "Disable all file locking. For instance, this will allow two instances of " "<quote><literal>apt-get update</literal></quote> to run at the same time." @@ -4931,14 +4930,14 @@ msgstr "" "temps." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:963 +#: apt.conf.5.xml:962 msgid "Log when items are added to or removed from the global download queue." msgstr "" "Trace les ajouts et suppressions d'éléments de la queue globale de " "téléchargement." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:973 +#: apt.conf.5.xml:972 msgid "" "Output status messages and errors related to verifying checksums and " "cryptographic signatures of downloaded files." @@ -4948,7 +4947,7 @@ msgstr "" "éventuelles." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:983 +#: apt.conf.5.xml:982 msgid "" "Output information about downloading and applying package index list diffs, " "and errors relating to package index list diffs." @@ -4958,7 +4957,7 @@ msgstr "" "éventuelles." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:995 +#: apt.conf.5.xml:994 msgid "" "Output information related to patching apt package lists when downloading " "index diffs instead of full indices." @@ -4968,7 +4967,7 @@ msgstr "" "place des fichiers complets." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1006 +#: apt.conf.5.xml:1005 msgid "" "Log all interactions with the sub-processes that actually perform downloads." msgstr "" @@ -4976,7 +4975,7 @@ msgstr "" "effectivement des téléchargements." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1017 +#: apt.conf.5.xml:1016 msgid "" "Log events related to the automatically-installed status of packages and to " "the removal of unused packages." @@ -4985,7 +4984,7 @@ msgstr "" "automatiquement, et la suppression des paquets inutiles." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1027 +#: apt.conf.5.xml:1026 msgid "" "Generate debug messages describing which packages are being automatically " "installed to resolve dependencies. This corresponds to the initial auto-" @@ -5000,7 +4999,7 @@ msgstr "" "de APT ; voir <literal>Debug::pkgProblemResolver</literal> pour ce dernier." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1041 +#: apt.conf.5.xml:1040 msgid "" "Generate debug messages describing which packages are marked as keep/install/" "remove while the ProblemResolver does his work. Each addition or deletion " @@ -5036,7 +5035,7 @@ msgstr "" "de APT ; voir <literal>Debug::pkgProblemResolver</literal> pour ce dernier." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1062 +#: apt.conf.5.xml:1061 msgid "" "When invoking &dpkg;, output the precise command line with which it is being " "invoked, with arguments separated by a single space character." @@ -5045,7 +5044,7 @@ msgstr "" "paramètres sont séparés par des espaces." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1073 +#: apt.conf.5.xml:1072 msgid "" "Output all the data received from &dpkg; on the status file descriptor and " "any errors encountered while parsing it." @@ -5055,7 +5054,7 @@ msgstr "" "fichier." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1084 +#: apt.conf.5.xml:1083 msgid "" "Generate a trace of the algorithm that decides the order in which " "<literal>apt</literal> should pass packages to &dpkg;." @@ -5064,18 +5063,18 @@ msgstr "" "<literal>apt</literal> passe les paquets à &dpkg;." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1096 +#: apt.conf.5.xml:1095 msgid "" "Output status messages tracing the steps performed when invoking &dpkg;." msgstr "Affiche le détail des opérations liées à l'invocation de &dpkg;." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1107 +#: apt.conf.5.xml:1106 msgid "Output the priority of each package list on startup." msgstr "Affiche, au lancement, la priorité de chaque liste de paquets." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1117 +#: apt.conf.5.xml:1116 msgid "" "Trace the execution of the dependency resolver (this applies only to what " "happens when a complex dependency problem is encountered)." @@ -5084,7 +5083,7 @@ msgstr "" "concerne que les cas où un problème de dépendances complexe se présente)." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1128 +#: apt.conf.5.xml:1127 msgid "" "Display a list of all installed packages with their calculated score used by " "the pkgProblemResolver. The description of the package is the same as " @@ -5095,7 +5094,7 @@ msgstr "" "est décrite dans <literal>Debug::pkgDepCache::Marker</literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1140 +#: apt.conf.5.xml:1139 msgid "" "Print information about the vendors read from <filename>/etc/apt/vendors." "list</filename>." @@ -5104,13 +5103,13 @@ msgstr "" "list</filename>." #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:1162 apt_preferences.5.xml:545 sources.list.5.xml:211 +#: apt.conf.5.xml:1161 apt_preferences.5.xml:545 sources.list.5.xml:211 #: apt-ftparchive.1.xml:596 msgid "Examples" msgstr "Exemples" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:1163 +#: apt.conf.5.xml:1162 msgid "" "&configureindex; is a configuration file showing example values for all " "possible options." @@ -5120,7 +5119,7 @@ msgstr "" #. ? reading apt.conf #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:1175 +#: apt.conf.5.xml:1174 msgid "&apt-cache;, &apt-config;, &apt-preferences;." msgstr "&apt-cache;, &apt-config;, &apt-preferences;." @@ -6613,13 +6612,13 @@ msgstr "" #. type: Content of: <refentry><refsect1><para> #: sources.list.5.xml:92 msgid "" -"<literal>distribution</literal> may also contain a variable, <literal>$(ARCH)" -"</literal> which expands to the Debian architecture (such as <literal>amd64</" -"literal> or <literal>armel</literal>) used on the system. This permits " -"architecture-independent <filename>sources.list</filename> files to be used. " -"In general this is only of interest when specifying an exact path, " -"<literal>APT</literal> will automatically generate a URI with the current " -"architecture otherwise." +"<literal>distribution</literal> may also contain a variable, <literal>" +"$(ARCH)</literal> which expands to the Debian architecture (such as " +"<literal>amd64</literal> or <literal>armel</literal>) used on the system. " +"This permits architecture-independent <filename>sources.list</filename> " +"files to be used. In general this is only of interest when specifying an " +"exact path, <literal>APT</literal> will automatically generate a URI with " +"the current architecture otherwise." msgstr "" "<literal>distribution</literal> peut aussi contenir une variable <literal>" "$(ARCH)</literal>, qui sera remplacée par l'architecture Debian (comme " @@ -8123,9 +8122,9 @@ msgstr "DESCRIPTION" #: apt.8:31 msgid "" "APT is a management system for software packages. For normal day to day " -"package management there are several frontends available, such as B<aptitude>" -"(8) for the command line or B<synaptic>(8) for the X Window System. Some " -"options are only implemented in B<apt-get>(8) though." +"package management there are several frontends available, such as " +"B<aptitude>(8) for the command line or B<synaptic>(8) for the X Window " +"System. Some options are only implemented in B<apt-get>(8) though." msgstr "" "APT est un système de gestion de paquets logiciels. Pour la gestion au " "quotidien des paquets, il existe plusieurs frontaux comme B<aptitude>(9) en " @@ -8739,11 +8738,11 @@ msgid "" "[R]emove commands have no meaning, the [I]nstall command performs both of " "them together." msgstr "" -"Une fois cela effectué, vous pouvez poursuivre et utiliser l'option « [S]" -"électionner » pour choisir les paquets à installer puis « [I]nstaller » pour " -"les installer. Lorsque la méthode APT est utilisée, les options « [C]" -"onfigurer » et « [R]etirer » ne sont pas utilisées, car « [I]nstaller » fait " -"l'ensemble des opérations." +"Une fois cela effectué, vous pouvez poursuivre et utiliser l'option " +"« [S]électionner » pour choisir les paquets à installer puis « [I]nstaller » " +"pour les installer. Lorsque la méthode APT est utilisée, les options " +"« [C]onfigurer » et « [R]etirer » ne sont pas utilisées, car « [I]nstaller » " +"fait l'ensemble des opérations." #. type: <p></p> #: guide.sgml:258 diff --git a/doc/po/it.po b/doc/po/it.po index 230f85b07..df144e2b7 100644 --- a/doc/po/it.po +++ b/doc/po/it.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n" -"POT-Creation-Date: 2013-04-02 15:13+0300\n" +"POT-Creation-Date: 2013-06-13 13:46+0300\n" "PO-Revision-Date: 2012-12-23 18:04+0200\n" "Last-Translator: Beatrice Torracca <beatricet@libero.it>\n" "Language-Team: Italian <debian-l10n-italian@lists.debian.org>\n" @@ -812,9 +812,9 @@ msgid "" "installation or upgrading. Each package is a package name, not a fully " "qualified filename (for instance, in a Debian system, <package>apt-utils</" "package> would be the argument provided, not <filename>apt-utils_&apt-" -"product-version;_amd64.deb</filename>). All packages required by the package" -"(s) specified for installation will also be retrieved and installed. The " -"<filename>/etc/apt/sources.list</filename> file is used to locate the " +"product-version;_amd64.deb</filename>). All packages required by the " +"package(s) specified for installation will also be retrieved and installed. " +"The <filename>/etc/apt/sources.list</filename> file is used to locate the " "desired packages. If a hyphen is appended to the package name (with no " "intervening space), the identified package will be removed if it is " "installed. Similarly a plus sign can be used to designate a package to " @@ -1582,14 +1582,14 @@ msgstr "" #. type: Content of: <refentry><refsect1><title> #: apt-get.8.xml:518 apt-cache.8.xml:343 apt-key.8.xml:174 apt-mark.8.xml:125 -#: apt.conf.5.xml:1168 apt_preferences.5.xml:698 +#: apt.conf.5.xml:1167 apt_preferences.5.xml:698 msgid "Files" msgstr "File" #. type: Content of: <refentry><refsect1><title> #: apt-get.8.xml:528 apt-cache.8.xml:350 apt-key.8.xml:195 apt-mark.8.xml:131 #: apt-secure.8.xml:191 apt-cdrom.8.xml:144 apt-config.8.xml:109 -#: apt.conf.5.xml:1174 apt_preferences.5.xml:705 sources.list.5.xml:252 +#: apt.conf.5.xml:1173 apt_preferences.5.xml:705 sources.list.5.xml:252 #: apt-extracttemplates.1.xml:70 apt-sortpkgs.1.xml:63 #: apt-ftparchive.1.xml:607 msgid "See Also" @@ -3283,19 +3283,17 @@ msgstr "" msgid "DPkg::Pre-Install-Pkgs {\"/usr/sbin/dpkg-preconfigure --apt\";};\n" msgstr "DPkg::Pre-Install-Pkgs {\"/usr/sbin/dpkg-preconfigure --apt\";};\n" -# apt.conf è un file e &configureindex è un altro: configure-index.gz #. type: Content of: <refentry><refsect1><para> #: apt.conf.5.xml:101 msgid "" -"In general the sample configuration file in <filename>&docdir;examples/apt." -"conf</filename> &configureindex; is a good guide for how it should look." +"In general the sample configuration file &configureindex; is a good guide " +"for how it should look." msgstr "" -"In generale i file di configurazione d'esempio in <filename>&docdir;examples/" -"apt.conf</filename> e &configureindex; sono una buona guida su come debba " -"essere un file di configurazione." +"In generale i file di configurazione d'esempio &configureindex; sono una " +"buona guida su come debba essere un file di configurazione." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:105 +#: apt.conf.5.xml:104 msgid "" "Case is not significant in names of configuration items, so in the previous " "example you could use <literal>dpkg::pre-install-pkgs</literal>." @@ -3305,7 +3303,7 @@ msgstr "" "<literal>dpkg::pre-install-pkgs</literal>." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:108 +#: apt.conf.5.xml:107 msgid "" "Names for the configuration items are optional if a list is defined as can " "be seen in the <literal>DPkg::Pre-Install-Pkgs</literal> example above. If " @@ -3320,7 +3318,7 @@ msgstr "" "sovrascrivere l'opzione come per ogni altra, assegnandole un nuovo valore." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:113 +#: apt.conf.5.xml:112 msgid "" "Two special commands are defined: <literal>#include</literal> (which is " "deprecated and not supported by alternative implementations) and " @@ -3340,7 +3338,7 @@ msgstr "" "queste righe devono terminare con un punto e virgola.)" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:123 +#: apt.conf.5.xml:122 msgid "" "The <literal>#clear</literal> command is the only way to delete a list or a " "complete scope. Reopening a scope (or using the syntax described below with " @@ -3356,7 +3354,7 @@ msgstr "" "ambiti non possono essere sovrascritti, solo cancellati." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:131 +#: apt.conf.5.xml:130 msgid "" "All of the APT tools take an -o option which allows an arbitrary " "configuration directive to be specified on the command line. The syntax is a " @@ -3376,7 +3374,7 @@ msgstr "" "di comando.)" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:139 +#: apt.conf.5.xml:138 msgid "" "Note that appending items to a list using <literal>::</literal> only works " "for one item per line, and that you should not use it in combination with " @@ -3406,12 +3404,12 @@ msgstr "" "ora, quando APT ancora non si lamenta esplicitamente." #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:154 +#: apt.conf.5.xml:153 msgid "The APT Group" msgstr "Il gruppo APT" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:155 +#: apt.conf.5.xml:154 msgid "" "This group of options controls general APT behavior as well as holding the " "options for all of the tools." @@ -3420,7 +3418,7 @@ msgstr "" "contenere le opzioni per tutti gli strumenti." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:160 +#: apt.conf.5.xml:159 msgid "" "System Architecture; sets the architecture to use when fetching files and " "parsing package lists. The internal default is the architecture apt was " @@ -3431,7 +3429,7 @@ msgstr "" "predefinito interno è l'architettura per la quale apt è stato compilato." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:167 +#: apt.conf.5.xml:166 msgid "" "All Architectures the system supports. For instance, CPUs implementing the " "<literal>amd64</literal> (also called <literal>x86-64</literal>) " @@ -3453,7 +3451,7 @@ msgstr "" "quando sono registrate con <command>dpkg --add-architecture</command>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:180 +#: apt.conf.5.xml:179 msgid "" "Default release to install packages from if more than one version is " "available. Contains release name, codename or release version. Examples: " @@ -3467,7 +3465,7 @@ msgstr "" "preferences;." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:186 +#: apt.conf.5.xml:185 msgid "" "Ignore held packages; this global option causes the problem resolver to " "ignore held packages in its decision making." @@ -3476,7 +3474,7 @@ msgstr "" "di problemi ignori i pacchetti bloccati nel suo processo decisionale." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:191 +#: apt.conf.5.xml:190 msgid "" "Defaults to on. When turned on the autoclean feature will remove any " "packages which can no longer be downloaded from the cache. If turned off " @@ -3490,7 +3488,7 @@ msgstr "" "reinstallarli." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:199 +#: apt.conf.5.xml:198 msgid "" "Defaults to on, which will cause APT to install essential and important " "packages as soon as possible in an install/upgrade operation, in order to " @@ -3517,7 +3515,7 @@ msgstr "" "che dipende da A, dato che la dipendenza da A non è più soddisfatta." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:211 +#: apt.conf.5.xml:210 msgid "" "The immediate configuration marker is also applied in the potentially " "problematic case of circular dependencies, since a dependency with the " @@ -3547,7 +3545,7 @@ msgstr "" "l'unico problema che può aiutare a prevenire." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:224 +#: apt.conf.5.xml:223 msgid "" "Before a big operation like <literal>dist-upgrade</literal> is run with this " "option disabled you should try to explicitly <literal>install</literal> the " @@ -3565,7 +3563,7 @@ msgstr "" "il processo di aggiornamento." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:235 +#: apt.conf.5.xml:234 msgid "" "Never enable this option unless you <emphasis>really</emphasis> know what " "you are doing. It permits APT to temporarily remove an essential package to " @@ -3586,7 +3584,7 @@ msgstr "" "<command>dash</command> o qualsiasi altro da cui dipendono tali pacchetti." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:247 +#: apt.conf.5.xml:246 msgid "" "APT uses since version 0.7.26 a resizable memory mapped cache file to store " "the available information. <literal>Cache-Start</literal> acts as a hint of " @@ -3624,14 +3622,14 @@ msgstr "" "della cache è disabilitata." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:263 +#: apt.conf.5.xml:262 msgid "Defines which packages are considered essential build dependencies." msgstr "" "Definisce quali pacchetti sono considerati dipendenze di compilazione " "essenziali." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:267 +#: apt.conf.5.xml:266 msgid "" "The Get subsection controls the &apt-get; tool; please see its documentation " "for more information about the options here." @@ -3640,7 +3638,7 @@ msgstr "" "documentazione per maggiori informazioni su queste opzioni." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:272 +#: apt.conf.5.xml:271 msgid "" "The Cache subsection controls the &apt-cache; tool; please see its " "documentation for more information about the options here." @@ -3649,7 +3647,7 @@ msgstr "" "documentazione per maggiori informazioni su queste opzioni." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:277 +#: apt.conf.5.xml:276 msgid "" "The CDROM subsection controls the &apt-cdrom; tool; please see its " "documentation for more information about the options here." @@ -3658,12 +3656,12 @@ msgstr "" "documentazione per maggiori informazioni su queste opzioni." #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:283 +#: apt.conf.5.xml:282 msgid "The Acquire Group" msgstr "Il gruppo Acquire" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:284 +#: apt.conf.5.xml:283 msgid "" "The <literal>Acquire</literal> group of options controls the download of " "packages as well as the various \"acquire methods\" responsible for the " @@ -3674,7 +3672,7 @@ msgstr "" "scaricamento stesso (vedere anche &sources-list;)." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:291 +#: apt.conf.5.xml:290 msgid "" "Security related option defaulting to true, as giving a Release file's " "validation an expiration date prevents replay attacks over a long timescale, " @@ -3696,7 +3694,7 @@ msgstr "" "ValidTime</literal> seguente." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:304 +#: apt.conf.5.xml:303 msgid "" "Maximum time (in seconds) after its creation (as indicated by the " "<literal>Date</literal> header) that the <filename>Release</filename> file " @@ -3716,7 +3714,7 @@ msgstr "" "dell'archivio in fondo al nome dell'opzione." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:316 +#: apt.conf.5.xml:315 msgid "" "Minimum time (in seconds) after its creation (as indicated by the " "<literal>Date</literal> header) that the <filename>Release</filename> file " @@ -3736,7 +3734,7 @@ msgstr "" "archivio aggiungendo l'etichetta dell'archivio in fondo al nome dell'opzione." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:328 +#: apt.conf.5.xml:327 msgid "" "Try to download deltas called <literal>PDiffs</literal> for indexes (like " "<filename>Packages</filename> files) instead of downloading whole ones. True " @@ -3747,7 +3745,7 @@ msgstr "" "interamente i nuovi. Attiva in modo predefinito." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:331 +#: apt.conf.5.xml:330 msgid "" "Two sub-options to limit the use of PDiffs are also available: " "<literal>FileLimit</literal> can be used to specify a maximum number of " @@ -3765,7 +3763,7 @@ msgstr "" "completo invece delle patch." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:341 +#: apt.conf.5.xml:340 msgid "" "Queuing mode; <literal>Queue-Mode</literal> can be one of <literal>host</" "literal> or <literal>access</literal> which determines how APT parallelizes " @@ -3780,7 +3778,7 @@ msgstr "" "literal> significa che viene aperta una connessione per ogni tipo di URI." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:349 +#: apt.conf.5.xml:348 msgid "" "Number of retries to perform. If this is non-zero APT will retry failed " "files the given number of times." @@ -3790,7 +3788,7 @@ msgstr "" "ha avuto successo." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:354 +#: apt.conf.5.xml:353 msgid "" "Use symlinks for source archives. If set to true then source archives will " "be symlinked when possible instead of copying. True is the default." @@ -3801,7 +3799,7 @@ msgstr "" "vero." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:359 +#: apt.conf.5.xml:358 msgid "" "<literal>http::Proxy</literal> sets the default proxy to use for HTTP URIs. " "It is in the standard form of <literal>http://[[user][:pass]@]host[:port]/</" @@ -3820,7 +3818,7 @@ msgstr "" "la variabile d'ambiente <envar>http_proxy</envar>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:367 +#: apt.conf.5.xml:366 msgid "" "Three settings are provided for cache control with HTTP/1.1 compliant proxy " "caches. <literal>No-Cache</literal> tells the proxy not to use its cached " @@ -3840,7 +3838,7 @@ msgstr "" "file .deb." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:377 apt.conf.5.xml:449 +#: apt.conf.5.xml:376 apt.conf.5.xml:448 msgid "" "The option <literal>timeout</literal> sets the timeout timer used by the " "method; this value applies to the connection as well as the data timeout." @@ -3850,7 +3848,7 @@ msgstr "" "quello per i dati." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:380 +#: apt.conf.5.xml:379 msgid "" "The setting <literal>Acquire::http::Pipeline-Depth</literal> can be used to " "enable HTTP pipelining (RFC 2616 section 8.1.2.2) which can be beneficial e." @@ -3870,7 +3868,7 @@ msgstr "" "con la specifica HTTP/1.1." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:387 +#: apt.conf.5.xml:386 msgid "" "<literal>Acquire::http::AllowRedirect</literal> controls whether APT will " "follow redirects, which is enabled by default." @@ -3879,7 +3877,7 @@ msgstr "" "meno le ridirezioni che sono abilitate in modo predefinito." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:390 +#: apt.conf.5.xml:389 msgid "" "The used bandwidth can be limited with <literal>Acquire::http::Dl-Limit</" "literal> which accepts integer values in kilobytes. The default value is 0 " @@ -3894,7 +3892,7 @@ msgstr "" "scaricamento da più server contemporaneamente)." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:395 +#: apt.conf.5.xml:394 msgid "" "<literal>Acquire::http::User-Agent</literal> can be used to set a different " "User-Agent for the http download method as some proxies allow access for " @@ -3906,7 +3904,7 @@ msgstr "" "conosciuto." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:403 +#: apt.conf.5.xml:402 msgid "" "The <literal>Cache-control</literal>, <literal>Timeout</literal>, " "<literal>AllowRedirect</literal>, <literal>Dl-Limit</literal> and " @@ -3923,7 +3921,7 @@ msgstr "" "<literal>Pipeline-Depth</literal> non è ancora supportata." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:411 +#: apt.conf.5.xml:410 msgid "" "<literal>CaInfo</literal> suboption specifies place of file that holds info " "about trusted certificates. <literal><host>::CaInfo</literal> is the " @@ -3964,7 +3962,7 @@ msgstr "" "literal> è la corrispondente opzione specifica per ciascun host." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:432 +#: apt.conf.5.xml:431 msgid "" "<literal>ftp::Proxy</literal> sets the default proxy to use for FTP URIs. " "It is in the standard form of <literal>ftp://[[user][:pass]@]host[:port]/</" @@ -3998,7 +3996,7 @@ msgstr "" "literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:452 +#: apt.conf.5.xml:451 msgid "" "Several settings are provided to control passive mode. Generally it is safe " "to leave passive mode on; it works in nearly every environment. However, " @@ -4014,7 +4012,7 @@ msgstr "" "uno specifico host (vedere il file di configurazione d'esempio)." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:459 +#: apt.conf.5.xml:458 msgid "" "It is possible to proxy FTP over HTTP by setting the <envar>ftp_proxy</" "envar> environment variable to an HTTP URL - see the discussion of the http " @@ -4028,7 +4026,7 @@ msgstr "" "a causa della sua bassa efficienza." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:464 +#: apt.conf.5.xml:463 msgid "" "The setting <literal>ForceExtended</literal> controls the use of RFC2428 " "<literal>EPSV</literal> and <literal>EPRT</literal> commands. The default is " @@ -4044,13 +4042,13 @@ msgstr "" "parte dei server FTP non supporta la RFC 2428." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><literallayout> -#: apt.conf.5.xml:478 +#: apt.conf.5.xml:477 #, no-wrap msgid "/cdrom/::Mount \"foo\";" msgstr "/cdrom/::Mount \"pippo\";" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:473 +#: apt.conf.5.xml:472 msgid "" "For URIs using the <literal>cdrom</literal> method, the only configurable " "option is the mount point, <literal>cdrom::Mount</literal>, which must be " @@ -4072,7 +4070,7 @@ msgstr "" "comandi per lo smontaggio possono essere specificati usando UMount." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:486 +#: apt.conf.5.xml:485 msgid "" "For GPGV URIs the only configurable option is <literal>gpgv::Options</" "literal>, which passes additional parameters to gpgv." @@ -4081,13 +4079,13 @@ msgstr "" "literal>, che passa parametri aggiuntivi a gpgv." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><synopsis> -#: apt.conf.5.xml:497 +#: apt.conf.5.xml:496 #, no-wrap msgid "Acquire::CompressionTypes::<replaceable>FileExtension</replaceable> \"<replaceable>Methodname</replaceable>\";" msgstr "Acquire::CompressionTypes::<replaceable>EstensioneFile</replaceable> \"<replaceable>NomeMetodo</replaceable>\";" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:492 +#: apt.conf.5.xml:491 msgid "" "List of compression types which are understood by the acquire methods. " "Files like <filename>Packages</filename> can be available in various " @@ -4106,19 +4104,19 @@ msgstr "" "metodo usato. La sintassi è: <placeholder type=\"synopsis\" id=\"0\"/>" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><synopsis> -#: apt.conf.5.xml:502 +#: apt.conf.5.xml:501 #, no-wrap msgid "Acquire::CompressionTypes::Order:: \"gz\";" msgstr "Acquire::CompressionTypes::Order:: \"gz\";" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><synopsis> -#: apt.conf.5.xml:505 +#: apt.conf.5.xml:504 #, no-wrap msgid "Acquire::CompressionTypes::Order { \"lzma\"; \"gz\"; };" msgstr "Acquire::CompressionTypes::Order { \"lzma\"; \"gz\"; };" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:498 +#: apt.conf.5.xml:497 msgid "" "Also, the <literal>Order</literal> subgroup can be used to define in which " "order the acquire system will try to download the compressed files. The " @@ -4149,13 +4147,13 @@ msgstr "" "all'elenco, dato che verrà aggiunto automaticamente." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><literallayout> -#: apt.conf.5.xml:512 +#: apt.conf.5.xml:511 #, no-wrap msgid "Dir::Bin::bzip2 \"/bin/bzip2\";" msgstr "Dir::Bin::bzip2 \"/bin/bzip2\";" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:507 +#: apt.conf.5.xml:506 msgid "" "Note that the <literal>Dir::Bin::<replaceable>Methodname</replaceable></" "literal> will be checked at run time. If this option has been set, the " @@ -4181,7 +4179,7 @@ msgstr "" "definito; aggiunge solamente il tipo indicato all'inizio dell'elenco." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:517 +#: apt.conf.5.xml:516 msgid "" "The special type <literal>uncompressed</literal> can be used to give " "uncompressed files a preference, but note that most archives don't provide " @@ -4193,7 +4191,7 @@ msgstr "" "soprattutto per i mirror locali." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:524 +#: apt.conf.5.xml:523 msgid "" "When downloading <literal>gzip</literal> compressed indexes (Packages, " "Sources, or Translations), keep them gzip compressed locally instead of " @@ -4207,7 +4205,7 @@ msgstr "" "modo predefinito è disabilitato." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:532 +#: apt.conf.5.xml:531 msgid "" "The Languages subsection controls which <filename>Translation</filename> " "files are downloaded and in which order APT tries to display the description-" @@ -4226,13 +4224,13 @@ msgstr "" "codici di lingua lunghi sono particolarmente rari." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><programlisting> -#: apt.conf.5.xml:549 +#: apt.conf.5.xml:548 #, no-wrap msgid "Acquire::Languages { \"environment\"; \"de\"; \"en\"; \"none\"; \"fr\"; };" msgstr "Acquire::Languages { \"environment\"; \"it\"; \"en\"; \"none\"; \"fr\"; };" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:537 +#: apt.conf.5.xml:536 msgid "" "The default list includes \"environment\" and \"en\". " "\"<literal>environment</literal>\" has a special meaning here: it will be " @@ -4271,7 +4269,7 @@ msgstr "" "<placeholder type=\"programlisting\" id=\"0\"/>" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:550 +#: apt.conf.5.xml:549 msgid "" "Note: To prevent problems resulting from APT being executed in different " "environments (e.g. by different users or by other programs) all Translation " @@ -4285,22 +4283,22 @@ msgstr "" "implicito)." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:559 +#: apt.conf.5.xml:558 msgid "When downloading, force to use only the IPv4 protocol." msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:565 +#: apt.conf.5.xml:564 msgid "When downloading, force to use only the IPv6 protocol." msgstr "" #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:572 +#: apt.conf.5.xml:571 msgid "Directories" msgstr "Directory" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:574 +#: apt.conf.5.xml:573 msgid "" "The <literal>Dir::State</literal> section has directories that pertain to " "local state information. <literal>lists</literal> is the directory to place " @@ -4320,7 +4318,7 @@ msgstr "" "<filename>/</filename> o <filename>./</filename>." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:581 +#: apt.conf.5.xml:580 msgid "" "<literal>Dir::Cache</literal> contains locations pertaining to local cache " "information, such as the two package caches <literal>srcpkgcache</literal> " @@ -4342,7 +4340,7 @@ msgstr "" "la directory predefinita è contenuta in <literal>Dir::Cache</literal>" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:590 +#: apt.conf.5.xml:589 msgid "" "<literal>Dir::Etc</literal> contains the location of configuration files, " "<literal>sourcelist</literal> gives the location of the sourcelist and " @@ -4357,7 +4355,7 @@ msgstr "" "configurazione specificato da <envar>APT_CONFIG</envar>)." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:596 +#: apt.conf.5.xml:595 msgid "" "The <literal>Dir::Parts</literal> setting reads in all the config fragments " "in lexical order from the directory specified. After this is done then the " @@ -4368,7 +4366,7 @@ msgstr "" "termine viene caricato il file di configurazione principale." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:600 +#: apt.conf.5.xml:599 msgid "" "Binary programs are pointed to by <literal>Dir::Bin</literal>. <literal>Dir::" "Bin::Methods</literal> specifies the location of the method handlers and " @@ -4385,7 +4383,7 @@ msgstr "" "specificano la posizione dei rispettivi programmi." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:608 +#: apt.conf.5.xml:607 msgid "" "The configuration item <literal>RootDir</literal> has a special meaning. If " "set, all paths in <literal>Dir::</literal> will be relative to " @@ -4406,7 +4404,7 @@ msgstr "" "staging/var/lib/dpkg/status</filename>." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:621 +#: apt.conf.5.xml:620 msgid "" "The <literal>Ignore-Files-Silently</literal> list can be used to specify " "which files APT should silently ignore while parsing the files in the " @@ -4424,12 +4422,12 @@ msgstr "" "questi modelli possono usare una sintassi con espressioni regolari." #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:630 +#: apt.conf.5.xml:629 msgid "APT in DSelect" msgstr "APT in DSelect" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:632 +#: apt.conf.5.xml:631 msgid "" "When APT is used as a &dselect; method several configuration directives " "control the default behavior. These are in the <literal>DSelect</literal> " @@ -4440,7 +4438,7 @@ msgstr "" "sezione <literal>DSelect</literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:637 +#: apt.conf.5.xml:636 msgid "" "Cache Clean mode; this value may be one of <literal>always</literal>, " "<literal>prompt</literal>, <literal>auto</literal>, <literal>pre-auto</" @@ -4462,7 +4460,7 @@ msgstr "" "scaricare i nuovi pacchetti." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:651 +#: apt.conf.5.xml:650 msgid "" "The contents of this variable are passed to &apt-get; as command line " "options when it is run for the install phase." @@ -4472,7 +4470,7 @@ msgstr "" "installazione." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:656 +#: apt.conf.5.xml:655 msgid "" "The contents of this variable are passed to &apt-get; as command line " "options when it is run for the update phase." @@ -4482,7 +4480,7 @@ msgstr "" "aggiornamento." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:661 +#: apt.conf.5.xml:660 msgid "" "If true the [U]pdate operation in &dselect; will always prompt to continue. " "The default is to prompt only on error." @@ -4492,12 +4490,12 @@ msgstr "" "solo in caso di errore." #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:667 +#: apt.conf.5.xml:666 msgid "How APT calls &dpkg;" msgstr "Come APT invoca &dpkg;" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:668 +#: apt.conf.5.xml:667 msgid "" "Several configuration directives control how APT invokes &dpkg;. These are " "in the <literal>DPkg</literal> section." @@ -4506,7 +4504,7 @@ msgstr "" "&dpkg;; sono nella sezione <literal>DPkg</literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:673 +#: apt.conf.5.xml:672 msgid "" "This is a list of options to pass to &dpkg;. The options must be specified " "using the list notation and each list item is passed as a single argument to " @@ -4517,7 +4515,7 @@ msgstr "" "passata a &dpkg; come un singolo argomento." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:679 +#: apt.conf.5.xml:678 msgid "" "This is a list of shell commands to run before/after invoking &dpkg;. Like " "<literal>options</literal> this must be specified in list notation. The " @@ -4530,7 +4528,7 @@ msgstr "" "bin/sh</filename>; se qualcuno dei comandi fallisce APT terminerà annullando." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:686 +#: apt.conf.5.xml:685 msgid "" "This is a list of shell commands to run before invoking &dpkg;. Like " "<literal>options</literal> this must be specified in list notation. The " @@ -4546,7 +4544,7 @@ msgstr "" "uno per riga, sullo standard input." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:692 +#: apt.conf.5.xml:691 msgid "" "Version 2 of this protocol dumps more information, including the protocol " "version, the APT configuration space and the packages, files and versions " @@ -4562,7 +4560,7 @@ msgstr "" "literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:700 +#: apt.conf.5.xml:699 msgid "" "APT chdirs to this directory before invoking &dpkg;, the default is " "<filename>/</filename>." @@ -4571,7 +4569,7 @@ msgstr "" "valore predefinito è <filename>/</filename>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:705 +#: apt.conf.5.xml:704 msgid "" "These options are passed to &dpkg-buildpackage; when compiling packages; the " "default is to disable signing and produce all binaries." @@ -4581,12 +4579,12 @@ msgstr "" "binari." #. type: Content of: <refentry><refsect1><refsect2><title> -#: apt.conf.5.xml:710 +#: apt.conf.5.xml:709 msgid "dpkg trigger usage (and related options)" msgstr "Uso dei trigger di dpkg (e relative opzioni)" #. type: Content of: <refentry><refsect1><refsect2><para> -#: apt.conf.5.xml:711 +#: apt.conf.5.xml:710 msgid "" "APT can call &dpkg; in such a way as to let it make aggressive use of " "triggers over multiple calls of &dpkg;. Without further options &dpkg; will " @@ -4614,7 +4612,7 @@ msgstr "" "pacchetti." #. type: Content of: <refentry><refsect1><refsect2><para><literallayout> -#: apt.conf.5.xml:726 +#: apt.conf.5.xml:725 #, no-wrap msgid "" "DPkg::NoTriggers \"true\";\n" @@ -4628,7 +4626,7 @@ msgstr "" "DPkg::TriggersPending \"true\";" #. type: Content of: <refentry><refsect1><refsect2><para> -#: apt.conf.5.xml:720 +#: apt.conf.5.xml:719 msgid "" "Note that it is not guaranteed that APT will support these options or that " "these options will not cause (big) trouble in the future. If you have " @@ -4652,7 +4650,7 @@ msgstr "" "\"literallayout\" id=\"0\"/>" #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:733 +#: apt.conf.5.xml:732 msgid "" "Add the no triggers flag to all &dpkg; calls (except the ConfigurePending " "call). See &dpkg; if you are interested in what this actually means. In " @@ -4674,7 +4672,7 @@ msgstr "" "questa opzione anche alle chiamate per lo spacchettamento e la rimozione." #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:741 +#: apt.conf.5.xml:740 msgid "" "Valid values are \"<literal>all</literal>\", \"<literal>smart</literal>\" " "and \"<literal>no</literal>\". The default value is \"<literal>all</literal>" @@ -4704,7 +4702,7 @@ msgstr "" "potrebbe finire in uno stato non configurato e potenzialmente non avviabile." #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:756 +#: apt.conf.5.xml:755 msgid "" "If this option is set APT will call <command>dpkg --configure --pending</" "command> to let &dpkg; handle all required configurations and triggers. This " @@ -4722,7 +4720,7 @@ msgstr "" "si può disattivare questa opzione in tutte le esecuzioni tranne l'ultima." #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:763 +#: apt.conf.5.xml:762 msgid "" "Useful for the <literal>smart</literal> configuration as a package which has " "pending triggers is not considered as <literal>installed</literal>, and " @@ -4738,7 +4736,7 @@ msgstr "" "necessari per configurare il pacchetto in questione." #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para><literallayout> -#: apt.conf.5.xml:776 +#: apt.conf.5.xml:775 #, no-wrap msgid "" "OrderList::Score {\n" @@ -4756,7 +4754,7 @@ msgstr "" "};" #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:769 +#: apt.conf.5.xml:768 msgid "" "Essential packages (and their dependencies) should be configured immediately " "after unpacking. It is a good idea to do this quite early in the upgrade " @@ -4781,12 +4779,12 @@ msgstr "" "con i loro valori predefiniti. <placeholder type=\"literallayout\" id=\"0\"/>" #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:789 +#: apt.conf.5.xml:788 msgid "Periodic and Archives options" msgstr "Opzioni Periodic e Archives" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:790 +#: apt.conf.5.xml:789 msgid "" "<literal>APT::Periodic</literal> and <literal>APT::Archives</literal> groups " "of options configure behavior of apt periodic updates, which is done by the " @@ -4800,12 +4798,12 @@ msgstr "" "all'inizio dello script." #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:798 +#: apt.conf.5.xml:797 msgid "Debug options" msgstr "Opzioni di debug" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:800 +#: apt.conf.5.xml:799 msgid "" "Enabling options in the <literal>Debug::</literal> section will cause " "debugging information to be sent to the standard error stream of the program " @@ -4823,7 +4821,7 @@ msgstr "" "esserlo:" #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para> -#: apt.conf.5.xml:811 +#: apt.conf.5.xml:810 msgid "" "<literal>Debug::pkgProblemResolver</literal> enables output about the " "decisions made by <literal>dist-upgrade, upgrade, install, remove, purge</" @@ -4834,7 +4832,7 @@ msgstr "" "literal>." #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para> -#: apt.conf.5.xml:819 +#: apt.conf.5.xml:818 msgid "" "<literal>Debug::NoLocking</literal> disables all file locking. This can be " "used to run some operations (for instance, <literal>apt-get -s install</" @@ -4845,7 +4843,7 @@ msgstr "" "install</literal>) come utente non root." #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para> -#: apt.conf.5.xml:828 +#: apt.conf.5.xml:827 msgid "" "<literal>Debug::pkgDPkgPM</literal> prints out the actual command line each " "time that <literal>apt</literal> invokes &dpkg;." @@ -4857,7 +4855,7 @@ msgstr "" #. motivating example, except I haven't a clue why you'd want #. to do this. #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para> -#: apt.conf.5.xml:836 +#: apt.conf.5.xml:835 msgid "" "<literal>Debug::IdentCdrom</literal> disables the inclusion of statfs data " "in CD-ROM IDs." @@ -4866,37 +4864,37 @@ msgstr "" "negli ID dei CD-ROM." #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:846 +#: apt.conf.5.xml:845 msgid "A full list of debugging options to apt follows." msgstr "Segue un elenco completo delle opzioni di debug per apt." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:855 +#: apt.conf.5.xml:854 msgid "" "Print information related to accessing <literal>cdrom://</literal> sources." msgstr "" "Stampa informazioni relative all'accesso a fonti <literal>cdrom://</literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:866 +#: apt.conf.5.xml:865 msgid "Print information related to downloading packages using FTP." msgstr "" "Stampa informazioni relative allo scaricamento dei pacchetti usando FTP." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:877 +#: apt.conf.5.xml:876 msgid "Print information related to downloading packages using HTTP." msgstr "" "Stampa informazioni relative allo scaricamento dei pacchetti usando HTTP." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:888 +#: apt.conf.5.xml:887 msgid "Print information related to downloading packages using HTTPS." msgstr "" "Stampa informazioni relative allo scaricamento dei pacchetti usando HTTPS." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:899 +#: apt.conf.5.xml:898 msgid "" "Print information related to verifying cryptographic signatures using " "<literal>gpg</literal>." @@ -4905,7 +4903,7 @@ msgstr "" "usando <literal>gpg</literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:910 +#: apt.conf.5.xml:909 msgid "" "Output information about the process of accessing collections of packages " "stored on CD-ROMs." @@ -4914,14 +4912,14 @@ msgstr "" "pacchetti memorizzati su CD-ROM." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:920 +#: apt.conf.5.xml:919 msgid "Describes the process of resolving build-dependencies in &apt-get;." msgstr "" "Descrive il processo di risoluzione delle dipendenze di compilazione in &apt-" "get;." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:930 +#: apt.conf.5.xml:929 msgid "" "Output each cryptographic hash that is generated by the <literal>apt</" "literal> libraries." @@ -4930,7 +4928,7 @@ msgstr "" "<literal>apt</literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:940 +#: apt.conf.5.xml:939 msgid "" "Do not include information from <literal>statfs</literal>, namely the number " "of used and free blocks on the CD-ROM filesystem, when generating an ID for " @@ -4941,7 +4939,7 @@ msgstr "" "system del CD-ROM." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:951 +#: apt.conf.5.xml:950 msgid "" "Disable all file locking. For instance, this will allow two instances of " "<quote><literal>apt-get update</literal></quote> to run at the same time." @@ -4951,14 +4949,14 @@ msgstr "" "contemporaneamente." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:963 +#: apt.conf.5.xml:962 msgid "Log when items are added to or removed from the global download queue." msgstr "" "Registra nel log quando vengono aggiunte o rimosse voci dalla coda globale " "degli scaricamenti." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:973 +#: apt.conf.5.xml:972 msgid "" "Output status messages and errors related to verifying checksums and " "cryptographic signatures of downloaded files." @@ -4967,7 +4965,7 @@ msgstr "" "codici di controllo e delle firme di cifratura dei file scaricati." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:983 +#: apt.conf.5.xml:982 msgid "" "Output information about downloading and applying package index list diffs, " "and errors relating to package index list diffs." @@ -4977,7 +4975,7 @@ msgstr "" "diff." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:995 +#: apt.conf.5.xml:994 msgid "" "Output information related to patching apt package lists when downloading " "index diffs instead of full indices." @@ -4987,7 +4985,7 @@ msgstr "" "invece degli indici completi." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1006 +#: apt.conf.5.xml:1005 msgid "" "Log all interactions with the sub-processes that actually perform downloads." msgstr "" @@ -4995,7 +4993,7 @@ msgstr "" "realmente gli scaricamenti." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1017 +#: apt.conf.5.xml:1016 msgid "" "Log events related to the automatically-installed status of packages and to " "the removal of unused packages." @@ -5004,7 +5002,7 @@ msgstr "" "installato dei pacchetti e alla rimozione dei pacchetti non utilizzati." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1027 +#: apt.conf.5.xml:1026 msgid "" "Generate debug messages describing which packages are being automatically " "installed to resolve dependencies. This corresponds to the initial auto-" @@ -5020,7 +5018,7 @@ msgstr "" "pkgProblemResolver</literal>." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1041 +#: apt.conf.5.xml:1040 msgid "" "Generate debug messages describing which packages are marked as keep/install/" "remove while the ProblemResolver does his work. Each addition or deletion " @@ -5052,7 +5050,7 @@ msgstr "" "sezione in cui compare il pacchetto." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1062 +#: apt.conf.5.xml:1061 msgid "" "When invoking &dpkg;, output the precise command line with which it is being " "invoked, with arguments separated by a single space character." @@ -5061,7 +5059,7 @@ msgstr "" "gli argomenti separati da un singolo carattere di spazio." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1073 +#: apt.conf.5.xml:1072 msgid "" "Output all the data received from &dpkg; on the status file descriptor and " "any errors encountered while parsing it." @@ -5070,7 +5068,7 @@ msgstr "" "di stato ed ogni errore incontrato durante la sua analisi." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1084 +#: apt.conf.5.xml:1083 msgid "" "Generate a trace of the algorithm that decides the order in which " "<literal>apt</literal> should pass packages to &dpkg;." @@ -5079,7 +5077,7 @@ msgstr "" "literal> deve passare i pacchetti a &dpkg;." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1096 +#: apt.conf.5.xml:1095 msgid "" "Output status messages tracing the steps performed when invoking &dpkg;." msgstr "" @@ -5087,12 +5085,12 @@ msgstr "" "nell'invocazione di &dpkg;." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1107 +#: apt.conf.5.xml:1106 msgid "Output the priority of each package list on startup." msgstr "Produce in output la priorità di ogni elenco di pacchetti all'avvio." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1117 +#: apt.conf.5.xml:1116 msgid "" "Trace the execution of the dependency resolver (this applies only to what " "happens when a complex dependency problem is encountered)." @@ -5102,7 +5100,7 @@ msgstr "" "dipendenze)." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1128 +#: apt.conf.5.xml:1127 msgid "" "Display a list of all installed packages with their calculated score used by " "the pkgProblemResolver. The description of the package is the same as " @@ -5113,7 +5111,7 @@ msgstr "" "la stessa descritta in <literal>Debug::pkgDepCache::Marker</literal>" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: apt.conf.5.xml:1140 +#: apt.conf.5.xml:1139 msgid "" "Print information about the vendors read from <filename>/etc/apt/vendors." "list</filename>." @@ -5122,13 +5120,13 @@ msgstr "" "filename>." #. type: Content of: <refentry><refsect1><title> -#: apt.conf.5.xml:1162 apt_preferences.5.xml:545 sources.list.5.xml:211 +#: apt.conf.5.xml:1161 apt_preferences.5.xml:545 sources.list.5.xml:211 #: apt-ftparchive.1.xml:596 msgid "Examples" msgstr "Esempi" #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:1163 +#: apt.conf.5.xml:1162 msgid "" "&configureindex; is a configuration file showing example values for all " "possible options." @@ -5138,7 +5136,7 @@ msgstr "" #. ? reading apt.conf #. type: Content of: <refentry><refsect1><para> -#: apt.conf.5.xml:1175 +#: apt.conf.5.xml:1174 msgid "&apt-cache;, &apt-config;, &apt-preferences;." msgstr "&apt-cache;, &apt-config;, &apt-preferences;." @@ -6649,13 +6647,13 @@ msgstr "" #. type: Content of: <refentry><refsect1><para> #: sources.list.5.xml:92 msgid "" -"<literal>distribution</literal> may also contain a variable, <literal>$(ARCH)" -"</literal> which expands to the Debian architecture (such as <literal>amd64</" -"literal> or <literal>armel</literal>) used on the system. This permits " -"architecture-independent <filename>sources.list</filename> files to be used. " -"In general this is only of interest when specifying an exact path, " -"<literal>APT</literal> will automatically generate a URI with the current " -"architecture otherwise." +"<literal>distribution</literal> may also contain a variable, <literal>" +"$(ARCH)</literal> which expands to the Debian architecture (such as " +"<literal>amd64</literal> or <literal>armel</literal>) used on the system. " +"This permits architecture-independent <filename>sources.list</filename> " +"files to be used. In general this is only of interest when specifying an " +"exact path, <literal>APT</literal> will automatically generate a URI with " +"the current architecture otherwise." msgstr "" "<literal>distribuzione</literal> può anche contenere una variabile <literal>" "$(ARCH)</literal> che viene espansa nell'architettura Debian (come " @@ -8150,9 +8148,9 @@ msgstr "DESCRIZIONE" #: apt.8:31 msgid "" "APT is a management system for software packages. For normal day to day " -"package management there are several frontends available, such as B<aptitude>" -"(8) for the command line or B<synaptic>(8) for the X Window System. Some " -"options are only implemented in B<apt-get>(8) though." +"package management there are several frontends available, such as " +"B<aptitude>(8) for the command line or B<synaptic>(8) for the X Window " +"System. Some options are only implemented in B<apt-get>(8) though." msgstr "" "APT è un sistema di gestione per i pacchetti software. Per la normale " "gestione quotidiana dei pacchetti sono disponibili diverse interfacce, quali " @@ -8206,8 +8204,8 @@ msgid "" "B<reportbug>(1) command." msgstr "" "Vedere E<lt>http://bugs.debian.org/aptE<gt>. Per segnalare un bug in B<apt>, " -"vedere I</usr/share/doc/debian/bug-reporting.txt> o il comando B<reportbug>" -"(1)." +"vedere I</usr/share/doc/debian/bug-reporting.txt> o il comando " +"B<reportbug>(1)." #. type: SH #: apt.8:51 @@ -10126,7 +10124,8 @@ msgstr "che userà gli archivi già scaricati e presenti sul disco." #~ " <firstname>Jason</firstname> <surname>Gunthorpe</surname>\n" #~ " <contrib></contrib>\n" #~ " </author>\n" -#~ " <copyright><year>1998-2001</year> <holder>Jason Gunthorpe</holder></copyright>\n" +#~ " <copyright><year>1998-2001</year> <holder>Jason Gunthorpe</holder></" +#~ "copyright>\n" #~ " <date>28 October 2008</date>\n" #~ " <productname>Linux</productname>\n" #~ msgstr "" @@ -10138,7 +10137,8 @@ msgstr "che userà gli archivi già scaricati e presenti sul disco." #~ " <firstname>Jason</firstname> <surname>Gunthorpe</surname>\n" #~ " <contrib></contrib>\n" #~ " </author>\n" -#~ " <copyright><year>1998-2001</year> <holder>Jason Gunthorpe</holder></copyright>\n" +#~ " <copyright><year>1998-2001</year> <holder>Jason Gunthorpe</holder></" +#~ "copyright>\n" #~ " <date>28 ottobre 2008</date>\n" #~ " <productname>Linux</productname>\n" @@ -10224,7 +10224,8 @@ msgstr "che userà gli archivi già scaricati e presenti sul disco." #~ "<!-- Boiler plate Bug reporting section -->\n" #~ "<!ENTITY manbugs \"\n" #~ " <refsect1><title>Bugs\n" -#~ " APT bug page. \n" +#~ " APT bug page. \n" #~ " If you wish to report a bug in APT, please see\n" #~ " /usr/share/doc/debian/bug-reporting.txt or the\n" #~ " &reportbug; command.\n" @@ -10235,7 +10236,8 @@ msgstr "che userà gli archivi già scaricati e presenti sul disco." #~ "\n" #~ "Bachi\n" -#~ " Pagina dei bachi di APT. \n" +#~ " Pagina dei bachi di " +#~ "APT. \n" #~ " Per segnalare un baco in APT, vedere\n" #~ " /usr/share/doc/debian/bug-reporting.txt o il\n" #~ " comando &reportbug;.\n" @@ -10247,7 +10249,8 @@ msgstr "che userà gli archivi già scaricati e presenti sul disco." #~ " \n" #~ " \n" #~ " \n" -#~ " Configuration File; Specify a configuration file to use. \n" +#~ " Configuration File; Specify a configuration file to " +#~ "use. \n" #~ " The program will read the default configuration file and then this \n" #~ " configuration file. See &apt-conf; for syntax information. \n" #~ " \n" @@ -10257,36 +10260,49 @@ msgstr "che userà gli archivi già scaricati e presenti sul disco." #~ " \n" #~ " \n" #~ " \n" -#~ " File di configurazione; Specifica un file di configurazione da usare. \n" -#~ " Il programma leggerà il file di configurazione predefinito e poi questo \n" -#~ " file di configurazione. Vedere &apt-conf; per informazioni sulla sintassi. \n" +#~ " File di configurazione; Specifica un file di " +#~ "configurazione da usare. \n" +#~ " Il programma leggerà il file di configurazione predefinito e poi " +#~ "questo \n" +#~ " file di configurazione. Vedere &apt-conf; per informazioni sulla " +#~ "sintassi. \n" #~ " \n" #~ " \n" #~ " \n" #~ msgid "" -#~ " &cachedir;/archives/partial/\n" +#~ " &cachedir;/archives/partial/\n" #~ " Storage area for package files in transit.\n" -#~ " Configuration Item: Dir::Cache::Archives (implicit partial). \n" +#~ " Configuration Item: Dir::Cache::Archives " +#~ "(implicit partial). \n" #~ " \n" #~ "\">\n" #~ msgstr "" -#~ " &cachedir;/archives/partial/\n" -#~ " Area di memorizzazione per i file dei pacchetti in transito.\n" -#~ " Voce di configurazione: Dir::Cache::Archives (partial implicito). \n" +#~ " &cachedir;/archives/partial/\n" +#~ " Area di memorizzazione per i file dei pacchetti in " +#~ "transito.\n" +#~ " Voce di configurazione: Dir::Cache::Archives " +#~ "(partial implicito). \n" #~ " \n" #~ "\">\n" #~ msgid "" -#~ " &statedir;/lists/partial/\n" +#~ " &statedir;/lists/partial/\n" #~ " Storage area for state information in transit.\n" -#~ " Configuration Item: Dir::State::Lists (implicit partial).\n" +#~ " Configuration Item: Dir::State::Lists (implicit " +#~ "partial).\n" #~ " \n" #~ "\">\n" #~ msgstr "" -#~ " &statedir;/lists/partial/\n" -#~ " Area di archiviazione per le informazioni di stato in transito.\n" -#~ " Voce di configurazione: Dir::State::Lists (partial implicito).\n" +#~ " &statedir;/lists/partial/\n" +#~ " Area di archiviazione per le informazioni di stato " +#~ "in transito.\n" +#~ " Voce di configurazione: Dir::State::Lists " +#~ "(partial implicito).\n" #~ " \n" #~ "\">\n" @@ -10294,17 +10310,24 @@ msgstr "che userà gli archivi già scaricati e presenti sul disco." #~ msgstr "" #~ msgid "" -#~ "\n" #~ "john@doe.org in 2009,\n" -#~ " 2010 and Daniela Acme daniela@acme.us in 2010 together with the\n" -#~ " Debian Dummy l10n Team debian-l10n-dummy@lists.debian.org.\n" +#~ " The english translation was done by John Doe john@doe.org in 2009,\n" +#~ " 2010 and Daniela Acme daniela@acme.us in 2010 " +#~ "together with the\n" +#~ " Debian Dummy l10n Team debian-l10n-dummy@lists.debian.org.\n" #~ "\">\n" #~ msgstr "" -#~ "\n" #~ "\n" #~ msgid "" -#~ "\n" #~ "\n" #~ msgstr "" -#~ "\n" +#~ "" + << "" << std::endl + << "

Index of " << dir << "

" << std::endl + << "" << std::endl; + if (dir != ".") + listing << ""; + for (int i = 0; i < counter; ++i) { + struct stat fs; + std::string filename(dir); + filename.append("/").append(namelist[i]->d_name); + stat(filename.c_str(), &fs); + if (S_ISDIR(fs.st_mode)) + { + listing << "" + << "" + << ""; + } + else + { + listing << "" + << "" + << ""; + } + listing << "" << std::endl; + } + listing << "
#NameSizeLast-Modified
dParent Directory--
dd_name << "/\">" << namelist[i]->d_name << "-
fd_name << "\">" << namelist[i]->d_name << "" << SizeToStr(fs.st_size) << "B" << TimeRFC1123(fs.st_mtime) << "
" << std::endl; + + std::string response(listing.str()); + addDataHeaders(headers, response); + sendHead(client, 200, headers); + if (content == true) + sendData(client, response); +} + /*}}}*/ bool parseFirstLine(int const client, std::string const &request, /*{{{*/ std::string &filename, bool &sendContent, bool &closeConnection) @@ -326,6 +440,13 @@ int main(int const argc, const char * argv[]) if (sendContent == true) sendFile(client, data); } + else if (DirectoryExists(filename) == true) + { + if (filename == "." || filename[filename.length()-1] == '/') + sendDirectoryListing(client, filename, *m, sendContent); + else + sendRedirect(client, 301, filename.append("/"), *m, sendContent); + } else sendError(client, 404, *m, sendContent); } -- cgit v1.2.3 From 0aec7d5c2f6fd55301bd1e1ed35ab7a23fd2357e Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Sat, 15 Jun 2013 23:47:07 +0200 Subject: do not redownload unchanged InRelease files Before we download the 'new' InRelease file the old file will be moved out of the way with the name 'foobar_InRelease.reverify', so if no partial file for the 'new' file exists take the modification time from this reverify file, so that if we get an IMS hit for the InRelease file we can move back the reverify file as new file rather than downloading the 'new' file even though we already have it. We do the same for Release files and this happened to work until the reverify renaming was corrected for InRelease files. --- apt-pkg/acquire-item.cc | 13 ++++++++++++- debian/changelog | 1 + 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/apt-pkg/acquire-item.cc b/apt-pkg/acquire-item.cc index 7b800e42f..c48443eff 100644 --- a/apt-pkg/acquire-item.cc +++ b/apt-pkg/acquire-item.cc @@ -1289,7 +1289,14 @@ void pkgAcqMetaIndex::RetrievalDone(string Message) /*{{{*/ string FinalFile = _config->FindDir("Dir::State::lists"); FinalFile += URItoFileName(RealURI); if (SigFile == DestFile) + { SigFile = FinalFile; + // constructor of pkgAcqMetaClearSig moved it out of the way, + // now move it back in on IMS hit for the 'old' file + string const OldClearSig = DestFile + ".reverify"; + if (RealFileExists(OldClearSig) == true) + Rename(OldClearSig, FinalFile); + } DestFile = FinalFile; } Complete = true; @@ -1595,7 +1602,11 @@ string pkgAcqMetaClearSig::Custom600Headers() struct stat Buf; if (stat(Final.c_str(),&Buf) != 0) - return "\nIndex-File: true\nFail-Ignore: true\n"; + { + Final = DestFile + ".reverify"; + if (stat(Final.c_str(),&Buf) != 0) + return "\nIndex-File: true\nFail-Ignore: true\n"; + } return "\nIndex-File: true\nFail-Ignore: true\nLast-Modified: " + TimeRFC1123(Buf.st_mtime); } diff --git a/debian/changelog b/debian/changelog index dfff872a7..91d4ae536 100644 --- a/debian/changelog +++ b/debian/changelog @@ -19,6 +19,7 @@ apt (0.9.8.3) UNRELEASED; urgency=low * handle missing "Description" in apt-cache show (Closes: #712435) * try defaults if auto-detection failed in apt-cdrom (Closes: #712433) * support \n and \r\n line endings in ReadMessages + * do not redownload unchanged InRelease files -- David Kalnischkies Sun, 09 Jun 2013 15:06:24 +0200 -- cgit v1.2.3 From 7ea27d2a6d10ee41f8fca5d8ad7373c8b3d90ea9 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Sat, 15 Jun 2013 23:58:12 +0200 Subject: simple URI rewrite rules config for webserver we have a test which required traditionally lighttpd to be executed as it requires a webserver supporting some kind of URI rewriting. Now with some lines of code our own webserver can do this and the testcase can be enabled by default. This test hinted at the bug fixed in the previous commit, so having more tests which can easily be run is a good thing. Git-Dch: Ignore --- test/integration/skip-bug-602412-dequote-redirect | 38 ----------------------- test/integration/test-bug-602412-dequote-redirect | 29 +++++++++++++++++ test/interactive-helper/aptwebserver.cc | 16 ++++++++++ 3 files changed, 45 insertions(+), 38 deletions(-) delete mode 100755 test/integration/skip-bug-602412-dequote-redirect create mode 100755 test/integration/test-bug-602412-dequote-redirect diff --git a/test/integration/skip-bug-602412-dequote-redirect b/test/integration/skip-bug-602412-dequote-redirect deleted file mode 100755 index 689b671ce..000000000 --- a/test/integration/skip-bug-602412-dequote-redirect +++ /dev/null @@ -1,38 +0,0 @@ -#!/bin/sh -set -e - -TESTDIR=$(readlink -f $(dirname $0)) -. $TESTDIR/framework -setupenvironment -configarchitecture 'i386' - -if ! which lighttpd > /dev/null; then - msgdie 'You need lighttpd for this testcase, sorry…' - exit 1 -fi - -buildsimplenativepackage 'unrelated' 'all' '0.5~squeeze1' 'unstable' - -setupaptarchive - -echo "server.modules = ( \"mod_redirect\" ) -server.document-root = \"$(readlink -f ./aptarchive)\" -server.port = 8080 -server.stat-cache-engine = \"disable\" -url.redirect = ( \"^/pool/(.*)$\" => \"/newpool/\$1\", - \"^/dists/(.*)$\" => \"/newdists/\$1\" )" > lighttpd.conf - -mv aptarchive/pool aptarchive/newpool -mv aptarchive/dists aptarchive/newdists - -lighttpd -t -f lighttpd.conf >/dev/null || msgdie 'Can not change to webserver: our lighttpd config is invalid' -lighttpd -D -f lighttpd.conf 2>/dev/null >/dev/null & -addtrap "kill $!;" - -APTARCHIVE="file://$(readlink -f ./aptarchive)" -for LIST in $(find rootdir/etc/apt/sources.list.d/ -name 'apt-test-*.list'); do - sed -i $LIST -e "s#$APTARCHIVE#http://localhost:8080/#" -done - -aptget update || msgdie 'apt-get update failed' -aptget install unrelated --download-only || msgdie 'downloading package failed' diff --git a/test/integration/test-bug-602412-dequote-redirect b/test/integration/test-bug-602412-dequote-redirect new file mode 100755 index 000000000..c20443559 --- /dev/null +++ b/test/integration/test-bug-602412-dequote-redirect @@ -0,0 +1,29 @@ +#!/bin/sh +set -e + +TESTDIR=$(readlink -f $(dirname $0)) +. $TESTDIR/framework +setupenvironment +configarchitecture 'amd64' + +buildsimplenativepackage 'unrelated' 'all' '0.5~squeeze1' 'unstable' + +setupaptarchive +changetowebserver -o aptwebserver::redirect::replace::/pool/=/newpool/ \ + -o aptwebserver::redirect::replace::/dists/=/newdists/ + +mv aptarchive/pool aptarchive/newpool +mv aptarchive/dists aptarchive/newdists + +msgtest 'Test redirection works in' 'apt-get update' +aptget update -qq && msgpass || msgfail + +# check that I-M-S header is kept in redirections +testequal 'Hit http://localhost:8080 unstable InRelease +Hit http://localhost:8080 unstable/main Sources +Hit http://localhost:8080 unstable/main amd64 Packages +Hit http://localhost:8080 unstable/main Translation-en +Reading package lists...' aptget update #-o debug::pkgacquire=1 -o debug::pkgacquire::worker=1 + +msgtest 'Test redirection works in' 'package download' +aptget install unrelated --download-only -qq && msgpass || msgfail diff --git a/test/interactive-helper/aptwebserver.cc b/test/interactive-helper/aptwebserver.cc index d25f50624..de235fa05 100644 --- a/test/interactive-helper/aptwebserver.cc +++ b/test/interactive-helper/aptwebserver.cc @@ -420,6 +420,22 @@ int main(int const argc, const char * argv[]) continue; } + // string replacements in the requested filename + ::Configuration::Item const *Replaces = _config->Tree("aptwebserver::redirect::replace"); + if (Replaces != NULL) + { + std::string redirect = "/" + filename; + for (::Configuration::Item *I = Replaces->Child; I != NULL; I = I->Next) + redirect = SubstVar(redirect, I->Tag, I->Value); + redirect.erase(0,1); + if (redirect != filename) + { + sendRedirect(client, 301, redirect, *m, sendContent); + continue; + } + } + + // deal with the request if (RealFileExists(filename) == true) { FileFd data(filename, FileFd::ReadOnly); -- cgit v1.2.3 From 5229b285f07edd5ed695c264c8d80310f339af96 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Sun, 16 Jun 2013 23:23:28 +0200 Subject: tests: accept an explaination for msgfail Git-Dch: Ignore --- test/integration/framework | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/test/integration/framework b/test/integration/framework index 9db4a1017..3f11ac23b 100644 --- a/test/integration/framework +++ b/test/integration/framework @@ -38,7 +38,11 @@ msgtest() { } msgpass() { echo "${CPASS}PASS${CNORMAL}" >&2; } msgskip() { echo "${CWARNING}SKIP${CNORMAL}" >&2; } -msgfail() { echo "${CFAIL}FAIL${CNORMAL}" >&2; EXIT_CODE=$((EXIT_CODE+1)); } +msgfail() { + if [ $# -gt 0 ]; then echo "${CFAIL}FAIL: $*${CNORMAL}" >&2; + else echo "${CFAIL}FAIL${CNORMAL}" >&2; fi + EXIT_CODE=$((EXIT_CODE+1)); +} # enable / disable Debugging MSGLEVEL=${MSGLEVEL:-3} @@ -56,9 +60,9 @@ if [ $MSGLEVEL -le 2 ]; then msgpass() { echo -n " ${CPASS}P${CNORMAL}" >&2; } msgskip() { echo -n " ${CWARNING}S${CNORMAL}" >&2; } if [ -n "$CFAIL" ]; then - msgfail() { echo -n " ${CFAIL}FAIL${CNORMAL}" >&2; } + msgfail() { echo -n " ${CFAIL}FAIL${CNORMAL}" >&2; EXIT_CODE=$((EXIT_CODE+1)); } else - msgfail() { echo -n " ###FAILED###" >&2; } + msgfail() { echo -n " ###FAILED###" >&2; EXIT_CODE=$((EXIT_CODE+1)); } fi fi if [ $MSGLEVEL -le 3 ]; then -- cgit v1.2.3 From ae99ce2e3cadb07c80b89ab2afc804875b1026c5 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Mon, 17 Jun 2013 11:23:13 +0200 Subject: trigger NODATA error for invalid InRelease files With the selfgrown splitting we got the problem of not recovering from networks which just reply with invalid data like those sending us login pages to authenticate with the network (e.g. hotels) back. The good thing about the InRelease file is that we know that it must be clearsigned (a Release file might or might not have a detached sig) so if we get a file but are unable to split it something is seriously wrong, so there is not much point in trying further. The Acquire system already looks out for a NODATA error from gpgv, so this adds a new error message sent to the acquire system in case the splitting we do now ourselves failed including this magic word. Closes: #712486 --- apt-pkg/contrib/gpgv.cc | 2 +- apt-pkg/contrib/gpgv.h | 15 ++++- debian/changelog | 1 + methods/gpgv.cc | 16 +++--- test/integration/framework | 3 + .../test-ubuntu-bug-346386-apt-get-update-paywall | 64 ++++++++++++++++++++++ test/interactive-helper/aptwebserver.cc | 26 +++++++++ 7 files changed, 114 insertions(+), 13 deletions(-) create mode 100755 test/integration/test-ubuntu-bug-346386-apt-get-update-paywall diff --git a/apt-pkg/contrib/gpgv.cc b/apt-pkg/contrib/gpgv.cc index 31db7d5fe..f47e7ea48 100644 --- a/apt-pkg/contrib/gpgv.cc +++ b/apt-pkg/contrib/gpgv.cc @@ -154,7 +154,7 @@ void ExecGPGV(std::string const &File, std::string const &FileGPG, if (sigFd != -1) unlink(data); ioprintf(std::cerr, "Splitting up %s into data and signature failed", File.c_str()); - exit(EINTERNAL); + exit(112); } Args.push_back(sig); Args.push_back(data); diff --git a/apt-pkg/contrib/gpgv.h b/apt-pkg/contrib/gpgv.h index 08b10a97a..45f069058 100644 --- a/apt-pkg/contrib/gpgv.h +++ b/apt-pkg/contrib/gpgv.h @@ -23,9 +23,18 @@ /** \brief generates and run the command to verify a file with gpgv * * If File and FileSig specify the same file it is assumed that we - * deal with a clear-signed message. In that case the file will be - * rewritten to be in a good-known format without uneeded whitespaces - * and additional messages (unsigned or signed). + * deal with a clear-signed message. Note that the method will accept + * and validate files which include additional (unsigned) messages + * without complaining. Do NOT open files accepted by this method + * for reading. Use #OpenMaybeClearSignedFile to access the message + * instead to ensure you are only reading signed data. + * + * The method does not return, but has some noteable exit-codes: + * 111 signals an internal error like the inability to execute gpgv, + * 112 indicates a clear-signed file which doesn't include a message, + * which can happen if APT is run while on a network requiring + * authentication before usage (e.g. in hotels) + * All other exit-codes are passed-through from gpgv. * * @param File is the message (unsigned or clear-signed) * @param FileSig is the signature (detached or clear-signed) diff --git a/debian/changelog b/debian/changelog index 91d4ae536..bd25df1e2 100644 --- a/debian/changelog +++ b/debian/changelog @@ -20,6 +20,7 @@ apt (0.9.8.3) UNRELEASED; urgency=low * try defaults if auto-detection failed in apt-cdrom (Closes: #712433) * support \n and \r\n line endings in ReadMessages * do not redownload unchanged InRelease files + * trigger NODATA error for invalid InRelease files (Closes: #712486) -- David Kalnischkies Sun, 09 Jun 2013 15:06:24 +0200 diff --git a/methods/gpgv.cc b/methods/gpgv.cc index 3f814b9f0..fe8bac6c9 100644 --- a/methods/gpgv.cc +++ b/methods/gpgv.cc @@ -55,9 +55,6 @@ string GPGVMethod::VerifyGetSigners(const char *file, const char *outfile, vector &NoPubKeySigners) { bool const Debug = _config->FindB("Debug::Acquire::gpgv", false); - // setup a (empty) stringstream for formating the return value - std::stringstream ret; - ret.str(""); if (Debug == true) std::clog << "inside VerifyGetSigners" << std::endl; @@ -170,18 +167,19 @@ string GPGVMethod::VerifyGetSigners(const char *file, const char *outfile, return ""; } else if (WEXITSTATUS(status) == 1) - { return _("At least one invalid signature was encountered."); - } else if (WEXITSTATUS(status) == 111) + return _("Could not execute 'gpgv' to verify signature (is gpgv installed?)"); + else if (WEXITSTATUS(status) == 112) { - ioprintf(ret, _("Could not execute 'gpgv' to verify signature (is gpgv installed?)")); - return ret.str(); + // acquire system checks for "NODATA" to generate GPG errors (the others are only warnings) + std::string errmsg; + //TRANSLATORS: %s is a single techy word like 'NODATA' + strprintf(errmsg, _("Clearsigned file isn't valid, got '%s' (does the network require authentication?)"), "NODATA"); + return errmsg; } else - { return _("Unknown error executing gpgv"); - } } bool GPGVMethod::Fetch(FetchItem *Itm) diff --git a/test/integration/framework b/test/integration/framework index 3f11ac23b..3a02cfb76 100644 --- a/test/integration/framework +++ b/test/integration/framework @@ -118,6 +118,9 @@ gdb() { echo "gdb: run »$*«" APT_CONFIG=aptconfig.conf LD_LIBRARY_PATH=${BUILDDIRECTORY} $(which gdb) ${BUILDDIRECTORY}/$1 } +http() { + LD_LIBRARY_PATH=${BUILDDIRECTORY} ${BUILDDIRECTORY}/methods/http +} exitwithstatus() { # error if we about to overflow, but ... diff --git a/test/integration/test-ubuntu-bug-346386-apt-get-update-paywall b/test/integration/test-ubuntu-bug-346386-apt-get-update-paywall new file mode 100755 index 000000000..1576c396c --- /dev/null +++ b/test/integration/test-ubuntu-bug-346386-apt-get-update-paywall @@ -0,0 +1,64 @@ +#!/bin/sh +set -e + +TESTDIR=$(readlink -f $(dirname $0)) +. $TESTDIR/framework + +setupenvironment +configarchitecture 'native' + +insertpackage 'unstable' 'unrelated' 'all' '1.0' 'stable' +insertsource 'unstable' 'unrelated' 'all' '1.0' 'stable' + +echo 'ni ni ni' > aptarchive/knights + +setupaptarchive +changetowebserver -o 'aptwebserver::overwrite::.*::filename=/knights' + +msgtest 'Acquire test file from the webserver to check' 'overwrite' +echo '601 Configuration +Config-Item: Acquire::http::DependOnSTDIN=0 + +600 Acquire URI +URI: http://localhost:8080/holygrail +Filename: knights-talking +' | http >/dev/null 2>&1 && msgpass || msgfail +testfileequal knights-talking 'ni ni ni' + +ensure_n_canary_strings_in_dir() { + local DIR="$1" + local CANARY_STRING="$2" + local EXPECTED_N="$3" + + msgtest "Testing in $DIR for $EXPECTED_N canary" "$CANARY_STRING" + local N=$(grep "$CANARY_STRING" $DIR/* 2>/dev/null |wc -l ) + test "$N" = "$EXPECTED_N" && msgpass || msgfail "Expected $EXPECTED_N canaries, got $N" +} + +LISTS='rootdir/var/lib/apt/lists' +rm -rf rootdir/var/lib/apt/lists +msgtest 'Got expected NODATA failure in' 'apt-get update' +aptget update -qq 2>&1 | grep -q 'E: GPG error.*NODATA' && msgpass || msgfail + +ensure_n_canary_strings_in_dir $LISTS 'ni ni ni' 0 +testequal 'partial' ls $LISTS + +# and again with pre-existing files with "valid data" which should remain +for f in Release Release.gpg main_binary-amd64_Packages main_source_Sources; do + echo 'peng neee-wom' > $LISTS/localhost:8080_dists_stable_${f} +done + +msgtest 'Got expected NODATA failure in' 'apt-get update' +aptget update -qq 2>&1 | grep -q 'E: GPG error.*NODATA' && msgpass || msgfail + +ensure_n_canary_strings_in_dir $LISTS 'peng neee-wom' 4 +ensure_n_canary_strings_in_dir $LISTS 'ni ni ni' 0 + +# and now with a pre-existing InRelease file +echo 'peng neee-wom' > $LISTS/localhost:8080_dists_stable_InRelease +rm -f $LISTS/localhost:8080_dists_stable_Release $LISTS/localhost:8080_dists_stable_Release.gpg +msgtest 'excpected failure of' 'apt-get update' +aptget update -qq 2>&1 | grep -q 'E: GPG error.*NODATA' && msgpass || msgfail + +ensure_n_canary_strings_in_dir $LISTS 'peng neee-wom' 3 +ensure_n_canary_strings_in_dir $LISTS 'ni ni ni' 0 diff --git a/test/interactive-helper/aptwebserver.cc b/test/interactive-helper/aptwebserver.cc index de235fa05..05b875673 100644 --- a/test/interactive-helper/aptwebserver.cc +++ b/test/interactive-helper/aptwebserver.cc @@ -435,6 +435,32 @@ int main(int const argc, const char * argv[]) } } + ::Configuration::Item const *Overwrite = _config->Tree("aptwebserver::overwrite"); + if (Overwrite != NULL) + { + for (::Configuration::Item *I = Overwrite->Child; I != NULL; I = I->Next) + { + regex_t *pattern = new regex_t; + int const res = regcomp(pattern, I->Tag.c_str(), REG_EXTENDED | REG_ICASE | REG_NOSUB); + if (res != 0) + { + char error[300]; + regerror(res, pattern, error, sizeof(error)); + sendError(client, 500, *m, sendContent, error); + continue; + } + if (regexec(pattern, filename.c_str(), 0, 0, 0) == 0) + { + filename = _config->Find("aptwebserver::overwrite::" + I->Tag + "::filename", filename); + if (filename[0] == '/') + filename.erase(0,1); + regfree(pattern); + break; + } + regfree(pattern); + } + } + // deal with the request if (RealFileExists(filename) == true) { -- cgit v1.2.3 From 947da3eb4ecaf6b7d64bbcfb656efeff33cff58b Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Thu, 20 Jun 2013 20:21:58 +0200 Subject: fix syntax error in the configure-index The file isn't supposed to be a valid config file, but it should show valid syntax non-the-less. Git-Dch: Ignore --- doc/examples/configure-index | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/examples/configure-index b/doc/examples/configure-index index f75b5738a..f4d9d17f2 100644 --- a/doc/examples/configure-index +++ b/doc/examples/configure-index @@ -225,7 +225,7 @@ Acquire Verify-Peer "false"; SslCert "/etc/apt/some.pem"; CaPath "/etc/ssl/certs"; - Verify-Host" "true"; + Verify-Host "true"; AllowRedirect "true"; Timeout "120"; -- cgit v1.2.3 From 6420c00e30cd9512e045a5370bf391321691ca78 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Mon, 24 Jun 2013 12:29:48 +0200 Subject: do not modify DepIterator as we might check again fixup for 42d51f333e8ef522fed02cdfc48663488d56c3a3 The for-loop iterating over the DepIterators which need configuration can (and will be in 'complicated' situations) run multiple times, so we can't just GlobOr on the DepIterator as it modifies it, so that the next iteration over the list ends up checking another dependency leading us into a 'Internal error, packages left unconfigured. foopkg' maybe or we are 'lucky' and calculate a solution which might break down the line Git-Dch: Ignore --- apt-pkg/packagemanager.cc | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/apt-pkg/packagemanager.cc b/apt-pkg/packagemanager.cc index b8932753d..310934c42 100644 --- a/apt-pkg/packagemanager.cc +++ b/apt-pkg/packagemanager.cc @@ -420,11 +420,14 @@ bool pkgPackageManager::SmartConfigure(PkgIterator Pkg, int const Depth) do { Changed = false; - for (std::list::iterator D = needConfigure.begin(); D != needConfigure.end(); ++D) + for (std::list::const_iterator D = needConfigure.begin(); D != needConfigure.end(); ++D) { - // Compute a single dependency element (glob or) + // Compute a single dependency element (glob or) without modifying D pkgCache::DepIterator Start, End; - D->GlobOr(Start,End); + { + pkgCache::DepIterator Discard = *D; + Discard.GlobOr(Start,End); + } if (End->Type != pkgCache::Dep::Depends) continue; @@ -483,9 +486,8 @@ bool pkgPackageManager::SmartConfigure(PkgIterator Pkg, int const Depth) } - if (Bad == true && Changed == false && Debug == true) - std::clog << OutputInDepth(Depth) << "Could not satisfy " << Start << std::endl; + std::clog << OutputInDepth(Depth) << "Could not satisfy " << *D << std::endl; } if (i++ > max_loops) return _error->Error("Internal error: MaxLoopCount reached in SmartUnPack (2) for %s, aborting", Pkg.FullName().c_str()); -- cgit v1.2.3 From f58a9890e345faa04b5fcb2a01cae39f986a42db Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Mon, 24 Jun 2013 12:51:29 +0200 Subject: fix SHA2* cleanups to zero-out the complete context MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit GCC 4.8 is now clever enough to warn about: contrib/sha2_internal.cc: In function ‘char* SHA256_End(SHA256_CTX*, char*)’: contrib/sha2_internal.cc:656:31: warning: argument to ‘sizeof’ in ‘void* memset(void*, int, size_t)’ call is the same expression as the destination; did you mean to dereference it? [-Wsizeof-pointer-memaccess] MEMSET_BZERO(context, sizeof(context)); So fix it as suggested. Its interesting though that the SHA2* calculation as far as we need it works even without zeroing out. Git-Dch: Ignore --- apt-pkg/contrib/sha2_internal.cc | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/apt-pkg/contrib/sha2_internal.cc b/apt-pkg/contrib/sha2_internal.cc index 83b5a98d3..f84fb761c 100644 --- a/apt-pkg/contrib/sha2_internal.cc +++ b/apt-pkg/contrib/sha2_internal.cc @@ -632,7 +632,7 @@ void SHA256_Final(sha2_byte digest[], SHA256_CTX* context) { } /* Clean up state data: */ - MEMSET_BZERO(context, sizeof(context)); + MEMSET_BZERO(context, sizeof(*context)); usedspace = 0; } @@ -653,7 +653,7 @@ char *SHA256_End(SHA256_CTX* context, char buffer[]) { } *buffer = (char)0; } else { - MEMSET_BZERO(context, sizeof(context)); + MEMSET_BZERO(context, sizeof(*context)); } MEMSET_BZERO(digest, SHA256_DIGEST_LENGTH); return buffer; @@ -969,7 +969,7 @@ void SHA512_Final(sha2_byte digest[], SHA512_CTX* context) { } /* Zero out state data */ - MEMSET_BZERO(context, sizeof(context)); + MEMSET_BZERO(context, sizeof(*context)); } char *SHA512_End(SHA512_CTX* context, char buffer[]) { @@ -989,7 +989,7 @@ char *SHA512_End(SHA512_CTX* context, char buffer[]) { } *buffer = (char)0; } else { - MEMSET_BZERO(context, sizeof(context)); + MEMSET_BZERO(context, sizeof(*context)); } MEMSET_BZERO(digest, SHA512_DIGEST_LENGTH); return buffer; @@ -1044,7 +1044,7 @@ void SHA384_Final(sha2_byte digest[], SHA384_CTX* context) { } /* Zero out state data */ - MEMSET_BZERO(context, sizeof(context)); + MEMSET_BZERO(context, sizeof(*context)); } char *SHA384_End(SHA384_CTX* context, char buffer[]) { @@ -1064,7 +1064,7 @@ char *SHA384_End(SHA384_CTX* context, char buffer[]) { } *buffer = (char)0; } else { - MEMSET_BZERO(context, sizeof(context)); + MEMSET_BZERO(context, sizeof(*context)); } MEMSET_BZERO(digest, SHA384_DIGEST_LENGTH); return buffer; -- cgit v1.2.3 From 24a67e0954716697e87f68384eb415e0e0a5796c Mon Sep 17 00:00:00 2001 From: Niels Thykier Date: Mon, 24 Jun 2013 13:22:54 +0200 Subject: delete Memb on read-error in arfile Git-Dch: Ignore --- apt-inst/contrib/arfile.cc | 3 +++ 1 file changed, 3 insertions(+) diff --git a/apt-inst/contrib/arfile.cc b/apt-inst/contrib/arfile.cc index 2dee1a40d..d7ee528ba 100644 --- a/apt-inst/contrib/arfile.cc +++ b/apt-inst/contrib/arfile.cc @@ -106,7 +106,10 @@ bool ARArchive::LoadHeaders() return _error->Error(_("Invalid archive member header")); } if (File.Read(S,Len) == false) + { + delete Memb; return false; + } S[Len] = 0; Memb->Name = S; Memb->Size -= Len; -- cgit v1.2.3 From e3c62328abbd548bb0da42fdbad954b3ce4f7102 Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Mon, 24 Jun 2013 16:34:38 +0200 Subject: simple fork and pidfile aptwebserver MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Forking only after being ready to accept clients avoids running races with the tests which sometimes failed on the first 'apt-get update' (or similar) with the previous background-start and hope for the best… The commit fixes also some oversight output-order changes in regards to Description-md5 and (I-M-S) race conditions in various tests. Git-Dch: Ignore --- test/integration/Packages-pdiff-usage | 2 ++ test/integration/Packages-pdiff-usage-new | 2 ++ test/integration/Packages-releasefile-verification | 1 + .../Packages-releasefile-verification-new | 1 + test/integration/framework | 18 ++++++++--- .../test-bug-590041-prefer-non-virtual-packages | 2 ++ .../test-bug-601016-description-translation | 31 +++++++++++------- .../test-cve-2013-1051-InRelease-parsing | 2 +- test/integration/test-pdiff-usage | 2 +- test/integration/test-releasefile-verification | 4 +-- test/interactive-helper/aptwebserver.cc | 37 ++++++++++++++++++++++ 11 files changed, 83 insertions(+), 19 deletions(-) diff --git a/test/integration/Packages-pdiff-usage b/test/integration/Packages-pdiff-usage index d1530a95c..ac962f29a 100644 --- a/test/integration/Packages-pdiff-usage +++ b/test/integration/Packages-pdiff-usage @@ -19,6 +19,7 @@ Description: Advanced front-end for dpkg . APT features complete installation ordering, multiple source capability and several other unique features, see the Users Guide in apt-doc. +Description-md5: d41ee493aa9fcc6cbc9ce4eb7069959c Package: oldstuff Version: 1.0 @@ -32,3 +33,4 @@ SHA1: 3c695e028f74d5c544deeddaaa1242desa81088c SHA256: b46fd1546151c545fe4bfa56a5cc0e7deaef23e2da3e4f129727fd660f28f050 Description: some cool but old stuff This package will disappear in the next mirror update +Description-md5: 1948af60eda0a41dfa9fe83f60eb8389 diff --git a/test/integration/Packages-pdiff-usage-new b/test/integration/Packages-pdiff-usage-new index 4f374b37f..f8d7b1958 100644 --- a/test/integration/Packages-pdiff-usage-new +++ b/test/integration/Packages-pdiff-usage-new @@ -22,6 +22,7 @@ Description: Advanced front-end for dpkg . APT features complete installation ordering, multiple source capability and several other unique features, see the Users Guide in apt-doc. +Description-md5: d41ee493aa9fcc6cbc9ce4eb7069959c Package: newstuff Version: 1.0 @@ -35,3 +36,4 @@ SHA1: 3c695e028f7a1ae324deeddaaa1242desa81088c SHA256: b46fd154615edefab321cc56a5cc0e7deaef23e2da3e4f129727fd660f28f050 Description: some cool and shiny new stuff This package will appear in the next mirror update +Description-md5: d5f89fbbc2ac69c43d7e4c9b67d82b6b diff --git a/test/integration/Packages-releasefile-verification b/test/integration/Packages-releasefile-verification index 29a385f4f..eb7327279 100644 --- a/test/integration/Packages-releasefile-verification +++ b/test/integration/Packages-releasefile-verification @@ -16,3 +16,4 @@ Description: Advanced front-end for dpkg . APT features complete installation ordering, multiple source capability and several other unique features, see the Users Guide in apt-doc. +Description-md5: d41ee493aa9fcc6cbc9ce4eb7069959c diff --git a/test/integration/Packages-releasefile-verification-new b/test/integration/Packages-releasefile-verification-new index e3b2edf1f..61509d157 100644 --- a/test/integration/Packages-releasefile-verification-new +++ b/test/integration/Packages-releasefile-verification-new @@ -19,3 +19,4 @@ Description: Advanced front-end for dpkg . APT features complete installation ordering, multiple source capability and several other unique features, see the Users Guide in apt-doc. +Description-md5: d41ee493aa9fcc6cbc9ce4eb7069959c diff --git a/test/integration/framework b/test/integration/framework index 3a02cfb76..7dd7c20a7 100644 --- a/test/integration/framework +++ b/test/integration/framework @@ -605,9 +605,12 @@ buildaptarchivefromfiles() { cat ${line} | bzip2 > ${line}.bz2 cat ${line} | xz --format=lzma > ${line}.lzma cat ${line} | xz > ${line}.xz + if [ -n "$1" ]; then + touch -d "$1" ${line}.gz ${line}.bz2 ${line}.lzma ${line}.xz + fi msgdone "info" done - generatereleasefiles + generatereleasefiles "$@" } # can be overridden by testcases for their pleasure @@ -719,7 +722,10 @@ signreleasefiles() { done for RELEASE in $(find aptarchive/ -name Release); do gpg --yes --no-default-keyring $SECKEYS $PUBKEYS --default-key "$SIGNER" -abs -o ${RELEASE}.gpg ${RELEASE} - gpg --yes --no-default-keyring $SECKEYS $PUBKEYS --default-key "$SIGNER" --clearsign -o "$(echo "${RELEASE}" | sed 's#/Release$#/InRelease#')" $RELEASE + local INRELEASE="$(echo "${RELEASE}" | sed 's#/Release$#/InRelease#')" + gpg --yes --no-default-keyring $SECKEYS $PUBKEYS --default-key "$SIGNER" --clearsign -o $INRELEASE $RELEASE + # we might have set a specific date for the Release file, so copy it + touch -d "$(stat --format "%y" ${RELEASE})" ${RELEASE}.gpg ${INRELEASE} done msgdone "info" } @@ -728,8 +734,12 @@ changetowebserver() { local LOG='/dev/null' if test -x ${BUILDDIRECTORY}/aptwebserver; then cd aptarchive - LD_LIBRARY_PATH=${BUILDDIRECTORY} ${BUILDDIRECTORY}/aptwebserver "$@" >$LOG 2>&1 & - addtrap "kill $!;" + LD_LIBRARY_PATH=${BUILDDIRECTORY} ${BUILDDIRECTORY}/aptwebserver -o aptwebserver::fork=1 "$@" >$LOG 2>&1 + local PID="$(cat aptwebserver.pid)" + if [ -z "$PID" ]; then + msgdie 'Could not fork aptwebserver successfully' + fi + addtrap "kill $PID;" cd - > /dev/null elif [ $# -gt 0 ]; then msgdie 'Need the aptwebserver when passing arguments for the webserver' diff --git a/test/integration/test-bug-590041-prefer-non-virtual-packages b/test/integration/test-bug-590041-prefer-non-virtual-packages index e0dd7737f..0ce4c1413 100755 --- a/test/integration/test-bug-590041-prefer-non-virtual-packages +++ b/test/integration/test-bug-590041-prefer-non-virtual-packages @@ -9,6 +9,7 @@ pkglibc6="Package: libc6 Architecture: armel Version: 2.11.2-2~0.3 Description: Embedded GNU C Library: Shared libraries +Description-md5: b8c1e0561b75e2dc6b6482a99079c3e4 Filename: pool/main/e/eglibc/libc6_2.11.2-2_armel.deb Installed-Size: 9740 MD5sum: f5b878ce5fb8aa01a7927fa1460df537 @@ -25,6 +26,7 @@ Architecture: i386 Version: 2.1.3-13~0.3 Replaces: libc6 (<< 2.2.5-13~0.3) Description: The Berkeley database routines [glibc 2.0/2.1 compatibility] +Description-md5: de1876f7fe7f7709a110875e145e38a8 Filename: pool/main/d/db1-compat/libdb1-compat_2.1.3-13_armel.deb Installed-Size: 136 MD5sum: 4043f176ab2b40b0c01bc1211b8c103c diff --git a/test/integration/test-bug-601016-description-translation b/test/integration/test-bug-601016-description-translation index 03fddbfda..33c209e9d 100755 --- a/test/integration/test-bug-601016-description-translation +++ b/test/integration/test-bug-601016-description-translation @@ -9,8 +9,9 @@ configarchitecture 'i386' 'amd64' # we need a valid locale here, otherwise the language configuration # will be overridden by LC_ALL=C LOCALE="$(echo "$LANG" | cut -d'_' -f 1)" +MD5Sum='Description-md5: d41ee493aa9fcc6cbc9ce4eb7069959c' -PACKAGESTANZA="Package: apt +PACKAGESTANZA='Package: apt Priority: important Section: admin Installed-Size: 5984 @@ -19,8 +20,7 @@ Architecture: i386 Version: 0.8.7 Filename: pool/main/a/apt/apt_0.8.7_i386.deb Size: 2140230 -MD5sum: 74769bfbcef9ebc4fa74f7a5271b9c08 -Description-md5: d41ee493aa9fcc6cbc9ce4eb7069959c" +MD5sum: 74769bfbcef9ebc4fa74f7a5271b9c08' PACKAGESTANZA2='Package: apt Priority: important @@ -31,22 +31,23 @@ Architecture: amd64 Version: 0.8.7 Filename: pool/main/a/apt/apt_0.8.7_amd64.deb Size: 2210342 -MD5sum: 4a869bfbdef9ebc9fa74f7a5271e8d1a -Description-md5: d41ee493aa9fcc6cbc9ce4eb7069959c' +MD5sum: 4a869bfbdef9ebc9fa74f7a5271e8d1a' echo "$PACKAGESTANZA Description: Advanced front-end for dpkg +$MD5Sum $PACKAGESTANZA2 -Description: Advanced front-end for dpkg" > aptarchive/Packages +Description: Advanced front-end for dpkg +$MD5Sum" > aptarchive/Packages echo "Package: apt -Description-md5: d41ee493aa9fcc6cbc9ce4eb7069959c Description-${LOCALE}: Mächtige Oberfläche für dpkg Das Paket bietet dem Nutzer technisch führende Methoden für den Zugriff auf den dpkg-Paketmanager. Es beinhaltet das apt-get-Werkzeug und die APT-Dselect-Methode. Beides sind einfache und sicherere Wege, - um Pakete zu installieren und Upgrades durchzuführen." | bzip2 > aptarchive/${LOCALE}.bz2 + um Pakete zu installieren und Upgrades durchzuführen. +$MD5Sum" | bzip2 > aptarchive/${LOCALE}.bz2 # the $LOCALE translation file will not be included as it is a flat archive it came from and therefore # its name can not be guessed correctly… (in non-flat archives the files are called Translation-*) @@ -54,10 +55,12 @@ echo 'APT::Cache::Generate "false";' > rootdir/etc/apt/apt.conf.d/00nogenerate NOLONGSTANZA="$PACKAGESTANZA Description: Advanced front-end for dpkg +$MD5Sum " ENGLISHSTANZA="$PACKAGESTANZA Description: Advanced front-end for dpkg +$MD5Sum " LOCALESTANZA="$PACKAGESTANZA @@ -66,6 +69,7 @@ Description-${LOCALE}: Mächtige Oberfläche für dpkg auf den dpkg-Paketmanager. Es beinhaltet das apt-get-Werkzeug und die APT-Dselect-Methode. Beides sind einfache und sicherere Wege, um Pakete zu installieren und Upgrades durchzuführen. +$MD5Sum " LOCALESTANZA2="$PACKAGESTANZA2 Description-${LOCALE}: Mächtige Oberfläche für dpkg @@ -73,6 +77,7 @@ Description-${LOCALE}: Mächtige Oberfläche für dpkg auf den dpkg-Paketmanager. Es beinhaltet das apt-get-Werkzeug und die APT-Dselect-Methode. Beides sind einfache und sicherere Wege, um Pakete zu installieren und Upgrades durchzuführen. +$MD5Sum " testrun() { @@ -97,28 +102,32 @@ testrun echo "$PACKAGESTANZA Description: Advanced front-end for dpkg +$MD5Sum $PACKAGESTANZA2 -Description: Advanced front-end for dpkg" > aptarchive/Packages +Description: Advanced front-end for dpkg +$MD5Sum" > aptarchive/Packages echo "Package: apt -Description-md5: d41ee493aa9fcc6cbc9ce4eb7069959c Description-en: Advanced front-end for dpkg This is Debian's next generation front-end for the dpkg package manager. It provides the apt-get utility and APT dselect method that provides a - simpler, safer way to install and upgrade packages." | bzip2 > aptarchive/en.bz2 + simpler, safer way to install and upgrade packages. +$MD5Sum" | bzip2 > aptarchive/en.bz2 ENGLISHSTANZA="$PACKAGESTANZA Description-en: Advanced front-end for dpkg This is Debian's next generation front-end for the dpkg package manager. It provides the apt-get utility and APT dselect method that provides a simpler, safer way to install and upgrade packages. +$MD5Sum " ENGLISHSTANZA2="$PACKAGESTANZA2 Description-en: Advanced front-end for dpkg This is Debian's next generation front-end for the dpkg package manager. It provides the apt-get utility and APT dselect method that provides a simpler, safer way to install and upgrade packages. +$MD5Sum " testrun diff --git a/test/integration/test-cve-2013-1051-InRelease-parsing b/test/integration/test-cve-2013-1051-InRelease-parsing index 853da5ff6..6764fefff 100755 --- a/test/integration/test-cve-2013-1051-InRelease-parsing +++ b/test/integration/test-cve-2013-1051-InRelease-parsing @@ -37,7 +37,7 @@ sed -i '/^-----BEGIN PGP SIGNATURE-----/,/^-----END PGP SIGNATURE-----/ s/^$/ / # we append the (evil unsigned) Release file to the (good signed) InRelease cat aptarchive/dists/stable/Release >> aptarchive/dists/stable/InRelease - +touch -d '+1hour' aptarchive/dists/stable/InRelease # ensure the update fails # useful for debugging to add "-o Debug::pkgAcquire::auth=true" diff --git a/test/integration/test-pdiff-usage b/test/integration/test-pdiff-usage index 29301d07d..e45326970 100755 --- a/test/integration/test-pdiff-usage +++ b/test/integration/test-pdiff-usage @@ -35,7 +35,7 @@ SHA1-History: SHA1-Patches: 7651fc0ac57cd83d41c63195a9342e2db5650257 19722 2010-08-18-0814.28 $(sha1sum $PATCHFILE | cut -d' ' -f 1) $(stat -c%s $PATCHFILE) $(basename $PATCHFILE)" > $PATCHINDEX -generatereleasefiles +generatereleasefiles '+1hour' signreleasefiles find aptarchive -name 'Packages*' -type f -delete aptget update -qq diff --git a/test/integration/test-releasefile-verification b/test/integration/test-releasefile-verification index fba7ab290..e56f458d3 100755 --- a/test/integration/test-releasefile-verification +++ b/test/integration/test-releasefile-verification @@ -184,5 +184,5 @@ runtest2 DELETEFILE="InRelease" runtest -#DELETEFILE="Release.gpg" -#runtest +DELETEFILE="Release.gpg" +runtest diff --git a/test/interactive-helper/aptwebserver.cc b/test/interactive-helper/aptwebserver.cc index 05b875673..a8d191d0e 100644 --- a/test/interactive-helper/aptwebserver.cc +++ b/test/interactive-helper/aptwebserver.cc @@ -387,6 +387,41 @@ int main(int const argc, const char * argv[]) return 2; } + FileFd pidfile; + if (_config->FindB("aptwebserver::fork", false) == true) + { + std::string const pidfilename = _config->Find("aptwebserver::pidfile", "aptwebserver.pid"); + int const pidfilefd = GetLock(pidfilename); + if (pidfilefd < 0 || pidfile.OpenDescriptor(pidfilefd, FileFd::WriteOnly) == false) + { + _error->Errno("aptwebserver", "Couldn't acquire lock on pidfile '%s'", pidfilename.c_str()); + _error->DumpErrors(std::cerr); + return 3; + } + + pid_t child = fork(); + if (child < 0) + { + _error->Errno("aptwebserver", "Forking failed"); + _error->DumpErrors(std::cerr); + return 4; + } + else if (child != 0) + { + // successfully forked: ready to serve! + std::string pidcontent; + strprintf(pidcontent, "%d", child); + pidfile.Write(pidcontent.c_str(), pidcontent.size()); + if (_error->PendingError() == true) + { + _error->DumpErrors(std::cerr); + return 5; + } + std::cout << "Successfully forked as " << child << std::endl; + return 0; + } + } + std::clog << "Serving ANY file on port: " << port << std::endl; listen(sock, 1); @@ -502,5 +537,7 @@ int main(int const argc, const char * argv[]) << " on socket " << sock << std::endl; close(client); } + pidfile.Close(); + return 0; } -- cgit v1.2.3