mirror-checker/README.md

87 lines
4.4 KiB
Markdown

# Mirror Checker
This mirror status checker determines whether CSC mirror is up-to-date with upstream.
## How To Run
A configuration file may be provided through standard input. Without a configuration file, execute `python main.py`. By default, all the available distributions will be checked. With a configuration file, execute `python main.py < name_of_config_file.in`, for example, `python main.py < example.in`. In this case, only the distributions listed in the configuration file will be checked.
## Resources
- [CSC Mirror](http://mirror.csclub.uwaterloo.ca/)
- [Debian Mirror Status Checker](https://mirror-master.debian.org/status/mirror-status.html)
- [Debian Mirror Status Checker Code](https://salsa.debian.org/mirror-team/mirror/status)
if we can just view their repo online, we only have to remember the link for their repo and then check the latest timestamp in their repo the same way we check ours
even if the date relies on a specific file in their repo, we can still find the right link for it
to find repos of the mirrored projects to check, just search "projectName mirrors"
not done:
damnsmalllinux: http://distro.ibiblio.org/damnsmall/ this project seems abandoned, candidate for brute force looping
debian-backports: no public repo, no timestamp, no mirror tracker
debian-volatile: no public repo, no timestamp, no mirror tracker
linuxmint: no public repo
linuxmint-packages pool: http://rsync-packages.linuxmint.com/pool/
macPorts: only distfiles has public repo, no timestamp, too large to loop through
NetBSD: http://ftp.netbsd.org/pub/NetBSD/ has public repo, no timestamp, web directory hard to loop through, no mirror tracker
opensuse: http://download.opensuse.org/ has public repo, a possible timestamp called latest in history, our mirror doesn't have this file tho, no mirror tracker
puppylinux: https://distro.ibiblio.org/puppylinux/ has public repo, no timestamp, too hard to loop through, not likely to have a mirror tracker
racket: no public repo, no timestamp, no mirror status tracker
raspberry pi: https://archive.raspberrypi.org/ no timestamp, no mirror status tracker
sagemath: don't know how to deal with this, it's a website
salt stack: don't know how to deal with this, it's a website
scientific: https://scientificlinux.org/downloads/sl-mirrors/ would be easy to scrape the mirror status page, except that csc is not listed here
ubuntu-ports-releases: https://cdimage.ubuntu.com/releases/ has public repo, no timestamp, no status tracker
x.org: https://www.x.org/releases/ no timestamp, but candidate for brute force looping since it has few folders, no status tracker
Xiph: no timestamp, too big to loop through, no status tracker
xubuntu-releases
done:
almalinux
alpine
apache
archlinux
centos
ceph
CPAN
CRAN: https://cran.r-project.org/mirmon_report.html has a mirror tracker
csclub: for now, this is the upstream itself, so it needs not to be checked
CTAN: https://www.ctan.org/mirrors/mirmon has a mirror tracker
Cygwin
debian
debian-cd
debian-multimedia
debian-ports
debian-security
eclipse
emacsconf: for now, this is the upstream itself, so it needs not to be checked
fedora
freeBSD
gentoo-distfiles
gentoo-portage
gnome
GNU
gutenberg
ipfire
kde
kde-applicationdata
kernel
manjaro
mxlinux
mxlinux-iso: this one seems out of sync on the official tracker for 134 days, which is weird
mysql: http://mirrors.sunsite.dk/mysql/
nongnu: http://download.savannah.nongnu.org/releases/ https://savannah.gnu.org/maintenance/Mirmon/ http://download.savannah.gnu.org/mirmon/savannah/
openbsd
parabola: https://repo.parabola.nu/ https://www.parabola.nu/mirrors/status/
pkgsrc
qtproject: https://download.qt.io/
raspbian: http://archive.raspbian.org/raspbian/ snapshotindex.txt is most likely a timestamp, tho i'm not sure. also i think our mirror is completely outdated, it's not listed on official mirror list
slackware: https://mirrors.slackware.com/mirrorlist/ https://mirrors.slackware.com/slackware/ checking using the last updated date here, don't know if it's entirely accurate
tdf: https://download.documentfoundation.org/
trisquel: https://trisquel.info/mirmon/index.html out of date website!? please recheck this!!!
ubuntu: https://launchpad.net/ubuntu/+mirror/mirror.csclub.uwaterloo.ca-archive
ubuntu-ports: http://ports.ubuntu.com/ubuntu-ports/ checks the file anonster.canonical.com, which appears to be a timestamp (check it to make sure!!!)
ubuntu-releases: https://releases.ubuntu.com/
vlc: http://download.videolan.org/pub/videolan/