Merge lp:~dpb/ubuntu-manpage-repository/highlight-current-series into lp:ubuntu-manpage-repository

Proposed by David Britton
Status: Merged
Merged at revision: 222
Proposed branch: lp:~dpb/ubuntu-manpage-repository/highlight-current-series
Merge into: lp:ubuntu-manpage-repository
Diff against target: 779 lines (+277/-125)
13 files modified
Makefile (+18/-16)
README.md (+17/-66)
bin/fetch-man-pages.sh (+6/-5)
bin/make-manpage-repo.sh (+38/-19)
bin/make-sitemaps.sh (+1/-1)
examples/config (+9/-3)
tools/create-microsite-container.sh (+42/-0)
tools/setup-archive-fixture-in-server.sh (+30/-0)
tools/setup-in-server.sh (+0/-8)
tools/update-fixtures.sh (+68/-0)
tools/update-microsite-container.sh (+35/-0)
www/assets/light/css/styles.css (+6/-0)
www/functions.js (+7/-7)
To merge this branch: bzr merge lp:~dpb/ubuntu-manpage-repository/highlight-current-series
Reviewer Review Type Date Requested Status
Joshua Powers (community) Approve
Review via email: mp+347488@code.launchpad.net

Commit message

new additions:

1) Easy microsite create with makefile target using LXD and a checked-in mini archive.

2) fixed width fonts

3) highlight current series in bold

4) cache invalidate generated manpages once per month (on average)

5) limit generated manpage to 100 columns.

To post a comment you must log in.
Revision history for this message
Joshua Powers (powersj) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'Makefile'
--- Makefile 2018-06-03 17:10:52 +0000
+++ Makefile 2018-06-05 23:57:15 +0000
@@ -5,21 +5,23 @@
5deps:5deps:
6 sudo apt -y install w3m shellcheck flake8 < /dev/null6 sudo apt -y install w3m shellcheck flake8 < /dev/null
77
8# Note, this is destructive, you could have just wasted hours of
9# manpage building by running it. Try not to make this the default
10# action or make it a dependency of another operation.
11clean:8clean:
12 rm -rf www/manpages www/manpages.gz9 rm -rf www/manpages www/manpages.gz
1310 [ -L config ] && rm config
14manpage-repo:11
15 @echo "The first time this runs, it could take many hours"12config:
16 @sleep 213 ln -s examples/config config
17 (cd bin && ./make-manpage-repo.sh)14
18 @echo "If running locally: file://$(pwd)/www"15manpage-repo: config
19 @echo "If running in container: http://<IP_ADDR>:8080/"16 bin/make-manpage-repo.sh
2017
21setup-and-mirror:18create-microsite-container:
22 @echo "This will be downloading >8GB of data, it could take a while..."19 tools/create-microsite-container.sh
23 @sleep 220
24 ./tools/setup-in-server.sh21update-microsite-container:
25 apt-mirror22 tools/update-microsite-container.sh
23
24setup-microsite-in-server: config
25 tools/setup-archive-fixture-in-server.sh
26 tools/setup-in-server.sh
27
2628
=== modified file 'README.md'
--- README.md 2018-05-24 20:36:29 +0000
+++ README.md 2018-06-05 23:57:15 +0000
@@ -1,73 +1,24 @@
1See: https://launchpad.net/ubuntu-manpage-repository for developing1See also: https://launchpad.net/ubuntu-manpage-repository
2information.
3
4# Hacking locally, without setting up a micro site
5
6Make changes, then...
7
8 make deps
9 cd bin; ./make-manpage-repo.sh
10
11And then, wait, you can typically kill this after a couple minutes as
12you will have some data available then. After that, you can check
13things out by pulling up:
14
15 * file:///home/<user>/<path_to_source>/www/ in chrome...
16
17Note, for most bugs, you do not need to wait for everything to
18download/create. Instead, you can just generate a few pages and check
19what happened there.
20
21To start over:
22
23 make clean
242
25# Setting up a micro site for dev/test in a container3# Setting up a micro site for dev/test in a container
264
27To get the search form to work and debug more complex issues, you need5To help ease the testing of this there is tooling in place to create a
28to set up a real microsite. The quickest way I have is to create a6small "microsite". This just puts out a Packages files with a small
29container, checkout the code there, and setup. These instructions7set of packages for testing pursposes in a container. It also copies
30should help. Once in the container, this should all be run as root.8the current branch (.bzr file and all) out to the container in the
319/srv/manpages.ubuntu.com directory, making it super easy to test out
32After this has been done one time, updates should be fast. Some sample10your changes.
33times:11
3412 make create-microsite-container
35 # create container / install bzr13
36 lxc launch ubuntu:xenial manpages-test14You can also override the default container name
37 lxc exec manpages-test bash15(default=**manpages-microsite**), if you want to deploy
38 apt update16two sites to compare, for instance:
39 apt install bzr make17
4018 MICROSITE_CONTAINER=name2 make create-microsite-container
41 # Checkout source (Remember, you can checkout your branch too)
42 cd /srv
43 bzr checkout lp:ubuntu-manpage-repository manpages.ubuntu.com
44 cd manpages.ubuntu.com
45
46 # Setup the container, and start the mirror process (>8GB d/l ahead)
47 # Also, do the actually conversion from debs into manpages
48 make deps setup-and-mirror manpage-repo
49
50You can then reach the page at:
51
52 * http://<ip>:8080/index_real.html
53 * http://<ip>:8080/cgi-bin/search.py?q=aalib-config (one of the first pages that
54 should be downloaded)
55
56# Dev notes
57
58 * Don't erase the apt-mirror (/srv/manpages.ubuntu.com/ubuntu/), it can
59 just be updated by the 'setup-and-mirror' make target each time.
60 * Manpage generation takes about 40m on my computer. It also doesn't
61 usually need to be repeated
62 * The config files limit the archive to bionic/main by default, just to
63 help speed up development, you can expand those as necessary.
6419
65# TODO20# TODO
66 21
67 * remove creation of the needed symlink for the real dev site testing,
68 this requires modification of search.py
69 * create a series/branch for production since the configuration needs
70 to be modified for devel/production. Or solve in some other way.
71 * search.py really needs someone to make functions and simplify it.22 * search.py really needs someone to make functions and simplify it.
72 * switch container setup instructions to use 'manpages' user account23 * switch container setup script to use a 'manpages' user account
73 instead of root as they do now24 instead of root as it does now
7425
=== modified file 'bin/fetch-man-pages.sh'
--- bin/fetch-man-pages.sh 2018-06-03 18:27:44 +0000
+++ bin/fetch-man-pages.sh 2018-06-05 23:57:15 +0000
@@ -29,7 +29,7 @@
29DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"29DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
3030
31# shellcheck disable=SC109031# shellcheck disable=SC1090
32. "$DIR/config"32. "$DIR/../config"
3333
34TEMPDIR=$(mktemp -d -t manpages-fetch-XXXXXX)34TEMPDIR=$(mktemp -d -t manpages-fetch-XXXXXX)
35trap 'rm -rf $TEMPDIR 2>/dev/null || true' EXIT HUP INT QUIT TERM35trap 'rm -rf $TEMPDIR 2>/dev/null || true' EXIT HUP INT QUIT TERM
@@ -60,7 +60,7 @@
60if [ -z "$man" ]; then60if [ -z "$man" ]; then
61 echo "INFO: No manpages: [$DIST] [$PKG]"61 echo "INFO: No manpages: [$DIST] [$PKG]"
62 # Touch the cache file so we don't look again until package updated62 # Touch the cache file so we don't look again until package updated
63 sha1sum "$DEB" | awk '{ print $1 }' >> "$DESTDIR/.cache/$NAME"63 sha1sum "$DEB" | awk '{ print $1 }' > "$DESTDIR/.cache/$NAME"
64 exit 064 exit 0
65fi65fi
6666
@@ -81,7 +81,8 @@
81 manpage="$TEMPDIR/$i"81 manpage="$TEMPDIR/$i"
82 i=$(printf "%s" "$i" | sed -e "s/usr\/share.*\/man\///i" -e "s/\.gz$//")82 i=$(printf "%s" "$i" | sed -e "s/usr\/share.*\/man\///i" -e "s/\.gz$//")
83 #printf "%s\n" "INFO: Considering manpage [$i]"83 #printf "%s\n" "INFO: Considering manpage [$i]"
84 if [ ! -s "$manpage" -o -z "$i" -a "$SYMLINK" = "0" ]; then84 # shellcheck disable=SC2166
85 if [ ! -s "$manpage" -o -z "$i" ] && [ "$SYMLINK" = "0" ]; then
85 #printf "%s\n" "INFO: Skipping empty manpage [$manpage]"86 #printf "%s\n" "INFO: Skipping empty manpage [$manpage]"
86 continue87 continue
87 fi88 fi
@@ -97,7 +98,7 @@
97 ln -f -s "$LN" "$out"98 ln -f -s "$LN" "$out"
98 printf "INFO: Created symlink [%s]" "$out"99 printf "INFO: Created symlink [%s]" "$out"
99 else100 else
100 BODY=$(/usr/lib/w3m/cgi-bin/w3mman2html.cgi "local=$manpage" | grep -A 1000000 "^<b>" | sed -e '/<\/body>/,+100 d' -e 's:^<b>\(.*\)</b>$:</pre><h4><b>\1</b></h4><pre>:g' -e 's:<a href="file\:///[^?]*?\([^(]*\)(\([^)]*\))">:<a href="../man\2/\1.\2.html">:g')101 BODY=$(COLUMNS=100 /usr/lib/w3m/cgi-bin/w3mman2html.cgi "local=$manpage" | grep -A 1000000 "^<b>" | sed -e '/<\/body>/,+100 d' -e 's:^<b>\(.*\)</b>$:</pre><h4><b>\1</b></h4><pre>:g' -e 's:<a href="file\:///[^?]*?\([^(]*\)(\([^)]*\))">:<a href="../man\2/\1.\2.html">:g')
101 TITLE=$(printf "%s" "$BODY" | head -n2 | tail -n1 | sed "s/<[^>]\+>//g")102 TITLE=$(printf "%s" "$BODY" | head -n2 | tail -n1 | sed "s/<[^>]\+>//g")
102 BIN_PKG=$(printf "%s" "$NAME_AND_VER" | sed s/_.*$//g)103 BIN_PKG=$(printf "%s" "$NAME_AND_VER" | sed s/_.*$//g)
103 PKG_LINK="https://launchpad.net/ubuntu/$DIST/+package/$BIN_PKG"104 PKG_LINK="https://launchpad.net/ubuntu/$DIST/+package/$BIN_PKG"
@@ -121,7 +122,7 @@
121122
122# After extracting all manpages, cache the sha1sum, so we don't123# After extracting all manpages, cache the sha1sum, so we don't
123# repeat the downloads 124# repeat the downloads
124sha1sum "$DEB" | awk '{ print $1 }' >> "$DESTDIR/.cache/$NAME"125sha1sum "$DEB" | awk '{ print $1 }' > "$DESTDIR/.cache/$NAME"
125126
126# In the case of freakish package permissions, fix them on rm failure.127# In the case of freakish package permissions, fix them on rm failure.
127rm -rf "$TEMPDIR" 2>/dev/null || ( chmod -R 700 "$TEMPDIR" && rm -rf "$TEMPDIR" ) || true128rm -rf "$TEMPDIR" 2>/dev/null || ( chmod -R 700 "$TEMPDIR" && rm -rf "$TEMPDIR" ) || true
128129
=== modified file 'bin/make-manpage-repo.sh'
--- bin/make-manpage-repo.sh 2018-06-03 17:15:58 +0000
+++ bin/make-manpage-repo.sh 2018-06-05 23:57:15 +0000
@@ -1,8 +1,6 @@
1#!/bin/bash -e1#!/bin/bash -e
22
3###############################################################################3###############################################################################
4# This is the Ubuntu manpage repository generator and interface.
5#
6# Copyright (C) 2008 Canonical Ltd.4# Copyright (C) 2008 Canonical Ltd.
7# 5#
8# This code was originally written by Dustin Kirkland <kirkland@ubuntu.com>,6# This code was originally written by Dustin Kirkland <kirkland@ubuntu.com>,
@@ -27,8 +25,11 @@
2725
28DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"26DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
2927
28# keeps shellcheck happy.
29ARCH=""
30
30# shellcheck disable=SC109031# shellcheck disable=SC1090
31. "$DIR/config"32. "$DIR/../config"
3233
33# Establish some locking, to keep multiple updates from running34# Establish some locking, to keep multiple updates from running
34mkdir -p "$PUBLIC_HTML_DIR/manpages"35mkdir -p "$PUBLIC_HTML_DIR/manpages"
@@ -47,10 +48,11 @@
47get_packages_url() {48get_packages_url() {
48 dist=$149 dist=$1
49 repo=$250 repo=$2
50 if [ -e "$DEBDIR/dists/$dist/$repo/binary-$ARCH/Packages.gz" ]; then51 arch=$3
51 echo "file://$DEBDIR/dists/$dist/$repo/binary-$ARCH/Packages.gz"52 if [ -e "$DEBDIR/dists/$dist/$repo/binary-$arch/Packages.gz" ]; then
53 echo "file://$DEBDIR/dists/$dist/$repo/binary-$arch/Packages.gz"
52 else54 else
53 echo "$ARCHIVE/dists/$dist/$repo/binary-$ARCH/Packages.gz"55 echo "$ARCHIVE/dists/$dist/$repo/binary-$arch/Packages.gz"
54 fi56 fi
55}57}
5658
@@ -73,10 +75,25 @@
73 sum="$2"75 sum="$2"
74 name=$(basename "$deb" | awk -F_ '{print $1}')76 name=$(basename "$deb" | awk -F_ '{print $1}')
75 existing_sum=$(cat "$PUBLIC_HTML_DIR/manpages/$dist/.cache/$name" 2>/dev/null)77 existing_sum=$(cat "$PUBLIC_HTML_DIR/manpages/$dist/.cache/$name" 2>/dev/null)
78
79 # Take the first two digits of the existing_sum modulo 28 to
80 # compare to the current day of month.
81 #
82 # Reasoning: this will invalidate the cache for everything ~
83 # once per month (days: 1-28)
84 day_mod=$((0x$(echo "$existing_sum" | cut -b 1-2)%27 + 1))
85 if [ "$day_mod" -eq "$(date +%d)" ]; then
86 echo "INFO: date_mod match, regnerating: $deb ($day_mod)"
87 return 0
88 fi
89
90 # Of course, if the sum found in the packages file for this
91 # package does not equal the sum I have on disk, regenerate.
76 if [ "$existing_sum" = "$sum" ]; then92 if [ "$existing_sum" = "$sum" ]; then
77 echo "INFO: cksum skip: $deb"93 echo "INFO: cksum skip: $deb"
78 return 194 return 1
79 else95 else
96 echo "INFO: cksum mismatch: $deb"
80 return 097 return 0
81 fi98 fi
82}99}
@@ -88,7 +105,7 @@
88 deburl=$(get_deb_url "$deb")105 deburl=$(get_deb_url "$deb")
89 # FIXME: the || true needs to bubble up to a list of things wrong obviously.106 # FIXME: the || true needs to bubble up to a list of things wrong obviously.
90 # shellcheck disable=SC2015107 # shellcheck disable=SC2015
91 is_pkg_cache_invalid "$deb" "$sum" && ./fetch-man-pages.sh "$dist" "$deburl" || true108 is_pkg_cache_invalid "$deb" "$sum" && "$DIR/fetch-man-pages.sh" "$dist" "$deburl" || true
92}109}
93110
94link_en_locale() {111link_en_locale() {
@@ -122,18 +139,20 @@
122 mkdir -p "$PUBLIC_HTML_DIR/manpages/$dist/.cache" "$PUBLIC_HTML_DIR/manpages.gz/$dist" || true139 mkdir -p "$PUBLIC_HTML_DIR/manpages/$dist/.cache" "$PUBLIC_HTML_DIR/manpages.gz/$dist" || true
123 link_en_locale "$dist"140 link_en_locale "$dist"
124 for repo in $REPOS; do141 for repo in $REPOS; do
125 file=$(get_packages_url "$dist" "$repo")142 for arch in $ARCH; do
126 echo "INFO: Packages.gz: $file"143 file=$(get_packages_url "$dist" "$repo" "$arch")
127 curl -s "$file" \144 echo "INFO: Packages.gz: $file"
128 | gunzip -c \145 curl -s "$file" \
129 | grep -E "(^Filename: |^SHA1: )" \146 | gunzip -c \
130 | awk '{print $2}' \147 | grep -E "(^Filename: |^SHA1: )" \
131 | sed 'N;s/\n/ /' \148 | awk '{print $2}' \
132 | sort -u \149 | sed 'N;s/\n/ /' \
133 | while read -r deb sum; do150 | sort -u \
134 handle_deb "$dist" "$deb" "$sum"151 | while read -r deb sum; do
135 done152 handle_deb "$dist" "$deb" "$sum"
153 done
154 done
136 done155 done
137done156done
138157
139./make-sitemaps.sh158"$DIR/make-sitemaps.sh"
140159
=== modified file 'bin/make-sitemaps.sh'
--- bin/make-sitemaps.sh 2018-06-03 17:15:58 +0000
+++ bin/make-sitemaps.sh 2018-06-05 23:57:15 +0000
@@ -30,7 +30,7 @@
30DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"30DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
3131
32# shellcheck disable=SC109032# shellcheck disable=SC1090
33. "$DIR/config"33. "$DIR/../config"
3434
35printf "%s\n" "INFO: Making sitemaps"35printf "%s\n" "INFO: Making sitemaps"
3636
3737
=== renamed file 'bin/config' => 'examples/config'
--- bin/config 2018-05-23 19:48:06 +0000
+++ examples/config 2018-06-05 23:57:15 +0000
@@ -1,5 +1,9 @@
11
2# Customize this file and rename it to 'config'2# Customize this file and rename it to 'config'
3# It should be in the root of the directory structure, like
4# - bin/
5# - www/
6# - config
37
4# What archive are you wanting to pull Packages.gz and .deb files from?8# What archive are you wanting to pull Packages.gz and .deb files from?
5ARCHIVE="http://archive.ubuntu.com/ubuntu"9ARCHIVE="http://archive.ubuntu.com/ubuntu"
@@ -9,13 +13,15 @@
913
10# Point this at the location where you want the manpages14# Point this at the location where you want the manpages
11# and manpages.gz directories generated.15# and manpages.gz directories generated.
12PUBLIC_HTML_DIR="$(pwd)/../www"16PUBLIC_HTML_DIR="/srv/manpages.ubuntu.com/www"
1317
14# For generating the sitemap.xml, everything else in the scripts18# For generating the sitemap.xml, everything else in the scripts
15# uses relative links19# uses relative links
16SITE="http://manpages.ubuntu.com"20SITE="http://manpages.ubuntu.com"
1721
18# These form a combinatorial download matrix22# These form a combinatorial download matrix
19DISTROS="bionic"23DISTROS="bionic artful xenial trusty precise"
20REPOS="main"24REPOS="main restricted universe multiverse"
25
26# For now, stick to a single arch
21ARCH="amd64"27ARCH="amd64"
2228
=== added file 'tools/create-microsite-container.sh'
--- tools/create-microsite-container.sh 1970-01-01 00:00:00 +0000
+++ tools/create-microsite-container.sh 2018-06-05 23:57:15 +0000
@@ -0,0 +1,42 @@
1#!/bin/bash -e
2#
3# Goal: create a small microsite in a container from this branch
4#
5# Notes:
6#
7# - A new container will be created each time.
8# - This script should be run as root
9# - Your code will be copied into the microsite
10
11DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
12NAME=${MICROSITE_CONTAINER:-manpages-microsite}
13SITE_PATH=/srv/manpages.ubuntu.com
14
15if ! lxc info "$NAME" 2>/dev/null; then
16 lxc launch ubuntu:xenial "$NAME"
17 sleep 5
18 lxc exec "$NAME" -- apt update
19else
20 echo "-------------------------------------------"
21 echo "Found existing container: $NAME"
22 echo "Hit [CTRL]-c to avoid wiping out $NAME:$SITE_PATH"
23 read -p "Press enter to continue"
24 echo "-------------------------------------------"
25fi
26
27lxc exec "$NAME" -- apt install -y apache2 bzr make < /dev/null
28lxc exec "$NAME" -- rm -rf "$SITE_PATH"
29lxc exec "$NAME" -- mkdir -p "$SITE_PATH"
30tar cf - "$DIR/../" | lxc exec "$NAME" -- tar xvf - -C "$SITE_PATH"
31lxc exec "$NAME" -- sh -c "cd $SITE_PATH; make deps setup-microsite-in-server manpage-repo"
32
33echo "--------"
34echo "Summary:"
35echo "--------"
36echo ""
37lxc list "$NAME"
38
39IP=$(lxc info "$NAME" |grep eth0: |grep -v inet6 | awk '{ print $3 }')
40echo ""
41echo "Site URL: http://$IP:8080"
42echo " * Try searching for 'ac'"
043
=== added directory 'tools/fixtures'
=== added directory 'tools/fixtures/mirror'
=== added directory 'tools/fixtures/mirror/dists'
=== added directory 'tools/fixtures/mirror/dists/artful'
=== added directory 'tools/fixtures/mirror/dists/artful/main'
=== added directory 'tools/fixtures/mirror/dists/artful/main/binary-amd64'
=== added file 'tools/fixtures/mirror/dists/artful/main/binary-amd64/Packages.gz'
1Binary files tools/fixtures/mirror/dists/artful/main/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/artful/main/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ44Binary files tools/fixtures/mirror/dists/artful/main/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/artful/main/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/artful/main/binary-s390x'
=== added file 'tools/fixtures/mirror/dists/artful/main/binary-s390x/Packages.gz'
2Binary files tools/fixtures/mirror/dists/artful/main/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/artful/main/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ45Binary files tools/fixtures/mirror/dists/artful/main/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/artful/main/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/artful/multiverse'
=== added directory 'tools/fixtures/mirror/dists/artful/multiverse/binary-amd64'
=== added file 'tools/fixtures/mirror/dists/artful/multiverse/binary-amd64/Packages.gz'
3Binary files tools/fixtures/mirror/dists/artful/multiverse/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/artful/multiverse/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ46Binary files tools/fixtures/mirror/dists/artful/multiverse/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/artful/multiverse/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/artful/multiverse/binary-s390x'
=== added file 'tools/fixtures/mirror/dists/artful/multiverse/binary-s390x/Packages.gz'
4Binary files tools/fixtures/mirror/dists/artful/multiverse/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/artful/multiverse/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ47Binary files tools/fixtures/mirror/dists/artful/multiverse/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/artful/multiverse/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/artful/restricted'
=== added directory 'tools/fixtures/mirror/dists/artful/restricted/binary-amd64'
=== added file 'tools/fixtures/mirror/dists/artful/restricted/binary-amd64/Packages.gz'
5Binary files tools/fixtures/mirror/dists/artful/restricted/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/artful/restricted/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ48Binary files tools/fixtures/mirror/dists/artful/restricted/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/artful/restricted/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/artful/restricted/binary-s390x'
=== added file 'tools/fixtures/mirror/dists/artful/restricted/binary-s390x/Packages.gz'
6Binary files tools/fixtures/mirror/dists/artful/restricted/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/artful/restricted/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ49Binary files tools/fixtures/mirror/dists/artful/restricted/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/artful/restricted/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/artful/universe'
=== added directory 'tools/fixtures/mirror/dists/artful/universe/binary-amd64'
=== added file 'tools/fixtures/mirror/dists/artful/universe/binary-amd64/Packages.gz'
7Binary files tools/fixtures/mirror/dists/artful/universe/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/artful/universe/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ50Binary files tools/fixtures/mirror/dists/artful/universe/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/artful/universe/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/artful/universe/binary-s390x'
=== added file 'tools/fixtures/mirror/dists/artful/universe/binary-s390x/Packages.gz'
8Binary files tools/fixtures/mirror/dists/artful/universe/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/artful/universe/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ51Binary files tools/fixtures/mirror/dists/artful/universe/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/artful/universe/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/bionic'
=== added directory 'tools/fixtures/mirror/dists/bionic/main'
=== added directory 'tools/fixtures/mirror/dists/bionic/main/binary-amd64'
=== added file 'tools/fixtures/mirror/dists/bionic/main/binary-amd64/Packages.gz'
9Binary files tools/fixtures/mirror/dists/bionic/main/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/bionic/main/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ52Binary files tools/fixtures/mirror/dists/bionic/main/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/bionic/main/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/bionic/main/binary-s390x'
=== added file 'tools/fixtures/mirror/dists/bionic/main/binary-s390x/Packages.gz'
10Binary files tools/fixtures/mirror/dists/bionic/main/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/bionic/main/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ53Binary files tools/fixtures/mirror/dists/bionic/main/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/bionic/main/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/bionic/multiverse'
=== added directory 'tools/fixtures/mirror/dists/bionic/multiverse/binary-amd64'
=== added file 'tools/fixtures/mirror/dists/bionic/multiverse/binary-amd64/Packages.gz'
11Binary files tools/fixtures/mirror/dists/bionic/multiverse/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/bionic/multiverse/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ54Binary files tools/fixtures/mirror/dists/bionic/multiverse/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/bionic/multiverse/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/bionic/multiverse/binary-s390x'
=== added file 'tools/fixtures/mirror/dists/bionic/multiverse/binary-s390x/Packages.gz'
12Binary files tools/fixtures/mirror/dists/bionic/multiverse/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/bionic/multiverse/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ55Binary files tools/fixtures/mirror/dists/bionic/multiverse/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/bionic/multiverse/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/bionic/restricted'
=== added directory 'tools/fixtures/mirror/dists/bionic/restricted/binary-amd64'
=== added file 'tools/fixtures/mirror/dists/bionic/restricted/binary-amd64/Packages.gz'
13Binary files tools/fixtures/mirror/dists/bionic/restricted/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/bionic/restricted/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ56Binary files tools/fixtures/mirror/dists/bionic/restricted/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/bionic/restricted/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/bionic/restricted/binary-s390x'
=== added file 'tools/fixtures/mirror/dists/bionic/restricted/binary-s390x/Packages.gz'
14Binary files tools/fixtures/mirror/dists/bionic/restricted/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/bionic/restricted/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ57Binary files tools/fixtures/mirror/dists/bionic/restricted/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/bionic/restricted/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/bionic/universe'
=== added directory 'tools/fixtures/mirror/dists/bionic/universe/binary-amd64'
=== added file 'tools/fixtures/mirror/dists/bionic/universe/binary-amd64/Packages.gz'
15Binary files tools/fixtures/mirror/dists/bionic/universe/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/bionic/universe/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ58Binary files tools/fixtures/mirror/dists/bionic/universe/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/bionic/universe/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/bionic/universe/binary-s390x'
=== added file 'tools/fixtures/mirror/dists/bionic/universe/binary-s390x/Packages.gz'
16Binary files tools/fixtures/mirror/dists/bionic/universe/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/bionic/universe/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ59Binary files tools/fixtures/mirror/dists/bionic/universe/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/bionic/universe/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/precise'
=== added directory 'tools/fixtures/mirror/dists/precise/main'
=== added directory 'tools/fixtures/mirror/dists/precise/main/binary-amd64'
=== added file 'tools/fixtures/mirror/dists/precise/main/binary-amd64/Packages.gz'
17Binary files tools/fixtures/mirror/dists/precise/main/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/precise/main/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ60Binary files tools/fixtures/mirror/dists/precise/main/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/precise/main/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/precise/main/binary-s390x'
=== added file 'tools/fixtures/mirror/dists/precise/main/binary-s390x/Packages.gz'
18Binary files tools/fixtures/mirror/dists/precise/main/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/precise/main/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ61Binary files tools/fixtures/mirror/dists/precise/main/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/precise/main/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/precise/multiverse'
=== added directory 'tools/fixtures/mirror/dists/precise/multiverse/binary-amd64'
=== added file 'tools/fixtures/mirror/dists/precise/multiverse/binary-amd64/Packages.gz'
19Binary files tools/fixtures/mirror/dists/precise/multiverse/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/precise/multiverse/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ62Binary files tools/fixtures/mirror/dists/precise/multiverse/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/precise/multiverse/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/precise/multiverse/binary-s390x'
=== added file 'tools/fixtures/mirror/dists/precise/multiverse/binary-s390x/Packages.gz'
20Binary files tools/fixtures/mirror/dists/precise/multiverse/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/precise/multiverse/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ63Binary files tools/fixtures/mirror/dists/precise/multiverse/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/precise/multiverse/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/precise/restricted'
=== added directory 'tools/fixtures/mirror/dists/precise/restricted/binary-amd64'
=== added file 'tools/fixtures/mirror/dists/precise/restricted/binary-amd64/Packages.gz'
21Binary files tools/fixtures/mirror/dists/precise/restricted/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/precise/restricted/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ64Binary files tools/fixtures/mirror/dists/precise/restricted/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/precise/restricted/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/precise/restricted/binary-s390x'
=== added file 'tools/fixtures/mirror/dists/precise/restricted/binary-s390x/Packages.gz'
22Binary files tools/fixtures/mirror/dists/precise/restricted/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/precise/restricted/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ65Binary files tools/fixtures/mirror/dists/precise/restricted/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/precise/restricted/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/precise/universe'
=== added directory 'tools/fixtures/mirror/dists/precise/universe/binary-amd64'
=== added file 'tools/fixtures/mirror/dists/precise/universe/binary-amd64/Packages.gz'
23Binary files tools/fixtures/mirror/dists/precise/universe/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/precise/universe/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ66Binary files tools/fixtures/mirror/dists/precise/universe/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/precise/universe/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/precise/universe/binary-s390x'
=== added file 'tools/fixtures/mirror/dists/precise/universe/binary-s390x/Packages.gz'
24Binary files tools/fixtures/mirror/dists/precise/universe/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/precise/universe/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ67Binary files tools/fixtures/mirror/dists/precise/universe/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/precise/universe/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/trusty'
=== added directory 'tools/fixtures/mirror/dists/trusty/main'
=== added directory 'tools/fixtures/mirror/dists/trusty/main/binary-amd64'
=== added file 'tools/fixtures/mirror/dists/trusty/main/binary-amd64/Packages.gz'
25Binary files tools/fixtures/mirror/dists/trusty/main/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/trusty/main/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ68Binary files tools/fixtures/mirror/dists/trusty/main/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/trusty/main/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/trusty/main/binary-s390x'
=== added file 'tools/fixtures/mirror/dists/trusty/main/binary-s390x/Packages.gz'
26Binary files tools/fixtures/mirror/dists/trusty/main/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/trusty/main/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ69Binary files tools/fixtures/mirror/dists/trusty/main/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/trusty/main/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/trusty/multiverse'
=== added directory 'tools/fixtures/mirror/dists/trusty/multiverse/binary-amd64'
=== added file 'tools/fixtures/mirror/dists/trusty/multiverse/binary-amd64/Packages.gz'
27Binary files tools/fixtures/mirror/dists/trusty/multiverse/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/trusty/multiverse/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ70Binary files tools/fixtures/mirror/dists/trusty/multiverse/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/trusty/multiverse/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/trusty/multiverse/binary-s390x'
=== added file 'tools/fixtures/mirror/dists/trusty/multiverse/binary-s390x/Packages.gz'
28Binary files tools/fixtures/mirror/dists/trusty/multiverse/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/trusty/multiverse/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ71Binary files tools/fixtures/mirror/dists/trusty/multiverse/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/trusty/multiverse/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/trusty/restricted'
=== added directory 'tools/fixtures/mirror/dists/trusty/restricted/binary-amd64'
=== added file 'tools/fixtures/mirror/dists/trusty/restricted/binary-amd64/Packages.gz'
29Binary files tools/fixtures/mirror/dists/trusty/restricted/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/trusty/restricted/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ72Binary files tools/fixtures/mirror/dists/trusty/restricted/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/trusty/restricted/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/trusty/restricted/binary-s390x'
=== added file 'tools/fixtures/mirror/dists/trusty/restricted/binary-s390x/Packages.gz'
30Binary files tools/fixtures/mirror/dists/trusty/restricted/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/trusty/restricted/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ73Binary files tools/fixtures/mirror/dists/trusty/restricted/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/trusty/restricted/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/trusty/universe'
=== added directory 'tools/fixtures/mirror/dists/trusty/universe/binary-amd64'
=== added file 'tools/fixtures/mirror/dists/trusty/universe/binary-amd64/Packages.gz'
31Binary files tools/fixtures/mirror/dists/trusty/universe/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/trusty/universe/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ74Binary files tools/fixtures/mirror/dists/trusty/universe/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/trusty/universe/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/trusty/universe/binary-s390x'
=== added file 'tools/fixtures/mirror/dists/trusty/universe/binary-s390x/Packages.gz'
32Binary files tools/fixtures/mirror/dists/trusty/universe/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/trusty/universe/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ75Binary files tools/fixtures/mirror/dists/trusty/universe/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/trusty/universe/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/xenial'
=== added directory 'tools/fixtures/mirror/dists/xenial/main'
=== added directory 'tools/fixtures/mirror/dists/xenial/main/binary-amd64'
=== added file 'tools/fixtures/mirror/dists/xenial/main/binary-amd64/Packages.gz'
33Binary files tools/fixtures/mirror/dists/xenial/main/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/xenial/main/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ76Binary files tools/fixtures/mirror/dists/xenial/main/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/xenial/main/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/xenial/main/binary-s390x'
=== added file 'tools/fixtures/mirror/dists/xenial/main/binary-s390x/Packages.gz'
34Binary files tools/fixtures/mirror/dists/xenial/main/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/xenial/main/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ77Binary files tools/fixtures/mirror/dists/xenial/main/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/xenial/main/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/xenial/multiverse'
=== added directory 'tools/fixtures/mirror/dists/xenial/multiverse/binary-amd64'
=== added file 'tools/fixtures/mirror/dists/xenial/multiverse/binary-amd64/Packages.gz'
35Binary files tools/fixtures/mirror/dists/xenial/multiverse/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/xenial/multiverse/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ78Binary files tools/fixtures/mirror/dists/xenial/multiverse/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/xenial/multiverse/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/xenial/multiverse/binary-s390x'
=== added file 'tools/fixtures/mirror/dists/xenial/multiverse/binary-s390x/Packages.gz'
36Binary files tools/fixtures/mirror/dists/xenial/multiverse/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/xenial/multiverse/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ79Binary files tools/fixtures/mirror/dists/xenial/multiverse/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/xenial/multiverse/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/xenial/restricted'
=== added directory 'tools/fixtures/mirror/dists/xenial/restricted/binary-amd64'
=== added file 'tools/fixtures/mirror/dists/xenial/restricted/binary-amd64/Packages.gz'
37Binary files tools/fixtures/mirror/dists/xenial/restricted/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/xenial/restricted/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ80Binary files tools/fixtures/mirror/dists/xenial/restricted/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/xenial/restricted/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/xenial/restricted/binary-s390x'
=== added file 'tools/fixtures/mirror/dists/xenial/restricted/binary-s390x/Packages.gz'
38Binary files tools/fixtures/mirror/dists/xenial/restricted/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/xenial/restricted/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ81Binary files tools/fixtures/mirror/dists/xenial/restricted/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/xenial/restricted/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/xenial/universe'
=== added directory 'tools/fixtures/mirror/dists/xenial/universe/binary-amd64'
=== added file 'tools/fixtures/mirror/dists/xenial/universe/binary-amd64/Packages.gz'
39Binary files tools/fixtures/mirror/dists/xenial/universe/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/xenial/universe/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ82Binary files tools/fixtures/mirror/dists/xenial/universe/binary-amd64/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/xenial/universe/binary-amd64/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/dists/xenial/universe/binary-s390x'
=== added file 'tools/fixtures/mirror/dists/xenial/universe/binary-s390x/Packages.gz'
40Binary files tools/fixtures/mirror/dists/xenial/universe/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/xenial/universe/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ83Binary files tools/fixtures/mirror/dists/xenial/universe/binary-s390x/Packages.gz 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/dists/xenial/universe/binary-s390x/Packages.gz 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/pool'
=== added directory 'tools/fixtures/mirror/pool/main'
=== added directory 'tools/fixtures/mirror/pool/main/a'
=== added directory 'tools/fixtures/mirror/pool/main/a/acct'
=== added file 'tools/fixtures/mirror/pool/main/a/acct/acct_6.5.5-1ubuntu1_amd64.deb'
41Binary files tools/fixtures/mirror/pool/main/a/acct/acct_6.5.5-1ubuntu1_amd64.deb 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/pool/main/a/acct/acct_6.5.5-1ubuntu1_amd64.deb 2018-06-05 23:57:15 +0000 differ84Binary files tools/fixtures/mirror/pool/main/a/acct/acct_6.5.5-1ubuntu1_amd64.deb 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/pool/main/a/acct/acct_6.5.5-1ubuntu1_amd64.deb 2018-06-05 23:57:15 +0000 differ
=== added file 'tools/fixtures/mirror/pool/main/a/acct/acct_6.5.5-1ubuntu5_amd64.deb'
42Binary files tools/fixtures/mirror/pool/main/a/acct/acct_6.5.5-1ubuntu5_amd64.deb 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/pool/main/a/acct/acct_6.5.5-1ubuntu5_amd64.deb 2018-06-05 23:57:15 +0000 differ85Binary files tools/fixtures/mirror/pool/main/a/acct/acct_6.5.5-1ubuntu5_amd64.deb 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/pool/main/a/acct/acct_6.5.5-1ubuntu5_amd64.deb 2018-06-05 23:57:15 +0000 differ
=== added file 'tools/fixtures/mirror/pool/main/a/acct/acct_6.5.5-2.1ubuntu1_amd64.deb'
43Binary files tools/fixtures/mirror/pool/main/a/acct/acct_6.5.5-2.1ubuntu1_amd64.deb 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/pool/main/a/acct/acct_6.5.5-2.1ubuntu1_amd64.deb 2018-06-05 23:57:15 +0000 differ86Binary files tools/fixtures/mirror/pool/main/a/acct/acct_6.5.5-2.1ubuntu1_amd64.deb 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/pool/main/a/acct/acct_6.5.5-2.1ubuntu1_amd64.deb 2018-06-05 23:57:15 +0000 differ
=== added file 'tools/fixtures/mirror/pool/main/a/acct/acct_6.5.5-2.1ubuntu1_s390x.deb'
44Binary files tools/fixtures/mirror/pool/main/a/acct/acct_6.5.5-2.1ubuntu1_s390x.deb 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/pool/main/a/acct/acct_6.5.5-2.1ubuntu1_s390x.deb 2018-06-05 23:57:15 +0000 differ87Binary files tools/fixtures/mirror/pool/main/a/acct/acct_6.5.5-2.1ubuntu1_s390x.deb 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/pool/main/a/acct/acct_6.5.5-2.1ubuntu1_s390x.deb 2018-06-05 23:57:15 +0000 differ
=== added file 'tools/fixtures/mirror/pool/main/a/acct/acct_6.6.4-1_amd64.deb'
45Binary files tools/fixtures/mirror/pool/main/a/acct/acct_6.6.4-1_amd64.deb 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/pool/main/a/acct/acct_6.6.4-1_amd64.deb 2018-06-05 23:57:15 +0000 differ88Binary files tools/fixtures/mirror/pool/main/a/acct/acct_6.6.4-1_amd64.deb 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/pool/main/a/acct/acct_6.6.4-1_amd64.deb 2018-06-05 23:57:15 +0000 differ
=== added file 'tools/fixtures/mirror/pool/main/a/acct/acct_6.6.4-1_s390x.deb'
46Binary files tools/fixtures/mirror/pool/main/a/acct/acct_6.6.4-1_s390x.deb 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/pool/main/a/acct/acct_6.6.4-1_s390x.deb 2018-06-05 23:57:15 +0000 differ89Binary files tools/fixtures/mirror/pool/main/a/acct/acct_6.6.4-1_s390x.deb 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/pool/main/a/acct/acct_6.6.4-1_s390x.deb 2018-06-05 23:57:15 +0000 differ
=== added directory 'tools/fixtures/mirror/pool/main/s'
=== added directory 'tools/fixtures/mirror/pool/main/s/s390-tools'
=== added file 'tools/fixtures/mirror/pool/main/s/s390-tools/s390-tools_1.34.0-0ubuntu8_s390x.deb'
47Binary files tools/fixtures/mirror/pool/main/s/s390-tools/s390-tools_1.34.0-0ubuntu8_s390x.deb 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/pool/main/s/s390-tools/s390-tools_1.34.0-0ubuntu8_s390x.deb 2018-06-05 23:57:15 +0000 differ90Binary files tools/fixtures/mirror/pool/main/s/s390-tools/s390-tools_1.34.0-0ubuntu8_s390x.deb 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/pool/main/s/s390-tools/s390-tools_1.34.0-0ubuntu8_s390x.deb 2018-06-05 23:57:15 +0000 differ
=== added file 'tools/fixtures/mirror/pool/main/s/s390-tools/s390-tools_1.39.0-0ubuntu4_s390x.deb'
48Binary files tools/fixtures/mirror/pool/main/s/s390-tools/s390-tools_1.39.0-0ubuntu4_s390x.deb 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/pool/main/s/s390-tools/s390-tools_1.39.0-0ubuntu4_s390x.deb 2018-06-05 23:57:15 +0000 differ91Binary files tools/fixtures/mirror/pool/main/s/s390-tools/s390-tools_1.39.0-0ubuntu4_s390x.deb 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/pool/main/s/s390-tools/s390-tools_1.39.0-0ubuntu4_s390x.deb 2018-06-05 23:57:15 +0000 differ
=== added file 'tools/fixtures/mirror/pool/main/s/s390-tools/s390-tools_2.3.0-0ubuntu3_s390x.deb'
49Binary files tools/fixtures/mirror/pool/main/s/s390-tools/s390-tools_2.3.0-0ubuntu3_s390x.deb 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/pool/main/s/s390-tools/s390-tools_2.3.0-0ubuntu3_s390x.deb 2018-06-05 23:57:15 +0000 differ92Binary files tools/fixtures/mirror/pool/main/s/s390-tools/s390-tools_2.3.0-0ubuntu3_s390x.deb 1970-01-01 00:00:00 +0000 and tools/fixtures/mirror/pool/main/s/s390-tools/s390-tools_2.3.0-0ubuntu3_s390x.deb 2018-06-05 23:57:15 +0000 differ
=== added file 'tools/setup-archive-fixture-in-server.sh'
--- tools/setup-archive-fixture-in-server.sh 1970-01-01 00:00:00 +0000
+++ tools/setup-archive-fixture-in-server.sh 2018-06-05 23:57:15 +0000
@@ -0,0 +1,30 @@
1#!/bin/bash -e
2#
3# Goal: idempotent script to setup this server with an archive
4# built from the test fixture. That is, a reduced set of manpages
5# to just test the functionality of the tool.
6#
7# Notes:
8#
9# - This script should be run as root
10# - This script should be created/structured so that
11# it's idempotent
12
13DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
14
15# Defining arch avoids shellcheck lint
16ARCH=""
17
18source "$DIR/../config"
19mkdir -p "$DEBDIR"
20
21# do this to avoid having to rm -rf whatever was in the mirror before I
22# start. This seems the safest to avoid mistakingly blowing away
23# someones mirror if they run this script accidently. It would instead
24# just blow away the packages.gz files, which are fast to re-download.
25cd -- "$DIR/fixtures/mirror" && find . -type f -exec sh -c '
26 for x do
27 mkdir -p "$0/${x%/*}"
28 mv "$x" "$0/$x"
29 done
30' "$DEBDIR" {} +
031
=== modified file 'tools/setup-in-server.sh'
--- tools/setup-in-server.sh 2018-05-23 19:48:06 +0000
+++ tools/setup-in-server.sh 2018-06-05 23:57:15 +0000
@@ -12,15 +12,7 @@
1212
13DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"13DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
1414
15apt update
16
17# use apt-mirror to setup a "small" archive mirro for testing the local
18# archive case, as this is how production is run.
19apt install -y apache2 apt-mirror < /dev/null
20
21cp -v "$DIR/../examples/mirror.list" /etc/apt/mirror.list
22cp -v "$DIR/../examples/manpages-site.conf" /etc/apache2/sites-available/15cp -v "$DIR/../examples/manpages-site.conf" /etc/apache2/sites-available/
23ln -sf /var/spool/apt-mirror/mirror/archive.ubuntu.com/ubuntu/ ../ubuntu
2416
25a2ensite manpages-site17a2ensite manpages-site
26a2enmod cgi18a2enmod cgi
2719
=== added file 'tools/update-fixtures.sh'
--- tools/update-fixtures.sh 1970-01-01 00:00:00 +0000
+++ tools/update-fixtures.sh 2018-06-05 23:57:15 +0000
@@ -0,0 +1,68 @@
1#!/bin/bash -e
2#
3#TODO: CLEANUP
4# Goal: idempotent script to setup this server with an archive
5# built from the test fixture. That is, a reduced set of manpages
6# to just test the functionality of the tool.
7#
8# Notes:
9#
10# - This script should be run as root
11# - This script should be created/structured so that
12# it's idempotent
13
14DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
15MIRROR="$DIR/fixtures/mirror"
16PORTS="http://ports.ubuntu.com"
17
18# Keeps shellcheck happy
19ARCH=""
20source "$DIR/../config"
21
22# - multi-arch (s390-tools) - TODO: this makes a lot of manpages, maybe
23# slim down?
24# - something in main (acct)
25PACKAGES="powerpc-ibm-utils acct s390-tools"
26
27# Download packages for all combinations. Note, some packages are not
28# in all pockets, so don't fail on download errors.
29for distro in $DISTROS; do
30 for repo in $REPOS; do
31 for arch in $ARCH; do
32
33 path="dists/$distro/$repo/binary-$arch"
34 packagesgz="$path/Packages.gz"
35 mkdir -p "$MIRROR/$path"
36 if [ "$arch" == "amd64" ]; then
37 site="$ARCHIVE"
38 else
39 site="$PORTS"
40 fi
41 echo "$site/$packagesgz"
42 curl -s "$site/$packagesgz" -o "$MIRROR/$packagesgz"
43
44 for package in $PACKAGES; do
45 filename=$(gunzip -c "$MIRROR/$packagesgz" \
46 | egrep "(^Filename: |^Package: )" \
47 | sed 'N;s/\n/ /' \
48 | grep "Package: $package " \
49 | awk '{ print $4 }')
50 if [ -n "$filename" ]; then
51 echo " - [$package]: $site/$filename"
52 curl -fs "$site/$filename" \
53 -o "$MIRROR/$path/$filename" \
54 --create-dirs
55 fi
56 done
57 (cd "$MIRROR/$path"; dpkg-scanpackages . | gzip -cn > Packages.gz)
58 (cd -- "$MIRROR/$path" &&
59 find . -type f -name '*.deb' -exec sh -c '
60 for x do
61 mkdir -p "$0/${x%/*}"
62 mv "$x" "$0/$x"
63 done
64 ' "$MIRROR" {} +)
65 rm -rf "$MIRROR/$path/pool"
66 done
67 done
68done
069
=== added file 'tools/update-microsite-container.sh'
--- tools/update-microsite-container.sh 1970-01-01 00:00:00 +0000
+++ tools/update-microsite-container.sh 2018-06-05 23:57:15 +0000
@@ -0,0 +1,35 @@
1#!/bin/bash -e
2#
3# Goal: create a small microsite in a container from this branch
4#
5# Notes:
6#
7# - A new container will be created each time.
8# - This script should be run as root
9# - Your code will be copied into the microsite
10
11DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
12NAME=${MICROSITE_CONTAINER:-manpages-microsite}
13SITE_PATH=/srv/manpages.ubuntu.com
14
15if ! lxc info "$NAME" 2>/dev/null; then
16 echo "-------------------------------------------"
17 echo "Error: Existing container not found: $NAME"
18 echo "Run 'make microsite-container' first"
19 echo "-------------------------------------------"
20 exit 1
21fi
22
23tar cf - "$DIR/../" | lxc exec "$NAME" -- tar xvf - -C "$SITE_PATH"
24lxc exec "$NAME" -- sh -c "cd $SITE_PATH; make deps manpage-repo"
25
26echo "--------"
27echo "Summary:"
28echo "--------"
29echo ""
30lxc list "$NAME"
31
32IP=$(lxc info "$NAME" |grep eth0: |grep -v inet6 | awk '{ print $3 }')
33echo ""
34echo "Site URL: http://$IP:8080"
35echo " * Try searching for 'ac'"
036
=== modified file 'www/assets/light/css/styles.css'
--- www/assets/light/css/styles.css 2012-12-28 19:54:23 +0000
+++ www/assets/light/css/styles.css 2018-06-05 23:57:15 +0000
@@ -7,6 +7,9 @@
7 margin: 0px;7 margin: 0px;
8 padding: 0px;8 padding: 0px;
9}9}
10pre {
11 font-family: "Ubuntu Mono", "Andale Mono", "DejaVu Sans Mono", monospace;
12}
10#container {13#container {
11 background: #f7f6f5;14 background: #f7f6f5;
12 margin: 0px auto 20px;15 margin: 0px auto 20px;
@@ -260,6 +263,9 @@
260#subheader ul li a:hover {263#subheader ul li a:hover {
261 color: #772953;264 color: #772953;
262}265}
266#subheader ul li.current {
267 font-weight: bold;
268}
263#subheader ul li a, #subheader ul li span, #subheader ul li input {269#subheader ul li a, #subheader ul li span, #subheader ul li input {
264 padding: 12px 8px 0;270 padding: 12px 8px 0;
265 display: block;271 display: block;
266272
=== modified file 'www/functions.js'
--- www/functions.js 2018-05-24 20:05:50 +0000
+++ www/functions.js 2018-06-05 23:57:15 +0000
@@ -99,13 +99,13 @@
99 versions.push({"name":"artful", "number":"17.10"});99 versions.push({"name":"artful", "number":"17.10"});
100 versions.push({"name":"bionic", "number":"18.04 LTS"});100 versions.push({"name":"bionic", "number":"18.04 LTS"});
101 for (var i=0; i<versions.length; i++) {101 for (var i=0; i<versions.length; i++) {
102 if (location.href.match("\.html$")) {102 if (location.href.match("\.html$")) {
103 href = location.href;103 href = location.href;
104 href = href.replace(/\/manpages\/[^\/]*/, "/manpages/" + versions[i]["name"]);104 href = href.replace(/\/manpages\/[^\/]*/, "/manpages/" + versions[i]["name"]);
105 document.write("<li class=\"active\" id=\"" + highlight(versions[i]["name"]) + "\"><a href=\"" + href + "\">" + versions[i]["number"] + "</a></li>");105 document.write("<li class=\"active " + highlight(versions[i]["name"]) + "\"><a href=\"" + href + "\">" + versions[i]["number"] + "</a></li>");
106 } else {106 } else {
107 document.write("<li id=\"" + highlight(versions[i]["name"]) + "\"><a href=\"/manpages/" + versions[i]["name"] + "\">" + versions[i]["number"] + "</a></li>");107 document.write("<li class=\"" + highlight(versions[i]["name"]) + "\"><a href=\"/manpages/" + versions[i]["name"] + "\">" + versions[i]["number"] + "</a></li>");
108 }108 }
109 }109 }
110 document.write("<li><a href=\"javascript:printManpage()\"><img src=/img/printer.png></a></li>");110 document.write("<li><a href=\"javascript:printManpage()\"><img src=/img/printer.png></a></li>");
111 document.write("</ul>");111 document.write("</ul>");

Subscribers

People subscribed via source and target branches