$key =~ tr [A-Z] [a-z];
$data{$key} = $value;
}
+ # Skip broken debs
+ next unless $data{architecture};
# Skip double package
next if exists($packages_all_db{"$data{'package'} $data{'architecture'} $data{'version'}"});
# Skip arch:all for amd64 & debports, any non-redundancy is
foreach (@complete_tags) {
my ($facet, $tag) = split( /::/, $_, 2);
if ($tag =~ s/^\{(.+)\}$/$1/) {
+ warn "pkg=$data{package} tags=$data{tag}\n" unless $facet && $tag;
foreach (split( /,/, $tag )) {
push @tags, "${facet}::$_";
}
} else {
+ warn "pkg=$data{package} tags=$data{tag}\n" unless $facet && $tag;
push @tags, "${facet}::$tag";
}
}
# Nice caching..
ExpiresActive On
- ExpiresDefault "access plus 1 day"
- ExpiresByType image/gif "modification plus 1 year"
- ExpiresByType image/jpeg "modification plus 1 year"
- ExpiresByType image/png "modification plus 1 year"
+ ExpiresDefault "access plus 1 year"
# language stuff
# you need to keep this in sync with lib/Packages/I18N/Locale.pm
ErrorLog /var/log/apache2/%SITE%-error.log
CustomLog /var/log/apache2/%SITE%-access.log combined
- Alias /cgi-bin/ %TOPDIR%/cgi-bin/
+ ScriptAlias /cgi-bin/ %TOPDIR%/cgi-bin/
PerlModule ModPerl::Registry
PerlTaintCheck On
- PerlRequire %TOPDIR%/bin/mod_perl-startup
+# PerlRequire %TOPDIR%/bin/mod_perl-startup
PerlSwitches -T
<Location /cgi-bin/>
- SetHandler perl-script
- PerlInitHandler Apache2::Reload
- PerlHandler ModPerl::Registry
+# SetHandler perl-script
+# PerlInitHandler Apache2::Reload
+# PerlHandler ModPerl::Registry
Options +ExecCGI
- PerlSendHeader On
+# PerlSendHeader On
allow from all
</Location>
RewriteRule ^/changelog:(.+)$ /changelogs/${changelog-url:$1} [R,L,NE]
RewriteRule ^/src:([^/]+)$ /search?searchon=sourcenames&keywords=$1 [R,L,NE]
RewriteRule ^/file:(.+)$ /search?searchon=contents&keywords=$1 [R,L,NE]
- RewriteCond %{REQUEST_URI} !^/search$ [OR]
- RewriteCond %{QUERY_STRING} ^$
+ RewriteCond %{QUERY_STRING} ^$ [OR]
+ RewriteCond %{REQUEST_URI} !^/search$
+ RewriteCond %{REQUEST_URI} !^/cgi-bin/search_(contents|packages)\.pl$
RewriteRule ^/([^/]+)$ /search?keywords=$1 [R,L,NE]
RewriteCond %{QUERY_STRING} =""
# unset this if %SITE% moves somewhere where the packages files
# cannot be obtained locally
#
-#localdir=/org/ftp.debian.org/debian
+localdir=/srv/archive.debian.org/ftp
# path to private ftp directory
#ftproot=/org/ftp.root
-ftpsite=http://ftp.de.debian.org/debian
-security_ftpsite=http://security.debian.org/debian-security
-volatile_ftpsite=http://volatile.debian.org/debian-volatile
-backports_ftpsite=http://backports.org/debian
-debports_ftpsite=http://ftp.debian-ports.org/debian
-ddtp_ftpsite=
+ftpsite=http://archive.debian.org/debian
+security_ftpsite=http://archive.debian.org/debian-security
+volatile_ftpsite=http://archive.debian.org/debian-volatile
+backports_ftpsite=http://archive.debian.org/backports.org
+ddtp_ftpsite=http://ftp.de.debian.org/debian
wget_cmd="wget --no-verbose --tries=2 --timeout=60"
check_release_cmd="perl -I${libdir} ${bindir}/check-release --verbose --ignoremissing --keyring ${configdir}/trusted.gpg"
# Architectures
#
- polangs="de fi fr hu ja nl ru sv uk zh-cn"
+ polangs="de fi fr hu ja nl ru sk sv uk zh-cn"
ddtplangs="ca cs da de eo es eu fi fr hu it ja km ko nl pl pt pt-br ru sk sv uk zh zh-cn zh-tw"
-archives="us security debports backports volatile"
+archives="us security backports volatile"
sections="main contrib non-free"
parts="$sections"
-suites="etch etch-m68k etch-volatile etch-backports lenny lenny-volatile lenny-backports squeeze sid experimental"
+suites="bo hamm slink potato woody sarge sarge-volatile sarge-backports"
priorities="required important standard optional extra"
dists="$suites"
-architectures="alpha amd64 arm armel avr32 hppa hurd-i386 i386 ia64 kfreebsd-i386 kfreebsd-amd64 m68k mips mipsel powerpc s390 sparc"
-arch_etch="alpha amd64 arm hppa i386 ia64 mips mipsel powerpc s390 sparc"
-arch_lenny="${arch_etch} armel"
-arch_squeeze="alpha amd64 armel hppa i386 ia64 mips mipsel powerpc s390 sparc"
-arch_sid="${arch_squeeze} avr32 hurd-i386 kfreebsd-i386 kfreebsd-amd64 m68k"
-arch_experimental="${arch_sid}"
-arch_lenny_proposed_updates="${arch_lenny}"
-arch_etch_proposed_updates="${arch_etch}"
+architectures="alpha arm hppa i386 ia64 m68k mips mipsel powerpc s390 sparc"
+arch_bo="i386"
+arch_hamm="i386 m68k"
+arch_slink="alpha i386 m68k sparc"
+arch_potato="alpha arm i386 ia64 m68k powerpc sparc"
+arch_woody="alpha arm hppa i386 ia64 m68k mips mipsel powerpc s390 sparc"
+arch_sarge="${arch_woody}"
# Miscellaneous
#
foo=\$arch_${dist//-/_}
for arch in `eval echo $foo`
do
- test ! "$arch" = "kfreebsd-i386" || continue
- test ! "$arch" = "kfreebsd-amd64" || continue
for part in ${parts}
do
echo retrieve Packages $dist/$part/$arch
$wget_cmd -N ${ftpsite}/dists/${dist}/${part}/binary-${arch}/Packages.gz)
done
#FIXME: no Contents files for p-u
- test ! "$dist" = "experimental" || continue
echo retrieve Contents $dist/$arch
(cd us/${dist} &&
$wget_cmd -N ${ftpsite}/dists/${dist}/Contents-${arch}.gz)
foo=\$arch_${dist//-/_}
for arch in `eval echo $foo`
do
- test ! "$arch" = "kfreebsd-i386" || continue
- test ! "$arch" = "kfreebsd-amd64" || continue
for part in ${parts}
do
echo retrieve Packages $dist/$part/$arch
us/${dist}/${part}/binary-${arch}/Packages.gz
done
#FIXME: no Contents files for p-u
- test ! "$dist" = "experimental" || continue
echo retrieve Contents $dist/$arch
rsync -t ${localdir}/dists/${dist}/Contents-${arch}.gz \
us/${dist}/Contents-${arch}.gz
# security archive
#
-for dist in etch lenny
+for dist in slink potato woody sarge
do
echo "retrieve Release(.gpg) $dist"
test -d security/${dist} || mkdir -p security/${dist}
ddtp_ftpsite="$ftpsite"
fi
echo using remote mirror $ddtp_ftpsite
- for dist in $dists
+ for dist in sid
do
for part in main
do
locale=$(echo $lang|perl -p -e 's/^([a-z]{2})-([a-z]{2})$/"$1_".uc($2)/e')
echo "retrieve translated Descs $dist/$part/$lang ($locale)"
(cd us/${dist}/${part}/i18n &&
- $wget_cmd -N ${ddtp_ftpsite}/dists/${dist}/${part}/i18n/Translation-$locale.gz)
+ $wget_cmd -N ${ddtp_ftpsite}/dists/${dist}/${part}/i18n/Translation-$locale.bz2)
done
done
done
else
echo using local mirror
- for dist in $dists
+ for dist in sid
do
for part in main
do
do
locale=$(echo $lang|perl -p -e 's/^([a-z]{2})-([a-z]{2})$/"$1_".uc($2)/e')
echo "retrieve translated Descs $dist/$part/$lang ($locale)"
- rsync -t ${localdir}/dists/${dist}/${part}/i18n/Translation-$locale.gz \
- us/${dist}/${part}/i18n/Translation-$locale.gz
+ rsync -t ${localdir}/dists/${dist}/${part}/i18n/Translation-$locale.bz2 \
+ us/${dist}/${part}/i18n/Translation-$locale.bz2
done
done
done
our $VERSION = v1.0.0;
- sub version_cmp {
+ my $re = qr/^(?:(\d+):)?([\w.+:~-]+?)(?:-([\w+.~]+))?$/;
+ sub version_cmp_pp {
+ return 0 if $_[0] eq $_[1];
my ( $ver1, $ver2 ) = @_;
my ( $e1, $e2, $u1, $u2, $d1, $d2 );
- my $re = qr/^(?:(\d+):)?([\w.+:~-]+?)(?:-([\w+.~]+))?$/;
if ( $ver1 =~ $re ) {
( $e1, $u1, $d1 ) = ( $1, $2, $3 );
$e1 ||= 0;
return $res;
}
+ *version_cmp = \&version_cmp_pp;
+ eval {
+ require AptPkg::Config;
+ require AptPkg::System;
+ require AptPkg::Version;
+
+ $AptPkg::Config::_config->init;
+ $AptPkg::System::_system = $AptPkg::Config::_config->system;
+ my $apt_ver = $AptPkg::System::_system->versioning;
+ *version_cmp = sub { return $apt_ver->compare(@_) };
+ };
+
sub version_sort {
return sort { version_cmp( $b, $a ) } @_;
}
return length( $v1 ) <=> length( $v2 );
}
- our @SUITES_SORT = qw( bo hamm slink potato woody
- oldstable sarge stable stable-proposed-updates
- etch etch-m68k testing testing-proposed-updates lenny
- sid unstable experimental
- warty hoary breezy dapper edgy feisty gutsy intrepid jaunty);
-our @SUITES_SORT = qw( woody
++our @SUITES_SORT = qw( bo hamm slink potato woody
+ sarge
+ oldstable
+ etch etch-m68k
+ stable stable-proposed-updates
+ lenny
+ testing testing-proposed-updates
+ squeeze
+ sid unstable experimental
+ warty hoary breezy dapper edgy feisty gutsy hardy intrepid jaunty);
our @ARCHIVE_SORT = qw( non-US security updates volatile backports );
our @PRIORITY_SORT = qw( required important standard optional extra );
my $i = 1000;
delete $ENV{'LC_ALL'};
delete $ENV{'LC_MESSAGES'};
- my %SUITES_ALIAS = ( #oldstable => 'sarge',
- stable => 'etch',
- testing => 'lenny',
+ my %SUITES_ALIAS = ( oldstable => 'etch',
+ stable => 'lenny',
+ testing => 'squeeze',
unstable => 'sid',
- '4.0' => 'etch' );
+ '4.0' => 'etch',
+ '5.0' => 'lenny' );
# Read in all the variables set by the form
my $input;
&Packages::DB::init();
my $last_modified = $Packages::DB::db_read_time;
my $now = time;
- my $expires = $last_modified + (12*3600);
+ my $expires = $last_modified + (365*24*3600);
$expires = $now + 3600 if $expires < $now;
# allow some fudge, since the db mod time is not the end of
# the cron job
organisation = 'Debian'
project_homepage = 'http://www.debian.org/'
- packages_homepage = 'http://archive.debian.net/'
+ packages_homepage = '/'
- packages_homepage_abs = 'http://packages.debian.net/'
++ packages_homepage_abs = 'http://archive.debian.net/'
searchformurl = packages_homepage
search_url = '/search'
tags_url = 'http://debtags.alioth.debian.org/'
security_mirror = 'security.debian.org'
security_mirror_url = security_mirror _ '/debian-security'
security_suite_suffix = '/updates'
- changelogs_url = 'http://packages.debian.org/changelogs/'
+ changelogs_url = 'http://archive.debian.net/changelogs/'
policy_url = 'http://www.debian.org/doc/debian-policy/'
cn_help_url = project_homepage _ 'intro/cn'
- patch_tracking_url = 'http://patch-tracking.debian.net/package'
+# patch_tracking_url = 'http://patch-tracking.debian.net/package'
logo = {
url => project_homepage,
src => '/Pics/openlogo-nd-25.png',
url => project_homepage _ 'trademark'
}
contact = {
- name => g('Debian Web Mailinglist'),
- mail => 'debian-www@lists.debian.org',
+ name => 'Frank Lichtenheld',
+ mail => 'djpig@debian.org',
url => project_homepage _ 'contact',
}
admin = {
- name => g('%s Webmaster', organisation),
- mail => 'webmaster@debian.org',
+ name => 'Frank Lichtenheld',
+ mail => 'djpig@debian.org',
}
trademarknotes = g('%s is a <a href="%s">trademark</a> of %s', organisation, trademark.url, trademark.name)
- # sponsor = {
- # url => 'http://example.invalid/',
- # name => 'Example Sponsor, Inc.',
- # }
+ sponsors = [
+ {
+ url => 'http://example.invalid/',
+ name => 'Example Sponsor, Inc.',
+ },
+ {
+ url => 'http://example2.invalid/',
+ name => 'Example2 Sponsor, Inc.',
+ },
+ ]
-%]
[%-
# possible values for importance: high, normal, low
+ #sitewidemsg = { importance => "high",
+ # txt => g('Please note that this is an experimental version of <a href="http://%s/">%s</a>. Errors and obsolete information should be expected', 'packages.debian.org', 'packages.debian.org') }
sitewidemsg = { importance => "high",
- txt => g('Please note that this is an experimental version of <a href="http://%s/">%s</a>. Errors and obsolete information should be expected', 'packages.debian.org', 'packages.debian.org') }
+ txt => g('Please note that this site contains information about obsolete %s releases; if you search for current data, please use <a href="http://%s/">%s</a>.', organisation, 'packages.debian.org', 'packages.debian.org') }
-%]
[%# @translators: . = decimal_point , = thousands_sep, see Number::Format %]
[%- USE num = Number.Format( decimal_point => g('.'),
[% IF port.url_name;
SET port.url = ports_url _ port.url_name _ '/';
END -%]
- <p style="clear:both">[% g('Note that %s is not officially included in the %s archive yet, but the %s porter group keeps their archive in sync with the official archive as close as possible. See the <a href="%s">%s ports page</a> for current information.',
+ <p style="clear:both">[% g('Note that %s is not officially included in the %s archive, but the %s porter group keeps their archive in sync with the official archive as close as possible. See the <a href="%s">%s ports page</a> for current information.',
port.name, organisation, port.name, port.url, port.name) %]</p>
[% END %]
<table id="pdownloadmeta">
<tr><th>[% g('Exact Size') %]</th> <td class="size">[% g('%s Byte (%s %s)', size, num.format_number(pkgsize,1), pkgsize_unit) %]</td>
<tr><th>[% g('MD5 checksum') %]</th> <td><tt>[% md5sum %]</tt></td>
-<tr><th>[% g('SHA1 checksum') %]</th> <td><tt>[% sha1 || g('Not Available') %]</tt></td>
-<tr><th>[% g('SHA256 checksum') %]</th> <td><tt>[% sha256 || g('Not Available') %]</tt></td>
+<!-- <tr><th>[% g('SHA1 checksum') %]</th> <td><tt>[% sha1 || g('Not Available') %]</tt></td>
+<tr><th>[% g('SHA256 checksum') %]</th> <td><tt>[% sha256 || g('Not Available') %]</tt></td> -->
</table>
[%- PROCESS 'html/foot.tmpl' page_name="$pkg/download" -%]