mirrorer

:)
git clone https://git.sr.ht/~ashymad/mirrorer
Log | Files | Refs | LICENSE

commit 4f691a8fb638f15c7f10989e89012fffe9344ddd
Author: Szymon Mikulicz <szymon.mikulicz@posteo.net>
Date:   Sat, 13 Jun 2026 00:18:40 +0200

Inital commit

Diffstat:
A.gitignore | 2++
Afavicon.png | 0
Alogo.png | 0
Amirror.sh | 22++++++++++++++++++++++
Amirrorlist | 3+++
Astyle.css | 154+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
6 files changed, 181 insertions(+), 0 deletions(-)

diff --git a/.gitignore b/.gitignore @@ -0,0 +1,2 @@ +git/ +web/ diff --git a/favicon.png b/favicon.png Binary files differ. diff --git a/logo.png b/logo.png Binary files differ. diff --git a/mirror.sh b/mirror.sh @@ -0,0 +1,22 @@ +#!/bin/sh + +set -e + +while read line; do + srepo="$(echo "$line" | cut -d' ' -f1)" + reponame="$(echo "$srepo" | sed 's@.*/@@')" + srepodir="git/$reponame" + wrepodir="web/$reponame" + + [ -d "$srepodir" ] || git clone --mirror "$srepo" "$srepodir" + + env -C "$wrepodir" stagit "$(readlink -f "$srepodir")" + cp style.css logo.png "$wrepodir" + + for drepo in $(echo "$line" | cut -d' ' -f2-); do + git -C "$srepodir" push --mirror "$drepo" + done +done < mirrorlist + +stagit-index git/* > web/index.html +cp style.css logo.png web diff --git a/mirrorlist b/mirrorlist @@ -0,0 +1,3 @@ +https://git.sr.ht/~ashymad/mikuli.cz git@github.com:Ashymad/mikuli.cz +https://git.sr.ht/~ashymad/dotfiles git@github.com:Ashymad/Dotfiles +https://git.sr.ht/~ashymad/instow git@github.com:Ashymad/instowl diff --git a/style.css b/style.css @@ -0,0 +1,154 @@ +body { + color: #000; + background-color: #fff; + font-family: monospace; +} + +h1, h2, h3, h4, h5, h6 { + font-size: 1em; + margin: 0; +} + +img, h1, h2 { + vertical-align: middle; +} + +img { + border: 0; +} + +a:target { + background-color: #ccc; +} + +a.d, +a.h, +a.i, +a.line { + text-decoration: none; +} + +#blob a { + color: #555; +} + +#blob a:hover { + color: blue; + text-decoration: none; +} + +table thead td { + font-weight: bold; +} + +table td { + padding: 0 0.4em; +} + +#content table td { + vertical-align: top; + white-space: nowrap; +} + +#branches tr:hover td, +#tags tr:hover td, +#index tr:hover td, +#log tr:hover td, +#files tr:hover td { + background-color: #eee; +} + +#index tr td:nth-child(2), +#tags tr td:nth-child(3), +#branches tr td:nth-child(3), +#log tr td:nth-child(2) { + white-space: normal; +} + +td.num { + text-align: right; +} + +.desc { + color: #555; +} + +hr { + border: 0; + border-top: 1px solid #555; + height: 1px; +} + +pre { + font-family: monospace; +} + +pre a.h { + color: #00a; +} + +.A, +span.i, +pre a.i { + color: #070; +} + +.D, +span.d, +pre a.d { + color: #e00; +} + +pre a.h:hover, +pre a.i:hover, +pre a.d:hover { + text-decoration: none; +} + +@media (prefers-color-scheme: dark) { + body { + background-color: #000; + color: #bdbdbd; + } + hr { + border-color: #222; + } + a { + color: #56c8ff; + } + a:target { + background-color: #222; + } + .desc { + color: #aaa; + } + #blob a { + color: #555; + } + #blob a:target { + color: #eee; + } + #blob a:hover { + color: #56c8ff; + } + pre a.h { + color: #00cdcd; + } + .A, + span.i, + pre a.i { + color: #00cd00; + } + .D, + span.d, + pre a.d { + color: #cd0000; + } + #branches tr:hover td, + #tags tr:hover td, + #index tr:hover td, + #log tr:hover td, + #files tr:hover td { + background-color: #111; + } +}