You are not logged in.
Pages: 1
Hello,
I am actually a developer for a different distribution. Recently, I stumbled across https://www.archlinux.de/?page=MirrorStatus and realized that we would like to implement something similar. So, instead of trying to recreate the proverbial wheel, I would like to first ask if the source code for making this page work is Open Source and is available for our uses (after whatever necessary modifications)?
I'm sorry if this is an incorrect forum for posting this question. If it is, please direct me to the correct area to ask this question.
Thank you!
Offline
Send Pierre (http://bbs.archlinux.org/profile.php?id=1760) a PM. He would be the one to know how this is done.
Offline
gri6507..
You nick looks familiar. Are you from unity linux?
Offline
gri6507..
You nick looks familiar. Are you from unity linux?
He is from Unity Linux, that distro sounds kind of similar to Arch!
Never noticed Arch had this MirrorStatus page till now, nicely done!
“There are two ways of constructing a software design. One way is to make it so simple that there are obviously no deficiencies. And the other way is to make it so complicated that there are no obvious deficiencies.”-- C.A.R. Hoare
Offline
Send Pierre (http://bbs.archlinux.org/profile.php?id=1760) a PM. He would be the one to know how this is done.
Thanks for the contact point. I'll be sending Pierre a PM.
P.S. I am indeed from Unity Linux - good memory! Our group is still rather young and we are always looking for great ways to improve our both our development process and our product. That's why we try to refer to other distros, including Arch to see how certain aspects have been addressed there. That's exactly why I was interested in the MirrorStatus implementation (which, by the way, i think it top notch!)
Offline
Allan wrote:Send Pierre (http://bbs.archlinux.org/profile.php?id=1760) a PM. He would be the one to know how this is done.
Thanks for the contact point. I'll be sending Pierre a PM.
I actually do not see a way to contact Pierre from his profile page. The Jabber contact (is it like an email address?) bounced back as undeliverable. Is there another means?
Offline
pierre at archlinux dot de
Offline
Thanks. Email sent.
Offline
Kind of off topic but I really like the design of http://unity-linux.org
Just thought I'd throw that out there ![]()
![]()
Offline
Kind of off topic but I really like the design of http://unity-linux.org
Just thought I'd throw that out there
Thanks for the praise. It took us a few redesigns to get to this point, but in the end, our web admins really nailed it! I will forward your comment to them.
Offline
There's also mirmon which is open source, but not exactly the same as the AL mirror status page
Example:
http://www.archserver.org/mirmon
PKGBUILD:
http://git.archserver.org/?p=hydrogen-a … 7f0133fc19
Are you familiar with our Forum Rules, and How To Ask Questions The Smart Way?
BlueHackers // fscanary // resticctl
Offline
Heya everyone...
I wanted to show you the fruits of our labor and make sure everyone know how grateful we are to Arch and the community. Announcement is here: http://unity-linux.org/mirror-mirror-on-the-wall/
Mirror Listing is here: http://unity-linux.org/mm/mirrorstatus.html
Thanks again everyone ![]()
Offline
The funny thing is that this MirrorStatus page started as a proof of concept (and sadly didn't evolve since then a lot). The code is availalbe under GPL. But it was never meant to be used standalone and is more or less tied to the Arch website and Arch Linux in general. But one could get some inspiration from it.
It contains of several scripts:
* At first there is this cronjob which runs hourly and collects all data. It also updated the mirror list from our main database: https://git.archlinux.de/www.archlinux. … irrors.php All data and possible errors are logged into a database. This way we wont just have an overview of the current mirror state but could also generate statistics over a longer period. ATM I don't use all its potential. The MirrorStatus page just shows the average sync delay and the average time it takes to download files.
* The actual output is generated at https://git.archlinux.de/www.archlinux. … Status.php (it might look a little weired due to the caching)
* There is also a special page for reflector to generate a list of fast and up2date mirrors: https://git.archlinux.de/www.archlinux. … lector.php
* Another proof of concept is a simple Download redirector: https://git.archlinux.de/www.archlinux. … Mirror.php
Offline
Since we're in the mood for sharing things for mirrors... I've written this script to redirect requests to a geographically closest mirror based on the client IP address:
http://git.archserver.org/?p=sysopscrip … 269b1186e2
The mapping is a static mapping based on IP -> Country -> Mirror but it's a simple way to off-load some bandwidth usage to other mirrors, hopefully providing a faster response for the end-user ![]()
EDIT: oh, and it's implemented using Apache mod_rewrite:
HostnameLookups On
RewriteMap geomap prg:/usr/local/sysopscripts/geo-mapper.pl
RewriteCond %{REMOTE_ADDR} ^(.*)$
RewriteRule ^(.*)$ ${geomap:%1|http://repo.archserver.org}$1 [redirect=temporary,last,nocase,env=mirror:${geomap:%1|http://repo.archserver.org}]The 'env' part of the redirect is used for logging:
LogFormat "%{%s}t %b %v %t %{mirror}e" trafficLast edited by fukawi2 (2010-02-25 09:13:31)
Are you familiar with our Forum Rules, and How To Ask Questions The Smart Way?
BlueHackers // fscanary // resticctl
Offline
You should have a look at mirrorbrain for this usage.
Offline
The funny thing is that this MirrorStatus page started as a proof of concept (and sadly didn't evolve since then a lot). The code is availalbe under GPL. But it was never meant to be used standalone and is more or less tied to the Arch website and Arch Linux in general. But one could get some inspiration from it.
It contains of several scripts:
* At first there is this cronjob which runs hourly and collects all data. It also updated the mirror list from our main database: https://git.archlinux.de/www.archlinux. … irrors.php All data and possible errors are logged into a database. This way we wont just have an overview of the current mirror state but could also generate statistics over a longer period. ATM I don't use all its potential. The MirrorStatus page just shows the average sync delay and the average time it takes to download files.
* The actual output is generated at https://git.archlinux.de/www.archlinux. … Status.php (it might look a little weired due to the caching)
* There is also a special page for reflector to generate a list of fast and up2date mirrors: https://git.archlinux.de/www.archlinux. … lector.php
* Another proof of concept is a simple Download redirector: https://git.archlinux.de/www.archlinux. … Mirror.php
Thank you Pierre,
I will certainly take a look at the details of Arch's implementation. For now, based on the input of fukawi2, we have a working solution using mirmon (see earlier posts in this thread). I don't know if either one solution is better than the other, but that's something I'll be looking into.
Offline
You should have a look at mirrorbrain for this usage.
Oooohhh, pretty ![]()
Didn't know about that (hence I reinvented the wheel)... I'll look into it more, thanks ![]()
Are you familiar with our Forum Rules, and How To Ask Questions The Smart Way?
BlueHackers // fscanary // resticctl
Offline
Pages: 1