2017-10-01 13:43:27 -07:00
|
|
|
#!/bin/bash
|
|
|
|
|
2016-02-15 15:26:59 +03:00
|
|
|
set -e
|
2017-10-01 13:43:27 -07:00
|
|
|
set -u
|
|
|
|
set -o pipefail
|
|
|
|
MIRROR="https://mirrors.kernel.org/ubuntu"
|
|
|
|
PKGS="$MIRROR/dists/xenial/universe/binary-amd64/Packages.gz"
|
|
|
|
|
|
|
|
if [ $# -ne 1 ]; then
|
|
|
|
echo "Usage: $0 package-name" 1>&2
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ -d "$1" ]; then
|
|
|
|
echo "Directory $1 already exists -- exiting"
|
|
|
|
exit 0
|
|
|
|
fi
|
|
|
|
|
|
|
|
if ! pkg=$(curl -sSL "$PKGS" | zgrep "Filename.*$1" | awk '{ print $2 }'); then
|
|
|
|
echo "ERROR: no packages matching $1" 1>&2
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ "$(wc -w <<< "$pkg")" -gt 1 ]; then
|
|
|
|
echo "$pkg" 1>&2
|
|
|
|
echo "ERROR: more than one match for $1" 1>&2
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
|
|
|
|
mkdir "$1"
|
|
|
|
cd "$1"
|
|
|
|
|
|
|
|
wget "$MIRROR/$pkg"
|
|
|
|
pkg=$(basename "$pkg")
|
|
|
|
ar vx "$pkg"
|
|
|
|
tar xJvf data.tar.xz
|