summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbubulle@debian.org <>2006-08-21 10:55:15 -0500
committerbubulle@debian.org <>2006-08-21 10:55:15 -0500
commit3784e34677882fbea8538baa1c25b0d35abf429a (patch)
tree2c4d4f7c81d6126fdce3b1c4665c7f80efb0fb74
parent8fa7672020f75a9ec7d3ffcfd8c8f3aad6f159b7 (diff)
parent02b7ddb1404fa3969bceb03a5f35107884027ba6 (diff)
Merge with Michael and resolve conflicts
-rw-r--r--apt-inst/contrib/extracttar.cc3
-rw-r--r--apt-pkg/acquire-item.cc2
-rw-r--r--apt-pkg/contrib/hashes.cc1
-rw-r--r--apt-pkg/contrib/hashes.h4
-rw-r--r--apt-pkg/contrib/sha256.cc424
-rw-r--r--apt-pkg/contrib/sha256.h75
-rw-r--r--apt-pkg/deb/dpkgpm.cc8
-rw-r--r--apt-pkg/makefile4
-rw-r--r--apt-pkg/tagfile.cc118
-rw-r--r--apt-pkg/tagfile.h5
-rw-r--r--cmdline/apt-get.cc132
-rw-r--r--configure.in2
-rw-r--r--debian/changelog78
-rw-r--r--debian/control2
-rw-r--r--doc/apt-cache.8.xml2
-rw-r--r--doc/apt-get.8.xml2
-rw-r--r--doc/apt.ent1
-rw-r--r--doc/examples/configure-index1
-rw-r--r--ftparchive/cachedb.cc269
-rw-r--r--ftparchive/cachedb.h40
-rw-r--r--ftparchive/writer.cc104
-rw-r--r--ftparchive/writer.h8
-rw-r--r--methods/gpgv.cc8
-rw-r--r--methods/http.cc2
-rw-r--r--po/apt-all.pot175
-rw-r--r--po/bg.po8
-rw-r--r--po/bs.po8
-rw-r--r--po/ca.po8
-rw-r--r--po/cs.po8
-rw-r--r--po/cy.po8
-rw-r--r--po/da.po8
-rw-r--r--po/de.po8
-rw-r--r--po/el.po8
-rw-r--r--po/en_GB.po8
-rw-r--r--po/es.po8
-rw-r--r--po/fr.po8
-rw-r--r--po/gl.po10
-rw-r--r--po/hu.po455
-rw-r--r--po/it.po8
-rw-r--r--po/ja.po8
-rw-r--r--po/ko.po426
-rw-r--r--po/nb.po8
-rw-r--r--po/nl.po8
-rw-r--r--po/nn.po8
-rw-r--r--po/pl.po8
-rw-r--r--po/pt.po8
-rw-r--r--po/pt_BR.po8
-rw-r--r--po/ro.po64
-rw-r--r--po/ru.po8
-rw-r--r--po/sk.po9
-rw-r--r--po/sl.po8
-rw-r--r--po/tl.po8
-rw-r--r--po/zh_CN.po8
-rw-r--r--po/zh_TW.po8
-rw-r--r--test/hash.cc7
55 files changed, 1753 insertions, 880 deletions
diff --git a/apt-inst/contrib/extracttar.cc b/apt-inst/contrib/extracttar.cc
index d6da802fe..062c06fa4 100644
--- a/apt-inst/contrib/extracttar.cc
+++ b/apt-inst/contrib/extracttar.cc
@@ -136,7 +136,8 @@ bool ExtractTar::StartGzip()
const char *Args[3];
string confvar = string("dir::bin::") + DecompressProg;
- Args[0] = _config->Find(confvar.c_str(),DecompressProg.c_str()).c_str();
+ string argv0 = _config->Find(confvar.c_str(),DecompressProg.c_str());
+ Args[0] = argv0.c_str();
Args[1] = "-d";
Args[2] = 0;
execvp(Args[0],(char **)Args);
diff --git a/apt-pkg/acquire-item.cc b/apt-pkg/acquire-item.cc
index 1fa929aad..421288007 100644
--- a/apt-pkg/acquire-item.cc
+++ b/apt-pkg/acquire-item.cc
@@ -149,7 +149,7 @@ pkgAcqIndex::pkgAcqIndex(pkgAcquire *Owner,
if(comprExt.empty())
{
// autoselect the compression method
- if(FileExists("/usr/bin/bzip2"))
+ if(FileExists("/bin/bzip2"))
CompressionExtension = ".bz2";
else
CompressionExtension = ".gz";
diff --git a/apt-pkg/contrib/hashes.cc b/apt-pkg/contrib/hashes.cc
index b17b94319..9b22a90d3 100644
--- a/apt-pkg/contrib/hashes.cc
+++ b/apt-pkg/contrib/hashes.cc
@@ -36,6 +36,7 @@ bool Hashes::AddFD(int Fd,unsigned long Size)
Size -= Res;
MD5.Add(Buf,Res);
SHA1.Add(Buf,Res);
+ SHA256.Add(Buf,Res);
}
return true;
}
diff --git a/apt-pkg/contrib/hashes.h b/apt-pkg/contrib/hashes.h
index 40bbe00a0..eefa7bf41 100644
--- a/apt-pkg/contrib/hashes.h
+++ b/apt-pkg/contrib/hashes.h
@@ -19,6 +19,7 @@
#include <apt-pkg/md5.h>
#include <apt-pkg/sha1.h>
+#include <apt-pkg/sha256.h>
#include <algorithm>
@@ -30,10 +31,11 @@ class Hashes
MD5Summation MD5;
SHA1Summation SHA1;
+ SHA256Summation SHA256;
inline bool Add(const unsigned char *Data,unsigned long Size)
{
- return MD5.Add(Data,Size) && SHA1.Add(Data,Size);
+ return MD5.Add(Data,Size) && SHA1.Add(Data,Size) && SHA256.Add(Data,Size);
};
inline bool Add(const char *Data) {return Add((unsigned char *)Data,strlen(Data));};
bool AddFD(int Fd,unsigned long Size);
diff --git a/apt-pkg/contrib/sha256.cc b/apt-pkg/contrib/sha256.cc
new file mode 100644
index 000000000..b75ce8a84
--- /dev/null
+++ b/apt-pkg/contrib/sha256.cc
@@ -0,0 +1,424 @@
+/*
+ * Cryptographic API.
+ *
+ * SHA-256, as specified in
+ * http://csrc.nist.gov/cryptval/shs/sha256-384-512.pdf
+ *
+ * SHA-256 code by Jean-Luc Cooke <jlcooke@certainkey.com>.
+ *
+ * Copyright (c) Jean-Luc Cooke <jlcooke@certainkey.com>
+ * Copyright (c) Andrew McDonald <andrew@mcdonald.org.uk>
+ * Copyright (c) 2002 James Morris <jmorris@intercode.com.au>
+ *
+ * Ported from the Linux kernel to Apt by Anthony Towns <ajt@debian.org>
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the Free
+ * Software Foundation; either version 2 of the License, or (at your option)
+ * any later version.
+ *
+ */
+#define SHA256_DIGEST_SIZE 32
+#define SHA256_HMAC_BLOCK_SIZE 64
+
+#define ror32(value,bits) (((value) >> (bits)) | ((value) << (32 - (bits))))
+
+#include <apt-pkg/sha256.h>
+#include <apt-pkg/strutl.h>
+#include <string.h>
+#include <unistd.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <stdio.h>
+#include <arpa/inet.h>
+
+typedef uint32_t u32;
+typedef uint8_t u8;
+
+static inline u32 Ch(u32 x, u32 y, u32 z)
+{
+ return z ^ (x & (y ^ z));
+}
+
+static inline u32 Maj(u32 x, u32 y, u32 z)
+{
+ return (x & y) | (z & (x | y));
+}
+
+#define e0(x) (ror32(x, 2) ^ ror32(x,13) ^ ror32(x,22))
+#define e1(x) (ror32(x, 6) ^ ror32(x,11) ^ ror32(x,25))
+#define s0(x) (ror32(x, 7) ^ ror32(x,18) ^ (x >> 3))
+#define s1(x) (ror32(x,17) ^ ror32(x,19) ^ (x >> 10))
+
+#define H0 0x6a09e667
+#define H1 0xbb67ae85
+#define H2 0x3c6ef372
+#define H3 0xa54ff53a
+#define H4 0x510e527f
+#define H5 0x9b05688c
+#define H6 0x1f83d9ab
+#define H7 0x5be0cd19
+
+static inline void LOAD_OP(int I, u32 *W, const u8 *input)
+{
+ W[I] = ( ((u32) input[I * 4 + 0] << 24)
+ | ((u32) input[I * 4 + 1] << 16)
+ | ((u32) input[I * 4 + 2] << 8)
+ | ((u32) input[I * 4 + 3]));
+}
+
+static inline void BLEND_OP(int I, u32 *W)
+{
+ W[I] = s1(W[I-2]) + W[I-7] + s0(W[I-15]) + W[I-16];
+}
+
+static void sha256_transform(u32 *state, const u8 *input)
+{
+ u32 a, b, c, d, e, f, g, h, t1, t2;
+ u32 W[64];
+ int i;
+
+ /* load the input */
+ for (i = 0; i < 16; i++)
+ LOAD_OP(i, W, input);
+
+ /* now blend */
+ for (i = 16; i < 64; i++)
+ BLEND_OP(i, W);
+
+ /* load the state into our registers */
+ a=state[0]; b=state[1]; c=state[2]; d=state[3];
+ e=state[4]; f=state[5]; g=state[6]; h=state[7];
+
+ /* now iterate */
+ t1 = h + e1(e) + Ch(e,f,g) + 0x428a2f98 + W[ 0];
+ t2 = e0(a) + Maj(a,b,c); d+=t1; h=t1+t2;
+ t1 = g + e1(d) + Ch(d,e,f) + 0x71374491 + W[ 1];
+ t2 = e0(h) + Maj(h,a,b); c+=t1; g=t1+t2;
+ t1 = f + e1(c) + Ch(c,d,e) + 0xb5c0fbcf + W[ 2];
+ t2 = e0(g) + Maj(g,h,a); b+=t1; f=t1+t2;
+ t1 = e + e1(b) + Ch(b,c,d) + 0xe9b5dba5 + W[ 3];
+ t2 = e0(f) + Maj(f,g,h); a+=t1; e=t1+t2;
+ t1 = d + e1(a) + Ch(a,b,c) + 0x3956c25b + W[ 4];
+ t2 = e0(e) + Maj(e,f,g); h+=t1; d=t1+t2;
+ t1 = c + e1(h) + Ch(h,a,b) + 0x59f111f1 + W[ 5];
+ t2 = e0(d) + Maj(d,e,f); g+=t1; c=t1+t2;
+ t1 = b + e1(g) + Ch(g,h,a) + 0x923f82a4 + W[ 6];
+ t2 = e0(c) + Maj(c,d,e); f+=t1; b=t1+t2;
+ t1 = a + e1(f) + Ch(f,g,h) + 0xab1c5ed5 + W[ 7];
+ t2 = e0(b) + Maj(b,c,d); e+=t1; a=t1+t2;
+
+ t1 = h + e1(e) + Ch(e,f,g) + 0xd807aa98 + W[ 8];
+ t2 = e0(a) + Maj(a,b,c); d+=t1; h=t1+t2;
+ t1 = g + e1(d) + Ch(d,e,f) + 0x12835b01 + W[ 9];
+ t2 = e0(h) + Maj(h,a,b); c+=t1; g=t1+t2;
+ t1 = f + e1(c) + Ch(c,d,e) + 0x243185be + W[10];
+ t2 = e0(g) + Maj(g,h,a); b+=t1; f=t1+t2;
+ t1 = e + e1(b) + Ch(b,c,d) + 0x550c7dc3 + W[11];
+ t2 = e0(f) + Maj(f,g,h); a+=t1; e=t1+t2;
+ t1 = d + e1(a) + Ch(a,b,c) + 0x72be5d74 + W[12];
+ t2 = e0(e) + Maj(e,f,g); h+=t1; d=t1+t2;
+ t1 = c + e1(h) + Ch(h,a,b) + 0x80deb1fe + W[13];
+ t2 = e0(d) + Maj(d,e,f); g+=t1; c=t1+t2;
+ t1 = b + e1(g) + Ch(g,h,a) + 0x9bdc06a7 + W[14];
+ t2 = e0(c) + Maj(c,d,e); f+=t1; b=t1+t2;
+ t1 = a + e1(f) + Ch(f,g,h) + 0xc19bf174 + W[15];
+ t2 = e0(b) + Maj(b,c,d); e+=t1; a=t1+t2;
+
+ t1 = h + e1(e) + Ch(e,f,g) + 0xe49b69c1 + W[16];
+ t2 = e0(a) + Maj(a,b,c); d+=t1; h=t1+t2;
+ t1 = g + e1(d) + Ch(d,e,f) + 0xefbe4786 + W[17];
+ t2 = e0(h) + Maj(h,a,b); c+=t1; g=t1+t2;
+ t1 = f + e1(c) + Ch(c,d,e) + 0x0fc19dc6 + W[18];
+ t2 = e0(g) + Maj(g,h,a); b+=t1; f=t1+t2;
+ t1 = e + e1(b) + Ch(b,c,d) + 0x240ca1cc + W[19];
+ t2 = e0(f) + Maj(f,g,h); a+=t1; e=t1+t2;
+ t1 = d + e1(a) + Ch(a,b,c) + 0x2de92c6f + W[20];
+ t2 = e0(e) + Maj(e,f,g); h+=t1; d=t1+t2;
+ t1 = c + e1(h) + Ch(h,a,b) + 0x4a7484aa + W[21];
+ t2 = e0(d) + Maj(d,e,f); g+=t1; c=t1+t2;
+ t1 = b + e1(g) + Ch(g,h,a) + 0x5cb0a9dc + W[22];
+ t2 = e0(c) + Maj(c,d,e); f+=t1; b=t1+t2;
+ t1 = a + e1(f) + Ch(f,g,h) + 0x76f988da + W[23];
+ t2 = e0(b) + Maj(b,c,d); e+=t1; a=t1+t2;
+
+ t1 = h + e1(e) + Ch(e,f,g) + 0x983e5152 + W[24];
+ t2 = e0(a) + Maj(a,b,c); d+=t1; h=t1+t2;
+ t1 = g + e1(d) + Ch(d,e,f) + 0xa831c66d + W[25];
+ t2 = e0(h) + Maj(h,a,b); c+=t1; g=t1+t2;
+ t1 = f + e1(c) + Ch(c,d,e) + 0xb00327c8 + W[26];
+ t2 = e0(g) + Maj(g,h,a); b+=t1; f=t1+t2;
+ t1 = e + e1(b) + Ch(b,c,d) + 0xbf597fc7 + W[27];
+ t2 = e0(f) + Maj(f,g,h); a+=t1; e=t1+t2;
+ t1 = d + e1(a) + Ch(a,b,c) + 0xc6e00bf3 + W[28];
+ t2 = e0(e) + Maj(e,f,g); h+=t1; d=t1+t2;
+ t1 = c + e1(h) + Ch(h,a,b) + 0xd5a79147 + W[29];
+ t2 = e0(d) + Maj(d,e,f); g+=t1; c=t1+t2;
+ t1 = b + e1(g) + Ch(g,h,a) + 0x06ca6351 + W[30];
+ t2 = e0(c) + Maj(c,d,e); f+=t1; b=t1+t2;
+ t1 = a + e1(f) + Ch(f,g,h) + 0x14292967 + W[31];
+ t2 = e0(b) + Maj(b,c,d); e+=t1; a=t1+t2;
+
+ t1 = h + e1(e) + Ch(e,f,g) + 0x27b70a85 + W[32];
+ t2 = e0(a) + Maj(a,b,c); d+=t1; h=t1+t2;
+ t1 = g + e1(d) + Ch(d,e,f) + 0x2e1b2138 + W[33];
+ t2 = e0(h) + Maj(h,a,b); c+=t1; g=t1+t2;
+ t1 = f + e1(c) + Ch(c,d,e) + 0x4d2c6dfc + W[34];
+ t2 = e0(g) + Maj(g,h,a); b+=t1; f=t1+t2;
+ t1 = e + e1(b) + Ch(b,c,d) + 0x53380d13 + W[35];
+ t2 = e0(f) + Maj(f,g,h); a+=t1; e=t1+t2;
+ t1 = d + e1(a) + Ch(a,b,c) + 0x650a7354 + W[36];
+ t2 = e0(e) + Maj(e,f,g); h+=t1; d=t1+t2;
+ t1 = c + e1(h) + Ch(h,a,b) + 0x766a0abb + W[37];
+ t2 = e0(d) + Maj(d,e,f); g+=t1; c=t1+t2;
+ t1 = b + e1(g) + Ch(g,h,a) + 0x81c2c92e + W[38];
+ t2 = e0(c) + Maj(c,d,e); f+=t1; b=t1+t2;
+ t1 = a + e1(f) + Ch(f,g,h) + 0x92722c85 + W[39];
+ t2 = e0(b) + Maj(b,c,d); e+=t1; a=t1+t2;
+
+ t1 = h + e1(e) + Ch(e,f,g) + 0xa2bfe8a1 + W[40];
+ t2 = e0(a) + Maj(a,b,c); d+=t1; h=t1+t2;
+ t1 = g + e1(d) + Ch(d,e,f) + 0xa81a664b + W[41];
+ t2 = e0(h) + Maj(h,a,b); c+=t1; g=t1+t2;
+ t1 = f + e1(c) + Ch(c,d,e) + 0xc24b8b70 + W[42];
+ t2 = e0(g) + Maj(g,h,a); b+=t1; f=t1+t2;
+ t1 = e + e1(b) + Ch(b,c,d) + 0xc76c51a3 + W[43];
+ t2 = e0(f) + Maj(f,g,h); a+=t1; e=t1+t2;
+ t1 = d + e1(a) + Ch(a,b,c) + 0xd192e819 + W[44];
+ t2 = e0(e) + Maj(e,f,g); h+=t1; d=t1+t2;
+ t1 = c + e1(h) + Ch(h,a,b) + 0xd6990624 + W[45];
+ t2 = e0(d) + Maj(d,e,f); g+=t1; c=t1+t2;
+ t1 = b + e1(g) + Ch(g,h,a) + 0xf40e3585 + W[46];
+ t2 = e0(c) + Maj(c,d,e); f+=t1; b=t1+t2;
+ t1 = a + e1(f) + Ch(f,g,h) + 0x106aa070 + W[47];
+ t2 = e0(b) + Maj(b,c,d); e+=t1; a=t1+t2;
+
+ t1 = h + e1(e) + Ch(e,f,g) + 0x19a4c116 + W[48];
+ t2 = e0(a) + Maj(a,b,c); d+=t1; h=t1+t2;
+ t1 = g + e1(d) + Ch(d,e,f) + 0x1e376c08 + W[49];
+ t2 = e0(h) + Maj(h,a,b); c+=t1; g=t1+t2;
+ t1 = f + e1(c) + Ch(c,d,e) + 0x2748774c + W[50];
+ t2 = e0(g) + Maj(g,h,a); b+=t1; f=t1+t2;
+ t1 = e + e1(b) + Ch(b,c,d) + 0x34b0bcb5 + W[51];
+ t2 = e0(f) + Maj(f,g,h); a+=t1; e=t1+t2;
+ t1 = d + e1(a) + Ch(a,b,c) + 0x391c0cb3 + W[52];
+ t2 = e0(e) + Maj(e,f,g); h+=t1; d=t1+t2;
+ t1 = c + e1(h) + Ch(h,a,b) + 0x4ed8aa4a + W[53];
+ t2 = e0(d) + Maj(d,e,f); g+=t1; c=t1+t2;
+ t1 = b + e1(g) + Ch(g,h,a) + 0x5b9cca4f + W[54];
+ t2 = e0(c) + Maj(c,d,e); f+=t1; b=t1+t2;
+ t1 = a + e1(f) + Ch(f,g,h) + 0x682e6ff3 + W[55];
+ t2 = e0(b) + Maj(b,c,d); e+=t1; a=t1+t2;
+
+ t1 = h + e1(e) + Ch(e,f,g) + 0x748f82ee + W[56];
+ t2 = e0(a) + Maj(a,b,c); d+=t1; h=t1+t2;
+ t1 = g + e1(d) + Ch(d,e,f) + 0x78a5636f + W[57];
+ t2 = e0(h) + Maj(h,a,b); c+=t1; g=t1+t2;
+ t1 = f + e1(c) + Ch(c,d,e) + 0x84c87814 + W[58];
+ t2 = e0(g) + Maj(g,h,a); b+=t1; f=t1+t2;
+ t1 = e + e1(b) + Ch(b,c,d) + 0x8cc70208 + W[59];
+ t2 = e0(f) + Maj(f,g,h); a+=t1; e=t1+t2;
+ t1 = d + e1(a) + Ch(a,b,c) + 0x90befffa + W[60];
+ t2 = e0(e) + Maj(e,f,g); h+=t1; d=t1+t2;
+ t1 = c + e1(h) + Ch(h,a,b) + 0xa4506ceb + W[61];
+ t2 = e0(d) + Maj(d,e,f); g+=t1; c=t1+t2;
+ t1 = b + e1(g) + Ch(g,h,a) + 0xbef9a3f7 + W[62];
+ t2 = e0(c) + Maj(c,d,e); f+=t1; b=t1+t2;
+ t1 = a + e1(f) + Ch(f,g,h) + 0xc67178f2 + W[63];
+ t2 = e0(b) + Maj(b,c,d); e+=t1; a=t1+t2;
+
+ state[0] += a; state[1] += b; state[2] += c; state[3] += d;
+ state[4] += e; state[5] += f; state[6] += g; state[7] += h;
+
+ /* clear any sensitive info... */
+ a = b = c = d = e = f = g = h = t1 = t2 = 0;
+ memset(W, 0, 64 * sizeof(u32));
+}
+
+SHA256Summation::SHA256Summation()
+{
+ Sum.state[0] = H0;
+ Sum.state[1] = H1;
+ Sum.state[2] = H2;
+ Sum.state[3] = H3;
+ Sum.state[4] = H4;
+ Sum.state[5] = H5;
+ Sum.state[6] = H6;
+ Sum.state[7] = H7;
+ Sum.count[0] = Sum.count[1] = 0;
+ memset(Sum.buf, 0, sizeof(Sum.buf));
+ Done = false;
+}
+
+bool SHA256Summation::Add(const u8 *data, unsigned long len)
+{
+ struct sha256_ctx *sctx = &Sum;
+ unsigned int i, index, part_len;
+
+ if (Done) return false;
+
+ /* Compute number of bytes mod 128 */
+ index = (unsigned int)((sctx->count[0] >> 3) & 0x3f);
+
+ /* Update number of bits */
+ if ((sctx->count[0] += (len << 3)) < (len << 3)) {
+ sctx->count[1]++;
+ sctx->count[1] += (len >> 29);
+ }
+
+ part_len = 64 - index;
+
+ /* Transform as many times as possible. */
+ if (len >= part_len) {
+ memcpy(&sctx->buf[index], data, part_len);
+ sha256_transform(sctx->state, sctx->buf);
+
+ for (i = part_len; i + 63 < len; i += 64)
+ sha256_transform(sctx->state, &data[i]);
+ index = 0;
+ } else {
+ i = 0;
+ }
+
+ /* Buffer remaining input */
+ memcpy(&sctx->buf[index], &data[i], len-i);
+
+ return true;
+}
+
+SHA256SumValue SHA256Summation::Result()
+{
+ struct sha256_ctx *sctx = &Sum;
+ if (!Done) {
+ u8 bits[8];
+ unsigned int index, pad_len, t;
+ static const u8 padding[64] = { 0x80, };
+
+ /* Save number of bits */
+ t = sctx->count[0];
+ bits[7] = t; t >>= 8;
+ bits[6] = t; t >>= 8;
+ bits[5] = t; t >>= 8;
+ bits[4] = t;
+ t = sctx->count[1];
+ bits[3] = t; t >>= 8;
+ bits[2] = t; t >>= 8;
+ bits[1] = t; t >>= 8;
+ bits[0] = t;
+
+ /* Pad out to 56 mod 64. */
+ index = (sctx->count[0] >> 3) & 0x3f;
+ pad_len = (index < 56) ? (56 - index) : ((64+56) - index);
+ Add(padding, pad_len);
+
+ /* Append length (before padding) */
+ Add(bits, 8);
+ }
+
+ Done = true;
+
+ /* Store state in digest */
+
+ SHA256SumValue res;
+ u8 *out = res.Sum;
+
+ int i, j;
+ unsigned int t;
+ for (i = j = 0; i < 8; i++, j += 4) {
+ t = sctx->state[i];
+ out[j+3] = t; t >>= 8;
+ out[j+2] = t; t >>= 8;
+ out[j+1] = t; t >>= 8;
+ out[j ] = t;
+ }
+
+ return res;
+}
+
+// SHA256SumValue::SHA256SumValue - Constructs the sum from a string /*{{{*/
+// ---------------------------------------------------------------------
+/* The string form of a SHA256 is a 64 character hex number */
+SHA256SumValue::SHA256SumValue(string Str)
+{
+ memset(Sum,0,sizeof(Sum));
+ Set(Str);
+}
+
+ /*}}}*/
+// SHA256SumValue::SHA256SumValue - Default constructor /*{{{*/
+// ---------------------------------------------------------------------
+/* Sets the value to 0 */
+SHA256SumValue::SHA256SumValue()
+{
+ memset(Sum,0,sizeof(Sum));
+}
+
+ /*}}}*/
+// SHA256SumValue::Set - Set the sum from a string /*{{{*/
+// ---------------------------------------------------------------------
+/* Converts the hex string into a set of chars */
+bool SHA256SumValue::Set(string Str)
+{
+ return Hex2Num(Str,Sum,sizeof(Sum));
+}
+ /*}}}*/
+// SHA256SumValue::Value - Convert the number into a string /*{{{*/
+// ---------------------------------------------------------------------
+/* Converts the set of chars into a hex string in lower case */
+string SHA256SumValue::Value() const
+{
+ char Conv[16] =
+ { '0','1','2','3','4','5','6','7','8','9','a','b',
+ 'c','d','e','f'
+ };
+ char Result[65];
+ Result[64] = 0;
+
+ // Convert each char into two letters
+ int J = 0;
+ int I = 0;
+ for (; I != 64; J++,I += 2)
+ {
+ Result[I] = Conv[Sum[J] >> 4];
+ Result[I + 1] = Conv[Sum[J] & 0xF];
+ }
+
+ return string(Result);
+}
+
+
+
+// SHA256SumValue::operator == - Comparator /*{{{*/
+// ---------------------------------------------------------------------
+/* Call memcmp on the buffer */
+bool SHA256SumValue::operator == (const SHA256SumValue & rhs) const
+{
+ return memcmp(Sum,rhs.Sum,sizeof(Sum)) == 0;
+}
+ /*}}}*/
+
+
+// SHA256Summation::AddFD - Add content of file into the checksum /*{{{*/
+// ---------------------------------------------------------------------
+/* */
+bool SHA256Summation::AddFD(int Fd,unsigned long Size)
+{
+ unsigned char Buf[64 * 64];
+ int Res = 0;
+ int ToEOF = (Size == 0);
+ while (Size != 0 || ToEOF)
+ {
+ unsigned n = sizeof(Buf);
+ if (!ToEOF) n = min(Size,(unsigned long)n);
+ Res = read(Fd,Buf,n);
+ if (Res < 0 || (!ToEOF && (unsigned) Res != n)) // error, or short read
+ return false;
+ if (ToEOF && Res == 0) // EOF
+ break;
+ Size -= Res;
+ Add(Buf,Res);
+ }
+ return true;
+}
+ /*}}}*/
+
diff --git a/apt-pkg/contrib/sha256.h b/apt-pkg/contrib/sha256.h
new file mode 100644
index 000000000..9e88f5ece
--- /dev/null
+++ b/apt-pkg/contrib/sha256.h
@@ -0,0 +1,75 @@
+// -*- mode: cpp; mode: fold -*-
+// Description /*{{{*/
+// $Id: sha1.h,v 1.3 2001/05/07 05:05:47 jgg Exp $
+/* ######################################################################
+
+ SHA256SumValue - Storage for a SHA-256 hash.
+ SHA256Summation - SHA-256 Secure Hash Algorithm.
+
+ This is a C++ interface to a set of SHA256Sum functions, that mirrors
+ the equivalent MD5 & SHA1 classes.
+
+ ##################################################################### */
+ /*}}}*/
+#ifndef APTPKG_SHA256_H
+#define APTPKG_SHA256_H
+
+#ifdef __GNUG__
+#pragma interface "apt-pkg/sha256.h"
+#endif
+
+#include <string>
+#include <algorithm>
+#include <stdint.h>
+
+using std::string;
+using std::min;
+
+class SHA256Summation;
+
+class SHA256SumValue
+{
+ friend class SHA256Summation;
+ unsigned char Sum[32];
+
+ public:
+
+ // Accessors
+ bool operator ==(const SHA256SumValue &rhs) const;
+ string Value() const;
+ inline void Value(unsigned char S[32])
+ {for (int I = 0; I != sizeof(Sum); I++) S[I] = Sum[I];};
+ inline operator string() const {return Value();};
+ bool Set(string Str);
+ inline void Set(unsigned char S[32])
+ {for (int I = 0; I != sizeof(Sum); I++) Sum[I] = S[I];};
+
+ SHA256SumValue(string Str);
+ SHA256SumValue();
+};
+
+struct sha256_ctx {
+ uint32_t count[2];
+ uint32_t state[8];
+ uint8_t buf[128];
+};
+
+class SHA256Summation
+{
+ struct sha256_ctx Sum;
+
+ bool Done;
+
+ public:
+
+ bool Add(const unsigned char *inbuf,unsigned long inlen);
+ inline bool Add(const char *Data) {return Add((unsigned char *)Data,strlen(Data));};
+ bool AddFD(int Fd,unsigned long Size);
+ inline bool Add(const unsigned char *Beg,const unsigned char *End)
+ {return Add(Beg,End-Beg);};
+ SHA256SumValue Result();
+
+ SHA256Summation();
+};
+
+#endif
diff --git a/apt-pkg/deb/dpkgpm.cc b/apt-pkg/deb/dpkgpm.cc
index 667db8ff2..bf0434ccc 100644
--- a/apt-pkg/deb/dpkgpm.cc
+++ b/apt-pkg/deb/dpkgpm.cc
@@ -624,7 +624,13 @@ bool pkgDPkgPM::Go(int OutStatusFd)
*/
char* list[5];
- TokSplitString(':', line, list, sizeof(list)/sizeof(list[0]));
+ if(!TokSplitString(':', line, list, sizeof(list)/sizeof(list[0])))
+ // FIXME: dpkg sends multiline error messages sometimes (see
+ // #374195 for a example. we should support this by
+ // either patching dpkg to not send multiline over the
+ // statusfd or by rewriting the code here to deal with
+ // it. for now we just ignore it and not crash
+ continue;
char *pkg = list[1];
char *action = _strstrip(list[2]);
diff --git a/apt-pkg/makefile b/apt-pkg/makefile
index 0e6aecc65..7e5feae53 100644
--- a/apt-pkg/makefile
+++ b/apt-pkg/makefile
@@ -21,11 +21,11 @@ APT_DOMAIN:=libapt-pkg$(MAJOR)
# Source code for the contributed non-core things
SOURCE = contrib/mmap.cc contrib/error.cc contrib/strutl.cc \
contrib/configuration.cc contrib/progress.cc contrib/cmndline.cc \
- contrib/md5.cc contrib/sha1.cc contrib/hashes.cc \
+ contrib/md5.cc contrib/sha1.cc contrib/sha256.cc contrib/hashes.cc \
contrib/cdromutl.cc contrib/crc-16.cc \
contrib/fileutl.cc
HEADERS = mmap.h error.h configuration.h fileutl.h cmndline.h \
- md5.h crc-16.h cdromutl.h strutl.h sptr.h sha1.h hashes.h
+ md5.h crc-16.h cdromutl.h strutl.h sptr.h sha1.h sha256.h hashes.h
# Source code for the core main library
SOURCE+= pkgcache.cc version.cc depcache.cc \
diff --git a/apt-pkg/tagfile.cc b/apt-pkg/tagfile.cc
index 79ff18de4..8fcbeb23b 100644
--- a/apt-pkg/tagfile.cc
+++ b/apt-pkg/tagfile.cc
@@ -33,21 +33,32 @@ using std::string;
/* */
pkgTagFile::pkgTagFile(FileFd *pFd,unsigned long Size) :
Fd(*pFd),
- Size(Size)
+ Size(Size),
+ Map(NULL),
+ Buffer(0)
{
- if (Fd.IsOpen() == false || Fd.Size() == 0)
+ if (Fd.IsOpen() == false)
{
- Buffer = 0;
Start = End = Buffer = 0;
+ Done = true;
iOffset = 0;
Map = NULL;
return;
}
- Map = new MMap (Fd, MMap::Public | MMap::ReadOnly);
- Buffer = (char *) Map->Data ();
- Start = Buffer;
- End = Buffer + Map->Size ();
+ // check if we can MMap it
+ if(Fd.Size() == 0)
+ {
+ Buffer = new char[Size];
+ Start = End = Buffer;
+ Done = false;
+ Fill();
+ } else {
+ Map = new MMap (Fd, MMap::Public | MMap::ReadOnly);
+ Buffer = (char *) Map->Data ();
+ Start = Buffer;
+ End = Buffer + Map->Size ();
+ }
iOffset = 0;
}
/*}}}*/
@@ -56,6 +67,7 @@ pkgTagFile::pkgTagFile(FileFd *pFd,unsigned long Size) :
/* */
pkgTagFile::~pkgTagFile()
{
+ if(!Map) delete [] Buffer;
delete Map;
}
/*}}}*/
@@ -64,13 +76,21 @@ pkgTagFile::~pkgTagFile()
/* If the Section Scanner fails we refill the buffer and try again. */
bool pkgTagFile::Step(pkgTagSection &Tag)
{
- if (Start == End)
+ if ((Map != NULL) && (Start == End))
return false;
if (Tag.Scan(Start,End - Start) == false)
{
- return _error->Error(_("Unable to parse package file %s (1)"),
- Fd.Name().c_str());
+ if (Map != NULL)
+ return _error->Error(_("Unable to parse package file %s (1)"),
+ Fd.Name().c_str());
+
+ if (Fill() == false)
+ return false;
+
+ if (Tag.Scan(Start,End - Start) == false)
+ return _error->Error(_("Unable to parse package file %s (1)"),
+ Fd.Name().c_str());
}
Start += Tag.size();
iOffset += Tag.size();
@@ -79,6 +99,50 @@ bool pkgTagFile::Step(pkgTagSection &Tag)
return true;
}
/*}}}*/
+// TagFile::Fill - Top up the buffer /*{{{*/
+// ---------------------------------------------------------------------
+/* This takes the bit at the end of the buffer and puts it at the start
+ then fills the rest from the file */
+bool pkgTagFile::Fill()
+{
+ unsigned long EndSize = End - Start;
+ unsigned long Actual = 0;
+
+ memmove(Buffer,Start,EndSize);
+ Start = Buffer;
+ End = Buffer + EndSize;
+
+ if (Done == false)
+ {
+ // See if only a bit of the file is left
+ if (Fd.Read(End,Size - (End - Buffer),&Actual) == false)
+ return false;
+ if (Actual != Size - (End - Buffer))
+ Done = true;
+ End += Actual;
+ }
+
+ if (Done == true)
+ {
+ if (EndSize <= 3 && Actual == 0)
+ return false;
+ if (Size - (End - Buffer) < 4)
+ return true;
+
+ // Append a double new line if one does not exist
+ unsigned int LineCount = 0;
+ for (const char *E = End - 1; E - End < 6 && (*E == '\n' || *E == '\r'); E--)
+ if (*E == '\n')
+ LineCount++;
+ for (; LineCount < 2; LineCount++)
+ *End++ = '\n';
+
+ return true;
+ }
+
+ return true;
+}
+ /*}}}*/
// TagFile::Jump - Jump to a pre-recorded location in the file /*{{{*/
// ---------------------------------------------------------------------
/* This jumps to a pre-recorded file location and reads the record
@@ -94,12 +158,31 @@ bool pkgTagFile::Jump(pkgTagSection &Tag,unsigned long Offset)
return Step(Tag);
}
- // Reposition and reload..
iOffset = Offset;
- Start = Buffer + iOffset;
+ if (Map != NULL)
+ {
+ Start = Buffer + iOffset;
+ }
+ else
+ {
+ // Reposition and reload..
+ Done = false;
+ if (Fd.Seek(Offset) == false)
+ return false;
+ End = Start = Buffer;
- // Start != End is a special case to not fail on empty TagFiles
- if (Start != End && Tag.Scan(Start,End - Start) == false)
+ if (Fill() == false)
+ return false;
+
+ if (Tag.Scan(Start,End - Start) == true)
+ return true;
+
+ // This appends a double new line (for the real eof handling)
+ if (Fill() == false)
+ return false;
+ }
+
+ if (Tag.Scan(Start,End - Start) == false)
return _error->Error(_("Unable to parse package file %s (2)"),Fd.Name().c_str());
return true;
@@ -157,8 +240,8 @@ bool pkgTagSection::Scan(const char *Start,unsigned long MaxLength)
if ((Stop+1 >= End) && (End[-1] == '\n' || End[-1] == '\r'))
{
- Indexes[TagCount] = (End - 1) - Section;
- return true;
+ Indexes[TagCount] = (End - 1) - Section;
+ return true;
}
return false;
@@ -343,7 +426,8 @@ static const char *iTFRewritePackageOrder[] = {
"Filename",
"Size",
"MD5Sum",
- "SHA1Sum",
+ "SHA1",
+ "SHA256",
"MSDOS-Filename", // Obsolete
"Description",
0};
diff --git a/apt-pkg/tagfile.h b/apt-pkg/tagfile.h
index 5cff2681c..dd481ba51 100644
--- a/apt-pkg/tagfile.h
+++ b/apt-pkg/tagfile.h
@@ -74,16 +74,19 @@ class pkgTagFile
char *Buffer;
char *Start;
char *End;
+ bool Done;
unsigned long iOffset;
unsigned long Size;
+ bool Fill();
+
public:
bool Step(pkgTagSection &Section);
inline unsigned long Offset() {return iOffset;};
bool Jump(pkgTagSection &Tag,unsigned long Offset);
- pkgTagFile(FileFd *F,unsigned long Size = 32*1024);
+ pkgTagFile(FileFd *F,unsigned long Size = 64*1024);
~pkgTagFile();
};
diff --git a/cmdline/apt-get.cc b/cmdline/apt-get.cc
index d4a6bee32..64882e3e8 100644
--- a/cmdline/apt-get.cc
+++ b/cmdline/apt-get.cc
@@ -1609,68 +1609,86 @@ bool DoInstall(CommandLine &CmdL)
string SuggestsVersions, RecommendsVersions;
for (unsigned J = 0; J < Cache->Head().PackageCount; J++)
{
- pkgCache::PkgIterator I(Cache,Cache.List[J]);
+ pkgCache::PkgIterator Pkg(Cache,Cache.List[J]);
/* Just look at the ones we want to install */
- if ((*Cache)[I].Install() == false)
+ if ((*Cache)[Pkg].Install() == false)
continue;
- for (pkgCache::VerIterator V = I.VersionList(); V.end() == false; V++)
- {
- for (pkgCache::DepIterator D = V.DependsList(); D.end() == false; )
- {
- pkgCache::DepIterator Start;
- pkgCache::DepIterator End;
- D.GlobOr(Start,End); // advances D
-
- /*
- * If this is a virtual package, we need to check the list of
- * packages that provide it and see if any of those are
- * installed
- */
-
- bool providedBySomething = false;
- for (pkgCache::PrvIterator Prv = Start.TargetPkg().ProvidesList();
- Prv.end() != true;
- Prv++)
- if ((*Cache)[Prv.OwnerPkg()].InstVerIter(*Cache).end() == false)
- {
- providedBySomething = true;
- break;
- }
-
- if (providedBySomething) continue;
-
- for(;;)
- {
- /* Skip if package is installed already, or is about to be */
- string target = string(Start.TargetPkg().Name()) + " ";
-
- if ((*Start.TargetPkg()).SelectedState == pkgCache::State::Install
- || Cache[Start.TargetPkg()].Install())
- break;
-
- /* Skip if we already saw it */
- if (int(SuggestsList.find(target)) != -1 || int(RecommendsList.find(target)) != -1)
- break;
-
- if (Start->Type == pkgCache::Dep::Suggests) {
- SuggestsList += target;
- SuggestsVersions += string(Cache[Start.TargetPkg()].CandVersion) + "\n";
- }
-
- if (Start->Type == pkgCache::Dep::Recommends) {
- RecommendsList += target;
- RecommendsVersions += string(Cache[Start.TargetPkg()].CandVersion) + "\n";
- }
-
- if (Start >= End)
- break;
- Start++;
- }
- }
- }
+ // get the recommends/suggests for the candidate ver
+ pkgCache::VerIterator CV = (*Cache)[Pkg].CandidateVerIter(*Cache);
+ for (pkgCache::DepIterator D = CV.DependsList(); D.end() == false; )
+ {
+ pkgCache::DepIterator Start;
+ pkgCache::DepIterator End;
+ D.GlobOr(Start,End); // advances D
+
+ // FIXME: we really should display a or-group as a or-group to the user
+ // the problem is that ShowList is incapable of doing this
+ string RecommendsOrList,RecommendsOrVersions;
+ string SuggestsOrList,SuggestsOrVersions;
+ bool foundInstalledInOrGroup = false;
+ for(;;)
+ {
+ /* Skip if package is installed already, or is about to be */
+ string target = string(Start.TargetPkg().Name()) + " ";
+
+ if ((*Start.TargetPkg()).SelectedState == pkgCache::State::Install
+ || Cache[Start.TargetPkg()].Install())
+ {
+ foundInstalledInOrGroup=true;
+ break;
+ }
+
+ /* Skip if we already saw it */
+ if (int(SuggestsList.find(target)) != -1 || int(RecommendsList.find(target)) != -1)
+ {
+ foundInstalledInOrGroup=true;
+ break;
+ }
+
+ // this is a dep on a virtual pkg, check if any package that provides it
+ // should be installed
+ if(Start.TargetPkg().ProvidesList() != 0)
+ {
+ pkgCache::PrvIterator I = Start.TargetPkg().ProvidesList();
+ for (; I.end() == false; I++)
+ {
+ pkgCache::PkgIterator Pkg = I.OwnerPkg();
+ if (Cache[Pkg].CandidateVerIter(Cache) == I.OwnerVer() &&
+ Pkg.CurrentVer() != 0)
+ foundInstalledInOrGroup=true;
+ }
+ }
+
+ if (Start->Type == pkgCache::Dep::Suggests)
+ {
+ SuggestsOrList += target;
+ SuggestsOrVersions += string(Cache[Start.TargetPkg()].CandVersion) + "\n";
+ }
+
+ if (Start->Type == pkgCache::Dep::Recommends)
+ {
+ RecommendsOrList += target;
+ RecommendsOrVersions += string(Cache[Start.TargetPkg()].CandVersion) + "\n";
+ }
+
+ if (Start >= End)
+ break;
+ Start++;
+ }
+
+ if(foundInstalledInOrGroup == false)
+ {
+ RecommendsList += RecommendsOrList;
+ RecommendsVersions += RecommendsOrVersions;
+ SuggestsList += SuggestsOrList;
+ SuggestsVersions += SuggestsOrVersions;
+ }
+
+ }
}
+
ShowList(c1out,_("Suggested packages:"),SuggestsList,SuggestsVersions);
ShowList(c1out,_("Recommended packages:"),RecommendsList,RecommendsVersions);
diff --git a/configure.in b/configure.in
index 8e1e9bf75..fc4eff203 100644
--- a/configure.in
+++ b/configure.in
@@ -18,7 +18,7 @@ AC_CONFIG_AUX_DIR(buildlib)
AC_CONFIG_HEADER(include/config.h:buildlib/config.h.in include/apti18n.h:buildlib/apti18n.h.in)
dnl -- SET THIS TO THE RELEASE VERSION --
-AC_DEFINE_UNQUOTED(VERSION,"0.6.44.1-0.1")
+AC_DEFINE_UNQUOTED(VERSION,"0.6.45")
PACKAGE="apt"
AC_DEFINE_UNQUOTED(PACKAGE,"$PACKAGE")
AC_SUBST(PACKAGE)
diff --git a/debian/changelog b/debian/changelog
index 0c31db6bd..e69c5091f 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,18 +1,74 @@
-apt (0.6.44.2) unstable; urgency=low
+apt (0.6.45.1) unstable; urgency=low
- * apt-pkg/depcache.cc:
- - added Debug::pkgDepCache::AutoInstall (thanks to infinity)
- * merged from
- http://www.perrier.eu.org/debian/packages/d-i/level4/apt-main:
- * sk.po: Completed to 512t
- * eu.po: Completed to 512t
- * fr.po: Completed to 512t
- * sv.po: Completed to 512t
- * Update all PO and the POT. Gives 506t6f for formerly
- complete translations
+ * debian/control:
+ - switched to libdb4.4 for building (closes: #381019)
+ * cmdline/apt-get.cc:
+ - show only the recommends/suggests for the candidate-version, not for all
+ versions of the package (closes: #257054)
+ - properly handle recommends/suggests or-groups when printing the list of
+ suggested/recommends packages (closes: #311619)
+ * methods/http.cc:
+ - check more careful for incorrect proxy settings (closes: #378868)
--
+apt (0.6.45) unstable; urgency=low
+
+ * apt-pkg/contrib/sha256.cc:
+ - fixed the sha256 generation (closes: #378183)
+ * ftparchive/cachedb.cc:
+ - applied patch from Anthony Towns to fix Clean() function
+ (closes: #379576)
+ * doc/apt-get.8.xml:
+ - fix path to the apt user build (Closes: #375640)
+ * doc/apt-cache.8.xml:
+ - typo (Closes: #376408)
+ * apt-pkg/deb/dpkgpm.cc:
+ - make progress reporting more robust against multiline error
+ messages (first half of a fix for #374195)
+ * doc/examples/configure-index:
+ - document Debug::pkgAcquire::Auth
+ * methods/gpgv.cc:
+ - deal with gpg error "NODATA". Closes: #296103, Thanks to
+ Luis Rodrigo Gallardo Cruz for the patch
+ * apt-inst/contrib/extracttar.cc:
+ - fix for string mangling, closes: #373864
+ * apt-pkg/acquire-item.cc:
+ - check for bzip2 in /bin (closes: #377391)
+ * apt-pkg/tagfile.cc:
+ - make it work on non-mapable files again, thanks
+ to James Troup for confirming the fix (closes: #376777)
+ * Merged from Christian Perrier bzr branch:
+ * ko.po: Updated to 512t. Closes: #378901
+ * hu.po: Updated to 512t. Closes: #376330
+ * km.po: New Khmer translation: 506t6f. Closes: #375068
+ * ne.po: New Nepali translation: 512t. Closes: #373729
+ * vi.po: Updated to 512t. Closes: #368038
+ * zh_TW.po: Remove an extra %s in one string. Closes: #370551
+ * dz.po: New Dzongkha translation: 512t
+ * ro.po: Updated to 512t
+ * eu.po: Updated
+
+ -- Michael Vogt <mvo@debian.org> Thu, 27 Jul 2006 00:52:05 +0200
+
+apt (0.6.44.2) unstable; urgency=low
+
+ * apt-pkg/depcache.cc:
+ - added Debug::pkgDepCache::AutoInstall (thanks to infinity)
+ * apt-pkg/acquire-item.cc:
+ - fix missing chmod() in the new aquire code
+ (thanks to Bastian Blank, Closes: #367425)
+ * merged from
+ http://www.perrier.eu.org/debian/packages/d-i/level4/apt-main:
+ * sk.po: Completed to 512t
+ * eu.po: Completed to 512t
+ * fr.po: Completed to 512t
+ * sv.po: Completed to 512t
+ * Update all PO and the POT. Gives 506t6f for formerly
+ complete translations
+
+ -- Michael Vogt <mvo@debian.org> Wed, 14 Jun 2006 12:00:57 +0200
+
apt (0.6.44.1-0.1) unstable; urgency=low
* Non-maintainer upload.
diff --git a/debian/control b/debian/control
index 53ce851f6..3cba50acb 100644
--- a/debian/control
+++ b/debian/control
@@ -4,7 +4,7 @@ Priority: important
Maintainer: APT Development Team <deity@lists.debian.org>
Uploaders: Jason Gunthorpe <jgg@debian.org>, Adam Heath <doogie@debian.org>, Matt Zimmerman <mdz@debian.org>, Michael Vogt <mvo@debian.org>
Standards-Version: 3.6.2.2
-Build-Depends: debhelper (>= 5.0), libdb4.3-dev, gettext (>= 0.12)
+Build-Depends: debhelper (>= 5.0), libdb4.4-dev, gettext (>= 0.12)
Build-Depends-Indep: debiandoc-sgml, docbook-utils (>= 0.6.12-1)
Package: apt
diff --git a/doc/apt-cache.8.xml b/doc/apt-cache.8.xml
index 789c3d228..2779f2501 100644
--- a/doc/apt-cache.8.xml
+++ b/doc/apt-cache.8.xml
@@ -277,7 +277,7 @@ Reverse Provides:
<listitem><para>Select the file to store the source cache. The source is used only by
<literal>gencaches</literal> and it stores a parsed version of the package
information from remote sources. When building the package cache the
- source cache is used to advoid reparsing all of the package files.
+ source cache is used to avoid reparsing all of the package files.
Configuration Item: <literal>Dir::Cache::srcpkgcache</literal>.</para></listitem>
</varlistentry>
diff --git a/doc/apt-get.8.xml b/doc/apt-get.8.xml
index ac84f342a..b98d58737 100644
--- a/doc/apt-get.8.xml
+++ b/doc/apt-get.8.xml
@@ -468,7 +468,7 @@
<refsect1><title>See Also</title>
<para>&apt-cache;, &apt-cdrom;, &dpkg;, &dselect;, &sources-list;,
&apt-conf;, &apt-config;,
- The APT User's guide in &docdir;, &apt-preferences;, the APT Howto.</para>
+ The APT User's guide in &guidesdir;, &apt-preferences;, the APT Howto.</para>
</refsect1>
<refsect1><title>Diagnostics</title>
diff --git a/doc/apt.ent b/doc/apt.ent
index cf22df6d2..99fe443cf 100644
--- a/doc/apt.ent
+++ b/doc/apt.ent
@@ -2,6 +2,7 @@
<!-- Some common paths.. -->
<!ENTITY docdir "/usr/share/doc/apt/">
+<!ENTITY guidesdir "/usr/share/doc/apt-doc/">
<!ENTITY configureindex "<filename>&docdir;examples/configure-index.gz</filename>">
<!ENTITY aptconfdir "<filename>/etc/apt.conf</filename>">
<!ENTITY statedir "/var/lib/apt">
diff --git a/doc/examples/configure-index b/doc/examples/configure-index
index b87e85030..f8abd75ed 100644
--- a/doc/examples/configure-index
+++ b/doc/examples/configure-index
@@ -247,6 +247,7 @@ Debug
pkgDepCache::AutoInstall "false"; // what packages apt install to satify dependencies
pkgAcquire "false";
pkgAcquire::Worker "false";
+ pkgAcquire::Auth "false";
pkgDPkgPM "false";
pkgDPkgProgressReporting "false";
pkgOrderList "false";
diff --git a/ftparchive/cachedb.cc b/ftparchive/cachedb.cc
index 9e93dff05..8a4ca0236 100644
--- a/ftparchive/cachedb.cc
+++ b/ftparchive/cachedb.cc
@@ -19,6 +19,8 @@
#include <apti18n.h>
#include <apt-pkg/error.h>
#include <apt-pkg/md5.h>
+#include <apt-pkg/sha1.h>
+#include <apt-pkg/sha256.h>
#include <apt-pkg/strutl.h>
#include <apt-pkg/configuration.h>
@@ -54,7 +56,7 @@ bool CacheDB::ReadyDB(string DB)
return true;
db_create(&Dbp, NULL, 0);
- if ((err = Dbp->open(Dbp, NULL, DB.c_str(), NULL, DB_HASH,
+ if ((err = Dbp->open(Dbp, NULL, DB.c_str(), NULL, DB_BTREE,
(ReadOnly?DB_RDONLY:DB_CREATE),
0644)) != 0)
{
@@ -67,6 +69,12 @@ bool CacheDB::ReadyDB(string DB)
(ReadOnly?DB_RDONLY:DB_CREATE), 0644);
}
+ // the database format has changed from DB_HASH to DB_BTREE in
+ // apt 0.6.44
+ if (err == EINVAL)
+ {
+ _error->Error(_("DB format is invalid. If you upgraded from a older version of apt, please remove and re-create the database."));
+ }
if (err)
{
Dbp = 0;
@@ -79,48 +87,123 @@ bool CacheDB::ReadyDB(string DB)
return true;
}
/*}}}*/
-// CacheDB::SetFile - Select a file to be working with /*{{{*/
+// CacheDB::OpenFile - Open the filei /*{{{*/
+// ---------------------------------------------------------------------
+/* */
+bool CacheDB::OpenFile()
+{
+ Fd = new FileFd(FileName,FileFd::ReadOnly);
+ if (_error->PendingError() == true)
+ {
+ delete Fd;
+ Fd = NULL;
+ return false;
+ }
+ return true;
+}
+ /*}}}*/
+// CacheDB::GetFileStat - Get stats from the file /*{{{*/
+// ---------------------------------------------------------------------
+/* This gets the size from the database if it's there. If we need
+ * to look at the file, also get the mtime from the file. */
+bool CacheDB::GetFileStat()
+{
+ if ((CurStat.Flags & FlSize) == FlSize)
+ {
+ /* Already worked out the file size */
+ }
+ else
+ {
+ /* Get it from the file. */
+ if (Fd == NULL && OpenFile() == false)
+ {
+ return false;
+ }
+ // Stat the file
+ struct stat St;
+ if (fstat(Fd->Fd(),&St) != 0)
+ {
+ return _error->Errno("fstat",
+ _("Failed to stat %s"),FileName.c_str());
+ }
+ CurStat.FileSize = St.st_size;
+ CurStat.mtime = htonl(St.st_mtime);
+ CurStat.Flags |= FlSize;
+ }
+ return true;
+}
+ /*}}}*/
+// CacheDB::GetCurStat - Set the CurStat variable. /*{{{*/
// ---------------------------------------------------------------------
-/* All future actions will be performed against this file */
-bool CacheDB::SetFile(string FileName,struct stat St,FileFd *Fd)
+/* Sets the CurStat variable. Either to 0 if no database is used
+ * or to the value in the database if one is used */
+bool CacheDB::GetCurStat()
{
- delete DebFile;
- DebFile = 0;
- this->FileName = FileName;
- this->Fd = Fd;
- this->FileStat = St;
- FileStat = St;
memset(&CurStat,0,sizeof(CurStat));
- Stats.Bytes += St.st_size;
- Stats.Packages++;
-
- if (DBLoaded == false)
- return true;
+ if (DBLoaded)
+ {
+ /* First see if thre is anything about it
+ in the database */
+ /* Get the flags (and mtime) */
InitQuery("st");
-
// Ensure alignment of the returned structure
Data.data = &CurStat;
Data.ulen = sizeof(CurStat);
Data.flags = DB_DBT_USERMEM;
- // Lookup the stat info and confirm the file is unchanged
- if (Get() == true)
- {
- if (CurStat.mtime != htonl(St.st_mtime))
+ if (Get() == false)
{
- CurStat.mtime = htonl(St.st_mtime);
CurStat.Flags = 0;
- _error->Warning(_("File date has changed %s"),FileName.c_str());
}
+ CurStat.Flags = ntohl(CurStat.Flags);
+ CurStat.FileSize = ntohl(CurStat.FileSize);
}
- else
+ return true;
+}
+ /*}}}*/
+// CacheDB::GetFileInfo - Get all the info about the file /*{{{*/
+// ---------------------------------------------------------------------
+bool CacheDB::GetFileInfo(string FileName, bool DoControl, bool DoContents,
+ bool GenContentsOnly,
+ bool DoMD5, bool DoSHA1, bool DoSHA256)
+{
+ this->FileName = FileName;
+
+ if (GetCurStat() == false)
{
- CurStat.mtime = htonl(St.st_mtime);
- CurStat.Flags = 0;
+ return false;
}
- CurStat.Flags = ntohl(CurStat.Flags);
OldStat = CurStat;
+
+ if (GetFileStat() == false)
+ {
+ delete Fd;
+ Fd = NULL;
+ return false;
+ }
+
+ Stats.Bytes += CurStat.FileSize;
+ Stats.Packages++;
+
+ if (DoControl && LoadControl() == false
+ || DoContents && LoadContents(GenContentsOnly) == false
+ || DoMD5 && GetMD5(false) == false
+ || DoSHA1 && GetSHA1(false) == false
+ || DoSHA256 && GetSHA256(false) == false)
+ {
+ delete Fd;
+ Fd = NULL;
+ delete DebFile;
+ DebFile = NULL;
+ return false;
+ }
+
+ delete Fd;
+ Fd = NULL;
+ delete DebFile;
+ DebFile = NULL;
+
return true;
}
/*}}}*/
@@ -139,6 +222,10 @@ bool CacheDB::LoadControl()
CurStat.Flags &= ~FlControl;
}
+ if (Fd == NULL && OpenFile() == false)
+ {
+ return false;
+ }
// Create a deb instance to read the archive
if (DebFile == 0)
{
@@ -183,6 +270,10 @@ bool CacheDB::LoadContents(bool GenOnly)
CurStat.Flags &= ~FlContents;
}
+ if (Fd == NULL && OpenFile() == false)
+ {
+ return false;
+ }
// Create a deb instance to read the archive
if (DebFile == 0)
{
@@ -201,10 +292,37 @@ bool CacheDB::LoadContents(bool GenOnly)
return true;
}
/*}}}*/
+
+static string bytes2hex(uint8_t *bytes, size_t length) {
+ char space[65];
+ if (length * 2 > sizeof(space) - 1) length = (sizeof(space) - 1) / 2;
+ for (size_t i = 0; i < length; i++)
+ snprintf(&space[i*2], 3, "%02x", bytes[i]);
+ return string(space);
+}
+
+static inline unsigned char xdig2num(char dig) {
+ if (isdigit(dig)) return dig - '0';
+ if ('a' <= dig && dig <= 'f') return dig - 'a' + 10;
+ if ('A' <= dig && dig <= 'F') return dig - 'A' + 10;
+ return 0;
+}
+
+static void hex2bytes(uint8_t *bytes, const char *hex, int length) {
+ while (length-- > 0) {
+ *bytes = 0;
+ if (isxdigit(hex[0]) && isxdigit(hex[1])) {
+ *bytes = xdig2num(hex[0]) * 16 + xdig2num(hex[1]);
+ hex += 2;
+ }
+ bytes++;
+ }
+}
+
// CacheDB::GetMD5 - Get the MD5 hash /*{{{*/
// ---------------------------------------------------------------------
/* */
-bool CacheDB::GetMD5(string &MD5Res,bool GenOnly)
+bool CacheDB::GetMD5(bool GenOnly)
{
// Try to read the control information out of the DB.
if ((CurStat.Flags & FlMD5) == FlMD5)
@@ -212,28 +330,88 @@ bool CacheDB::GetMD5(string &MD5Res,bool GenOnly)
if (GenOnly == true)
return true;
- InitQuery("m5");
- if (Get() == true)
- {
- MD5Res = string((char *)Data.data,Data.size);
+ MD5Res = bytes2hex(CurStat.MD5, sizeof(CurStat.MD5));
return true;
}
- CurStat.Flags &= ~FlMD5;
- }
- Stats.MD5Bytes += FileStat.st_size;
+ Stats.MD5Bytes += CurStat.FileSize;
+ if (Fd == NULL && OpenFile() == false)
+ {
+ return false;
+ }
MD5Summation MD5;
- if (Fd->Seek(0) == false || MD5.AddFD(Fd->Fd(),FileStat.st_size) == false)
+ if (Fd->Seek(0) == false || MD5.AddFD(Fd->Fd(),CurStat.FileSize) == false)
return false;
MD5Res = MD5.Result();
- InitQuery("m5");
- if (Put(MD5Res.c_str(),MD5Res.length()) == true)
+ hex2bytes(CurStat.MD5, MD5Res.data(), sizeof(CurStat.MD5));
CurStat.Flags |= FlMD5;
return true;
}
/*}}}*/
+// CacheDB::GetSHA1 - Get the SHA1 hash /*{{{*/
+// ---------------------------------------------------------------------
+/* */
+bool CacheDB::GetSHA1(bool GenOnly)
+{
+ // Try to read the control information out of the DB.
+ if ((CurStat.Flags & FlSHA1) == FlSHA1)
+ {
+ if (GenOnly == true)
+ return true;
+
+ SHA1Res = bytes2hex(CurStat.SHA1, sizeof(CurStat.SHA1));
+ return true;
+ }
+
+ Stats.SHA1Bytes += CurStat.FileSize;
+
+ if (Fd == NULL && OpenFile() == false)
+ {
+ return false;
+ }
+ SHA1Summation SHA1;
+ if (Fd->Seek(0) == false || SHA1.AddFD(Fd->Fd(),CurStat.FileSize) == false)
+ return false;
+
+ SHA1Res = SHA1.Result();
+ hex2bytes(CurStat.SHA1, SHA1Res.data(), sizeof(CurStat.SHA1));
+ CurStat.Flags |= FlSHA1;
+ return true;
+}
+ /*}}}*/
+// CacheDB::GetSHA256 - Get the SHA256 hash /*{{{*/
+// ---------------------------------------------------------------------
+/* */
+bool CacheDB::GetSHA256(bool GenOnly)
+{
+ // Try to read the control information out of the DB.
+ if ((CurStat.Flags & FlSHA256) == FlSHA256)
+ {
+ if (GenOnly == true)
+ return true;
+
+ SHA256Res = bytes2hex(CurStat.SHA256, sizeof(CurStat.SHA256));
+ return true;
+ }
+
+ Stats.SHA256Bytes += CurStat.FileSize;
+
+ if (Fd == NULL && OpenFile() == false)
+ {
+ return false;
+ }
+ SHA256Summation SHA256;
+ if (Fd->Seek(0) == false || SHA256.AddFD(Fd->Fd(),CurStat.FileSize) == false)
+ return false;
+
+ SHA256Res = SHA256.Result();
+ hex2bytes(CurStat.SHA256, SHA256Res.data(), sizeof(CurStat.SHA256));
+ CurStat.Flags |= FlSHA256;
+ return true;
+}
+ /*}}}*/
// CacheDB::Finish - Write back the cache structure /*{{{*/
// ---------------------------------------------------------------------
/* */
@@ -246,9 +424,12 @@ bool CacheDB::Finish()
// Write the stat information
CurStat.Flags = htonl(CurStat.Flags);
+ CurStat.FileSize = htonl(CurStat.FileSize);
InitQuery("st");
Put(&CurStat,sizeof(CurStat));
CurStat.Flags = ntohl(CurStat.Flags);
+ CurStat.FileSize = ntohl(CurStat.FileSize);
+
return true;
}
/*}}}*/
@@ -272,16 +453,14 @@ bool CacheDB::Clean()
memset(&Data,0,sizeof(Data));
while ((errno = Cursor->c_get(Cursor,&Key,&Data,DB_NEXT)) == 0)
{
- const char *Colon = (char *)Key.data;
- for (; Colon != (char *)Key.data+Key.size && *Colon != ':'; Colon++);
- if ((char *)Key.data+Key.size - Colon > 2)
+ const char *Colon = (char*)memrchr(Key.data, ':', Key.size);
+ if (Colon)
{
- if (stringcmp((char *)Key.data,Colon,"st") == 0 ||
- stringcmp((char *)Key.data,Colon,"cn") == 0 ||
- stringcmp((char *)Key.data,Colon,"m5") == 0 ||
- stringcmp((char *)Key.data,Colon,"cl") == 0)
+ if (stringcmp(Colon + 1, (char *)Key.data+Key.size,"st") == 0 ||
+ stringcmp(Colon + 1, (char *)Key.data+Key.size,"cl") == 0 ||
+ stringcmp(Colon + 1, (char *)Key.data+Key.size,"cn") == 0)
{
- if (FileExists(string(Colon+1,(const char *)Key.data+Key.size)) == true)
+ if (FileExists(string((const char *)Key.data,Colon)) == true)
continue;
}
}
diff --git a/ftparchive/cachedb.h b/ftparchive/cachedb.h
index 1b043e1aa..afa22213a 100644
--- a/ftparchive/cachedb.h
+++ b/ftparchive/cachedb.h
@@ -44,7 +44,7 @@ class CacheDB
memset(&Key,0,sizeof(Key));
memset(&Data,0,sizeof(Data));
Key.data = TmpKey;
- Key.size = snprintf(TmpKey,sizeof(TmpKey),"%s:%s",Type,FileName.c_str());
+ Key.size = snprintf(TmpKey,sizeof(TmpKey),"%s:%s",FileName.c_str(), Type);
}
inline bool Get()
@@ -64,19 +64,31 @@ class CacheDB
}
return true;
}
+ bool OpenFile();
+ bool GetFileStat();
+ bool GetCurStat();
+ bool LoadControl();
+ bool LoadContents(bool GenOnly);
+ bool GetMD5(bool GenOnly);
+ bool GetSHA1(bool GenOnly);
+ bool GetSHA256(bool GenOnly);
// Stat info stored in the DB, Fixed types since it is written to disk.
- enum FlagList {FlControl = (1<<0),FlMD5=(1<<1),FlContents=(1<<2)};
+ enum FlagList {FlControl = (1<<0),FlMD5=(1<<1),FlContents=(1<<2),
+ FlSize=(1<<3), FlSHA1=(1<<4), FlSHA256=(1<<5)};
struct StatStore
{
- time_t mtime;
uint32_t Flags;
+ uint32_t mtime;
+ uint32_t FileSize;
+ uint8_t MD5[16];
+ uint8_t SHA1[20];
+ uint8_t SHA256[32];
} CurStat;
struct StatStore OldStat;
// 'set' state
string FileName;
- struct stat FileStat;
FileFd *Fd;
debDebFile *DebFile;
@@ -85,34 +97,42 @@ class CacheDB
// Data collection helpers
debDebFile::MemControlExtract Control;
ContentsExtract Contents;
+ string MD5Res;
+ string SHA1Res;
+ string SHA256Res;
// Runtime statistics
struct Stats
{
double Bytes;
double MD5Bytes;
+ double SHA1Bytes;
+ double SHA256Bytes;
unsigned long Packages;
unsigned long Misses;
unsigned long DeLinkBytes;
- inline void Add(const Stats &S) {Bytes += S.Bytes; MD5Bytes += S.MD5Bytes;
+ inline void Add(const Stats &S) {
+ Bytes += S.Bytes; MD5Bytes += S.MD5Bytes; SHA1Bytes += S.SHA1Bytes;
+ SHA256Bytes += S.SHA256Bytes;
Packages += S.Packages; Misses += S.Misses; DeLinkBytes += S.DeLinkBytes;};
- Stats() : Bytes(0), MD5Bytes(0), Packages(0), Misses(0), DeLinkBytes(0) {};
+ Stats() : Bytes(0), MD5Bytes(0), SHA1Bytes(0), SHA256Bytes(0), Packages(0), Misses(0), DeLinkBytes(0) {};
} Stats;
bool ReadyDB(string DB);
inline bool DBFailed() {return Dbp != 0 && DBLoaded == false;};
inline bool Loaded() {return DBLoaded == true;};
+ inline off_t GetFileSize(void) {return CurStat.FileSize;}
+
bool SetFile(string FileName,struct stat St,FileFd *Fd);
- bool LoadControl();
- bool LoadContents(bool GenOnly);
- bool GetMD5(string &MD5Res,bool GenOnly);
+ bool GetFileInfo(string FileName, bool DoControl, bool DoContents,
+ bool GenContentsOnly, bool DoMD5, bool DoSHA1, bool DoSHA256);
bool Finish();
bool Clean();
- CacheDB(string DB) : Dbp(0), DebFile(0) {ReadyDB(DB);};
+ CacheDB(string DB) : Dbp(0), Fd(NULL), DebFile(0) {ReadyDB(DB);};
~CacheDB() {ReadyDB(string()); delete DebFile;};
};
diff --git a/ftparchive/writer.cc b/ftparchive/writer.cc
index fc9ea27d7..ea242d6af 100644
--- a/ftparchive/writer.cc
+++ b/ftparchive/writer.cc
@@ -23,6 +23,7 @@
#include <apt-pkg/configuration.h>
#include <apt-pkg/md5.h>
#include <apt-pkg/sha1.h>
+#include <apt-pkg/sha256.h>
#include <apt-pkg/deblistparser.h>
#include <sys/types.h>
@@ -70,7 +71,7 @@ FTWScanner::FTWScanner()
// ---------------------------------------------------------------------
/* This is the FTW scanner, it processes each directory element in the
directory tree. */
-int FTWScanner::Scanner(const char *File,const struct stat *sb,int Flag)
+int FTWScanner::ScannerFTW(const char *File,const struct stat *sb,int Flag)
{
if (Flag == FTW_DNR)
{
@@ -85,6 +86,14 @@ int FTWScanner::Scanner(const char *File,const struct stat *sb,int Flag)
if (Flag != FTW_F)
return 0;
+ return ScannerFile(File, true);
+}
+ /*}}}*/
+// FTWScanner::ScannerFile - File Scanner /*{{{*/
+// ---------------------------------------------------------------------
+/* */
+int FTWScanner::ScannerFile(const char *File, bool ReadLink)
+{
const char *LastComponent = strrchr(File, '/');
if (LastComponent == NULL)
LastComponent = File;
@@ -105,7 +114,8 @@ int FTWScanner::Scanner(const char *File,const struct stat *sb,int Flag)
given are not links themselves. */
char Jnk[2];
Owner->OriginalPath = File;
- if (Owner->RealPath != 0 && readlink(File,Jnk,sizeof(Jnk)) != -1 &&
+ if (ReadLink && Owner->RealPath != 0 &&
+ readlink(File,Jnk,sizeof(Jnk)) != -1 &&
realpath(File,Owner->RealPath) != 0)
Owner->DoPackage(Owner->RealPath);
else
@@ -154,7 +164,7 @@ bool FTWScanner::RecursiveScan(string Dir)
// Do recursive directory searching
Owner = this;
- int Res = ftw(Dir.c_str(),Scanner,30);
+ int Res = ftw(Dir.c_str(),ScannerFTW,30);
// Error treewalking?
if (Res != 0)
@@ -209,12 +219,14 @@ bool FTWScanner::LoadFileList(string Dir,string File)
FileName = Line;
}
+#if 0
struct stat St;
int Flag = FTW_F;
if (stat(FileName,&St) != 0)
Flag = FTW_NS;
+#endif
- if (Scanner(FileName,&St,Flag) != 0)
+ if (ScannerFile(FileName, false) != 0)
break;
}
@@ -227,7 +239,7 @@ bool FTWScanner::LoadFileList(string Dir,string File)
/* */
bool FTWScanner::Delink(string &FileName,const char *OriginalPath,
unsigned long &DeLinkBytes,
- struct stat &St)
+ off_t FileSize)
{
// See if this isn't an internaly prefix'd file name.
if (InternalPrefix.empty() == false &&
@@ -243,7 +255,7 @@ bool FTWScanner::Delink(string &FileName,const char *OriginalPath,
NewLine(1);
ioprintf(c1out, _(" DeLink %s [%s]\n"), (OriginalPath + InternalPrefix.length()),
- SizeToStr(St.st_size).c_str());
+ SizeToStr(FileSize).c_str());
c1out << flush;
if (NoLinkAct == false)
@@ -269,7 +281,7 @@ bool FTWScanner::Delink(string &FileName,const char *OriginalPath,
}
}
- DeLinkBytes += St.st_size;
+ DeLinkBytes += FileSize;
if (DeLinkBytes/1024 >= DeLinkLimit)
ioprintf(c1out, _(" DeLink limit of %sB hit.\n"), SizeToStr(DeLinkBytes).c_str());
}
@@ -295,6 +307,8 @@ PackagesWriter::PackagesWriter(string DB,string Overrides,string ExtOverrides,
// Process the command line options
DoMD5 = _config->FindB("APT::FTPArchive::MD5",true);
+ DoSHA1 = _config->FindB("APT::FTPArchive::SHA1",true);
+ DoSHA256 = _config->FindB("APT::FTPArchive::SHA256",true);
DoContents = _config->FindB("APT::FTPArchive::Contents",true);
NoOverride = _config->FindB("APT::FTPArchive::NoOverrideMsg",false);
@@ -343,29 +357,19 @@ bool FTWScanner::SetExts(string Vals)
// PackagesWriter::DoPackage - Process a single package /*{{{*/
// ---------------------------------------------------------------------
/* This method takes a package and gets its control information and
- MD5 then writes out a control record with the proper fields rewritten
- and the path/size/hash appended. */
+ MD5, SHA1 and SHA256 then writes out a control record with the proper fields
+ rewritten and the path/size/hash appended. */
bool PackagesWriter::DoPackage(string FileName)
{
- // Open the archive
- FileFd F(FileName,FileFd::ReadOnly);
- if (_error->PendingError() == true)
- return false;
-
- // Stat the file for later
- struct stat St;
- if (fstat(F.Fd(),&St) != 0)
- return _error->Errno("fstat",_("Failed to stat %s"),FileName.c_str());
-
// Pull all the data we need form the DB
- string MD5Res;
- if (Db.SetFile(FileName,St,&F) == false ||
- Db.LoadControl() == false ||
- (DoContents == true && Db.LoadContents(true) == false) ||
- (DoMD5 == true && Db.GetMD5(MD5Res,false) == false))
+ if (Db.GetFileInfo(FileName, true, DoContents, true, DoMD5, DoSHA1, DoSHA256)
+ == false)
+ {
return false;
+ }
- if (Delink(FileName,OriginalPath,Stats.DeLinkBytes,St) == false)
+ off_t FileSize = Db.GetFileSize();
+ if (Delink(FileName,OriginalPath,Stats.DeLinkBytes,FileSize) == false)
return false;
// Lookup the overide information
@@ -400,7 +404,7 @@ bool PackagesWriter::DoPackage(string FileName)
}
char Size[40];
- sprintf(Size,"%lu",St.st_size);
+ sprintf(Size,"%lu", (unsigned long) FileSize);
// Strip the DirStrip prefix from the FileName and add the PathPrefix
string NewFileName;
@@ -420,7 +424,9 @@ bool PackagesWriter::DoPackage(string FileName)
unsigned int End = 0;
SetTFRewriteData(Changes[End++], "Size", Size);
- SetTFRewriteData(Changes[End++], "MD5sum", MD5Res.c_str());
+ SetTFRewriteData(Changes[End++], "MD5sum", Db.MD5Res.c_str());
+ SetTFRewriteData(Changes[End++], "SHA1", Db.SHA1Res.c_str());
+ SetTFRewriteData(Changes[End++], "SHA256", Db.SHA256Res.c_str());
SetTFRewriteData(Changes[End++], "Filename", NewFileName.c_str());
SetTFRewriteData(Changes[End++], "Priority", OverItem->Priority.c_str());
SetTFRewriteData(Changes[End++], "Status", 0);
@@ -491,6 +497,10 @@ SourcesWriter::SourcesWriter(string BOverrides,string SOverrides,
else
NoOverride = true;
+ // WTF?? The logic above: if we can't read binary overrides, don't even try
+ // reading source overrides. if we can read binary overrides, then say there
+ // are no overrides. THIS MAKES NO SENSE! -- ajt@d.o, 2006/02/28
+
if (ExtOverrides.empty() == false)
SOver.ReadExtraOverride(ExtOverrides);
@@ -607,12 +617,14 @@ bool SourcesWriter::DoPackage(string FileName)
}
auto_ptr<Override::Item> SOverItem(SOver.GetItem(Tags.FindS("Source")));
- const auto_ptr<Override::Item> autoSOverItem(SOverItem);
+ // const auto_ptr<Override::Item> autoSOverItem(SOverItem);
if (SOverItem.get() == 0)
{
+ ioprintf(c1out, _(" %s has no source override entry\n"), Tags.FindS("Source").c_str());
SOverItem = auto_ptr<Override::Item>(BOver.GetItem(Tags.FindS("Source")));
if (SOverItem.get() == 0)
{
+ ioprintf(c1out, _(" %s has no binary override entry either\n"), Tags.FindS("Source").c_str());
SOverItem = auto_ptr<Override::Item>(new Override::Item);
*SOverItem = *OverItem;
}
@@ -657,7 +669,7 @@ bool SourcesWriter::DoPackage(string FileName)
realpath(OriginalPath.c_str(),RealPath) != 0)
{
string RP = RealPath;
- if (Delink(RP,OriginalPath.c_str(),Stats.DeLinkBytes,St) == false)
+ if (Delink(RP,OriginalPath.c_str(),Stats.DeLinkBytes,St.st_size) == false)
return false;
}
}
@@ -727,26 +739,14 @@ ContentsWriter::ContentsWriter(string DB) :
determine what the package name is. */
bool ContentsWriter::DoPackage(string FileName,string Package)
{
- // Open the archive
- FileFd F(FileName,FileFd::ReadOnly);
- if (_error->PendingError() == true)
- return false;
-
- // Stat the file for later
- struct stat St;
- if (fstat(F.Fd(),&St) != 0)
- return _error->Errno("fstat","Failed too stat %s",FileName.c_str());
-
- // Ready the DB
- if (Db.SetFile(FileName,St,&F) == false ||
- Db.LoadContents(false) == false)
+ if (!Db.GetFileInfo(FileName, Package.empty(), true, false, false, false, false))
+ {
return false;
+ }
// Parse the package name
if (Package.empty() == true)
{
- if (Db.LoadControl() == false)
- return false;
Package = Db.Control.Section.FindS("Package");
}
@@ -896,6 +896,11 @@ bool ReleaseWriter::DoPackage(string FileName)
SHA1.AddFD(fd.Fd(), fd.Size());
CheckSums[NewFileName].SHA1 = SHA1.Result();
+ fd.Seek(0);
+ SHA256Summation SHA256;
+ SHA256.AddFD(fd.Fd(), fd.Size());
+ CheckSums[NewFileName].SHA256 = SHA256.Result();
+
fd.Close();
return true;
@@ -927,5 +932,16 @@ void ReleaseWriter::Finish()
(*I).second.size,
(*I).first.c_str());
}
+
+ fprintf(Output, "SHA256:\n");
+ for(map<string,struct CheckSum>::iterator I = CheckSums.begin();
+ I != CheckSums.end();
+ ++I)
+ {
+ fprintf(Output, " %s %16ld %s\n",
+ (*I).second.SHA256.c_str(),
+ (*I).second.size,
+ (*I).first.c_str());
+ }
}
diff --git a/ftparchive/writer.h b/ftparchive/writer.h
index 16d014ef8..1d47d57ec 100644
--- a/ftparchive/writer.h
+++ b/ftparchive/writer.h
@@ -45,10 +45,11 @@ class FTWScanner
bool NoLinkAct;
static FTWScanner *Owner;
- static int Scanner(const char *File,const struct stat *sb,int Flag);
+ static int ScannerFTW(const char *File,const struct stat *sb,int Flag);
+ static int ScannerFile(const char *File, bool ReadLink);
bool Delink(string &FileName,const char *OriginalPath,
- unsigned long &Bytes,struct stat &St);
+ unsigned long &Bytes,off_t FileSize);
inline void NewLine(unsigned Priority)
{
@@ -84,6 +85,8 @@ class PackagesWriter : public FTWScanner
// Some flags
bool DoMD5;
+ bool DoSHA1;
+ bool DoSHA256;
bool NoOverride;
bool DoContents;
@@ -170,6 +173,7 @@ protected:
{
string MD5;
string SHA1;
+ string SHA256;
// Limited by FileFd::Size()
unsigned long size;
~CheckSum() {};
diff --git a/methods/gpgv.cc b/methods/gpgv.cc
index ba7389cba..227e08d63 100644
--- a/methods/gpgv.cc
+++ b/methods/gpgv.cc
@@ -17,6 +17,7 @@
#define GNUPGBADSIG "[GNUPG:] BADSIG"
#define GNUPGNOPUBKEY "[GNUPG:] NO_PUBKEY"
#define GNUPGVALIDSIG "[GNUPG:] VALIDSIG"
+#define GNUPGNODATA "[GNUPG:] NODATA"
class GPGVMethod : public pkgAcqMethod
{
@@ -171,7 +172,12 @@ string GPGVMethod::VerifyGetSigners(const char *file, const char *outfile,
std::cerr << "Got NO_PUBKEY " << std::endl;
NoPubKeySigners.push_back(string(buffer+sizeof(GNUPGPREFIX)));
}
-
+ if (strncmp(buffer, GNUPGNODATA, sizeof(GNUPGBADSIG)-1) == 0)
+ {
+ if (_config->FindB("Debug::Acquire::gpgv", false))
+ std::cerr << "Got NODATA! " << std::endl;
+ BadSigners.push_back(string(buffer+sizeof(GNUPGPREFIX)));
+ }
if (strncmp(buffer, GNUPGVALIDSIG, sizeof(GNUPGVALIDSIG)-1) == 0)
{
char *sig = buffer + sizeof(GNUPGPREFIX);
diff --git a/methods/http.cc b/methods/http.cc
index 341de94e3..c6623c46f 100644
--- a/methods/http.cc
+++ b/methods/http.cc
@@ -657,7 +657,7 @@ void HttpMethod::SendReq(FetchItem *Itm,CircleBuf &Out)
will glitch HTTP/1.0 proxies because they do not filter it out and
pass it on, HTTP/1.1 says the connection should default to keep alive
and we expect the proxy to do this */
- if (Proxy.empty() == true)
+ if (Proxy.empty() == true || Proxy.Host.empty())
sprintf(Buf,"GET %s HTTP/1.1\r\nHost: %s\r\nConnection: keep-alive\r\n",
QuoteString(Uri.Path,"~").c_str(),ProperHost.c_str());
else
diff --git a/po/apt-all.pot b/po/apt-all.pot
index 6929345af..095de7f6d 100644
--- a/po/apt-all.pot
+++ b/po/apt-all.pot
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-05-27 13:46+0200\n"
+"POT-Creation-Date: 2006-08-09 16:17+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -148,7 +148,7 @@ msgstr ""
#: cmdline/apt-cache.cc:1652 cmdline/apt-cdrom.cc:138 cmdline/apt-config.cc:70
#: cmdline/apt-extracttemplates.cc:225 ftparchive/apt-ftparchive.cc:550
-#: cmdline/apt-get.cc:2369 cmdline/apt-sortpkgs.cc:144
+#: cmdline/apt-get.cc:2380 cmdline/apt-sortpkgs.cc:144
#, c-format
msgid "%s %s for %s %s compiled on %s %s\n"
msgstr ""
@@ -327,115 +327,126 @@ msgstr ""
msgid "Some files are missing in the package file group `%s'"
msgstr ""
-#: ftparchive/cachedb.cc:45
+#: ftparchive/cachedb.cc:47
#, c-format
msgid "DB was corrupted, file renamed to %s.old"
msgstr ""
-#: ftparchive/cachedb.cc:63
+#: ftparchive/cachedb.cc:65
#, c-format
msgid "DB is old, attempting to upgrade %s"
msgstr ""
-#: ftparchive/cachedb.cc:73
+#: ftparchive/cachedb.cc:76
+msgid ""
+"DB format is invalid. If you upgraded from a older version of apt, please "
+"remove and re-create the database."
+msgstr ""
+
+#: ftparchive/cachedb.cc:81
#, c-format
msgid "Unable to open DB file %s: %s"
msgstr ""
-#: ftparchive/cachedb.cc:114
+#: ftparchive/cachedb.cc:127 apt-inst/extract.cc:181 apt-inst/extract.cc:193
+#: apt-inst/extract.cc:210 apt-inst/deb/dpkgdb.cc:121 methods/gpgv.cc:272
#, c-format
-msgid "File date has changed %s"
+msgid "Failed to stat %s"
msgstr ""
-#: ftparchive/cachedb.cc:155
+#: ftparchive/cachedb.cc:242
msgid "Archive has no control record"
msgstr ""
-#: ftparchive/cachedb.cc:267
+#: ftparchive/cachedb.cc:448
msgid "Unable to get a cursor"
msgstr ""
-#: ftparchive/writer.cc:78
+#: ftparchive/writer.cc:79
#, c-format
msgid "W: Unable to read directory %s\n"
msgstr ""
-#: ftparchive/writer.cc:83
+#: ftparchive/writer.cc:84
#, c-format
msgid "W: Unable to stat %s\n"
msgstr ""
-#: ftparchive/writer.cc:125
+#: ftparchive/writer.cc:135
msgid "E: "
msgstr ""
-#: ftparchive/writer.cc:127
+#: ftparchive/writer.cc:137
msgid "W: "
msgstr ""
-#: ftparchive/writer.cc:134
+#: ftparchive/writer.cc:144
msgid "E: Errors apply to file "
msgstr ""
-#: ftparchive/writer.cc:151 ftparchive/writer.cc:181
+#: ftparchive/writer.cc:161 ftparchive/writer.cc:191
#, c-format
msgid "Failed to resolve %s"
msgstr ""
-#: ftparchive/writer.cc:163
+#: ftparchive/writer.cc:173
msgid "Tree walking failed"
msgstr ""
-#: ftparchive/writer.cc:188
+#: ftparchive/writer.cc:198
#, c-format
msgid "Failed to open %s"
msgstr ""
-#: ftparchive/writer.cc:245
+#: ftparchive/writer.cc:257
#, c-format
msgid " DeLink %s [%s]\n"
msgstr ""
-#: ftparchive/writer.cc:253
+#: ftparchive/writer.cc:265
#, c-format
msgid "Failed to readlink %s"
msgstr ""
-#: ftparchive/writer.cc:257
+#: ftparchive/writer.cc:269
#, c-format
msgid "Failed to unlink %s"
msgstr ""
-#: ftparchive/writer.cc:264
+#: ftparchive/writer.cc:276
#, c-format
msgid "*** Failed to link %s to %s"
msgstr ""
-#: ftparchive/writer.cc:274
+#: ftparchive/writer.cc:286
#, c-format
msgid " DeLink limit of %sB hit.\n"
msgstr ""
-#: ftparchive/writer.cc:358 apt-inst/extract.cc:181 apt-inst/extract.cc:193
-#: apt-inst/extract.cc:210 apt-inst/deb/dpkgdb.cc:121 methods/gpgv.cc:266
-#, c-format
-msgid "Failed to stat %s"
-msgstr ""
-
-#: ftparchive/writer.cc:386
+#: ftparchive/writer.cc:390
msgid "Archive had no package field"
msgstr ""
-#: ftparchive/writer.cc:394 ftparchive/writer.cc:603
+#: ftparchive/writer.cc:398 ftparchive/writer.cc:613
#, c-format
msgid " %s has no override entry\n"
msgstr ""
-#: ftparchive/writer.cc:437 ftparchive/writer.cc:689
+#: ftparchive/writer.cc:443 ftparchive/writer.cc:701
#, c-format
msgid " %s maintainer is %s not %s\n"
msgstr ""
+#: ftparchive/writer.cc:623
+#, c-format
+msgid " %s has no source override entry\n"
+msgstr ""
+
+#: ftparchive/writer.cc:627
+#, c-format
+msgid " %s has no binary override entry either\n"
+msgstr ""
+
#: ftparchive/contents.cc:317
#, c-format
msgid "Internal error, could not locate member %s"
@@ -694,11 +705,11 @@ msgstr ""
msgid "Internal error, Ordering didn't finish"
msgstr ""
-#: cmdline/apt-get.cc:791 cmdline/apt-get.cc:1800 cmdline/apt-get.cc:1833
+#: cmdline/apt-get.cc:791 cmdline/apt-get.cc:1811 cmdline/apt-get.cc:1844
msgid "Unable to lock the download directory"
msgstr ""
-#: cmdline/apt-get.cc:801 cmdline/apt-get.cc:1881 cmdline/apt-get.cc:2117
+#: cmdline/apt-get.cc:801 cmdline/apt-get.cc:1892 cmdline/apt-get.cc:2128
#: apt-pkg/cachefile.cc:67
msgid "The list of sources could not be read."
msgstr ""
@@ -727,7 +738,7 @@ msgstr ""
msgid "After unpacking %sB disk space will be freed.\n"
msgstr ""
-#: cmdline/apt-get.cc:846 cmdline/apt-get.cc:1971
+#: cmdline/apt-get.cc:846 cmdline/apt-get.cc:1982
#, c-format
msgid "Couldn't determine free space in %s"
msgstr ""
@@ -761,7 +772,7 @@ msgstr ""
msgid "Do you want to continue [Y/n]? "
msgstr ""
-#: cmdline/apt-get.cc:961 cmdline/apt-get.cc:1365 cmdline/apt-get.cc:2014
+#: cmdline/apt-get.cc:961 cmdline/apt-get.cc:1365 cmdline/apt-get.cc:2025
#, c-format
msgid "Failed to fetch %s %s\n"
msgstr ""
@@ -770,7 +781,7 @@ msgstr ""
msgid "Some files failed to download"
msgstr ""
-#: cmdline/apt-get.cc:980 cmdline/apt-get.cc:2023
+#: cmdline/apt-get.cc:980 cmdline/apt-get.cc:2034
msgid "Download complete and in download only mode"
msgstr ""
@@ -927,144 +938,144 @@ msgstr ""
msgid "The following extra packages will be installed:"
msgstr ""
-#: cmdline/apt-get.cc:1674
+#: cmdline/apt-get.cc:1685
msgid "Suggested packages:"
msgstr ""
-#: cmdline/apt-get.cc:1675
+#: cmdline/apt-get.cc:1686
msgid "Recommended packages:"
msgstr ""
-#: cmdline/apt-get.cc:1695
+#: cmdline/apt-get.cc:1706
msgid "Calculating upgrade... "
msgstr ""
-#: cmdline/apt-get.cc:1698 methods/ftp.cc:702 methods/connect.cc:101
+#: cmdline/apt-get.cc:1709 methods/ftp.cc:702 methods/connect.cc:101
msgid "Failed"
msgstr ""
-#: cmdline/apt-get.cc:1703
+#: cmdline/apt-get.cc:1714
msgid "Done"
msgstr ""
-#: cmdline/apt-get.cc:1768 cmdline/apt-get.cc:1776
+#: cmdline/apt-get.cc:1779 cmdline/apt-get.cc:1787
msgid "Internal error, problem resolver broke stuff"
msgstr ""
-#: cmdline/apt-get.cc:1876
+#: cmdline/apt-get.cc:1887
msgid "Must specify at least one package to fetch source for"
msgstr ""
-#: cmdline/apt-get.cc:1906 cmdline/apt-get.cc:2135
+#: cmdline/apt-get.cc:1917 cmdline/apt-get.cc:2146
#, c-format
msgid "Unable to find a source package for %s"
msgstr ""
-#: cmdline/apt-get.cc:1950
+#: cmdline/apt-get.cc:1961
#, c-format
msgid "Skipping already downloaded file '%s'\n"
msgstr ""
-#: cmdline/apt-get.cc:1974
+#: cmdline/apt-get.cc:1985
#, c-format
msgid "You don't have enough free space in %s"
msgstr ""
-#: cmdline/apt-get.cc:1979
+#: cmdline/apt-get.cc:1990
#, c-format
msgid "Need to get %sB/%sB of source archives.\n"
msgstr ""
-#: cmdline/apt-get.cc:1982
+#: cmdline/apt-get.cc:1993
#, c-format
msgid "Need to get %sB of source archives.\n"
msgstr ""
-#: cmdline/apt-get.cc:1988
+#: cmdline/apt-get.cc:1999
#, c-format
msgid "Fetch source %s\n"
msgstr ""
-#: cmdline/apt-get.cc:2019
+#: cmdline/apt-get.cc:2030
msgid "Failed to fetch some archives."
msgstr ""
-#: cmdline/apt-get.cc:2047
+#: cmdline/apt-get.cc:2058
#, c-format
msgid "Skipping unpack of already unpacked source in %s\n"
msgstr ""
-#: cmdline/apt-get.cc:2059
+#: cmdline/apt-get.cc:2070
#, c-format
msgid "Unpack command '%s' failed.\n"
msgstr ""
-#: cmdline/apt-get.cc:2060
+#: cmdline/apt-get.cc:2071
#, c-format
msgid "Check if the 'dpkg-dev' package is installed.\n"
msgstr ""
-#: cmdline/apt-get.cc:2077
+#: cmdline/apt-get.cc:2088
#, c-format
msgid "Build command '%s' failed.\n"
msgstr ""
-#: cmdline/apt-get.cc:2096
+#: cmdline/apt-get.cc:2107
msgid "Child process failed"
msgstr ""
-#: cmdline/apt-get.cc:2112
+#: cmdline/apt-get.cc:2123
msgid "Must specify at least one package to check builddeps for"
msgstr ""
-#: cmdline/apt-get.cc:2140
+#: cmdline/apt-get.cc:2151
#, c-format
msgid "Unable to get build-dependency information for %s"
msgstr ""
-#: cmdline/apt-get.cc:2160
+#: cmdline/apt-get.cc:2171
#, c-format
msgid "%s has no build depends.\n"
msgstr ""
-#: cmdline/apt-get.cc:2212
+#: cmdline/apt-get.cc:2223
#, c-format
msgid ""
"%s dependency for %s cannot be satisfied because the package %s cannot be "
"found"
msgstr ""
-#: cmdline/apt-get.cc:2264
+#: cmdline/apt-get.cc:2275
#, c-format
msgid ""
"%s dependency for %s cannot be satisfied because no available versions of "
"package %s can satisfy version requirements"
msgstr ""
-#: cmdline/apt-get.cc:2299
+#: cmdline/apt-get.cc:2310
#, c-format
msgid "Failed to satisfy %s dependency for %s: Installed package %s is too new"
msgstr ""
-#: cmdline/apt-get.cc:2324
+#: cmdline/apt-get.cc:2335
#, c-format
msgid "Failed to satisfy %s dependency for %s: %s"
msgstr ""
-#: cmdline/apt-get.cc:2338
+#: cmdline/apt-get.cc:2349
#, c-format
msgid "Build-dependencies for %s could not be satisfied."
msgstr ""
-#: cmdline/apt-get.cc:2342
+#: cmdline/apt-get.cc:2353
msgid "Failed to process build dependencies"
msgstr ""
-#: cmdline/apt-get.cc:2374
+#: cmdline/apt-get.cc:2385
msgid "Supported modules:"
msgstr ""
-#: cmdline/apt-get.cc:2415
+#: cmdline/apt-get.cc:2426
msgid ""
"Usage: apt-get [options] command\n"
" apt-get [options] install|remove pkg1 [pkg2 ...]\n"
@@ -1192,19 +1203,19 @@ msgstr ""
msgid "Failed to create pipes"
msgstr ""
-#: apt-inst/contrib/extracttar.cc:143
+#: apt-inst/contrib/extracttar.cc:144
msgid "Failed to exec gzip "
msgstr ""
-#: apt-inst/contrib/extracttar.cc:180 apt-inst/contrib/extracttar.cc:206
+#: apt-inst/contrib/extracttar.cc:181 apt-inst/contrib/extracttar.cc:207
msgid "Corrupted archive"
msgstr ""
-#: apt-inst/contrib/extracttar.cc:195
+#: apt-inst/contrib/extracttar.cc:196
msgid "Tar checksum failed, archive corrupted"
msgstr ""
-#: apt-inst/contrib/extracttar.cc:298
+#: apt-inst/contrib/extracttar.cc:299
#, c-format
msgid "Unknown TAR header type %u, member %s"
msgstr ""
@@ -1479,12 +1490,12 @@ msgstr ""
msgid "File not found"
msgstr ""
-#: methods/copy.cc:42 methods/gpgv.cc:275 methods/gzip.cc:133
+#: methods/copy.cc:42 methods/gpgv.cc:281 methods/gzip.cc:133
#: methods/gzip.cc:142
msgid "Failed to stat"
msgstr ""
-#: methods/copy.cc:79 methods/gpgv.cc:272 methods/gzip.cc:139
+#: methods/copy.cc:79 methods/gpgv.cc:278 methods/gzip.cc:139
msgid "Failed to set modification time"
msgstr ""
@@ -1694,38 +1705,38 @@ msgstr ""
msgid "Unable to connect to %s %s:"
msgstr ""
-#: methods/gpgv.cc:64
+#: methods/gpgv.cc:65
#, c-format
msgid "Couldn't access keyring: '%s'"
msgstr ""
-#: methods/gpgv.cc:99
+#: methods/gpgv.cc:100
msgid "E: Argument list from Acquire::gpgv::Options too long. Exiting."
msgstr ""
-#: methods/gpgv.cc:198
+#: methods/gpgv.cc:204
msgid ""
"Internal error: Good signature, but could not determine key fingerprint?!"
msgstr ""
-#: methods/gpgv.cc:203
+#: methods/gpgv.cc:209
msgid "At least one invalid signature was encountered."
msgstr ""
-#: methods/gpgv.cc:207
+#: methods/gpgv.cc:213
#, c-format
msgid "Could not execute '%s' to verify signature (is gnupg installed?)"
msgstr ""
-#: methods/gpgv.cc:212
+#: methods/gpgv.cc:218
msgid "Unknown error executing gpgv"
msgstr ""
-#: methods/gpgv.cc:243
+#: methods/gpgv.cc:249
msgid "The following signatures were invalid:\n"
msgstr ""
-#: methods/gpgv.cc:250
+#: methods/gpgv.cc:256
msgid ""
"The following signatures couldn't be verified because the public key is not "
"available:\n"
@@ -2101,12 +2112,12 @@ msgstr ""
msgid "Dependency generation"
msgstr ""
-#: apt-pkg/tagfile.cc:72
+#: apt-pkg/tagfile.cc:85 apt-pkg/tagfile.cc:92
#, c-format
msgid "Unable to parse package file %s (1)"
msgstr ""
-#: apt-pkg/tagfile.cc:102
+#: apt-pkg/tagfile.cc:186
#, c-format
msgid "Unable to parse package file %s (2)"
msgstr ""
diff --git a/po/bg.po b/po/bg.po
index e515d6c5b..ddfac13cc 100644
--- a/po/bg.po
+++ b/po/bg.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: apt 0.6\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-05-16 07:33-0500\n"
+"POT-Creation-Date: 2006-05-27 13:46+0200\n"
"PO-Revision-Date: 2006-03-31 22:05+0300\n"
"Last-Translator: Yavor Doganov <yavor@doganov.org>\n"
"Language-Team: Bulgarian <dict@fsa-bg.org>\n"
@@ -2306,15 +2306,15 @@ msgstr "незадължителен"
msgid "extra"
msgstr "допълнителен"
-#: apt-pkg/depcache.cc:60 apt-pkg/depcache.cc:89
+#: apt-pkg/depcache.cc:61 apt-pkg/depcache.cc:90
msgid "Building dependency tree"
msgstr "Изграждане на дървото със зависимости"
-#: apt-pkg/depcache.cc:61
+#: apt-pkg/depcache.cc:62
msgid "Candidate versions"
msgstr "Версии кандидати"
-#: apt-pkg/depcache.cc:90
+#: apt-pkg/depcache.cc:91
msgid "Dependency generation"
msgstr "Генериране на зависимости"
diff --git a/po/bs.po b/po/bs.po
index 2fe2d7cfe..fef208beb 100644
--- a/po/bs.po
+++ b/po/bs.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: apt 0.5.26\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-05-16 07:33-0500\n"
+"POT-Creation-Date: 2006-05-27 13:46+0200\n"
"PO-Revision-Date: 2004-05-06 15:25+0100\n"
"Last-Translator: Safir Šećerović <sapphire@linux.org.ba>\n"
"Language-Team: Bosnian <lokal@lugbih.org>\n"
@@ -2109,15 +2109,15 @@ msgstr "opcionalno"
msgid "extra"
msgstr "extra"
-#: apt-pkg/depcache.cc:60 apt-pkg/depcache.cc:89
+#: apt-pkg/depcache.cc:61 apt-pkg/depcache.cc:90
msgid "Building dependency tree"
msgstr "Gradim stablo zavisnosti"
-#: apt-pkg/depcache.cc:61
+#: apt-pkg/depcache.cc:62
msgid "Candidate versions"
msgstr "Verzije kandidata"
-#: apt-pkg/depcache.cc:90
+#: apt-pkg/depcache.cc:91
msgid "Dependency generation"
msgstr "Stvaranje zavisnosti"
diff --git a/po/ca.po b/po/ca.po
index b63109932..33b266d6b 100644
--- a/po/ca.po
+++ b/po/ca.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: apt 0.6\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-05-16 07:33-0500\n"
+"POT-Creation-Date: 2006-05-27 13:46+0200\n"
"PO-Revision-Date: 2006-02-05 22:00+0100\n"
"Last-Translator: Jordi Mallach <jordi@debian.org>\n"
"Language-Team: Catalan <debian-l10n-catalan@lists.debian.org>\n"
@@ -2298,15 +2298,15 @@ msgstr "opcional"
msgid "extra"
msgstr "extra"
-#: apt-pkg/depcache.cc:60 apt-pkg/depcache.cc:89
+#: apt-pkg/depcache.cc:61 apt-pkg/depcache.cc:90
msgid "Building dependency tree"
msgstr "S'està construint l'arbre de dependències"
-#: apt-pkg/depcache.cc:61
+#: apt-pkg/depcache.cc:62
msgid "Candidate versions"
msgstr "Versions candidates"
-#: apt-pkg/depcache.cc:90
+#: apt-pkg/depcache.cc:91
msgid "Dependency generation"
msgstr "Dependències que genera"
diff --git a/po/cs.po b/po/cs.po
index 837f78065..50a2db1df 100644
--- a/po/cs.po
+++ b/po/cs.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: apt\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-05-08 11:02+0200\n"
+"POT-Creation-Date: 2006-05-27 13:46+0200\n"
"PO-Revision-Date: 2006-05-14 18:36+0200\n"
"Last-Translator: Miroslav Kure <kurem@debian.cz>\n"
"Language-Team: Czech <debian-l10n-czech@lists.debian.org>\n"
@@ -2269,15 +2269,15 @@ msgstr "volitelný"
msgid "extra"
msgstr "extra"
-#: apt-pkg/depcache.cc:60 apt-pkg/depcache.cc:89
+#: apt-pkg/depcache.cc:61 apt-pkg/depcache.cc:90
msgid "Building dependency tree"
msgstr "Vytvářím strom závislostí"
-#: apt-pkg/depcache.cc:61
+#: apt-pkg/depcache.cc:62
msgid "Candidate versions"
msgstr "Kandidátské verze"
-#: apt-pkg/depcache.cc:90
+#: apt-pkg/depcache.cc:91
msgid "Dependency generation"
msgstr "Generování závislostí"
diff --git a/po/cy.po b/po/cy.po
index 18612e694..faffe1aa2 100644
--- a/po/cy.po
+++ b/po/cy.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: APT\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-05-16 07:33-0500\n"
+"POT-Creation-Date: 2006-05-27 13:46+0200\n"
"PO-Revision-Date: 2005-06-06 13:46+0100\n"
"Last-Translator: Dafydd Harries <daf@muse.19inch.net>\n"
"Language-Team: Welsh <cy@pengwyn.linux.org.uk>\n"
@@ -2363,17 +2363,17 @@ msgstr "opsiynnol"
msgid "extra"
msgstr "ychwanegol"
-#: apt-pkg/depcache.cc:60 apt-pkg/depcache.cc:89
+#: apt-pkg/depcache.cc:61 apt-pkg/depcache.cc:90
#, fuzzy
msgid "Building dependency tree"
msgstr "Yn Aideladu Coeden Dibyniaeth"
-#: apt-pkg/depcache.cc:61
+#: apt-pkg/depcache.cc:62
#, fuzzy
msgid "Candidate versions"
msgstr "Fersiynau Posib"
-#: apt-pkg/depcache.cc:90
+#: apt-pkg/depcache.cc:91
#, fuzzy
msgid "Dependency generation"
msgstr "Cynhyrchaid Dibyniaeth"
diff --git a/po/da.po b/po/da.po
index 1ca325c1f..434c4b348 100644
--- a/po/da.po
+++ b/po/da.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: apt-da\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-05-16 07:33-0500\n"
+"POT-Creation-Date: 2006-05-27 13:46+0200\n"
"PO-Revision-Date: 2006-01-20 22:23+0100\n"
"Last-Translator: Claus Hindsgaul <claus_h@image.dk>\n"
"Language-Team: Danish <dansk@klid.dk>\n"
@@ -2283,15 +2283,15 @@ msgstr "frivillig"
msgid "extra"
msgstr "ekstra"
-#: apt-pkg/depcache.cc:60 apt-pkg/depcache.cc:89
+#: apt-pkg/depcache.cc:61 apt-pkg/depcache.cc:90
msgid "Building dependency tree"
msgstr "Opbygger afhngighedstr"
-#: apt-pkg/depcache.cc:61
+#: apt-pkg/depcache.cc:62
msgid "Candidate versions"
msgstr "Kandidatversioner"
-#: apt-pkg/depcache.cc:90
+#: apt-pkg/depcache.cc:91
msgid "Dependency generation"
msgstr "Afhngighedsgenerering"
diff --git a/po/de.po b/po/de.po
index cadfefe12..9358ff248 100644
--- a/po/de.po
+++ b/po/de.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: apt 0.5.26\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-05-16 07:33-0500\n"
+"POT-Creation-Date: 2006-05-27 13:46+0200\n"
"PO-Revision-Date: 2005-06-15 18:22+0200\n"
"Last-Translator: Michael Piefel <piefel@debian.org>\n"
"Language-Team: <de@li.org>\n"
@@ -2322,15 +2322,15 @@ msgstr "optional"
msgid "extra"
msgstr "extra"
-#: apt-pkg/depcache.cc:60 apt-pkg/depcache.cc:89
+#: apt-pkg/depcache.cc:61 apt-pkg/depcache.cc:90
msgid "Building dependency tree"
msgstr "Abhängigkeitsbaum wird aufgebaut"
-#: apt-pkg/depcache.cc:61
+#: apt-pkg/depcache.cc:62
msgid "Candidate versions"
msgstr "Mögliche Versionen"
-#: apt-pkg/depcache.cc:90
+#: apt-pkg/depcache.cc:91
msgid "Dependency generation"
msgstr "Abhängigkeits-Generierung"
diff --git a/po/el.po b/po/el.po
index 7a885072f..51143d9cd 100644
--- a/po/el.po
+++ b/po/el.po
@@ -18,7 +18,7 @@ msgid ""
msgstr ""
"Project-Id-Version: apt_po_el_new\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-05-16 07:33-0500\n"
+"POT-Creation-Date: 2006-05-27 13:46+0200\n"
"PO-Revision-Date: 2006-01-18 15:16+0200\n"
"Last-Translator: Konstantinos Margaritis <markos@debian.org>\n"
"Language-Team: Greek <debian-l10n-greek@lists.debian.org>\n"
@@ -2320,15 +2320,15 @@ msgstr "προαιρετικό"
msgid "extra"
msgstr "επιπλέον"
-#: apt-pkg/depcache.cc:60 apt-pkg/depcache.cc:89
+#: apt-pkg/depcache.cc:61 apt-pkg/depcache.cc:90
msgid "Building dependency tree"
msgstr "Κατασκευή Δένδρου Εξαρτήσεων"
-#: apt-pkg/depcache.cc:61
+#: apt-pkg/depcache.cc:62
msgid "Candidate versions"
msgstr "Υποψήφιες Εκδόσεις"
-#: apt-pkg/depcache.cc:90
+#: apt-pkg/depcache.cc:91
msgid "Dependency generation"
msgstr "Παραγωγή Εξαρτήσεων"
diff --git a/po/en_GB.po b/po/en_GB.po
index 0cc9ad7b2..34d1bdecb 100644
--- a/po/en_GB.po
+++ b/po/en_GB.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: apt 0.5.5\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-05-16 07:33-0500\n"
+"POT-Creation-Date: 2006-05-27 13:46+0200\n"
"PO-Revision-Date: 2002-11-10 20:56+0100\n"
"Last-Translator: Neil Williams <linux@codehelp.co.uk>\n"
"Language-Team: en_GB <en@li.org>\n"
@@ -2272,15 +2272,15 @@ msgstr "optional"
msgid "extra"
msgstr "extra"
-#: apt-pkg/depcache.cc:60 apt-pkg/depcache.cc:89
+#: apt-pkg/depcache.cc:61 apt-pkg/depcache.cc:90
msgid "Building dependency tree"
msgstr "Building dependency tree"
-#: apt-pkg/depcache.cc:61
+#: apt-pkg/depcache.cc:62
msgid "Candidate versions"
msgstr "Candidate versions"
-#: apt-pkg/depcache.cc:90
+#: apt-pkg/depcache.cc:91
msgid "Dependency generation"
msgstr "Dependency generation"
diff --git a/po/es.po b/po/es.po
index ebb2922cb..c8c1e5237 100644
--- a/po/es.po
+++ b/po/es.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: apt 0.6.42.3exp1\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-05-16 07:33-0500\n"
+"POT-Creation-Date: 2006-05-27 13:46+0200\n"
"PO-Revision-Date: 2005-11-16 17:37+0100\n"
"Last-Translator: Rubn Porras Campo <nahoo@inicia.es>\n"
"Language-Team: Spanish <debian-l10n-spanish@lists.debian.org>\n"
@@ -2307,15 +2307,15 @@ msgstr "opcional"
msgid "extra"
msgstr "extra"
-#: apt-pkg/depcache.cc:60 apt-pkg/depcache.cc:89
+#: apt-pkg/depcache.cc:61 apt-pkg/depcache.cc:90
msgid "Building dependency tree"
msgstr "Creando rbol de dependencias"
-#: apt-pkg/depcache.cc:61
+#: apt-pkg/depcache.cc:62
msgid "Candidate versions"
msgstr "Versiones candidatas"
-#: apt-pkg/depcache.cc:90
+#: apt-pkg/depcache.cc:91
msgid "Dependency generation"
msgstr "Generacin de dependencias"
diff --git a/po/fr.po b/po/fr.po
index 22d83c0b1..b9899ab69 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: fr\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-05-16 07:33-0500\n"
+"POT-Creation-Date: 2006-05-27 13:46+0200\n"
"PO-Revision-Date: 2006-05-18 09:31-0500\n"
"Last-Translator: Christian Perrier <bubulle@debian.org>\n"
"Language-Team: French <debian-l10n-french@lists.debian.org>\n"
@@ -2327,15 +2327,15 @@ msgstr "optionnel"
msgid "extra"
msgstr "supplmentaire"
-#: apt-pkg/depcache.cc:60 apt-pkg/depcache.cc:89
+#: apt-pkg/depcache.cc:61 apt-pkg/depcache.cc:90
msgid "Building dependency tree"
msgstr "Construction de l'arbre des dpendances"
-#: apt-pkg/depcache.cc:61
+#: apt-pkg/depcache.cc:62
msgid "Candidate versions"
msgstr "Versions possibles"
-#: apt-pkg/depcache.cc:90
+#: apt-pkg/depcache.cc:91
msgid "Dependency generation"
msgstr "Gnration des dpendances"
diff --git a/po/gl.po b/po/gl.po
index a288bd8be..cc522e58d 100644
--- a/po/gl.po
+++ b/po/gl.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: apt\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-05-16 07:33-0500\n"
+"POT-Creation-Date: 2006-05-27 13:46+0200\n"
"PO-Revision-Date: 2006-05-11 18:09+0200\n"
"Last-Translator: Jacobo Tarrío <jtarrio@debian.org>\n"
"Language-Team: Galician <trasno@ceu.fi.udc.es>\n"
@@ -15,7 +15,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
#: cmdline/apt-cache.cc:135
-#, c-format
+#, c-format
msgid "Package %s version %s has an unmet dep:\n"
msgstr "O paquete %s versión %s ten unha dependencia incumprida:\n"
@@ -2297,15 +2297,15 @@ msgstr "opcional"
msgid "extra"
msgstr "extra"
-#: apt-pkg/depcache.cc:60 apt-pkg/depcache.cc:89
+#: apt-pkg/depcache.cc:61 apt-pkg/depcache.cc:90
msgid "Building dependency tree"
msgstr "A construír a árbore de dependencias"
-#: apt-pkg/depcache.cc:61
+#: apt-pkg/depcache.cc:62
msgid "Candidate versions"
msgstr "Versións candidatas"
-#: apt-pkg/depcache.cc:90
+#: apt-pkg/depcache.cc:91
msgid "Dependency generation"
msgstr "Xeración de dependencias"
diff --git a/po/hu.po b/po/hu.po
index d7a6c7c8d..fdc39aba1 100644
--- a/po/hu.po
+++ b/po/hu.po
@@ -24,12 +24,8 @@ msgstr ""
msgid "Package %s version %s has an unmet dep:\n"
msgstr "%s csomag %s verziójának teljesítetlen függősége van:\n"
-#: cmdline/apt-cache.cc:175
-#: cmdline/apt-cache.cc:527
-#: cmdline/apt-cache.cc:615
-#: cmdline/apt-cache.cc:771
-#: cmdline/apt-cache.cc:989
-#: cmdline/apt-cache.cc:1357
+#: cmdline/apt-cache.cc:175 cmdline/apt-cache.cc:527 cmdline/apt-cache.cc:615
+#: cmdline/apt-cache.cc:771 cmdline/apt-cache.cc:989 cmdline/apt-cache.cc:1357
#: cmdline/apt-cache.cc:1508
#, c-format
msgid "Unable to locate package %s"
@@ -91,8 +87,7 @@ msgstr "Slack terület összesen: "
msgid "Total space accounted for: "
msgstr "Terület összesen: "
-#: cmdline/apt-cache.cc:446
-#: cmdline/apt-cache.cc:1189
+#: cmdline/apt-cache.cc:446 cmdline/apt-cache.cc:1189
#, c-format
msgid "Package file %s is out of sync."
msgstr "%s csomag fájl szinkronon kívül."
@@ -109,10 +104,10 @@ msgstr "Nem találtam csomagokat"
msgid "Package files:"
msgstr "Csomagfájlok:"
-#: cmdline/apt-cache.cc:1469
-#: cmdline/apt-cache.cc:1555
+#: cmdline/apt-cache.cc:1469 cmdline/apt-cache.cc:1555
msgid "Cache is out of sync, can't x-ref a package file"
-msgstr "A gyorsítótár nincs szinkronban, nem lehet kereszthivatkozni a csomag fájlra"
+msgstr ""
+"A gyorsítótár nincs szinkronban, nem lehet kereszthivatkozni a csomag fájlra"
#: cmdline/apt-cache.cc:1470
#, c-format
@@ -124,8 +119,7 @@ msgstr "%4i %s\n"
msgid "Pinned packages:"
msgstr "Rögzített csomagok:"
-#: cmdline/apt-cache.cc:1494
-#: cmdline/apt-cache.cc:1535
+#: cmdline/apt-cache.cc:1494 cmdline/apt-cache.cc:1535
msgid "(not found)"
msgstr "(nem találtam)"
@@ -134,8 +128,7 @@ msgstr "(nem találtam)"
msgid " Installed: "
msgstr " Telepítve: "
-#: cmdline/apt-cache.cc:1517
-#: cmdline/apt-cache.cc:1525
+#: cmdline/apt-cache.cc:1517 cmdline/apt-cache.cc:1525
msgid "(none)"
msgstr "(nincs)"
@@ -158,13 +151,9 @@ msgstr " Verziótáblázat:"
msgid " %4i %s\n"
msgstr " %4i %s\n"
-#: cmdline/apt-cache.cc:1652
-#: cmdline/apt-cdrom.cc:138
-#: cmdline/apt-config.cc:70
-#: cmdline/apt-extracttemplates.cc:225
-#: ftparchive/apt-ftparchive.cc:550
-#: cmdline/apt-get.cc:2369
-#: cmdline/apt-sortpkgs.cc:144
+#: cmdline/apt-cache.cc:1652 cmdline/apt-cdrom.cc:138 cmdline/apt-config.cc:70
+#: cmdline/apt-extracttemplates.cc:225 ftparchive/apt-ftparchive.cc:550
+#: cmdline/apt-get.cc:2369 cmdline/apt-sortpkgs.cc:144
#, c-format
msgid "%s %s for %s %s compiled on %s %s\n"
msgstr "%s %s ehhez: %s %s fordítás ideje: %s %s\n"
@@ -212,7 +201,8 @@ msgstr ""
" apt-cache [opciók] showpkg pkg1 [pkg2 ...]\n"
" apt-cache [opciók] showsrc pkg1 [pkg2 ...]\n"
"\n"
-"Az apt-cache egy alacsony szintű eszköz az APT bináris gyorsítótár-fájljainak\n"
+"Az apt-cache egy alacsony szintű eszköz az APT bináris gyorsítótár-"
+"fájljainak\n"
"a kezelésére, és azokból információk lekérdezésére\n"
"\n"
"Parancsok:\n"
@@ -305,7 +295,8 @@ msgid ""
msgstr ""
"Használat:apt-extracttemplates fájl1 [fájl2 ...]\n"
"\n"
-"Az apt-extracttemplates egy eszköz konfigurációs- és minta-információk debian-\n"
+"Az apt-extracttemplates egy eszköz konfigurációs- és minta-információk "
+"debian-\n"
"csomagokból való kibontására\n"
"\n"
"Opciók:\n"
@@ -314,8 +305,7 @@ msgstr ""
" -c=? Ezt a konfigurációs fájlt olvassa be\n"
" -o=? Beállít egy tetszőleges konfigurációs opciót, pl -o dir::cache=/tmp\n"
-#: cmdline/apt-extracttemplates.cc:267
-#: apt-pkg/pkgcachegen.cc:710
+#: cmdline/apt-extracttemplates.cc:267 apt-pkg/pkgcachegen.cc:710
#, c-format
msgid "Unable to write to %s"
msgstr "Nem lehet írni ebbe: %s"
@@ -324,17 +314,13 @@ msgstr "Nem lehet írni ebbe: %s"
msgid "Cannot get debconf version. Is debconf installed?"
msgstr "Nem lehet megállapítani a debconf verziót. A debconf telepítve van?"
-#: ftparchive/apt-ftparchive.cc:167
-#: ftparchive/apt-ftparchive.cc:341
+#: ftparchive/apt-ftparchive.cc:167 ftparchive/apt-ftparchive.cc:341
msgid "Package extension list is too long"
msgstr "A csomagkiterjesztések listája túl hosszú"
-#: ftparchive/apt-ftparchive.cc:169
-#: ftparchive/apt-ftparchive.cc:183
-#: ftparchive/apt-ftparchive.cc:206
-#: ftparchive/apt-ftparchive.cc:256
-#: ftparchive/apt-ftparchive.cc:270
-#: ftparchive/apt-ftparchive.cc:292
+#: ftparchive/apt-ftparchive.cc:169 ftparchive/apt-ftparchive.cc:183
+#: ftparchive/apt-ftparchive.cc:206 ftparchive/apt-ftparchive.cc:256
+#: ftparchive/apt-ftparchive.cc:270 ftparchive/apt-ftparchive.cc:292
#, c-format
msgid "Error processing directory %s"
msgstr "Hiba a(z) %s könyvtár feldolgozásakor"
@@ -415,8 +401,10 @@ msgstr ""
"\n"
"A 'packages' és 'sources' parancsokat a fa gyökeréből kell futtatni.\n"
"A BinaryPath-nak a rekurzív keresés kiindulópontjára kell mutatni és\n"
-"a felülbírálófájlnak a felülbíráló jelzőket kell tartalmaznia. Az útvonal-előtag\n"
-"hozzáadódik a fájlnév mezőkhöz, ha meg van adva. Felhasználására egy példa a\n"
+"a felülbírálófájlnak a felülbíráló jelzőket kell tartalmaznia. Az útvonal-"
+"előtag\n"
+"hozzáadódik a fájlnév mezőkhöz, ha meg van adva. Felhasználására egy példa "
+"a\n"
"Debian archívumból:\n"
" apt-ftparchive packages dists/potato/main/binary-i386/ > \\\n"
" dists/potato/main/binary-i386/Packages\n"
@@ -491,8 +479,7 @@ msgstr "F: "
msgid "E: Errors apply to file "
msgstr "H: Hibás a fájl "
-#: ftparchive/writer.cc:151
-#: ftparchive/writer.cc:181
+#: ftparchive/writer.cc:151 ftparchive/writer.cc:181
#, c-format
msgid "Failed to resolve %s"
msgstr "Nem sikerült feloldani ezt: %s"
@@ -531,12 +518,8 @@ msgstr "*** %s linkelése ehhez: %s sikertelen"
msgid " DeLink limit of %sB hit.\n"
msgstr " DeLink elérte %sB korlátját.\n"
-#: ftparchive/writer.cc:358
-#: apt-inst/extract.cc:181
-#: apt-inst/extract.cc:193
-#: apt-inst/extract.cc:210
-#: apt-inst/deb/dpkgdb.cc:121
-#: methods/gpgv.cc:266
+#: ftparchive/writer.cc:358 apt-inst/extract.cc:181 apt-inst/extract.cc:193
+#: apt-inst/extract.cc:210 apt-inst/deb/dpkgdb.cc:121 methods/gpgv.cc:266
#, c-format
msgid "Failed to stat %s"
msgstr "%s elérése sikertelen"
@@ -545,14 +528,12 @@ msgstr "%s elérése sikertelen"
msgid "Archive had no package field"
msgstr "Az archívumnak nem volt csomag mezője"
-#: ftparchive/writer.cc:394
-#: ftparchive/writer.cc:603
+#: ftparchive/writer.cc:394 ftparchive/writer.cc:603
#, c-format
msgid " %s has no override entry\n"
msgstr " %s nem rendelkezik felülbíráló bejegyzéssel\n"
-#: ftparchive/writer.cc:437
-#: ftparchive/writer.cc:689
+#: ftparchive/writer.cc:437 ftparchive/writer.cc:689
#, c-format
msgid " %s maintainer is %s not %s\n"
msgstr " %s karbantartója %s, nem %s\n"
@@ -562,37 +543,31 @@ msgstr " %s karbantartója %s, nem %s\n"
msgid "Internal error, could not locate member %s"
msgstr "Belső hiba, %s tag nem található"
-#: ftparchive/contents.cc:353
-#: ftparchive/contents.cc:384
+#: ftparchive/contents.cc:353 ftparchive/contents.cc:384
msgid "realloc - Failed to allocate memory"
msgstr "realloc - Nem sikerült memóriát lefoglalni"
-#: ftparchive/override.cc:38
-#: ftparchive/override.cc:146
+#: ftparchive/override.cc:38 ftparchive/override.cc:146
#, c-format
msgid "Unable to open %s"
msgstr "%s megnyitása sikertelen"
-#: ftparchive/override.cc:64
-#: ftparchive/override.cc:170
+#: ftparchive/override.cc:64 ftparchive/override.cc:170
#, c-format
msgid "Malformed override %s line %lu #1"
msgstr "Deformált felülbírálás %s %lu. sorában #1"
-#: ftparchive/override.cc:78
-#: ftparchive/override.cc:182
+#: ftparchive/override.cc:78 ftparchive/override.cc:182
#, c-format
msgid "Malformed override %s line %lu #2"
msgstr "Deformált felülbírálás %s %lu. sorában #2"
-#: ftparchive/override.cc:92
-#: ftparchive/override.cc:195
+#: ftparchive/override.cc:92 ftparchive/override.cc:195
#, c-format
msgid "Malformed override %s line %lu #3"
msgstr "Deformált felülbírálás %s %lu. sorában #3"
-#: ftparchive/override.cc:131
-#: ftparchive/override.cc:205
+#: ftparchive/override.cc:131 ftparchive/override.cc:205
#, c-format
msgid "Failed to read the override file %s"
msgstr "Nem lehet a(z)%s felülbírálófájlt olvasni"
@@ -607,8 +582,7 @@ msgstr "'%s' tömörítési algoritmus ismeretlen"
msgid "Compressed output %s needs a compression set"
msgstr "%s tömörített kimenetnek egy tömörítő készletre van szüksége"
-#: ftparchive/multicompress.cc:172
-#: methods/rsh.cc:91
+#: ftparchive/multicompress.cc:172 methods/rsh.cc:91
msgid "Failed to create IPC pipe to subprocess"
msgstr "Nem sikerült IPC csövet létrehozni az alfolyamathoz"
@@ -654,8 +628,7 @@ msgstr "Olvasási hiba az MD5 kiszámításakor"
msgid "Problem unlinking %s"
msgstr "Hiba %s elláncolásakor"
-#: ftparchive/multicompress.cc:490
-#: apt-inst/extract.cc:188
+#: ftparchive/multicompress.cc:490 apt-inst/extract.cc:188
#, c-format
msgid "Failed to rename %s to %s"
msgstr "Nem sikerült átnevezni %s-t erre: %s"
@@ -664,8 +637,7 @@ msgstr "Nem sikerült átnevezni %s-t erre: %s"
msgid "Y"
msgstr "I"
-#: cmdline/apt-get.cc:142
-#: cmdline/apt-get.cc:1506
+#: cmdline/apt-get.cc:142 cmdline/apt-get.cc:1506
#, c-format
msgid "Regex compilation error - %s"
msgstr "Regex fordítási hiba - %s"
@@ -810,8 +782,7 @@ msgstr "Valóban telepíted e csomagokat ellenőrzés nélkül (i/N)? "
msgid "Some packages could not be authenticated"
msgstr "Néhány csomag nem hitelesíthető"
-#: cmdline/apt-get.cc:711
-#: cmdline/apt-get.cc:858
+#: cmdline/apt-get.cc:711 cmdline/apt-get.cc:858
msgid "There are problems and -y was used without --force-yes"
msgstr "Problémák vannak és a -y -t használtad --force-yes nélkül"
@@ -827,15 +798,11 @@ msgstr "Csomagokat kellene eltávolítani, de az Eltávolítás nem engedélyeze
msgid "Internal error, Ordering didn't finish"
msgstr "Belső hiba, a rendezés nem zárult"
-#: cmdline/apt-get.cc:791
-#: cmdline/apt-get.cc:1800
-#: cmdline/apt-get.cc:1833
+#: cmdline/apt-get.cc:791 cmdline/apt-get.cc:1800 cmdline/apt-get.cc:1833
msgid "Unable to lock the download directory"
msgstr "Nem tudom zárolni a letöltési könyvtárat"
-#: cmdline/apt-get.cc:801
-#: cmdline/apt-get.cc:1881
-#: cmdline/apt-get.cc:2117
+#: cmdline/apt-get.cc:801 cmdline/apt-get.cc:1881 cmdline/apt-get.cc:2117
#: apt-pkg/cachefile.cc:67
msgid "The list of sources could not be read."
msgstr "A források listája olvashatatlan."
@@ -864,8 +831,7 @@ msgstr "Kicsomagolás után %sB lemezterületet használok fel\n"
msgid "After unpacking %sB disk space will be freed.\n"
msgstr "Kicsomagolás után %sB lemezterület szabadul fel.\n"
-#: cmdline/apt-get.cc:846
-#: cmdline/apt-get.cc:1971
+#: cmdline/apt-get.cc:846 cmdline/apt-get.cc:1971
#, c-format
msgid "Couldn't determine free space in %s"
msgstr "Nem határozható meg a szabad hely itt: %s"
@@ -875,8 +841,7 @@ msgstr "Nem határozható meg a szabad hely itt: %s"
msgid "You don't have enough free space in %s."
msgstr "Nincs elég szabad hely itt: %s."
-#: cmdline/apt-get.cc:864
-#: cmdline/apt-get.cc:884
+#: cmdline/apt-get.cc:864 cmdline/apt-get.cc:884
msgid "Trivial Only specified but this is not a trivial operation."
msgstr "A 'Trivial Only' meg van adva, de ez nem egy triviális művelet."
@@ -895,8 +860,7 @@ msgstr ""
"A folytatáshoz írd be ezt: '%s'\n"
" ?] "
-#: cmdline/apt-get.cc:874
-#: cmdline/apt-get.cc:893
+#: cmdline/apt-get.cc:874 cmdline/apt-get.cc:893
msgid "Abort."
msgstr "Megszakítva."
@@ -904,9 +868,7 @@ msgstr "Megszakítva."
msgid "Do you want to continue [Y/n]? "
msgstr "Folytatni akarod [Y/n]? "
-#: cmdline/apt-get.cc:961
-#: cmdline/apt-get.cc:1365
-#: cmdline/apt-get.cc:2014
+#: cmdline/apt-get.cc:961 cmdline/apt-get.cc:1365 cmdline/apt-get.cc:2014
#, c-format
msgid "Failed to fetch %s %s\n"
msgstr "Sikertelen letöltés: %s %s\n"
@@ -915,13 +877,14 @@ msgstr "Sikertelen letöltés: %s %s\n"
msgid "Some files failed to download"
msgstr "Néhány fájlt nem sikerült letölteni"
-#: cmdline/apt-get.cc:980
-#: cmdline/apt-get.cc:2023
+#: cmdline/apt-get.cc:980 cmdline/apt-get.cc:2023
msgid "Download complete and in download only mode"
msgstr "A letöltés befejeződött a 'csak letöltés' módban"
#: cmdline/apt-get.cc:986
-msgid "Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?"
+msgid ""
+"Unable to fetch some archives, maybe run apt-get update or try with --fix-"
+"missing?"
msgstr ""
"Nem lehet letölteni néhány archívumot.\n"
" Próbáld ki az apt-get update -et vagy a --fix-missing -et."
@@ -1019,15 +982,18 @@ msgid "Unable to lock the list directory"
msgstr "Nem tudom a listakönyvtárat zárolni"
#: cmdline/apt-get.cc:1384
-msgid "Some index files failed to download, they have been ignored, or old ones used instead."
-msgstr "Néhány index fájl letöltése meghiúsult, ezeket mellőzöm vagy régi változatukat használom."
+msgid ""
+"Some index files failed to download, they have been ignored, or old ones "
+"used instead."
+msgstr ""
+"Néhány index fájl letöltése meghiúsult, ezeket mellőzöm vagy régi "
+"változatukat használom."
#: cmdline/apt-get.cc:1403
msgid "Internal error, AllUpgrade broke stuff"
msgstr "Belső hiba, AllUpgrade megsértett valamit"
-#: cmdline/apt-get.cc:1493
-#: cmdline/apt-get.cc:1529
+#: cmdline/apt-get.cc:1493 cmdline/apt-get.cc:1529
#, c-format
msgid "Couldn't find package %s"
msgstr "Az alábbi csomag nem található: %s"
@@ -1042,8 +1008,12 @@ msgid "You might want to run `apt-get -f install' to correct these:"
msgstr "Próbáld futtatni az 'apt-get -f install'-t az alábbiak javításához:"
#: cmdline/apt-get.cc:1549
-msgid "Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution)."
-msgstr "Teljesítetlen függőségek. Próbáld az 'apt-get -f install'-t csomagok nélkül (vagy telepítsd a függőségeket is!)."
+msgid ""
+"Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a "
+"solution)."
+msgstr ""
+"Teljesítetlen függőségek. Próbáld az 'apt-get -f install'-t csomagok nélkül "
+"(vagy telepítsd a függőségeket is!)."
#: cmdline/apt-get.cc:1561
msgid ""
@@ -1091,9 +1061,7 @@ msgstr "Ajánlott csomagok:"
msgid "Calculating upgrade... "
msgstr "Frissítés kiszámítása... "
-#: cmdline/apt-get.cc:1698
-#: methods/ftp.cc:702
-#: methods/connect.cc:101
+#: cmdline/apt-get.cc:1698 methods/ftp.cc:702 methods/connect.cc:101
msgid "Failed"
msgstr "Sikertelen"
@@ -1101,17 +1069,16 @@ msgstr "Sikertelen"
msgid "Done"
msgstr "Kész"
-#: cmdline/apt-get.cc:1768
-#: cmdline/apt-get.cc:1776
+#: cmdline/apt-get.cc:1768 cmdline/apt-get.cc:1776
msgid "Internal error, problem resolver broke stuff"
msgstr "Belső hiba, hibafeloldó gond"
#: cmdline/apt-get.cc:1876
msgid "Must specify at least one package to fetch source for"
-msgstr "Legalább egy csomagot meg kell adnod, aminek a forrását le kell tölteni"
+msgstr ""
+"Legalább egy csomagot meg kell adnod, aminek a forrását le kell tölteni"
-#: cmdline/apt-get.cc:1906
-#: cmdline/apt-get.cc:2135
+#: cmdline/apt-get.cc:1906 cmdline/apt-get.cc:2135
#, c-format
msgid "Unable to find a source package for %s"
msgstr "Nem található forráscsomag ehhez: %s"
@@ -1171,7 +1138,9 @@ msgstr "Hiba a gyermekfolyamatnál"
#: cmdline/apt-get.cc:2112
msgid "Must specify at least one package to check builddeps for"
-msgstr "Legalább egy csomagot adj meg, aminek a fordítási függőségeit ellenőrizni kell"
+msgstr ""
+"Legalább egy csomagot adj meg, aminek a fordítási függőségeit ellenőrizni "
+"kell"
#: cmdline/apt-get.cc:2140
#, c-format
@@ -1185,18 +1154,28 @@ msgstr "Nincs fordítási függősége a következőnek: %s.\n"
#: cmdline/apt-get.cc:2212
#, c-format
-msgid "%s dependency for %s cannot be satisfied because the package %s cannot be found"
-msgstr "%s függősége ennek: %s, ez nem elégíthető ki, mert a(z) %s csomag nem található"
+msgid ""
+"%s dependency for %s cannot be satisfied because the package %s cannot be "
+"found"
+msgstr ""
+"%s függősége ennek: %s, ez nem elégíthető ki, mert a(z) %s csomag nem "
+"található"
#: cmdline/apt-get.cc:2264
#, c-format
-msgid "%s dependency for %s cannot be satisfied because no available versions of package %s can satisfy version requirements"
-msgstr "%s függősége ennek: %s, ez nem elégíthető ki, mert a(z) %s csomagnak nincs a verzió-követelményt kielégítő elérhető verziója."
+msgid ""
+"%s dependency for %s cannot be satisfied because no available versions of "
+"package %s can satisfy version requirements"
+msgstr ""
+"%s függősége ennek: %s, ez nem elégíthető ki, mert a(z) %s csomagnak nincs a "
+"verzió-követelményt kielégítő elérhető verziója."
#: cmdline/apt-get.cc:2299
#, c-format
msgid "Failed to satisfy %s dependency for %s: Installed package %s is too new"
-msgstr "%s függőséget %s csomaghoz nem lehet kielégíteni: %s telepített csomag túl friss."
+msgstr ""
+"%s függőséget %s csomaghoz nem lehet kielégíteni: %s telepített csomag túl "
+"friss."
#: cmdline/apt-get.cc:2324
#, c-format
@@ -1364,12 +1343,8 @@ msgstr ""
msgid "Bad default setting!"
msgstr "Hibás alapértelmezett beállítás!"
-#: dselect/install:51
-#: dselect/install:83
-#: dselect/install:87
-#: dselect/install:93
-#: dselect/install:104
-#: dselect/update:45
+#: dselect/install:51 dselect/install:83 dselect/install:87 dselect/install:93
+#: dselect/install:104 dselect/update:45
msgid "Press enter to continue."
msgstr "Üss entert a folytatáshoz."
@@ -1386,7 +1361,8 @@ msgid "or errors caused by missing dependencies. This is OK, only the errors"
msgstr "vagy hiányzó függőségek miatti hibákat. Ez így OK, csak az ezen üzenet"
#: dselect/install:103
-msgid "above this message are important. Please fix them and run [I]nstall again"
+msgid ""
+"above this message are important. Please fix them and run [I]nstall again"
msgstr "előtti hibák fontosak. Javítsd azokat és futtasd az [I]nstallt újra"
#: dselect/update:30
@@ -1401,8 +1377,7 @@ msgstr "Nem sikerült csöveket létrehozni"
msgid "Failed to exec gzip "
msgstr "Nem sikerült a gzipet futtatni "
-#: apt-inst/contrib/extracttar.cc:180
-#: apt-inst/contrib/extracttar.cc:206
+#: apt-inst/contrib/extracttar.cc:180 apt-inst/contrib/extracttar.cc:206
msgid "Corrupted archive"
msgstr "Hibás archívum"
@@ -1423,8 +1398,7 @@ msgstr "Érvénytelen archívum-aláírás"
msgid "Error reading archive member header"
msgstr "Hiba az archívum tag fejléc olvasásakor"
-#: apt-inst/contrib/arfile.cc:93
-#: apt-inst/contrib/arfile.cc:105
+#: apt-inst/contrib/arfile.cc:93 apt-inst/contrib/arfile.cc:105
msgid "Invalid archive member header"
msgstr "Érvénytelen archívum tag fejléc"
@@ -1467,21 +1441,17 @@ msgstr "A(z) %s -> %s eltérítés hozzáadásának duplázása"
msgid "Duplicate conf file %s/%s"
msgstr "Dupla %s/%s konfigurációs fájl"
-#: apt-inst/dirstream.cc:45
-#: apt-inst/dirstream.cc:50
-#: apt-inst/dirstream.cc:53
+#: apt-inst/dirstream.cc:45 apt-inst/dirstream.cc:50 apt-inst/dirstream.cc:53
#, c-format
msgid "Failed to write file %s"
msgstr "%s fájl írása sikertelen"
-#: apt-inst/dirstream.cc:96
-#: apt-inst/dirstream.cc:104
+#: apt-inst/dirstream.cc:96 apt-inst/dirstream.cc:104
#, c-format
msgid "Failed to close file %s"
msgstr "Nem sikerült a(z) %s fájlt bezárni"
-#: apt-inst/extract.cc:96
-#: apt-inst/extract.cc:167
+#: apt-inst/extract.cc:96 apt-inst/extract.cc:167
#, c-format
msgid "The path %s is too long"
msgstr "A(z) %s útvonal túl hosszú"
@@ -1501,8 +1471,7 @@ msgstr "A(z) %s könyvtár eltérítve"
msgid "The package is trying to write to the diversion target %s/%s"
msgstr "A csomag megpróbál írni a(z) %s/%s eltérített célpontba"
-#: apt-inst/extract.cc:157
-#: apt-inst/extract.cc:300
+#: apt-inst/extract.cc:157 apt-inst/extract.cc:300
msgid "The diversion path is too long"
msgstr "Az eltérített útvonal túl hosszú"
@@ -1529,12 +1498,9 @@ msgstr "Csomagtalálat felülírása %s verziója nélkül"
msgid "File %s/%s overwrites the one in the package %s"
msgstr "A(z) %s/%s fájl felülírja a(z) %s csomagban levőt"
-#: apt-inst/extract.cc:467
-#: apt-pkg/contrib/configuration.cc:750
-#: apt-pkg/contrib/cdromutl.cc:153
-#: apt-pkg/sourcelist.cc:324
-#: apt-pkg/acquire.cc:421
-#: apt-pkg/clean.cc:38
+#: apt-inst/extract.cc:467 apt-pkg/contrib/configuration.cc:750
+#: apt-pkg/contrib/cdromutl.cc:153 apt-pkg/sourcelist.cc:324
+#: apt-pkg/acquire.cc:421 apt-pkg/clean.cc:38
#, c-format
msgid "Unable to read %s"
msgstr "%s nem olvasható"
@@ -1544,14 +1510,12 @@ msgstr "%s nem olvasható"
msgid "Unable to stat %s"
msgstr "%s nem érhető el"
-#: apt-inst/deb/dpkgdb.cc:55
-#: apt-inst/deb/dpkgdb.cc:61
+#: apt-inst/deb/dpkgdb.cc:55 apt-inst/deb/dpkgdb.cc:61
#, c-format
msgid "Failed to remove %s"
msgstr "%s eltávolítása sikertelen"
-#: apt-inst/deb/dpkgdb.cc:110
-#: apt-inst/deb/dpkgdb.cc:112
+#: apt-inst/deb/dpkgdb.cc:110 apt-inst/deb/dpkgdb.cc:112
#, c-format
msgid "Unable to create %s"
msgstr "%s létrehozása sikertelen"
@@ -1566,10 +1530,8 @@ msgid "The info and temp directories need to be on the same filesystem"
msgstr "Az info és temp könyvtáraknak egy fájlrendszeren kell lenniük"
#. Build the status cache
-#: apt-inst/deb/dpkgdb.cc:139
-#: apt-pkg/pkgcachegen.cc:643
-#: apt-pkg/pkgcachegen.cc:712
-#: apt-pkg/pkgcachegen.cc:717
+#: apt-inst/deb/dpkgdb.cc:139 apt-pkg/pkgcachegen.cc:643
+#: apt-pkg/pkgcachegen.cc:712 apt-pkg/pkgcachegen.cc:717
#: apt-pkg/pkgcachegen.cc:840
msgid "Reading package lists"
msgstr "Csomaglisták olvasása"
@@ -1579,24 +1541,27 @@ msgstr "Csomaglisták olvasása"
msgid "Failed to change to the admin dir %sinfo"
msgstr "Nem sikerült a(z) %sinfo admin könyvtárba váltani"
-#: apt-inst/deb/dpkgdb.cc:201
-#: apt-inst/deb/dpkgdb.cc:355
+#: apt-inst/deb/dpkgdb.cc:201 apt-inst/deb/dpkgdb.cc:355
#: apt-inst/deb/dpkgdb.cc:448
msgid "Internal error getting a package name"
msgstr "Belső hiba a csomagnév elhozásakor"
-#: apt-inst/deb/dpkgdb.cc:205
-#: apt-inst/deb/dpkgdb.cc:386
+#: apt-inst/deb/dpkgdb.cc:205 apt-inst/deb/dpkgdb.cc:386
msgid "Reading file listing"
msgstr "Fájllista olvasása"
#: apt-inst/deb/dpkgdb.cc:216
#, c-format
-msgid "Failed to open the list file '%sinfo/%s'. If you cannot restore this file then make it empty and immediately re-install the same version of the package!"
-msgstr "Nem sikerült a '%sinfo/%s' listafájlt megnyitni. Ha nem tudod helyreállítani ezt a fájlt, akkor ürítsd ki, és azonnal telepítsd újra a csomag ugyanezen verzióját!"
+msgid ""
+"Failed to open the list file '%sinfo/%s'. If you cannot restore this file "
+"then make it empty and immediately re-install the same version of the "
+"package!"
+msgstr ""
+"Nem sikerült a '%sinfo/%s' listafájlt megnyitni. Ha nem tudod helyreállítani "
+"ezt a fájlt, akkor ürítsd ki, és azonnal telepítsd újra a csomag ugyanezen "
+"verzióját!"
-#: apt-inst/deb/dpkgdb.cc:229
-#: apt-inst/deb/dpkgdb.cc:242
+#: apt-inst/deb/dpkgdb.cc:229 apt-inst/deb/dpkgdb.cc:242
#, c-format
msgid "Failed reading the list file %sinfo/%s"
msgstr "Nem sikerült a(z) %sinfo/%s lista fájlt olvasni"
@@ -1614,8 +1579,7 @@ msgstr "Nem sikerült a(z) %sdiversions eltérítő fájlt megnyitni"
msgid "The diversion file is corrupted"
msgstr "Az eltérítő fájl hibás"
-#: apt-inst/deb/dpkgdb.cc:331
-#: apt-inst/deb/dpkgdb.cc:336
+#: apt-inst/deb/dpkgdb.cc:331 apt-inst/deb/dpkgdb.cc:336
#: apt-inst/deb/dpkgdb.cc:341
#, c-format
msgid "Invalid line in the diversion file: %s"
@@ -1644,8 +1608,7 @@ msgstr "Hibás ConfFile szakasz a státusz fájlban. Offszet %lu"
msgid "Error parsing MD5. Offset %lu"
msgstr "MD5 értelmezési hiba. Offszet %lu"
-#: apt-inst/deb/debfile.cc:42
-#: apt-inst/deb/debfile.cc:47
+#: apt-inst/deb/debfile.cc:42 apt-inst/deb/debfile.cc:47
#, c-format
msgid "This is not a valid DEB archive, missing '%s' member"
msgstr "Ez nem egy érvényes DEB archív, hiányzik a '%s' tag"
@@ -1678,8 +1641,12 @@ msgid "Unable to read the cdrom database %s"
msgstr "%s CD-ROM adatbázis nem olvasható"
#: methods/cdrom.cc:123
-msgid "Please use apt-cdrom to make this CD-ROM recognized by APT. apt-get update cannot be used to add new CD-ROMs"
-msgstr "Kérlek használd az apt-cdrom parancsot a CD felismertetésére. Az apt-get update nem használható új CD-k hozzáadására"
+msgid ""
+"Please use apt-cdrom to make this CD-ROM recognized by APT. apt-get update "
+"cannot be used to add new CD-ROMs"
+msgstr ""
+"Kérlek használd az apt-cdrom parancsot a CD felismertetésére. Az apt-get "
+"update nem használható új CD-k hozzáadására"
#: methods/cdrom.cc:131
msgid "Wrong CD-ROM"
@@ -1694,22 +1661,16 @@ msgstr "Nem lehet lecsatolni az itt lévő CD-ROM-ot: %s, talán még használod
msgid "Disk not found."
msgstr "Nem találom a lemezt"
-#: methods/cdrom.cc:177
-#: methods/file.cc:79
-#: methods/rsh.cc:264
+#: methods/cdrom.cc:177 methods/file.cc:79 methods/rsh.cc:264
msgid "File not found"
msgstr "Nem találom a fájlt"
-#: methods/copy.cc:42
-#: methods/gpgv.cc:275
-#: methods/gzip.cc:133
+#: methods/copy.cc:42 methods/gpgv.cc:275 methods/gzip.cc:133
#: methods/gzip.cc:142
msgid "Failed to stat"
msgstr "Nem érhető el"
-#: methods/copy.cc:79
-#: methods/gpgv.cc:272
-#: methods/gzip.cc:139
+#: methods/copy.cc:79 methods/gpgv.cc:272 methods/gzip.cc:139
msgid "Failed to set modification time"
msgstr "A módosítási időt beállítása sikertelen"
@@ -1730,8 +1691,7 @@ msgstr "Nem lehet a társ nevét megállapítani"
msgid "Unable to determine the local name"
msgstr "Nem lehet a helyi nevet megállapítani"
-#: methods/ftp.cc:204
-#: methods/ftp.cc:232
+#: methods/ftp.cc:204 methods/ftp.cc:232
#, c-format
msgid "The server refused the connection and said: %s"
msgstr "A kiszolgáló megtagadta a kapcsolatot: %s"
@@ -1747,8 +1707,12 @@ msgid "PASS failed, server said: %s"
msgstr "Hibás PASS, a kiszolgáló üzenete: %s"
#: methods/ftp.cc:237
-msgid "A proxy server was specified but no login script, Acquire::ftp::ProxyLogin is empty."
-msgstr "Egy proxy kiszolgáló meg lett adva login szkript nélkül, és az Acquire::ftp::ProxyLogin üres."
+msgid ""
+"A proxy server was specified but no login script, Acquire::ftp::ProxyLogin "
+"is empty."
+msgstr ""
+"Egy proxy kiszolgáló meg lett adva login szkript nélkül, és az Acquire::ftp::"
+"ProxyLogin üres."
#: methods/ftp.cc:265
#, c-format
@@ -1760,10 +1724,7 @@ msgstr "A login szkript '%s' parancsa hibázott, a kiszolgáló üzenete: %s"
msgid "TYPE failed, server said: %s"
msgstr "Hibás TYPE, a kiszolgáló üzenete: %s"
-#: methods/ftp.cc:329
-#: methods/ftp.cc:440
-#: methods/rsh.cc:183
-#: methods/rsh.cc:226
+#: methods/ftp.cc:329 methods/ftp.cc:440 methods/rsh.cc:183 methods/rsh.cc:226
msgid "Connection timeout"
msgstr "Időtúllépés a kapcsolatban"
@@ -1771,31 +1732,23 @@ msgstr "Időtúllépés a kapcsolatban"
msgid "Server closed the connection"
msgstr "A kiszolgáló lezárta a kapcsolatot"
-#: methods/ftp.cc:338
-#: apt-pkg/contrib/fileutl.cc:471
-#: methods/rsh.cc:190
+#: methods/ftp.cc:338 apt-pkg/contrib/fileutl.cc:471 methods/rsh.cc:190
msgid "Read error"
msgstr "Olvasási hiba"
-#: methods/ftp.cc:345
-#: methods/rsh.cc:197
+#: methods/ftp.cc:345 methods/rsh.cc:197
msgid "A response overflowed the buffer."
msgstr "A válasz túlcsordította a puffert."
-#: methods/ftp.cc:362
-#: methods/ftp.cc:374
+#: methods/ftp.cc:362 methods/ftp.cc:374
msgid "Protocol corruption"
msgstr "Protokoll hiba"
-#: methods/ftp.cc:446
-#: apt-pkg/contrib/fileutl.cc:510
-#: methods/rsh.cc:232
+#: methods/ftp.cc:446 apt-pkg/contrib/fileutl.cc:510 methods/rsh.cc:232
msgid "Write error"
msgstr "Írási hiba"
-#: methods/ftp.cc:687
-#: methods/ftp.cc:693
-#: methods/ftp.cc:729
+#: methods/ftp.cc:687 methods/ftp.cc:693 methods/ftp.cc:729
msgid "Could not create a socket"
msgstr "Nem lehet létrehozni a socket-et"
@@ -1845,9 +1798,7 @@ msgstr "Az adat sockethez kapcsolódás túllépte az időt"
msgid "Unable to accept connection"
msgstr "Nem lehet elfogadni a kapcsolatot"
-#: methods/ftp.cc:864
-#: methods/http.cc:958
-#: methods/rsh.cc:303
+#: methods/ftp.cc:864 methods/http.cc:958 methods/rsh.cc:303
msgid "Problem hashing file"
msgstr "Probléma a fájl hash értékének meghatározásakor"
@@ -1856,8 +1807,7 @@ msgstr "Probléma a fájl hash értékének meghatározásakor"
msgid "Unable to fetch file, server said '%s'"
msgstr "Nem lehet letölteni a fájlt, a kiszolgáló üzenete: '%s'"
-#: methods/ftp.cc:892
-#: methods/rsh.cc:322
+#: methods/ftp.cc:892 methods/rsh.cc:322
msgid "Data socket timed out"
msgstr "Az adat socket túllépte az időt"
@@ -1907,8 +1857,7 @@ msgstr "Nem tudtam kapcsolódni ehhez: %s: %s (%s)."
#. We say this mainly because the pause here is for the
#. ssh connection that is still going
-#: methods/connect.cc:136
-#: methods/rsh.cc:425
+#: methods/connect.cc:136 methods/rsh.cc:425
#, c-format
msgid "Connecting to %s"
msgstr "Kapcsolódás: %s"
@@ -1943,7 +1892,8 @@ msgid "E: Argument list from Acquire::gpgv::Options too long. Exiting."
msgstr "H: Az Acquire::gpgv::Options argumentum lista túl hosszú. Kilépek."
#: methods/gpgv.cc:198
-msgid "Internal error: Good signature, but could not determine key fingerprint?!"
+msgid ""
+"Internal error: Good signature, but could not determine key fingerprint?!"
msgstr "Belső hiba: Jó aláírás, de meghatározhatatlan kulcs ujjlenyomat?!"
#: methods/gpgv.cc:203
@@ -1964,8 +1914,11 @@ msgid "The following signatures were invalid:\n"
msgstr "Az alábbi aláírások érvénytelenek voltak:\n"
#: methods/gpgv.cc:250
-msgid "The following signatures couldn't be verified because the public key is not available:\n"
-msgstr "Az alábbi aláírások nem igazolhatók, mert a nyilvános kulcs nem elérhető:\n"
+msgid ""
+"The following signatures couldn't be verified because the public key is not "
+"available:\n"
+msgstr ""
+"Az alábbi aláírások nem igazolhatók, mert a nyilvános kulcs nem elérhető:\n"
#: methods/gzip.cc:57
#, c-format
@@ -1990,8 +1943,7 @@ msgstr "Egyetlen fejléc sort kaptam, ami több mint %u karakteres"
msgid "Bad header line"
msgstr "Rossz fejléc sor"
-#: methods/http.cc:549
-#: methods/http.cc:556
+#: methods/http.cc:549 methods/http.cc:556
msgid "The HTTP server sent an invalid reply header"
msgstr "A http kiszolgáló egy érvénytelen válaszfejlécet küldött"
@@ -2106,8 +2058,7 @@ msgstr "Szintaktikai hiba %s: %u: Csak legfelső szinten használhatók előír
msgid "Syntax error %s:%u: Too many nested includes"
msgstr "Szintaktikai hiba %s: %u: Túl sok beágyazott include"
-#: apt-pkg/contrib/configuration.cc:695
-#: apt-pkg/contrib/configuration.cc:700
+#: apt-pkg/contrib/configuration.cc:695 apt-pkg/contrib/configuration.cc:700
#, c-format
msgid "Syntax error %s:%u: Included from here"
msgstr "Szintaktikai hiba %s: %u: ugyaninnen include-olva"
@@ -2137,8 +2088,7 @@ msgstr "%c%s... Kész"
msgid "Command line option '%c' [from %s] is not known."
msgstr "A(z) '%c' parancssori opció [a következőből: %s] ismeretlen."
-#: apt-pkg/contrib/cmndline.cc:106
-#: apt-pkg/contrib/cmndline.cc:114
+#: apt-pkg/contrib/cmndline.cc:106 apt-pkg/contrib/cmndline.cc:114
#: apt-pkg/contrib/cmndline.cc:122
#, c-format
msgid "Command line option %s is not understood"
@@ -2149,17 +2099,16 @@ msgstr "%s parancssori opció értelmezhetetlen"
msgid "Command line option %s is not boolean"
msgstr "%s parancssori opció nem logikai"
-#: apt-pkg/contrib/cmndline.cc:166
-#: apt-pkg/contrib/cmndline.cc:187
+#: apt-pkg/contrib/cmndline.cc:166 apt-pkg/contrib/cmndline.cc:187
#, c-format
msgid "Option %s requires an argument."
msgstr "%s opcióhoz szükséges egy argumentum"
-#: apt-pkg/contrib/cmndline.cc:201
-#: apt-pkg/contrib/cmndline.cc:207
+#: apt-pkg/contrib/cmndline.cc:201 apt-pkg/contrib/cmndline.cc:207
#, c-format
msgid "Option %s: Configuration item specification must have an =<val>."
-msgstr "%s opció: a konfigurációs elem specifikációhoz szükséges egy =<érték> rész."
+msgstr ""
+"%s opció: a konfigurációs elem specifikációhoz szükséges egy =<érték> rész."
#: apt-pkg/contrib/cmndline.cc:237
#, c-format
@@ -2186,9 +2135,7 @@ msgstr "%s érvénytelen művelet"
msgid "Unable to stat the mount point %s"
msgstr "%s csatolási pont nem érhető el"
-#: apt-pkg/contrib/cdromutl.cc:149
-#: apt-pkg/acquire.cc:427
-#: apt-pkg/clean.cc:44
+#: apt-pkg/contrib/cdromutl.cc:149 apt-pkg/acquire.cc:427 apt-pkg/clean.cc:44
#, c-format
msgid "Unable to change to %s"
msgstr "Nem sikerült ide váltani: %s"
@@ -2333,8 +2280,7 @@ msgstr "opcionális"
msgid "extra"
msgstr "extra"
-#: apt-pkg/depcache.cc:61
-#: apt-pkg/depcache.cc:90
+#: apt-pkg/depcache.cc:61 apt-pkg/depcache.cc:90
msgid "Building dependency tree"
msgstr "Függőségi fa építése"
@@ -2386,8 +2332,7 @@ msgstr "A(z) %lu. sor hibás %s forráslistában (dist feldolgozó)"
msgid "Opening %s"
msgstr "%s megnyitása"
-#: apt-pkg/sourcelist.cc:220
-#: apt-pkg/cdrom.cc:426
+#: apt-pkg/sourcelist.cc:220 apt-pkg/cdrom.cc:426
#, c-format
msgid "Line %u too long in source list %s."
msgstr "A(z) %u. sor túl hosszú %s forráslistában."
@@ -2402,16 +2347,21 @@ msgstr "A(z) %u. sor hibás %s forráslistában (típus)"
msgid "Type '%s' is not known on line %u in source list %s"
msgstr "'%s' típus nem ismert a(z) %u. sorban a(z) %s forráslistában"
-#: apt-pkg/sourcelist.cc:252
-#: apt-pkg/sourcelist.cc:255
+#: apt-pkg/sourcelist.cc:252 apt-pkg/sourcelist.cc:255
#, c-format
msgid "Malformed line %u in source list %s (vendor id)"
msgstr "A(z) %u. sor hibás %s forráslistában (terjesztő id)"
#: apt-pkg/packagemanager.cc:402
#, c-format
-msgid "This installation run will require temporarily removing the essential package %s due to a Conflicts/Pre-Depends loop. This is often bad, but if you really want to do it, activate the APT::Force-LoopBreak option."
-msgstr "Ez a telepítési lépés átmenetileg megköveteli, hogy eltávolítsd a(z) %s alapvető csomagot ami Ütközési/Elő-függőségi hurkot okoz. Ez gyakran rossz, de ha tényleg ezt akarod tenni, aktiváld az APT::Force-LoopBreak opciót."
+msgid ""
+"This installation run will require temporarily removing the essential "
+"package %s due to a Conflicts/Pre-Depends loop. This is often bad, but if "
+"you really want to do it, activate the APT::Force-LoopBreak option."
+msgstr ""
+"Ez a telepítési lépés átmenetileg megköveteli, hogy eltávolítsd a(z) %s "
+"alapvető csomagot ami Ütközési/Elő-függőségi hurkot okoz. Ez gyakran rossz, "
+"de ha tényleg ezt akarod tenni, aktiváld az APT::Force-LoopBreak opciót."
#: apt-pkg/pkgrecords.cc:37
#, c-format
@@ -2420,16 +2370,23 @@ msgstr "A(z) '%s' indexfájltípus nem támogatott"
#: apt-pkg/algorithms.cc:241
#, c-format
-msgid "The package %s needs to be reinstalled, but I can't find an archive for it."
-msgstr "A(z) %s csomagot újra kell telepíteni, de nem találok archívumot hozzá."
+msgid ""
+"The package %s needs to be reinstalled, but I can't find an archive for it."
+msgstr ""
+"A(z) %s csomagot újra kell telepíteni, de nem találok archívumot hozzá."
#: apt-pkg/algorithms.cc:1059
-msgid "Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages."
-msgstr "Hiba, a pkgProblemResolver::Resolve töréseket generált, ezt visszafogott csomagok okozhatják."
+msgid ""
+"Error, pkgProblemResolver::Resolve generated breaks, this may be caused by "
+"held packages."
+msgstr ""
+"Hiba, a pkgProblemResolver::Resolve töréseket generált, ezt visszafogott "
+"csomagok okozhatják."
#: apt-pkg/algorithms.cc:1061
msgid "Unable to correct problems, you have held broken packages."
-msgstr "A problémák nem javíthatók, sérült visszafogott csomagok vannak a rendszeren."
+msgstr ""
+"A problémák nem javíthatók, sérült visszafogott csomagok vannak a rendszeren."
#: apt-pkg/acquire.cc:62
#, c-format
@@ -2488,7 +2445,8 @@ msgstr "Néhány 'source' URI-t be kell tenned a sources.list fájlba"
#: apt-pkg/cachefile.cc:73
msgid "The package lists or status file could not be parsed or opened."
-msgstr "A csomaglista vagy az állapot fájl nem dolgozható fel vagy nem olvasható."
+msgstr ""
+"A csomaglista vagy az állapot fájl nem dolgozható fel vagy nem olvasható."
#: apt-pkg/cachefile.cc:77
msgid "You may want to run apt-get update to correct these problems"
@@ -2548,15 +2506,18 @@ msgstr "Hiba történt %s feldolgozásakor (NewVersion2)"
#: apt-pkg/pkgcachegen.cc:207
msgid "Wow, you exceeded the number of package names this APT is capable of."
-msgstr "Ez nem semmi, túllépted a csomagnevek számát, amit ez az APT kezelni tud!"
+msgstr ""
+"Ez nem semmi, túllépted a csomagnevek számát, amit ez az APT kezelni tud!"
#: apt-pkg/pkgcachegen.cc:210
msgid "Wow, you exceeded the number of versions this APT is capable of."
-msgstr "Ez nem semmi, túllépted a csomagverziók számát, amit ez az APT kezelni tud!"
+msgstr ""
+"Ez nem semmi, túllépted a csomagverziók számát, amit ez az APT kezelni tud!"
#: apt-pkg/pkgcachegen.cc:213
msgid "Wow, you exceeded the number of dependencies this APT is capable of."
-msgstr "Ez nem semmi, túllépted a függőségek számát, amit ez az APT kezelni tud."
+msgstr ""
+"Ez nem semmi, túllépted a függőségek számát, amit ez az APT kezelni tud."
#: apt-pkg/pkgcachegen.cc:241
#, c-format
@@ -2571,7 +2532,8 @@ msgstr "Hiba történt %s feldolgozásakor (CollectFileProvides)"
#: apt-pkg/pkgcachegen.cc:260
#, c-format
msgid "Package %s %s was not found while processing file dependencies"
-msgstr "%s %s csomag nem volt megtalálható a fájl függőségeinek feldolgozása közben"
+msgstr ""
+"%s %s csomag nem volt megtalálható a fájl függőségeinek feldolgozása közben"
#: apt-pkg/pkgcachegen.cc:574
#, c-format
@@ -2583,8 +2545,7 @@ msgstr "Nem lehet a(z) %s forrás csomaglistáját elérni"
msgid "Collecting File Provides"
msgstr "\"Előkészít\" kapcsolatok összegyűjtése"
-#: apt-pkg/pkgcachegen.cc:785
-#: apt-pkg/pkgcachegen.cc:792
+#: apt-pkg/pkgcachegen.cc:785 apt-pkg/pkgcachegen.cc:792
msgid "IO Error saving source cache"
msgstr "IO hiba a forrás-gyorsítótár mentésekor"
@@ -2593,8 +2554,7 @@ msgstr "IO hiba a forrás-gyorsítótár mentésekor"
msgid "rename failed, %s (%s -> %s)."
msgstr "sikertelen átnevezés, %s (%s -> %s)."
-#: apt-pkg/acquire-item.cc:236
-#: apt-pkg/acquire-item.cc:945
+#: apt-pkg/acquire-item.cc:236 apt-pkg/acquire-item.cc:945
msgid "MD5Sum mismatch"
msgstr "Az MD5Sum nem megfelelő"
@@ -2604,18 +2564,28 @@ msgstr "Nincs elérhető nyilvános kulcs az alábbi kulcs azonosítókhoz:\n"
#: apt-pkg/acquire-item.cc:753
#, c-format
-msgid "I wasn't able to locate a file for the %s package. This might mean you need to manually fix this package. (due to missing arch)"
-msgstr "Nem találtam egy fájlt a(z) %s csomaghoz. Ez azt jelentheti, hogy kézzel kell kijavítani a csomagot. (hiányzó arch. miatt)"
+msgid ""
+"I wasn't able to locate a file for the %s package. This might mean you need "
+"to manually fix this package. (due to missing arch)"
+msgstr ""
+"Nem találtam egy fájlt a(z) %s csomaghoz. Ez azt jelentheti, hogy kézzel "
+"kell kijavítani a csomagot. (hiányzó arch. miatt)"
#: apt-pkg/acquire-item.cc:812
#, c-format
-msgid "I wasn't able to locate file for the %s package. This might mean you need to manually fix this package."
-msgstr "Nem találtam egy fájlt a(z) %s csomaghoz. Ez azt jelentheti, hogy kézzel kell kijavítani a csomagot."
+msgid ""
+"I wasn't able to locate file for the %s package. This might mean you need to "
+"manually fix this package."
+msgstr ""
+"Nem találtam egy fájlt a(z) %s csomaghoz. Ez azt jelentheti, hogy kézzel "
+"kell kijavítani a csomagot."
#: apt-pkg/acquire-item.cc:848
#, c-format
-msgid "The package index files are corrupted. No Filename: field for package %s."
-msgstr "A csomagindex-fájlok megsérültek. Nincs Filename: mező a(z) %s csomaghoz."
+msgid ""
+"The package index files are corrupted. No Filename: field for package %s."
+msgstr ""
+"A csomagindex-fájlok megsérültek. Nincs Filename: mező a(z) %s csomaghoz."
#: apt-pkg/acquire-item.cc:935
msgid "Size mismatch"
@@ -2635,8 +2605,7 @@ msgstr ""
"%s CD-ROM csatolási pont használata\n"
"CD-ROM csatolása\n"
-#: apt-pkg/cdrom.cc:516
-#: apt-pkg/cdrom.cc:598
+#: apt-pkg/cdrom.cc:516 apt-pkg/cdrom.cc:598
msgid "Identifying.. "
msgstr "Azonosítás.. "
@@ -2777,24 +2746,32 @@ msgstr "A kapcsolat idő előtt lezárult"
#~ msgid "Total Distinct Descriptions: "
#~ msgstr "Összes külső leírás: "
+
#~ msgid "Total Desc/File relations: "
#~ msgstr "Összes Leírás/Fájl kapcsolat: "
+
#~ msgid "Reading file list"
#~ msgstr "Fájllista olvasása"
+
#~ msgid "Could not execute "
#~ msgstr "Nem futtatható"
+
#~ msgid "Error occured while processing %s (NewFileDesc1)"
#~ msgstr "Hiba történt %s feldolgozásakor (NewFileDesc1)"
+
#~ msgid "Error occured while processing %s (NewFileDesc2)"
#~ msgstr "Hiba történt %s feldolgozásakor (NewFileDesc2)"
+
#~ msgid "Wow, you exceeded the number of descriptions this APT is capable of."
#~ msgstr ""
#~ "Ez nem semmi, túllépted a csomagleírások számát, amit ez az APT kezelni "
#~ "tud!"
+
#~ msgid "Preparing for remove with config %s"
#~ msgstr "Előkészítés eltávolításhoz %s konfigurálásával"
+
#~ msgid "Removed with config %s"
#~ msgstr "%s konfigurálásával eltávolítva"
+
#~ msgid "Could not patch file"
#~ msgstr "%s fájl foltozása sikertelen"
-
diff --git a/po/it.po b/po/it.po
index 08476e84f..2a0e621a7 100644
--- a/po/it.po
+++ b/po/it.po
@@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: apt 0.5.5\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-05-16 07:33-0500\n"
+"POT-Creation-Date: 2006-05-27 13:46+0200\n"
"PO-Revision-Date: 2006-02-14 11:41+0100\n"
"Last-Translator: Samuele Giovanni Tonon <samu@debian.org>\n"
"Language-Team: Italian <it@li.org>\n"
@@ -2309,15 +2309,15 @@ msgstr "opzionale"
msgid "extra"
msgstr "extra"
-#: apt-pkg/depcache.cc:60 apt-pkg/depcache.cc:89
+#: apt-pkg/depcache.cc:61 apt-pkg/depcache.cc:90
msgid "Building dependency tree"
msgstr "Generazione dell'albero delle dipendenze in corso"
-#: apt-pkg/depcache.cc:61
+#: apt-pkg/depcache.cc:62
msgid "Candidate versions"
msgstr "Versioni candidate"
-#: apt-pkg/depcache.cc:90
+#: apt-pkg/depcache.cc:91
msgid "Dependency generation"
msgstr "Generazione delle dipendenze"
diff --git a/po/ja.po b/po/ja.po
index f1b55b0e4..db78e7bad 100644
--- a/po/ja.po
+++ b/po/ja.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: apt 0.6\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-05-16 07:33-0500\n"
+"POT-Creation-Date: 2006-05-27 13:46+0200\n"
"PO-Revision-Date: 2006-01-25 20:55+0900\n"
"Last-Translator: Kenshi Muto <kmuto@debian.org>\n"
"Language-Team: Debian Japanese List <debian-japanese@lists.debian.org>\n"
@@ -2289,15 +2289,15 @@ msgstr "任意"
msgid "extra"
msgstr "特別"
-#: apt-pkg/depcache.cc:60 apt-pkg/depcache.cc:89
+#: apt-pkg/depcache.cc:61 apt-pkg/depcache.cc:90
msgid "Building dependency tree"
msgstr "依存関係ツリーを作成しています"
-#: apt-pkg/depcache.cc:61
+#: apt-pkg/depcache.cc:62
msgid "Candidate versions"
msgstr "候補バージョン"
-#: apt-pkg/depcache.cc:90
+#: apt-pkg/depcache.cc:91
msgid "Dependency generation"
msgstr "依存関係の生成"
diff --git a/po/ko.po b/po/ko.po
index e417f256c..4617fc2ac 100644
--- a/po/ko.po
+++ b/po/ko.po
@@ -18,12 +18,8 @@ msgstr ""
msgid "Package %s version %s has an unmet dep:\n"
msgstr "%s 꾸러미의 %s 버전의 의존성이 맞지 않습니다:\n"
-#: cmdline/apt-cache.cc:175
-#: cmdline/apt-cache.cc:527
-#: cmdline/apt-cache.cc:615
-#: cmdline/apt-cache.cc:771
-#: cmdline/apt-cache.cc:989
-#: cmdline/apt-cache.cc:1357
+#: cmdline/apt-cache.cc:175 cmdline/apt-cache.cc:527 cmdline/apt-cache.cc:615
+#: cmdline/apt-cache.cc:771 cmdline/apt-cache.cc:989 cmdline/apt-cache.cc:1357
#: cmdline/apt-cache.cc:1508
#, c-format
msgid "Unable to locate package %s"
@@ -85,8 +81,7 @@ msgstr "전체 빈 용량: "
msgid "Total space accounted for: "
msgstr "차지하는 전체 용량: "
-#: cmdline/apt-cache.cc:446
-#: cmdline/apt-cache.cc:1189
+#: cmdline/apt-cache.cc:446 cmdline/apt-cache.cc:1189
#, c-format
msgid "Package file %s is out of sync."
msgstr "꾸러미 파일 %s 파일이 동기화되지 않았습니다."
@@ -103,8 +98,7 @@ msgstr "꾸러미가 없습니다"
msgid "Package files:"
msgstr "꾸러미 파일:"
-#: cmdline/apt-cache.cc:1469
-#: cmdline/apt-cache.cc:1555
+#: cmdline/apt-cache.cc:1469 cmdline/apt-cache.cc:1555
msgid "Cache is out of sync, can't x-ref a package file"
msgstr "캐시가 동기화되지 않았습니다. 꾸러미 파일을 상호 참조할 수 없습니다"
@@ -118,8 +112,7 @@ msgstr "%4i %s\n"
msgid "Pinned packages:"
msgstr "핀 꾸러미:"
-#: cmdline/apt-cache.cc:1494
-#: cmdline/apt-cache.cc:1535
+#: cmdline/apt-cache.cc:1494 cmdline/apt-cache.cc:1535
msgid "(not found)"
msgstr "(없음)"
@@ -128,8 +121,7 @@ msgstr "(없음)"
msgid " Installed: "
msgstr " 설치: "
-#: cmdline/apt-cache.cc:1517
-#: cmdline/apt-cache.cc:1525
+#: cmdline/apt-cache.cc:1517 cmdline/apt-cache.cc:1525
msgid "(none)"
msgstr "(없음)"
@@ -152,13 +144,9 @@ msgstr " 버전 테이블:"
msgid " %4i %s\n"
msgstr " %4i %s\n"
-#: cmdline/apt-cache.cc:1652
-#: cmdline/apt-cdrom.cc:138
-#: cmdline/apt-config.cc:70
-#: cmdline/apt-extracttemplates.cc:225
-#: ftparchive/apt-ftparchive.cc:550
-#: cmdline/apt-get.cc:2369
-#: cmdline/apt-sortpkgs.cc:144
+#: cmdline/apt-cache.cc:1652 cmdline/apt-cdrom.cc:138 cmdline/apt-config.cc:70
+#: cmdline/apt-extracttemplates.cc:225 ftparchive/apt-ftparchive.cc:550
+#: cmdline/apt-get.cc:2369 cmdline/apt-sortpkgs.cc:144
#, c-format
msgid "%s %s for %s %s compiled on %s %s\n"
msgstr "%s %s (%s %s), 컴파일 시각 %s %s\n"
@@ -310,8 +298,7 @@ msgstr ""
" -c=? 설정 파일을 읽습니다\n"
" -o=? 임의의 옵션을 설정합니다, 예를 들어 -o dir::cache=/tmp\n"
-#: cmdline/apt-extracttemplates.cc:267
-#: apt-pkg/pkgcachegen.cc:710
+#: cmdline/apt-extracttemplates.cc:267 apt-pkg/pkgcachegen.cc:710
#, c-format
msgid "Unable to write to %s"
msgstr "%s에 쓸 수 없습니다"
@@ -320,17 +307,13 @@ msgstr "%s에 쓸 수 없습니다"
msgid "Cannot get debconf version. Is debconf installed?"
msgstr "debconf 버전을 알 수 없습니다. debconf가 설치되었습니까?"
-#: ftparchive/apt-ftparchive.cc:167
-#: ftparchive/apt-ftparchive.cc:341
+#: ftparchive/apt-ftparchive.cc:167 ftparchive/apt-ftparchive.cc:341
msgid "Package extension list is too long"
msgstr "꾸러미 확장 목록이 너무 깁니다"
-#: ftparchive/apt-ftparchive.cc:169
-#: ftparchive/apt-ftparchive.cc:183
-#: ftparchive/apt-ftparchive.cc:206
-#: ftparchive/apt-ftparchive.cc:256
-#: ftparchive/apt-ftparchive.cc:270
-#: ftparchive/apt-ftparchive.cc:292
+#: ftparchive/apt-ftparchive.cc:169 ftparchive/apt-ftparchive.cc:183
+#: ftparchive/apt-ftparchive.cc:206 ftparchive/apt-ftparchive.cc:256
+#: ftparchive/apt-ftparchive.cc:270 ftparchive/apt-ftparchive.cc:292
#, c-format
msgid "Error processing directory %s"
msgstr "%s 디렉토리를 처리하는 데 오류가 발생했습니다"
@@ -489,8 +472,7 @@ msgstr "경고: "
msgid "E: Errors apply to file "
msgstr "오류: 다음 파일에 적용하는 데 오류가 발생했습니다: "
-#: ftparchive/writer.cc:151
-#: ftparchive/writer.cc:181
+#: ftparchive/writer.cc:151 ftparchive/writer.cc:181
#, c-format
msgid "Failed to resolve %s"
msgstr "%s의 경로를 알아내는 데 실패했습니다"
@@ -530,12 +512,8 @@ msgstr "*** %s 파일을 %s(으)로 링크하는 데 실패했습니다"
msgid " DeLink limit of %sB hit.\n"
msgstr " DeLink 한계값 %s바이트에 도달했습니다.\n"
-#: ftparchive/writer.cc:358
-#: apt-inst/extract.cc:181
-#: apt-inst/extract.cc:193
-#: apt-inst/extract.cc:210
-#: apt-inst/deb/dpkgdb.cc:121
-#: methods/gpgv.cc:266
+#: ftparchive/writer.cc:358 apt-inst/extract.cc:181 apt-inst/extract.cc:193
+#: apt-inst/extract.cc:210 apt-inst/deb/dpkgdb.cc:121 methods/gpgv.cc:266
#, c-format
msgid "Failed to stat %s"
msgstr "%s의 정보를 읽는 데 실패했습니다"
@@ -544,14 +522,12 @@ msgstr "%s의 정보를 읽는 데 실패했습니다"
msgid "Archive had no package field"
msgstr "아카이브에 꾸러미 필드가 없습니다"
-#: ftparchive/writer.cc:394
-#: ftparchive/writer.cc:603
+#: ftparchive/writer.cc:394 ftparchive/writer.cc:603
#, c-format
msgid " %s has no override entry\n"
msgstr " %s에는 override 항목이 없습니다\n"
-#: ftparchive/writer.cc:437
-#: ftparchive/writer.cc:689
+#: ftparchive/writer.cc:437 ftparchive/writer.cc:689
#, c-format
msgid " %s maintainer is %s not %s\n"
msgstr " %s 관리자가 %s입니다 (%s 아님)\n"
@@ -561,37 +537,31 @@ msgstr " %s 관리자가 %s입니다 (%s 아님)\n"
msgid "Internal error, could not locate member %s"
msgstr "내부 오류, %s 멤버를 찾을 수 없습니다"
-#: ftparchive/contents.cc:353
-#: ftparchive/contents.cc:384
+#: ftparchive/contents.cc:353 ftparchive/contents.cc:384
msgid "realloc - Failed to allocate memory"
msgstr "realloc - 메모리를 할당하는 데 실패했습니다"
-#: ftparchive/override.cc:38
-#: ftparchive/override.cc:146
+#: ftparchive/override.cc:38 ftparchive/override.cc:146
#, c-format
msgid "Unable to open %s"
msgstr "%s을(를) 열 수 없습니다"
-#: ftparchive/override.cc:64
-#: ftparchive/override.cc:170
+#: ftparchive/override.cc:64 ftparchive/override.cc:170
#, c-format
msgid "Malformed override %s line %lu #1"
msgstr "override %s의 %lu번 줄 #1이 잘못되었습니다"
-#: ftparchive/override.cc:78
-#: ftparchive/override.cc:182
+#: ftparchive/override.cc:78 ftparchive/override.cc:182
#, c-format
msgid "Malformed override %s line %lu #2"
msgstr "override %s의 %lu번 줄 #2가 잘못되었습니다"
-#: ftparchive/override.cc:92
-#: ftparchive/override.cc:195
+#: ftparchive/override.cc:92 ftparchive/override.cc:195
#, c-format
msgid "Malformed override %s line %lu #3"
msgstr "override %s의 %lu번 줄 #3이 잘못되었습니다"
-#: ftparchive/override.cc:131
-#: ftparchive/override.cc:205
+#: ftparchive/override.cc:131 ftparchive/override.cc:205
#, c-format
msgid "Failed to read the override file %s"
msgstr "override 파일 %s을(를) 읽는 데 실패했습니다"
@@ -606,8 +576,7 @@ msgstr "'%s' 압축 알고리즘을 알 수 없습니다"
msgid "Compressed output %s needs a compression set"
msgstr "압축된 출력물 %s에는 압축 세트가 필요합니다"
-#: ftparchive/multicompress.cc:172
-#: methods/rsh.cc:91
+#: ftparchive/multicompress.cc:172 methods/rsh.cc:91
msgid "Failed to create IPC pipe to subprocess"
msgstr "하위 프로세스에 대한 IPC 파이프를 만드는 데 실패했습니다"
@@ -653,8 +622,7 @@ msgstr "MD5를 계산하는 동안 읽는 데 실패했습니다"
msgid "Problem unlinking %s"
msgstr "%s의 링크를 해제하는 데 문제가 있습니다"
-#: ftparchive/multicompress.cc:490
-#: apt-inst/extract.cc:188
+#: ftparchive/multicompress.cc:490 apt-inst/extract.cc:188
#, c-format
msgid "Failed to rename %s to %s"
msgstr "%s 파일의 이름을 %s(으)로 바꾸는 데 실패했습니다"
@@ -663,8 +631,7 @@ msgstr "%s 파일의 이름을 %s(으)로 바꾸는 데 실패했습니다"
msgid "Y"
msgstr "Y"
-#: cmdline/apt-get.cc:142
-#: cmdline/apt-get.cc:1506
+#: cmdline/apt-get.cc:142 cmdline/apt-get.cc:1506
#, c-format
msgid "Regex compilation error - %s"
msgstr "정규식 컴파일 오류 - %s"
@@ -787,7 +754,8 @@ msgstr " 완료"
#: cmdline/apt-get.cc:664
msgid "You might want to run `apt-get -f install' to correct these."
-msgstr "이 상황을 바로잡으려면 `apt-get -f install'을 실행해야 할 수도 있습니다."
+msgstr ""
+"이 상황을 바로잡으려면 `apt-get -f install'을 실행해야 할 수도 있습니다."
#: cmdline/apt-get.cc:667
msgid "Unmet dependencies. Try using -f."
@@ -809,8 +777,7 @@ msgstr "확인하지 않고 꾸러미를 설치하시겠습니까 [y/N]? "
msgid "Some packages could not be authenticated"
msgstr "인증할 수 없는 꾸러미가 있습니다"
-#: cmdline/apt-get.cc:711
-#: cmdline/apt-get.cc:858
+#: cmdline/apt-get.cc:711 cmdline/apt-get.cc:858
msgid "There are problems and -y was used without --force-yes"
msgstr "문제가 발생했고 -y 옵션이 --force-yes 옵션 없이 사용되었습니다"
@@ -826,22 +793,20 @@ msgstr "꾸러미를 지워야 하지만 지우기가 금지되어 있습니다.
msgid "Internal error, Ordering didn't finish"
msgstr "내부 오류. 순서변경작업이 끝나지 않았습니다"
-#: cmdline/apt-get.cc:791
-#: cmdline/apt-get.cc:1800
-#: cmdline/apt-get.cc:1833
+#: cmdline/apt-get.cc:791 cmdline/apt-get.cc:1800 cmdline/apt-get.cc:1833
msgid "Unable to lock the download directory"
msgstr "내려받기 디렉토리를 잠글 수 없습니다"
-#: cmdline/apt-get.cc:801
-#: cmdline/apt-get.cc:1881
-#: cmdline/apt-get.cc:2117
+#: cmdline/apt-get.cc:801 cmdline/apt-get.cc:1881 cmdline/apt-get.cc:2117
#: apt-pkg/cachefile.cc:67
msgid "The list of sources could not be read."
msgstr "소스 목록을 읽을 수 없습니다."
#: cmdline/apt-get.cc:816
msgid "How odd.. The sizes didn't match, email apt@packages.debian.org"
-msgstr "이상하게도 크기가 서로 다릅니다. apt@packages.debian.org로 이메일을 보내주십시오."
+msgstr ""
+"이상하게도 크기가 서로 다릅니다. apt@packages.debian.org로 이메일을 보내주십"
+"시오."
#: cmdline/apt-get.cc:821
#, c-format
@@ -863,8 +828,7 @@ msgstr "압축을 풀면 %s바이트의 디스크 공간을 더 사용하게 됩
msgid "After unpacking %sB disk space will be freed.\n"
msgstr "압축을 풀면 %s바이트의 디스크 공간이 비워집니다.\n"
-#: cmdline/apt-get.cc:846
-#: cmdline/apt-get.cc:1971
+#: cmdline/apt-get.cc:846 cmdline/apt-get.cc:1971
#, c-format
msgid "Couldn't determine free space in %s"
msgstr "%s의 여유 공간의 크기를 파악할 수 없습니다"
@@ -874,10 +838,11 @@ msgstr "%s의 여유 공간의 크기를 파악할 수 없습니다"
msgid "You don't have enough free space in %s."
msgstr "%s 안에 충분한 여유 공간이 없습니다."
-#: cmdline/apt-get.cc:864
-#: cmdline/apt-get.cc:884
+#: cmdline/apt-get.cc:864 cmdline/apt-get.cc:884
msgid "Trivial Only specified but this is not a trivial operation."
-msgstr "사소한 작업만 가능하도록(Trivial Only) 지정되었지만 이 작업은 사소한 작업이 아닙니다."
+msgstr ""
+"사소한 작업만 가능하도록(Trivial Only) 지정되었지만 이 작업은 사소한 작업이 "
+"아닙니다."
# 입력을 받아야 한다. 한글 입력을 못 할 수 있으므로 원문 그대로 사용.
#: cmdline/apt-get.cc:866
@@ -895,8 +860,7 @@ msgstr ""
"계속하시려면 다음 문구를 입력하십시오: '%s'\n"
" ?] "
-#: cmdline/apt-get.cc:874
-#: cmdline/apt-get.cc:893
+#: cmdline/apt-get.cc:874 cmdline/apt-get.cc:893
msgid "Abort."
msgstr "중단."
@@ -904,9 +868,7 @@ msgstr "중단."
msgid "Do you want to continue [Y/n]? "
msgstr "계속 하시겠습니까 [Y/n]? "
-#: cmdline/apt-get.cc:961
-#: cmdline/apt-get.cc:1365
-#: cmdline/apt-get.cc:2014
+#: cmdline/apt-get.cc:961 cmdline/apt-get.cc:1365 cmdline/apt-get.cc:2014
#, c-format
msgid "Failed to fetch %s %s\n"
msgstr "%s 파일을 받는 데 실패했습니다 %s\n"
@@ -915,14 +877,17 @@ msgstr "%s 파일을 받는 데 실패했습니다 %s\n"
msgid "Some files failed to download"
msgstr "일부 파일을 받는 데 실패했습니다"
-#: cmdline/apt-get.cc:980
-#: cmdline/apt-get.cc:2023
+#: cmdline/apt-get.cc:980 cmdline/apt-get.cc:2023
msgid "Download complete and in download only mode"
msgstr "내려받기를 마쳤고 내려받기 전용 모드입니다"
#: cmdline/apt-get.cc:986
-msgid "Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?"
-msgstr "아카이브를 받을 수 없습니다. 아마도 apt-get update를 실행해야 하거나 --fix-missing 옵션을 줘서 실행해야 할 것입니다."
+msgid ""
+"Unable to fetch some archives, maybe run apt-get update or try with --fix-"
+"missing?"
+msgstr ""
+"아카이브를 받을 수 없습니다. 아마도 apt-get update를 실행해야 하거나 --fix-"
+"missing 옵션을 줘서 실행해야 할 것입니다."
#: cmdline/apt-get.cc:990
msgid "--fix-missing and media swapping is not currently supported"
@@ -944,7 +909,8 @@ msgstr "주의, %2$s 대신에 %1$s 꾸러미를 선택합니다\n"
#: cmdline/apt-get.cc:1040
#, c-format
msgid "Skipping %s, it is already installed and upgrade is not set.\n"
-msgstr "%s 꾸러미를 건너 뜁니다. 이미 설치되어 있고 업그레이드를 하지 않습니다.\n"
+msgstr ""
+"%s 꾸러미를 건너 뜁니다. 이미 설치되어 있고 업그레이드를 하지 않습니다.\n"
#: cmdline/apt-get.cc:1058
#, c-format
@@ -1018,15 +984,18 @@ msgid "Unable to lock the list directory"
msgstr "목록 디렉토리를 잠글 수 없습니다"
#: cmdline/apt-get.cc:1384
-msgid "Some index files failed to download, they have been ignored, or old ones used instead."
-msgstr "일부 인덱스 파일을 내려받는 데 실패했습니다. 해당 파일을 무시하거나 과거의 버전을 대신 사용합니다."
+msgid ""
+"Some index files failed to download, they have been ignored, or old ones "
+"used instead."
+msgstr ""
+"일부 인덱스 파일을 내려받는 데 실패했습니다. 해당 파일을 무시하거나 과거의 버"
+"전을 대신 사용합니다."
#: cmdline/apt-get.cc:1403
msgid "Internal error, AllUpgrade broke stuff"
msgstr "내부 오류, AllUpgrade때문에 망가졌습니다"
-#: cmdline/apt-get.cc:1493
-#: cmdline/apt-get.cc:1529
+#: cmdline/apt-get.cc:1493 cmdline/apt-get.cc:1529
#, c-format
msgid "Couldn't find package %s"
msgstr "%s 꾸러미를 찾을 수 없습니다"
@@ -1042,8 +1011,12 @@ msgstr "다음을 바로잡으려면 `apt-get -f install'을 실행해 보십시
# FIXME: specify a solution? 무슨 솔루션?
#: cmdline/apt-get.cc:1549
-msgid "Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution)."
-msgstr "의존성이 맞지 않습니다. 꾸러미 없이 'apt-get -f install'을 시도해 보십시오 (아니면 해결 방법을 지정하십시오)."
+msgid ""
+"Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a "
+"solution)."
+msgstr ""
+"의존성이 맞지 않습니다. 꾸러미 없이 'apt-get -f install'을 시도해 보십시오 "
+"(아니면 해결 방법을 지정하십시오)."
#: cmdline/apt-get.cc:1561
msgid ""
@@ -1089,9 +1062,7 @@ msgstr "추천하는 꾸러미:"
msgid "Calculating upgrade... "
msgstr "업그레이드를 계산하는 중입니다... "
-#: cmdline/apt-get.cc:1698
-#: methods/ftp.cc:702
-#: methods/connect.cc:101
+#: cmdline/apt-get.cc:1698 methods/ftp.cc:702 methods/connect.cc:101
msgid "Failed"
msgstr "실패"
@@ -1099,8 +1070,7 @@ msgstr "실패"
msgid "Done"
msgstr "완료"
-#: cmdline/apt-get.cc:1768
-#: cmdline/apt-get.cc:1776
+#: cmdline/apt-get.cc:1768 cmdline/apt-get.cc:1776
msgid "Internal error, problem resolver broke stuff"
msgstr "내부 오류, 문제 해결 프로그램이 사고쳤습니다"
@@ -1108,8 +1078,7 @@ msgstr "내부 오류, 문제 해결 프로그램이 사고쳤습니다"
msgid "Must specify at least one package to fetch source for"
msgstr "해당되는 소스 꾸러미를 가져올 꾸러미를 최소한 하나 지정해야 합니다"
-#: cmdline/apt-get.cc:1906
-#: cmdline/apt-get.cc:2135
+#: cmdline/apt-get.cc:1906 cmdline/apt-get.cc:2135
#, c-format
msgid "Unable to find a source package for %s"
msgstr "%s의 소스 꾸러미를 찾을 수 없습니다"
@@ -1183,18 +1152,28 @@ msgstr "%s 꾸러미에 빌드 의존성이 없습니다.\n"
#: cmdline/apt-get.cc:2212
#, c-format
-msgid "%s dependency for %s cannot be satisfied because the package %s cannot be found"
-msgstr "%2$s에 대한 %1$s 의존성을 만족시킬 수 없습니다. %3$s 꾸러미를 찾을 수 없습니다"
+msgid ""
+"%s dependency for %s cannot be satisfied because the package %s cannot be "
+"found"
+msgstr ""
+"%2$s에 대한 %1$s 의존성을 만족시킬 수 없습니다. %3$s 꾸러미를 찾을 수 없습니"
+"다"
#: cmdline/apt-get.cc:2264
#, c-format
-msgid "%s dependency for %s cannot be satisfied because no available versions of package %s can satisfy version requirements"
-msgstr "%2$s에 대한 %1$s 의존성을 만족시킬 수 없습니다. %3$s 꾸러미의 사용 가능한 버전 중에서는 이 버전 요구사항을 만족시킬 수 없습니다"
+msgid ""
+"%s dependency for %s cannot be satisfied because no available versions of "
+"package %s can satisfy version requirements"
+msgstr ""
+"%2$s에 대한 %1$s 의존성을 만족시킬 수 없습니다. %3$s 꾸러미의 사용 가능한 버"
+"전 중에서는 이 버전 요구사항을 만족시킬 수 없습니다"
#: cmdline/apt-get.cc:2299
#, c-format
msgid "Failed to satisfy %s dependency for %s: Installed package %s is too new"
-msgstr "%2$s에 대한 %1$s 의존성을 만족시키는 데 실패했습니다: 설치한 %3$s 꾸러미가 너무 최근 버전입니다"
+msgstr ""
+"%2$s에 대한 %1$s 의존성을 만족시키는 데 실패했습니다: 설치한 %3$s 꾸러미가 너"
+"무 최근 버전입니다"
#: cmdline/apt-get.cc:2324
#, c-format
@@ -1349,7 +1328,8 @@ msgid ""
msgstr ""
"사용법: apt-sortpkgs [옵션] 파일1 [파일2 ...]\n"
"\n"
-"apt-sortpkgs는 꾸러미 파일을 정렬하는 간단한 도구입니다. -s 옵션은 무슨 파일인지\n"
+"apt-sortpkgs는 꾸러미 파일을 정렬하는 간단한 도구입니다. -s 옵션은 무슨 파일"
+"인지\n"
"알아 내는 데 쓰입니다.\n"
"\n"
"옵션:\n"
@@ -1362,12 +1342,8 @@ msgstr ""
msgid "Bad default setting!"
msgstr "기본 설정이 잘못되었습니다!"
-#: dselect/install:51
-#: dselect/install:83
-#: dselect/install:87
-#: dselect/install:93
-#: dselect/install:104
-#: dselect/update:45
+#: dselect/install:51 dselect/install:83 dselect/install:87 dselect/install:93
+#: dselect/install:104 dselect/update:45
msgid "Press enter to continue."
msgstr "계속 하시려면 enter를 누르십시오."
@@ -1381,10 +1357,12 @@ msgstr "설정할 것입니다. 오류때문에 의존성을 만족하지 못해
#: dselect/install:102
msgid "or errors caused by missing dependencies. This is OK, only the errors"
-msgstr "오류가 중복되어 나타날 수 있습니다. 하지만 상관없고, 이 메세지 위에 나온"
+msgstr ""
+"오류가 중복되어 나타날 수 있습니다. 하지만 상관없고, 이 메세지 위에 나온"
#: dselect/install:103
-msgid "above this message are important. Please fix them and run [I]nstall again"
+msgid ""
+"above this message are important. Please fix them and run [I]nstall again"
msgstr "오류만 중요합니다. 이 오류를 고친 다음에 설치(I)를 다시 시도하십시오"
#: dselect/update:30
@@ -1399,8 +1377,7 @@ msgstr "파이프 만들기가 실패했습니다"
msgid "Failed to exec gzip "
msgstr "gzip 실행이 실패했습니다"
-#: apt-inst/contrib/extracttar.cc:180
-#: apt-inst/contrib/extracttar.cc:206
+#: apt-inst/contrib/extracttar.cc:180 apt-inst/contrib/extracttar.cc:206
msgid "Corrupted archive"
msgstr "아카이브가 손상되었습니다"
@@ -1421,8 +1398,7 @@ msgstr "아카이브 시그너쳐가 틀렸습니다"
msgid "Error reading archive member header"
msgstr "아카이브 멤버 헤더를 읽는 데 오류가 발생했습니다"
-#: apt-inst/contrib/arfile.cc:93
-#: apt-inst/contrib/arfile.cc:105
+#: apt-inst/contrib/arfile.cc:93 apt-inst/contrib/arfile.cc:105
msgid "Invalid archive member header"
msgstr "아카이브 멤버 헤더가 잘못되었습니다"
@@ -1465,21 +1441,17 @@ msgstr "전환된 파일을 두 번 추가합니다 (%s -> %s)"
msgid "Duplicate conf file %s/%s"
msgstr "%s/%s 설정 파일이 중복되었습니다"
-#: apt-inst/dirstream.cc:45
-#: apt-inst/dirstream.cc:50
-#: apt-inst/dirstream.cc:53
+#: apt-inst/dirstream.cc:45 apt-inst/dirstream.cc:50 apt-inst/dirstream.cc:53
#, c-format
msgid "Failed to write file %s"
msgstr "%s 파일을 쓰는 데 실패했습니다"
-#: apt-inst/dirstream.cc:96
-#: apt-inst/dirstream.cc:104
+#: apt-inst/dirstream.cc:96 apt-inst/dirstream.cc:104
#, c-format
msgid "Failed to close file %s"
msgstr "%s 파일을 닫는 데 실패했습니다"
-#: apt-inst/extract.cc:96
-#: apt-inst/extract.cc:167
+#: apt-inst/extract.cc:96 apt-inst/extract.cc:167
#, c-format
msgid "The path %s is too long"
msgstr "경로 %s이(가) 너무 깁니다"
@@ -1499,8 +1471,7 @@ msgstr "%s 디렉토리가 전환되었습니다"
msgid "The package is trying to write to the diversion target %s/%s"
msgstr "이 꾸러미에서 전환된 대상에 쓰려고 합니다 (%s/%s)"
-#: apt-inst/extract.cc:157
-#: apt-inst/extract.cc:300
+#: apt-inst/extract.cc:157 apt-inst/extract.cc:300
msgid "The diversion path is too long"
msgstr "전환하는 경로가 너무 깁니다"
@@ -1527,12 +1498,9 @@ msgstr "덮어 쓰는 꾸러미가 %s 꾸러미의 어떤 버전과도 맞지
msgid "File %s/%s overwrites the one in the package %s"
msgstr "%s/%s 파일은 %s 꾸러미에 있는 파일을 덮어 씁니다"
-#: apt-inst/extract.cc:467
-#: apt-pkg/contrib/configuration.cc:750
-#: apt-pkg/contrib/cdromutl.cc:153
-#: apt-pkg/sourcelist.cc:324
-#: apt-pkg/acquire.cc:421
-#: apt-pkg/clean.cc:38
+#: apt-inst/extract.cc:467 apt-pkg/contrib/configuration.cc:750
+#: apt-pkg/contrib/cdromutl.cc:153 apt-pkg/sourcelist.cc:324
+#: apt-pkg/acquire.cc:421 apt-pkg/clean.cc:38
#, c-format
msgid "Unable to read %s"
msgstr "%s을(를) 읽을 수 없습니다"
@@ -1542,14 +1510,12 @@ msgstr "%s을(를) 읽을 수 없습니다"
msgid "Unable to stat %s"
msgstr "%s의 정보를 읽을 수 없습니다"
-#: apt-inst/deb/dpkgdb.cc:55
-#: apt-inst/deb/dpkgdb.cc:61
+#: apt-inst/deb/dpkgdb.cc:55 apt-inst/deb/dpkgdb.cc:61
#, c-format
msgid "Failed to remove %s"
msgstr "%s을(를) 지우는 데 실패했습니다"
-#: apt-inst/deb/dpkgdb.cc:110
-#: apt-inst/deb/dpkgdb.cc:112
+#: apt-inst/deb/dpkgdb.cc:110 apt-inst/deb/dpkgdb.cc:112
#, c-format
msgid "Unable to create %s"
msgstr "%s을(를) 만들 수 없습니다"
@@ -1564,10 +1530,8 @@ msgid "The info and temp directories need to be on the same filesystem"
msgstr "정보 디렉토리와 임시 디렉토리는 같은 파일 시스템에 있어야 합니다"
#. Build the status cache
-#: apt-inst/deb/dpkgdb.cc:139
-#: apt-pkg/pkgcachegen.cc:643
-#: apt-pkg/pkgcachegen.cc:712
-#: apt-pkg/pkgcachegen.cc:717
+#: apt-inst/deb/dpkgdb.cc:139 apt-pkg/pkgcachegen.cc:643
+#: apt-pkg/pkgcachegen.cc:712 apt-pkg/pkgcachegen.cc:717
#: apt-pkg/pkgcachegen.cc:840
msgid "Reading package lists"
msgstr "꾸러미 목록을 읽는 중입니다"
@@ -1577,24 +1541,26 @@ msgstr "꾸러미 목록을 읽는 중입니다"
msgid "Failed to change to the admin dir %sinfo"
msgstr "관리 디렉토리를 %sinfo로 바꾸는 데 실패했습니다"
-#: apt-inst/deb/dpkgdb.cc:201
-#: apt-inst/deb/dpkgdb.cc:355
+#: apt-inst/deb/dpkgdb.cc:201 apt-inst/deb/dpkgdb.cc:355
#: apt-inst/deb/dpkgdb.cc:448
msgid "Internal error getting a package name"
msgstr "꾸러미 이름을 가져오는 데 내부 오류"
-#: apt-inst/deb/dpkgdb.cc:205
-#: apt-inst/deb/dpkgdb.cc:386
+#: apt-inst/deb/dpkgdb.cc:205 apt-inst/deb/dpkgdb.cc:386
msgid "Reading file listing"
msgstr "파일 목록을 읽는 중입니다"
#: apt-inst/deb/dpkgdb.cc:216
#, c-format
-msgid "Failed to open the list file '%sinfo/%s'. If you cannot restore this file then make it empty and immediately re-install the same version of the package!"
-msgstr "목록 파일 '%sinfo/%s' 파일을 여는 데 실패했습니다. 이 파일을 복구할 수 없다면 비워 놓고 같은 버전의 꾸러미를 다시 설치하십시오!"
+msgid ""
+"Failed to open the list file '%sinfo/%s'. If you cannot restore this file "
+"then make it empty and immediately re-install the same version of the "
+"package!"
+msgstr ""
+"목록 파일 '%sinfo/%s' 파일을 여는 데 실패했습니다. 이 파일을 복구할 수 없다"
+"면 비워 놓고 같은 버전의 꾸러미를 다시 설치하십시오!"
-#: apt-inst/deb/dpkgdb.cc:229
-#: apt-inst/deb/dpkgdb.cc:242
+#: apt-inst/deb/dpkgdb.cc:229 apt-inst/deb/dpkgdb.cc:242
#, c-format
msgid "Failed reading the list file %sinfo/%s"
msgstr "목록 파일 %sinfo/%s 파일을 읽는 데 실패했습니다"
@@ -1612,8 +1578,7 @@ msgstr "전환 파일 %sdiversions를 여는 데 실패했습니다"
msgid "The diversion file is corrupted"
msgstr "전환 파일이 손상되었습니다"
-#: apt-inst/deb/dpkgdb.cc:331
-#: apt-inst/deb/dpkgdb.cc:336
+#: apt-inst/deb/dpkgdb.cc:331 apt-inst/deb/dpkgdb.cc:336
#: apt-inst/deb/dpkgdb.cc:341
#, c-format
msgid "Invalid line in the diversion file: %s"
@@ -1642,8 +1607,7 @@ msgstr "status 파일에서 ConfFile 섹션이 잘못되었습니다. 오프셋
msgid "Error parsing MD5. Offset %lu"
msgstr "MD5 분석에 오류가 있습니다. 오프셋 %lu"
-#: apt-inst/deb/debfile.cc:42
-#: apt-inst/deb/debfile.cc:47
+#: apt-inst/deb/debfile.cc:42 apt-inst/deb/debfile.cc:47
#, c-format
msgid "This is not a valid DEB archive, missing '%s' member"
msgstr "올바른 DEB 아카이브가 아닙니다. '%s' 멤버가 없습니다"
@@ -1676,8 +1640,12 @@ msgid "Unable to read the cdrom database %s"
msgstr "CD-ROM 데이터베이스 %s을(를) 읽을 수 없습니다"
#: methods/cdrom.cc:123
-msgid "Please use apt-cdrom to make this CD-ROM recognized by APT. apt-get update cannot be used to add new CD-ROMs"
-msgstr "이 CD를 APT에서 인식하려면 apt-cdrom을 사용하십시오. apt-get update로는 새 CD를 추가할 수 없습니다."
+msgid ""
+"Please use apt-cdrom to make this CD-ROM recognized by APT. apt-get update "
+"cannot be used to add new CD-ROMs"
+msgstr ""
+"이 CD를 APT에서 인식하려면 apt-cdrom을 사용하십시오. apt-get update로는 새 "
+"CD를 추가할 수 없습니다."
#: methods/cdrom.cc:131
msgid "Wrong CD-ROM"
@@ -1692,22 +1660,16 @@ msgstr "%s 안의 CD-ROM을 마운트 해제할 수 없습니다. 사용 중일
msgid "Disk not found."
msgstr "디스크가 없습니다"
-#: methods/cdrom.cc:177
-#: methods/file.cc:79
-#: methods/rsh.cc:264
+#: methods/cdrom.cc:177 methods/file.cc:79 methods/rsh.cc:264
msgid "File not found"
msgstr "파일이 없습니다"
-#: methods/copy.cc:42
-#: methods/gpgv.cc:275
-#: methods/gzip.cc:133
+#: methods/copy.cc:42 methods/gpgv.cc:275 methods/gzip.cc:133
#: methods/gzip.cc:142
msgid "Failed to stat"
msgstr "파일 정보를 읽는 데 실패했습니다"
-#: methods/copy.cc:79
-#: methods/gpgv.cc:272
-#: methods/gzip.cc:139
+#: methods/copy.cc:79 methods/gpgv.cc:272 methods/gzip.cc:139
msgid "Failed to set modification time"
msgstr "파일 변경 시각을 설정하는 데 실패했습니다"
@@ -1728,8 +1690,7 @@ msgstr "상대방의 이름을 알 수 없습니다"
msgid "Unable to determine the local name"
msgstr "로컬 이름을 알 수 없습니다"
-#: methods/ftp.cc:204
-#: methods/ftp.cc:232
+#: methods/ftp.cc:204 methods/ftp.cc:232
#, c-format
msgid "The server refused the connection and said: %s"
msgstr "서버에서 다음과 같이 연결을 거부했습니다: %s"
@@ -1745,8 +1706,12 @@ msgid "PASS failed, server said: %s"
msgstr "PASS 실패, 서버에서는: %s"
#: methods/ftp.cc:237
-msgid "A proxy server was specified but no login script, Acquire::ftp::ProxyLogin is empty."
-msgstr "프록시 서버를 지정했지만 로그인 스크립트가 없습니다. Acquire::ftp::ProxyLogin 값이 비어 있습니다."
+msgid ""
+"A proxy server was specified but no login script, Acquire::ftp::ProxyLogin "
+"is empty."
+msgstr ""
+"프록시 서버를 지정했지만 로그인 스크립트가 없습니다. Acquire::ftp::"
+"ProxyLogin 값이 비어 있습니다."
#: methods/ftp.cc:265
#, c-format
@@ -1758,10 +1723,7 @@ msgstr "로그인 스크립트 명령 '%s' 실패, 서버에서는: %s"
msgid "TYPE failed, server said: %s"
msgstr "TYPE 실패, 서버에서는: %s"
-#: methods/ftp.cc:329
-#: methods/ftp.cc:440
-#: methods/rsh.cc:183
-#: methods/rsh.cc:226
+#: methods/ftp.cc:329 methods/ftp.cc:440 methods/rsh.cc:183 methods/rsh.cc:226
msgid "Connection timeout"
msgstr "연결 시간 초과"
@@ -1769,31 +1731,23 @@ msgstr "연결 시간 초과"
msgid "Server closed the connection"
msgstr "서버에서 연결을 닫았습니다"
-#: methods/ftp.cc:338
-#: apt-pkg/contrib/fileutl.cc:471
-#: methods/rsh.cc:190
+#: methods/ftp.cc:338 apt-pkg/contrib/fileutl.cc:471 methods/rsh.cc:190
msgid "Read error"
msgstr "읽기 오류"
-#: methods/ftp.cc:345
-#: methods/rsh.cc:197
+#: methods/ftp.cc:345 methods/rsh.cc:197
msgid "A response overflowed the buffer."
msgstr "응답이 버퍼 크기를 넘어갔습니다."
-#: methods/ftp.cc:362
-#: methods/ftp.cc:374
+#: methods/ftp.cc:362 methods/ftp.cc:374
msgid "Protocol corruption"
msgstr "프로토콜이 틀렸습니다"
-#: methods/ftp.cc:446
-#: apt-pkg/contrib/fileutl.cc:510
-#: methods/rsh.cc:232
+#: methods/ftp.cc:446 apt-pkg/contrib/fileutl.cc:510 methods/rsh.cc:232
msgid "Write error"
msgstr "쓰기 오류"
-#: methods/ftp.cc:687
-#: methods/ftp.cc:693
-#: methods/ftp.cc:729
+#: methods/ftp.cc:687 methods/ftp.cc:693 methods/ftp.cc:729
msgid "Could not create a socket"
msgstr "소켓을 만들 수 없습니다"
@@ -1843,9 +1797,7 @@ msgstr "데이터 소켓 연결 시간 초과"
msgid "Unable to accept connection"
msgstr "연결을 받을 수 없습니다"
-#: methods/ftp.cc:864
-#: methods/http.cc:958
-#: methods/rsh.cc:303
+#: methods/ftp.cc:864 methods/http.cc:958 methods/rsh.cc:303
msgid "Problem hashing file"
msgstr "파일 해싱에 문제가 있습니다"
@@ -1854,8 +1806,7 @@ msgstr "파일 해싱에 문제가 있습니다"
msgid "Unable to fetch file, server said '%s'"
msgstr "파일을 가져올 수 없습니다. 서버 왈, '%s'"
-#: methods/ftp.cc:892
-#: methods/rsh.cc:322
+#: methods/ftp.cc:892 methods/rsh.cc:322
msgid "Data socket timed out"
msgstr "데이터 소켓에 제한 시간이 초과했습니다"
@@ -1905,8 +1856,7 @@ msgstr "%s:%s에 연결할 수 없습니다 (%s)."
#. We say this mainly because the pause here is for the
#. ssh connection that is still going
-#: methods/connect.cc:136
-#: methods/rsh.cc:425
+#: methods/connect.cc:136 methods/rsh.cc:425
#, c-format
msgid "Connecting to %s"
msgstr "%s에 연결하는 중입니다"
@@ -1941,7 +1891,8 @@ msgid "E: Argument list from Acquire::gpgv::Options too long. Exiting."
msgstr "E: Acquire::gpgv::Options의 인자 목록이 너무 깁니다. 종료하는 중."
#: methods/gpgv.cc:198
-msgid "Internal error: Good signature, but could not determine key fingerprint?!"
+msgid ""
+"Internal error: Good signature, but could not determine key fingerprint?!"
msgstr "내부 오류: 서명은 올바르지만 키 지문을 확인할 수 없습니다!"
#: methods/gpgv.cc:203
@@ -1962,7 +1913,9 @@ msgid "The following signatures were invalid:\n"
msgstr "다음 서명이 올바르지 않습니다:\n"
#: methods/gpgv.cc:250
-msgid "The following signatures couldn't be verified because the public key is not available:\n"
+msgid ""
+"The following signatures couldn't be verified because the public key is not "
+"available:\n"
msgstr "다음 서명들은 공개키가 없기 때문에 인증할 수 없습니다:\n"
#: methods/gzip.cc:57
@@ -1988,8 +1941,7 @@ msgstr "헤더 한 줄에 %u개가 넘는 문자가 들어 있습니다"
msgid "Bad header line"
msgstr "헤더 줄이 잘못되었습니다"
-#: methods/http.cc:549
-#: methods/http.cc:556
+#: methods/http.cc:549 methods/http.cc:556
msgid "The HTTP server sent an invalid reply header"
msgstr "HTTP 서버에서 잘못된 응답 헤더를 보냈습니다"
@@ -2103,8 +2055,7 @@ msgstr "문법 오류 %s:%u: 지시어는 맨 위 단계에서만 쓸 수 있습
msgid "Syntax error %s:%u: Too many nested includes"
msgstr "문법 오류 %s:%u: include가 너무 많이 겹쳐 있습니다"
-#: apt-pkg/contrib/configuration.cc:695
-#: apt-pkg/contrib/configuration.cc:700
+#: apt-pkg/contrib/configuration.cc:695 apt-pkg/contrib/configuration.cc:700
#, c-format
msgid "Syntax error %s:%u: Included from here"
msgstr "문법 오류 %s:%u: 여기서 include됩니다"
@@ -2134,8 +2085,7 @@ msgstr "%c%s... 완료"
msgid "Command line option '%c' [from %s] is not known."
msgstr "명령행 옵션 '%c' 옵션을 [%s에서] 알 수 없습니다."
-#: apt-pkg/contrib/cmndline.cc:106
-#: apt-pkg/contrib/cmndline.cc:114
+#: apt-pkg/contrib/cmndline.cc:106 apt-pkg/contrib/cmndline.cc:114
#: apt-pkg/contrib/cmndline.cc:122
#, c-format
msgid "Command line option %s is not understood"
@@ -2146,14 +2096,12 @@ msgstr "명령행 옵션 '%s' 옵션을 알 수 없습니다"
msgid "Command line option %s is not boolean"
msgstr "명령행 옵션 '%s' 옵션은 불리언이 아닙니다"
-#: apt-pkg/contrib/cmndline.cc:166
-#: apt-pkg/contrib/cmndline.cc:187
+#: apt-pkg/contrib/cmndline.cc:166 apt-pkg/contrib/cmndline.cc:187
#, c-format
msgid "Option %s requires an argument."
msgstr "%s 옵션에는 인수가 필요합니다."
-#: apt-pkg/contrib/cmndline.cc:201
-#: apt-pkg/contrib/cmndline.cc:207
+#: apt-pkg/contrib/cmndline.cc:201 apt-pkg/contrib/cmndline.cc:207
#, c-format
msgid "Option %s: Configuration item specification must have an =<val>."
msgstr "%s 옵션: 설정 항목 지정은 =<값> 형태여야 합니다."
@@ -2183,9 +2131,7 @@ msgstr "잘못된 작업 %s"
msgid "Unable to stat the mount point %s"
msgstr "마운트 위치 %s의 정보를 읽을 수 없습니다"
-#: apt-pkg/contrib/cdromutl.cc:149
-#: apt-pkg/acquire.cc:427
-#: apt-pkg/clean.cc:44
+#: apt-pkg/contrib/cdromutl.cc:149 apt-pkg/acquire.cc:427 apt-pkg/clean.cc:44
#, c-format
msgid "Unable to change to %s"
msgstr "%s 디렉토리로 이동할 수 없습니다"
@@ -2330,8 +2276,7 @@ msgstr "옵션"
msgid "extra"
msgstr "별도"
-#: apt-pkg/depcache.cc:61
-#: apt-pkg/depcache.cc:90
+#: apt-pkg/depcache.cc:61 apt-pkg/depcache.cc:90
msgid "Building dependency tree"
msgstr "의존성 트리를 만드는 중입니다"
@@ -2383,8 +2328,7 @@ msgstr "소스 리스트 %2$s의 %1$lu번 줄이 잘못되었습니다 (dist 파
msgid "Opening %s"
msgstr "%s 파일을 여는 중입니다"
-#: apt-pkg/sourcelist.cc:220
-#: apt-pkg/cdrom.cc:426
+#: apt-pkg/sourcelist.cc:220 apt-pkg/cdrom.cc:426
#, c-format
msgid "Line %u too long in source list %s."
msgstr "소스 리스트 %2$s의 %1$u번 줄이 너무 깁니다."
@@ -2399,16 +2343,21 @@ msgstr "소스 리스트 %2$s의 %1$u번 줄이 잘못되었습니다 (타입)"
msgid "Type '%s' is not known on line %u in source list %s"
msgstr "소스 목록 %3$s의 %2$u번 줄의 '%1$s' 타입을 알 수 없습니다"
-#: apt-pkg/sourcelist.cc:252
-#: apt-pkg/sourcelist.cc:255
+#: apt-pkg/sourcelist.cc:252 apt-pkg/sourcelist.cc:255
#, c-format
msgid "Malformed line %u in source list %s (vendor id)"
msgstr "소스 리스트 %2$s의 %1$u번 줄이 잘못되었습니다 (벤더 ID)"
#: apt-pkg/packagemanager.cc:402
#, c-format
-msgid "This installation run will require temporarily removing the essential package %s due to a Conflicts/Pre-Depends loop. This is often bad, but if you really want to do it, activate the APT::Force-LoopBreak option."
-msgstr "이번에 설치할 때 충돌/선의존성이 루프가 걸렸기 때문에 꼭 필요한 %s 꾸러미를 잠깐 지워야 합니다. 이 꾸러미를 지우는 건 좋지 않지만, 정말 지우려면 APT::Force-LoopBreak 옵션을 켜십시오."
+msgid ""
+"This installation run will require temporarily removing the essential "
+"package %s due to a Conflicts/Pre-Depends loop. This is often bad, but if "
+"you really want to do it, activate the APT::Force-LoopBreak option."
+msgstr ""
+"이번에 설치할 때 충돌/선의존성이 루프가 걸렸기 때문에 꼭 필요한 %s 꾸러미를 "
+"잠깐 지워야 합니다. 이 꾸러미를 지우는 건 좋지 않지만, 정말 지우려면 APT::"
+"Force-LoopBreak 옵션을 켜십시오."
#: apt-pkg/pkgrecords.cc:37
#, c-format
@@ -2417,12 +2366,18 @@ msgstr "인덱스 파일 타입 '%s' 타입은 지원하지 않습니다"
#: apt-pkg/algorithms.cc:241
#, c-format
-msgid "The package %s needs to be reinstalled, but I can't find an archive for it."
-msgstr "%s 꾸러미를 다시 설치해야 하지만, 이 꾸러미의 아카이브를 찾을 수 없습니다."
+msgid ""
+"The package %s needs to be reinstalled, but I can't find an archive for it."
+msgstr ""
+"%s 꾸러미를 다시 설치해야 하지만, 이 꾸러미의 아카이브를 찾을 수 없습니다."
#: apt-pkg/algorithms.cc:1059
-msgid "Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages."
-msgstr "오류, pkgProblemResolver::Resolve가 망가졌습니다, 고정 꾸러미때문에 발생할 수도 있습니다."
+msgid ""
+"Error, pkgProblemResolver::Resolve generated breaks, this may be caused by "
+"held packages."
+msgstr ""
+"오류, pkgProblemResolver::Resolve가 망가졌습니다, 고정 꾸러미때문에 발생할 수"
+"도 있습니다."
#: apt-pkg/algorithms.cc:1061
msgid "Unable to correct problems, you have held broken packages."
@@ -2463,7 +2418,8 @@ msgstr "설치 방법 %s이(가) 올바르게 시작하지 않았습니다"
#: apt-pkg/acquire-worker.cc:377
#, c-format
msgid "Please insert the disc labeled: '%s' in the drive '%s' and press enter."
-msgstr "'%2$s' 드라이브에 '%1$s'로 표기된 디스크를 삽입하고 엔터를 눌러주십시오."
+msgstr ""
+"'%2$s' 드라이브에 '%1$s'로 표기된 디스크를 삽입하고 엔터를 눌러주십시오."
#: apt-pkg/init.cc:120
#, c-format
@@ -2579,8 +2535,7 @@ msgstr "소스 꾸러미 목록 %s의 정보를 읽을 수 없습니다"
msgid "Collecting File Provides"
msgstr "파일에서 제공하는 것을 모으는 중입니다"
-#: apt-pkg/pkgcachegen.cc:785
-#: apt-pkg/pkgcachegen.cc:792
+#: apt-pkg/pkgcachegen.cc:785 apt-pkg/pkgcachegen.cc:792
msgid "IO Error saving source cache"
msgstr "소스 캐시를 저장하는 데 입출력 오류가 발생했습니다"
@@ -2589,8 +2544,7 @@ msgstr "소스 캐시를 저장하는 데 입출력 오류가 발생했습니다
msgid "rename failed, %s (%s -> %s)."
msgstr "이름 바꾸기가 실패했습니다. %s (%s -> %s)."
-#: apt-pkg/acquire-item.cc:236
-#: apt-pkg/acquire-item.cc:945
+#: apt-pkg/acquire-item.cc:236 apt-pkg/acquire-item.cc:945
msgid "MD5Sum mismatch"
msgstr "MD5Sum이 맞지 않습니다"
@@ -2600,18 +2554,28 @@ msgstr "다음 키 ID의 공개키가 없습니다:\n"
#: apt-pkg/acquire-item.cc:753
#, c-format
-msgid "I wasn't able to locate a file for the %s package. This might mean you need to manually fix this package. (due to missing arch)"
-msgstr "%s 꾸러미의 파일을 찾을 수 없습니다. 수동으로 이 꾸러미를 고쳐야 할 수도 있습니다. (아키텍쳐가 빠졌기 때문입니다)"
+msgid ""
+"I wasn't able to locate a file for the %s package. This might mean you need "
+"to manually fix this package. (due to missing arch)"
+msgstr ""
+"%s 꾸러미의 파일을 찾을 수 없습니다. 수동으로 이 꾸러미를 고쳐야 할 수도 있습"
+"니다. (아키텍쳐가 빠졌기 때문입니다)"
#: apt-pkg/acquire-item.cc:812
#, c-format
-msgid "I wasn't able to locate file for the %s package. This might mean you need to manually fix this package."
-msgstr "%s 꾸러미의 파일을 찾을 수 없습니다. 수동으로 이 꾸러미를 고쳐야 할 수도 있습니다."
+msgid ""
+"I wasn't able to locate file for the %s package. This might mean you need to "
+"manually fix this package."
+msgstr ""
+"%s 꾸러미의 파일을 찾을 수 없습니다. 수동으로 이 꾸러미를 고쳐야 할 수도 있습"
+"니다."
#: apt-pkg/acquire-item.cc:848
#, c-format
-msgid "The package index files are corrupted. No Filename: field for package %s."
-msgstr "꾸러미 인덱스 파일이 손상되었습니다. %s 꾸러미에 Filename: 필드가 없습니다."
+msgid ""
+"The package index files are corrupted. No Filename: field for package %s."
+msgstr ""
+"꾸러미 인덱스 파일이 손상되었습니다. %s 꾸러미에 Filename: 필드가 없습니다."
#: apt-pkg/acquire-item.cc:935
msgid "Size mismatch"
@@ -2631,8 +2595,7 @@ msgstr ""
"CD-ROM 마운트 위치로 %s 사용\n"
"CD-ROM을 마운트하는 중입니다\n"
-#: apt-pkg/cdrom.cc:516
-#: apt-pkg/cdrom.cc:598
+#: apt-pkg/cdrom.cc:516 apt-pkg/cdrom.cc:598
msgid "Identifying.. "
msgstr "알아보는 중입니다.. "
@@ -2777,4 +2740,3 @@ msgstr "연결이 너무 빨리 끊어졌습니다"
#, fuzzy
#~ msgid "Could not execute "
#~ msgstr "%s 잠금 파일을 얻을 수 없습니다"
-
diff --git a/po/nb.po b/po/nb.po
index 01c09f9cf..58b3c024c 100644
--- a/po/nb.po
+++ b/po/nb.po
@@ -19,7 +19,7 @@ msgid ""
msgstr ""
"Project-Id-Version: apt\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-05-16 07:33-0500\n"
+"POT-Creation-Date: 2006-05-27 13:46+0200\n"
"PO-Revision-Date: 2005-02-09 10:45+0100\n"
"Last-Translator: Hans Fredrik Nordhaug <hans@nordhaug.priv.no>\n"
"Language-Team: Norwegian Bokml <i18n-nb@lister.ping.ui.no>\n"
@@ -2304,15 +2304,15 @@ msgstr "valgfri"
msgid "extra"
msgstr "tillegg"
-#: apt-pkg/depcache.cc:60 apt-pkg/depcache.cc:89
+#: apt-pkg/depcache.cc:61 apt-pkg/depcache.cc:90
msgid "Building dependency tree"
msgstr "Skaper oversikt over avhengighetsforhold"
-#: apt-pkg/depcache.cc:61
+#: apt-pkg/depcache.cc:62
msgid "Candidate versions"
msgstr "Versjons-kandidater"
-#: apt-pkg/depcache.cc:90
+#: apt-pkg/depcache.cc:91
msgid "Dependency generation"
msgstr "Oppretter avhengighetsforhold"
diff --git a/po/nl.po b/po/nl.po
index ef3c6acbf..5d2632efa 100644
--- a/po/nl.po
+++ b/po/nl.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: apt\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-05-16 07:33-0500\n"
+"POT-Creation-Date: 2006-05-27 13:46+0200\n"
"PO-Revision-Date: 2005-02-10 17:35+0100\n"
"Last-Translator: Bart Cornelis <cobaco@linux.be>\n"
"Language-Team: debian-l10n-dutch <debian-l10n-dutch@lists.debian.org>\n"
@@ -2322,15 +2322,15 @@ msgstr "optioneel"
msgid "extra"
msgstr "extra"
-#: apt-pkg/depcache.cc:60 apt-pkg/depcache.cc:89
+#: apt-pkg/depcache.cc:61 apt-pkg/depcache.cc:90
msgid "Building dependency tree"
msgstr "Boom van vereisten wordt opgebouwd"
-#: apt-pkg/depcache.cc:61
+#: apt-pkg/depcache.cc:62
msgid "Candidate versions"
msgstr "Kandidaat-versies"
-#: apt-pkg/depcache.cc:90
+#: apt-pkg/depcache.cc:91
msgid "Dependency generation"
msgstr "Generatie vereisten"
diff --git a/po/nn.po b/po/nn.po
index 372f6be39..56aa980ee 100644
--- a/po/nn.po
+++ b/po/nn.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: apt_nn\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-05-16 07:33-0500\n"
+"POT-Creation-Date: 2006-05-27 13:46+0200\n"
"PO-Revision-Date: 2005-02-14 23:30+0100\n"
"Last-Translator: Hvard Korsvoll <korsvoll@skulelinux.no>\n"
"Language-Team: Norwegian nynorsk <i18n-nn@lister.ping.uio.no>\n"
@@ -2287,15 +2287,15 @@ msgstr "valfri"
msgid "extra"
msgstr "tillegg"
-#: apt-pkg/depcache.cc:60 apt-pkg/depcache.cc:89
+#: apt-pkg/depcache.cc:61 apt-pkg/depcache.cc:90
msgid "Building dependency tree"
msgstr "Byggjer kravtre"
-#: apt-pkg/depcache.cc:61
+#: apt-pkg/depcache.cc:62
msgid "Candidate versions"
msgstr "Kandidatversjonar"
-#: apt-pkg/depcache.cc:90
+#: apt-pkg/depcache.cc:91
msgid "Dependency generation"
msgstr "Genererer kravforhold"
diff --git a/po/pl.po b/po/pl.po
index 5fa6838f5..8be562ac6 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: apt 0.5.5\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-05-16 07:33-0500\n"
+"POT-Creation-Date: 2006-05-27 13:46+0200\n"
"PO-Revision-Date: 2006-01-23 15:32+0100\n"
"Last-Translator: Bartosz Fenski <fenio@debian.org>\n"
"Language-Team: Polish <pddp@debian.linux.org.pl>\n"
@@ -2292,15 +2292,15 @@ msgstr "opcjonalny"
msgid "extra"
msgstr "dodatkowy"
-#: apt-pkg/depcache.cc:60 apt-pkg/depcache.cc:89
+#: apt-pkg/depcache.cc:61 apt-pkg/depcache.cc:90
msgid "Building dependency tree"
msgstr "Budowanie drzewa zalenoci"
-#: apt-pkg/depcache.cc:61
+#: apt-pkg/depcache.cc:62
msgid "Candidate versions"
msgstr "Kandydujce wersje"
-#: apt-pkg/depcache.cc:90
+#: apt-pkg/depcache.cc:91
msgid "Dependency generation"
msgstr "Generowanie zalenoci"
diff --git a/po/pt.po b/po/pt.po
index d638e9b01..f7b1cb806 100644
--- a/po/pt.po
+++ b/po/pt.po
@@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: apt\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-05-16 07:33-0500\n"
+"POT-Creation-Date: 2006-05-27 13:46+0200\n"
"PO-Revision-Date: 2005-03-07 22:20+0000\n"
"Last-Translator: Rui Az. <astronomy@mail.pt>\n"
"Language-Team: Portuguese <traduz@debianpt.org>\n"
@@ -2293,15 +2293,15 @@ msgstr "opcional"
msgid "extra"
msgstr "extra"
-#: apt-pkg/depcache.cc:60 apt-pkg/depcache.cc:89
+#: apt-pkg/depcache.cc:61 apt-pkg/depcache.cc:90
msgid "Building dependency tree"
msgstr "Construindo Árvore de Dependências"
-#: apt-pkg/depcache.cc:61
+#: apt-pkg/depcache.cc:62
msgid "Candidate versions"
msgstr "Versões Candidatas"
-#: apt-pkg/depcache.cc:90
+#: apt-pkg/depcache.cc:91
msgid "Dependency generation"
msgstr "Geração de Dependência"
diff --git a/po/pt_BR.po b/po/pt_BR.po
index 3a51c828b..6a53d25e2 100644
--- a/po/pt_BR.po
+++ b/po/pt_BR.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: apt\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-05-16 07:33-0500\n"
+"POT-Creation-Date: 2006-05-27 13:46+0200\n"
"PO-Revision-Date: 2006-02-11 17:57-0200\n"
"Last-Translator: Andr Lus Lopes <andrelop@debian.org>\n"
"Language-Team: Debian-BR Project <debian-l10n-portuguese@lists.debian.org>\n"
@@ -2294,15 +2294,15 @@ msgstr "opcional"
msgid "extra"
msgstr "extra"
-#: apt-pkg/depcache.cc:60 apt-pkg/depcache.cc:89
+#: apt-pkg/depcache.cc:61 apt-pkg/depcache.cc:90
msgid "Building dependency tree"
msgstr "Construindo rvore de Dependncias"
-#: apt-pkg/depcache.cc:61
+#: apt-pkg/depcache.cc:62
msgid "Candidate versions"
msgstr "Verses Candidatas"
-#: apt-pkg/depcache.cc:90
+#: apt-pkg/depcache.cc:91
msgid "Dependency generation"
msgstr "Gerao de Dependncia"
diff --git a/po/ro.po b/po/ro.po
index 400df82e5..0222214ae 100644
--- a/po/ro.po
+++ b/po/ro.po
@@ -230,7 +230,8 @@ msgstr ""
#: cmdline/apt-cdrom.cc:78
msgid "Please provide a name for this Disc, such as 'Debian 2.1r1 Disk 1'"
-msgstr "Vă rog furnizaţi un nume pentru acest disc, cum ar fi 'Debian 2.1r1 Disk 1'"
+msgstr ""
+"Vă rog furnizaţi un nume pentru acest disc, cum ar fi 'Debian 2.1r1 Disk 1'"
#: cmdline/apt-cdrom.cc:93
msgid "Please insert a Disc in the drive and press enter"
@@ -812,7 +813,8 @@ msgstr "Lista surselor nu poate fi citită."
#: cmdline/apt-get.cc:816
msgid "How odd.. The sizes didn't match, email apt@packages.debian.org"
-msgstr "Ce ciudat.. Dimensiunile nu se potrivesc, scrieţi la apt@packages.debian.org"
+msgstr ""
+"Ce ciudat.. Dimensiunile nu se potrivesc, scrieţi la apt@packages.debian.org"
#: cmdline/apt-get.cc:821
#, c-format
@@ -846,7 +848,8 @@ msgstr "Nu aveţi suficient spaţiu în %s."
#: cmdline/apt-get.cc:864 cmdline/apt-get.cc:884
msgid "Trivial Only specified but this is not a trivial operation."
-msgstr "A fost specificat 'doar neimportant' dar nu este o operaţiune neimportantă."
+msgstr ""
+"A fost specificat 'doar neimportant' dar nu este o operaţiune neimportantă."
#: cmdline/apt-get.cc:866
msgid "Yes, do as I say!"
@@ -1076,7 +1079,8 @@ msgstr "Terminat"
#: cmdline/apt-get.cc:1768 cmdline/apt-get.cc:1776
msgid "Internal error, problem resolver broke stuff"
-msgstr "Eroare internă, rezolvatorul de probleme a deteriorat diverse chestiuni"
+msgstr ""
+"Eroare internă, rezolvatorul de probleme a deteriorat diverse chestiuni"
#: cmdline/apt-get.cc:1876
msgid "Must specify at least one package to fetch source for"
@@ -1362,14 +1366,17 @@ msgstr "S-au produs unele erori în timpul despachetării. Voi configura"
#: dselect/install:101
msgid "packages that were installed. This may result in duplicate errors"
-msgstr "pachetele care au fost instalate. Aceasta ar putea rezulta erori dublate"
+msgstr ""
+"pachetele care au fost instalate. Aceasta ar putea rezulta erori dublate"
#: dselect/install:102
msgid "or errors caused by missing dependencies. This is OK, only the errors"
-msgstr "sau erori cauzate de dependenţe lipsă. Aceasta este normal, doar erorile"
+msgstr ""
+"sau erori cauzate de dependenţe lipsă. Aceasta este normal, doar erorile"
#: dselect/install:103
-msgid "above this message are important. Please fix them and run [I]nstall again"
+msgid ""
+"above this message are important. Please fix them and run [I]nstall again"
msgstr ""
"de deasupra acestui mesaj sunt importante. Vă rog corectaţi-le şi porniţi "
"din nou [I]nstalarea"
@@ -1903,7 +1910,8 @@ msgid "E: Argument list from Acquire::gpgv::Options too long. Exiting."
msgstr "E: Listă de argumente din Acquire::gpgv::Options prea lungă. Ies."
#: methods/gpgv.cc:198
-msgid "Internal error: Good signature, but could not determine key fingerprint?!"
+msgid ""
+"Internal error: Good signature, but could not determine key fingerprint?!"
msgstr ""
"Eroare internă: Semnătură corespunzătoare, dar n-am putut determina cheia "
"amprentei digitale?!"
@@ -1915,7 +1923,8 @@ msgstr "Cel puţin o semnătură invalidă a fost întâlnită."
#: methods/gpgv.cc:207
#, c-format
msgid "Could not execute '%s' to verify signature (is gnupg installed?)"
-msgstr "Nu pot executa '%s' pentru verificarea semnăturii (este instalat gnupg?)"
+msgstr ""
+"Nu pot executa '%s' pentru verificarea semnăturii (este instalat gnupg?)"
#: methods/gpgv.cc:212
msgid "Unknown error executing gpgv"
@@ -1998,7 +2007,8 @@ msgstr "Eroare la scrierea în fişierul"
#: methods/http.cc:874
msgid "Error reading from server. Remote end closed connection"
-msgstr "Eroare la citirea de pe server, conexiunea a fost închisă de la distanţă"
+msgstr ""
+"Eroare la citirea de pe server, conexiunea a fost închisă de la distanţă"
#: methods/http.cc:876
msgid "Error reading from server"
@@ -2063,7 +2073,8 @@ msgstr "Eroare de sintaxă %s:%u: mizerii suplimentare după valoare"
#: apt-pkg/contrib/configuration.cc:684
#, c-format
msgid "Syntax error %s:%u: Directives can only be done at the top level"
-msgstr "Eroare de sintaxă %s:%u: directivele pot fi date doar la nivelul superior"
+msgstr ""
+"Eroare de sintaxă %s:%u: directivele pot fi date doar la nivelul superior"
#: apt-pkg/contrib/configuration.cc:691
#, c-format
@@ -2119,7 +2130,8 @@ msgstr "Opţiunea %s necesită un argument"
#: apt-pkg/contrib/cmndline.cc:201 apt-pkg/contrib/cmndline.cc:207
#, c-format
msgid "Option %s: Configuration item specification must have an =<val>."
-msgstr "Opţiunea %s: Specificaţia configurării articolului trebuie să aibă o =<val>."
+msgstr ""
+"Opţiunea %s: Specificaţia configurării articolului trebuie să aibă o =<val>."
#: apt-pkg/contrib/cmndline.cc:237
#, c-format
@@ -2382,8 +2394,10 @@ msgstr "Tipul de fişier index '%s' nu este suportat"
#: apt-pkg/algorithms.cc:241
#, c-format
-msgid "The package %s needs to be reinstalled, but I can't find an archive for it."
-msgstr "Pachetul %s are nevoie să fie reinstalat, dar nu pot găsi o arhivă pentru el."
+msgid ""
+"The package %s needs to be reinstalled, but I can't find an archive for it."
+msgstr ""
+"Pachetul %s are nevoie să fie reinstalat, dar nu pot găsi o arhivă pentru el."
#: apt-pkg/algorithms.cc:1059
msgid ""
@@ -2432,7 +2446,8 @@ msgstr "Metoda %s nu s-a lansat corect"
#: apt-pkg/acquire-worker.cc:377
#, c-format
msgid "Please insert the disc labeled: '%s' in the drive '%s' and press enter."
-msgstr "Vă rog introduceţi discul numit: '%s' în unitatea '%s' şi apăsaţi Enter."
+msgstr ""
+"Vă rog introduceţi discul numit: '%s' în unitatea '%s' şi apăsaţi Enter."
#: apt-pkg/init.cc:120
#, c-format
@@ -2460,7 +2475,8 @@ msgstr ""
#: apt-pkg/cachefile.cc:77
msgid "You may want to run apt-get update to correct these problems"
-msgstr "Aţi putea vrea să porniţi 'apt-get update' pentru a corecta aceste probleme."
+msgstr ""
+"Aţi putea vrea să porniţi 'apt-get update' pentru a corecta aceste probleme."
#: apt-pkg/policy.cc:269
msgid "Invalid record in the preferences file, no Package header"
@@ -2522,11 +2538,13 @@ msgstr ""
#: apt-pkg/pkgcachegen.cc:210
msgid "Wow, you exceeded the number of versions this APT is capable of."
-msgstr "Mamăăă, aţi depăşit numărul de versiuni de care este capabil acest APT."
+msgstr ""
+"Mamăăă, aţi depăşit numărul de versiuni de care este capabil acest APT."
#: apt-pkg/pkgcachegen.cc:213
msgid "Wow, you exceeded the number of dependencies this APT is capable of."
-msgstr "Mamăăă, aţi depăşit numărul de dependenţe de care este capabil acest APT."
+msgstr ""
+"Mamăăă, aţi depăşit numărul de dependenţe de care este capabil acest APT."
#: apt-pkg/pkgcachegen.cc:241
#, c-format
@@ -2541,7 +2559,8 @@ msgstr "Eroare apărută în timpul procesării %s (CollectFileProvides)"
#: apt-pkg/pkgcachegen.cc:260
#, c-format
msgid "Package %s %s was not found while processing file dependencies"
-msgstr "Nu s-a găsit pachetul %s %s în timpul procesării dependenţelor de fişiere"
+msgstr ""
+"Nu s-a găsit pachetul %s %s în timpul procesării dependenţelor de fişiere"
#: apt-pkg/pkgcachegen.cc:574
#, c-format
@@ -2591,7 +2610,8 @@ msgstr ""
#: apt-pkg/acquire-item.cc:848
#, c-format
-msgid "The package index files are corrupted. No Filename: field for package %s."
+msgid ""
+"The package index files are corrupted. No Filename: field for package %s."
msgstr ""
"Fişierele index de pachete sunt deteriorate. Fără câmpul 'nume fişier:' la "
"pachetul %s."
@@ -2697,7 +2717,8 @@ msgstr "S-au scris %i înregistrări cu %i fişiere nepotrivite\n"
#: apt-pkg/indexcopy.cc:269
#, c-format
msgid "Wrote %i records with %i missing files and %i mismatched files\n"
-msgstr "S-au scris %i înregistrări cu %i fişiere lipsă şi %i fişiere nepotrivite\n"
+msgstr ""
+"S-au scris %i înregistrări cu %i fişiere lipsă şi %i fişiere nepotrivite\n"
#: apt-pkg/deb/dpkgpm.cc:358
#, c-format
@@ -2752,4 +2773,3 @@ msgstr "Şters complet %s"
#: methods/rsh.cc:330
msgid "Connection closed prematurely"
msgstr "Conexiune închisă prematur"
-
diff --git a/po/ru.po b/po/ru.po
index 3883ce239..727b7f79a 100644
--- a/po/ru.po
+++ b/po/ru.po
@@ -12,7 +12,7 @@ msgid ""
msgstr ""
"Project-Id-Version: apt_po_ru\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-05-16 07:33-0500\n"
+"POT-Creation-Date: 2006-05-27 13:46+0200\n"
"PO-Revision-Date: 2006-01-21 14:55+0300\n"
"Last-Translator: Yuri Kozlov <kozlov.y@gmail.com>\n"
"Language-Team: Russian <debian-l10n-russian@lists.debian.org>\n"
@@ -2326,15 +2326,15 @@ msgstr "необязательный"
msgid "extra"
msgstr "дополнительный"
-#: apt-pkg/depcache.cc:60 apt-pkg/depcache.cc:89
+#: apt-pkg/depcache.cc:61 apt-pkg/depcache.cc:90
msgid "Building dependency tree"
msgstr "Построение дерева зависимостей"
-#: apt-pkg/depcache.cc:61
+#: apt-pkg/depcache.cc:62
msgid "Candidate versions"
msgstr "Версии-кандидаты"
-#: apt-pkg/depcache.cc:90
+#: apt-pkg/depcache.cc:91
msgid "Dependency generation"
msgstr "Генерирование зависимостей"
diff --git a/po/sk.po b/po/sk.po
index e1286b4e5..d4fe815da 100644
--- a/po/sk.po
+++ b/po/sk.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: apt\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-05-16 07:33-0500\n"
+"POT-Creation-Date: 2006-05-27 13:46+0200\n"
"PO-Revision-Date: 2006-05-29 15:33+0200\n"
"Last-Translator: Peter Mann <Peter.Mann@tuke.sk>\n"
"Language-Team: Slovak <sk-i18n@lists.linux.sk>\n"
@@ -2275,15 +2275,15 @@ msgstr "voliteľný"
msgid "extra"
msgstr "extra"
-#: apt-pkg/depcache.cc:60 apt-pkg/depcache.cc:89
+#: apt-pkg/depcache.cc:61 apt-pkg/depcache.cc:90
msgid "Building dependency tree"
msgstr "Vytvára sa strom závislostí"
-#: apt-pkg/depcache.cc:61
+#: apt-pkg/depcache.cc:62
msgid "Candidate versions"
msgstr "Kandidátske verzie"
-#: apt-pkg/depcache.cc:90
+#: apt-pkg/depcache.cc:91
msgid "Dependency generation"
msgstr "Generovanie závislostí"
@@ -2732,4 +2732,3 @@ msgstr "Balík '%s' je úplne odstránený"
#: methods/rsh.cc:330
msgid "Connection closed prematurely"
msgstr "Spojenie bolo predčasne ukončené"
-
diff --git a/po/sl.po b/po/sl.po
index a8a458aff..06ac46e05 100644
--- a/po/sl.po
+++ b/po/sl.po
@@ -4,7 +4,7 @@ msgid ""
msgstr ""
"Project-Id-Version: apt 0.5.5\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-05-16 07:33-0500\n"
+"POT-Creation-Date: 2006-05-27 13:46+0200\n"
"PO-Revision-Date: 2005-02-16 22:18+0100\n"
"Last-Translator: Jure uhalev <gandalf@owca.info>\n"
"Language-Team: Slovenian <sl@li.org>\n"
@@ -2278,15 +2278,15 @@ msgstr "izbirno"
msgid "extra"
msgstr "dodatno"
-#: apt-pkg/depcache.cc:60 apt-pkg/depcache.cc:89
+#: apt-pkg/depcache.cc:61 apt-pkg/depcache.cc:90
msgid "Building dependency tree"
msgstr "Gradnja drevesa odvisnosti"
-#: apt-pkg/depcache.cc:61
+#: apt-pkg/depcache.cc:62
msgid "Candidate versions"
msgstr "Razliice kandidatov"
-#: apt-pkg/depcache.cc:90
+#: apt-pkg/depcache.cc:91
msgid "Dependency generation"
msgstr "Ustvarjanje odvisnosti"
diff --git a/po/tl.po b/po/tl.po
index d48db8bc5..669177a90 100644
--- a/po/tl.po
+++ b/po/tl.po
@@ -10,7 +10,7 @@ msgid ""
msgstr ""
"Project-Id-Version: apt\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-05-16 07:33-0500\n"
+"POT-Creation-Date: 2006-05-27 13:46+0200\n"
"PO-Revision-Date: 2006-03-16 15:53+0800\n"
"Last-Translator: Eric Pareja <xenos@upm.edu.ph>\n"
"Language-Team: Tagalog <debian-tl@banwa.upm.edu.ph>\n"
@@ -2307,15 +2307,15 @@ msgstr "optional"
msgid "extra"
msgstr "extra"
-#: apt-pkg/depcache.cc:60 apt-pkg/depcache.cc:89
+#: apt-pkg/depcache.cc:61 apt-pkg/depcache.cc:90
msgid "Building dependency tree"
msgstr "Ginagawa ang puno ng mga dependensiya"
-#: apt-pkg/depcache.cc:61
+#: apt-pkg/depcache.cc:62
msgid "Candidate versions"
msgstr "Bersyong Kandidato"
-#: apt-pkg/depcache.cc:90
+#: apt-pkg/depcache.cc:91
msgid "Dependency generation"
msgstr "Pagbuo ng Dependensiya"
diff --git a/po/zh_CN.po b/po/zh_CN.po
index f887f3328..789101a74 100644
--- a/po/zh_CN.po
+++ b/po/zh_CN.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: apt 0.5.23\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-05-16 07:33-0500\n"
+"POT-Creation-Date: 2006-05-27 13:46+0200\n"
"PO-Revision-Date: 2006-02-22 14:20+1300\n"
"Last-Translator: Carlos Z.F. Liu <carlosliu@users.sourceforge.net>\n"
"Language-Team: Debian Chinese [GB] <debian-chinese-gb@lists.debian.org>\n"
@@ -2258,15 +2258,15 @@ msgstr "可选"
msgid "extra"
msgstr "额外"
-#: apt-pkg/depcache.cc:60 apt-pkg/depcache.cc:89
+#: apt-pkg/depcache.cc:61 apt-pkg/depcache.cc:90
msgid "Building dependency tree"
msgstr "正在分析软件包的依赖关系树"
-#: apt-pkg/depcache.cc:61
+#: apt-pkg/depcache.cc:62
msgid "Candidate versions"
msgstr "候选版本"
-#: apt-pkg/depcache.cc:90
+#: apt-pkg/depcache.cc:91
msgid "Dependency generation"
msgstr "生成依赖关系"
diff --git a/po/zh_TW.po b/po/zh_TW.po
index 062ce5656..15d5f3cdd 100644
--- a/po/zh_TW.po
+++ b/po/zh_TW.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: 0.5.4\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-05-16 07:33-0500\n"
+"POT-Creation-Date: 2006-05-27 13:46+0200\n"
"PO-Revision-Date: 2005-02-19 22:24+0800\n"
"Last-Translator: Asho Yeh <asho@debian.org.tw>\n"
"Language-Team: Chinese/Traditional <zh-l10n@linux.org.tw>\n"
@@ -2270,15 +2270,15 @@ msgstr "次要"
msgid "extra"
msgstr "添加"
-#: apt-pkg/depcache.cc:60 apt-pkg/depcache.cc:89
+#: apt-pkg/depcache.cc:61 apt-pkg/depcache.cc:90
msgid "Building dependency tree"
msgstr "了解套件依存關係中"
-#: apt-pkg/depcache.cc:61
+#: apt-pkg/depcache.cc:62
msgid "Candidate versions"
msgstr "候選版本"
-#: apt-pkg/depcache.cc:90
+#: apt-pkg/depcache.cc:91
msgid "Dependency generation"
msgstr "產生套件依存關係"
diff --git a/test/hash.cc b/test/hash.cc
index 5334c0331..cfdb4ea9d 100644
--- a/test/hash.cc
+++ b/test/hash.cc
@@ -1,5 +1,6 @@
#include <apt-pkg/md5.h>
#include <apt-pkg/sha1.h>
+#include <apt-pkg/sha256.h>
#include <apt-pkg/strutl.h>
#include <iostream>
@@ -57,6 +58,12 @@ int main()
"d174ab98d277d9f5a5611c2c9f419d9f");
Test<MD5Summation>("12345678901234567890123456789012345678901234567890123456789012345678901234567890",
"57edf4a22be3c955ac49da2e2107b67a");
+
+ // SHA-256, From FIPS 180-2
+ Test<SHA256Summation>("abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq",
+ "248d6a61d20638b8e5c026930c3e6039a33ce45964ff2167f6ecedd419db06c1");
+
+
return 0;
}