This commit is contained in:
21
root/defaults/alpine-mirror
Normal file
21
root/defaults/alpine-mirror
Normal file
@@ -0,0 +1,21 @@
|
||||
#!/bin/sh
|
||||
# make sure we never run 2 rsync at the same time
|
||||
lockfile="/tmp/alpine-mirror.lock"
|
||||
if [ -z "$flock" ] ; then
|
||||
exec env flock=1 flock -n $lockfile "$0" "$@"
|
||||
fi
|
||||
src=rsync://rsync.alpinelinux.org/alpine/
|
||||
dest=/app/www/alpine/
|
||||
|
||||
exclude="--exclude v2.* --exclude v3.23 --exclude v3.1 --exclude v3.2 --exclude v3.3 --exclude v3.4 --exclude v3.5 --exclude v3.6 --exclude v3.7 --exclude v3.8 --exclude v3.9 --exclude v3.10 --exclude v3.11 --exclude v3.12 --exclude v3.13 --exclude v3.14 --exclude v3.15 --exclude>
|
||||
mkdir -p "$dest"
|
||||
/usr/bin/rsync \
|
||||
--archive \
|
||||
--update \
|
||||
--hard-links \
|
||||
--delete \
|
||||
--delete-after \
|
||||
--delay-updates \
|
||||
--timeout=600 \
|
||||
$exclude \
|
||||
"$src" "$dest"
|
||||
25
root/defaults/lighttpd.conf
Normal file
25
root/defaults/lighttpd.conf
Normal file
@@ -0,0 +1,25 @@
|
||||
server.document-root = "/app/www/alpine"
|
||||
|
||||
server.port = 80
|
||||
|
||||
server.username = "pi"
|
||||
server.groupname = "users"
|
||||
|
||||
mimetype.assign = (
|
||||
".html" => "text/html",
|
||||
".txt" => "text/plain",
|
||||
".jpg" => "image/jpeg",
|
||||
".png" => "image/png",
|
||||
".css" => "text/css",
|
||||
".js" => "application/x-javascript",
|
||||
".svg" => "image/svg+xml"
|
||||
)
|
||||
|
||||
dir-listing.activate = "enable"
|
||||
|
||||
server.modules += ( "mod_access", "mod_accesslog", "mod_setenv" )
|
||||
index-file.names = ( "index.html" )
|
||||
server.event-handler = "linux-sysepoll"
|
||||
setenv.add-response-header += (
|
||||
"Cache-Control" => "must-revalidate"
|
||||
)
|
||||
4
root/defaults/rsyncd.conf
Normal file
4
root/defaults/rsyncd.conf
Normal file
@@ -0,0 +1,4 @@
|
||||
[alpine]
|
||||
path = /app/www/alpine
|
||||
comment = My Alpine Linux Mirror
|
||||
RSYNC_OPTS="--bwlimit=500"
|
||||
34
root/defaults/stats
Normal file
34
root/defaults/stats
Normal file
@@ -0,0 +1,34 @@
|
||||
#!/bin/sh
|
||||
|
||||
output="/app/www/.stats"
|
||||
nic="eth0"
|
||||
|
||||
generate_index() {
|
||||
cat <<-EOF
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="cache-control" content=no-cache">
|
||||
<meta http-equiv="refresh" content="3000">
|
||||
<title>Alpine Linux mirror statistics</title>
|
||||
</head>
|
||||
<body>
|
||||
<table border="0">
|
||||
<tr><td><img src="summary.png" alt="summary"></td><td><img src="hours.png" alt="hours"></td></tr>
|
||||
<tr><td rowspan="2"><img src="days.png" alt="days"></td><td><img src="top10.png" alt="top10"></td></tr>
|
||||
<tr><td><img src="months.png" alt="months"></td></tr>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
EOF
|
||||
}
|
||||
|
||||
if [ ! -f "$output"/index.html ]; then
|
||||
mkdir -p $output
|
||||
generate_index > "$output"/index.html
|
||||
fi
|
||||
|
||||
for type in hours days months top10 summary hsummary vsummary; do
|
||||
vnstati --${type} -i $nic -o $output/${type}.png
|
||||
done
|
||||
Reference in New Issue
Block a user