Arch Linux ARM Rollback Machine

Posted by JeremyL on Wed 04 December 2013

NOTE: The rollback machine is now defunct. We have no plans on bringing this back. That means no point in offering me things to do it!!

AdminEmpire is proud to announce the release of a rollback machine for Arch Linux ARM.

As of early this morning 12-04-2013, from this point on we will have the same rollback setup that Arch Linux does. Our rollback machine will take a daily snapshot of the ALARM repo, each update will occur around 8:36am Pacific time.

In case you're update borks something and you dont have the package in cache, this will help you out. We also are putting in .img files and tarballs.

The Rollback Machine will follow the heiarchy setup by seblu

+-- 2013
|   +-- 12
|   |   +-- 04
|   |   +-- 05
|   |   +-- 06
|   |   +-- ...
|   |   +-- 31
+-- 2014
|   +-- 01
|   |   +-- 01
|   |   +-- 02
|   |   +-- ...
|   |   +-- 21
|   |   +-- 22
|   +-- 12
|       +-- 01
|       +-- 02
|       +-- ...
|
+-- packages
|   +-- a
|   |   +-- awesome-3.5.1-1-armv6h.pkg.tar.xz
|   |   +-- awesome-3.5.2-1-armv7h.pkg.tar.xz
|   |   +-- ...
|   |   
|   +-- b
|   +-- ...
|   +-- z
|
+-- all
|   +-- awesome-3.5.1-1-armv6h.pkg.tar.xz
|   +-- ...
|   +-- zsh-5.0.2-3-armv7h.pkg.tar.xz
|   +-- zsh-5.0.2-4-armv7h.pkg.tar.xz
|   +-- ...
|
+-- last -> 2013/12/04
+-- month -> 2013/12/01
+-- week -> 2013/12/04
  1. The 20xx hierarchy contains daily snapshots of the Arch Linux ARM official mirror organized by date.
  2. The package hierarchy contains symlinks to all versions of packages. Organized by the first letter of the package.
  3. The all hierarchy contains symlinks to all versions of each package in one flat directory. No http directory listing.
  4. The last symlink is updated every day and points to the last finished mirror snapshot
  5. The week symlink is updated every week and points to the monday of the current week.
  6. The month symlink is updated every month and points to the first day of the current month.

Time Traveling

This feature allow you to get packages and databases at a given date. You can use it to:

  1. Download any old package from 12/04/2013 forward.
  2. Make Pacman be stuck on specific date.

To have pacman stuck on December 4th 2013 edit your pacman.conf

    [alarm]
    Server=http://rollback.adminempire.com/alarm-rollback-machine/2013/12/04/$arch/$repo

    [aur]
    Server=http://rollback.adminempire.com/alarm-rollback-machine/2013/12/04/$arch/$repo

    [community]
    Server=http://rollback.adminempire.com/alarm-rollback-machine/2013/12/04/$arch/$repo

    [core]
    [alarm]
    Server=http://rollback.adminempire.com/alarm-rollback-machine/2013/12/04/$arch/$repo

    [extra]
    [alarm]
    Server=http://rollback.adminempire.com/alarm-rollback-machine/2013/12/04/$arch/$repo

You can also put instead put the following in your mirrorlist file.

Server=http://rollback.adminempire.com/alarm-rollback-machine/2013/12/04/$arch/$repo

To visit the repo in your browser just go to the following URL

http://rollback.adminempire.com/alarm-rollback-machine/

It should be noted that you should not mix the rollback repo and the up to date alarm repos. In case of download failure, you can fallback on a upstream package and you will have packages not from the same epoch as the rest of the system.

*Currently the Month and weekly portion are not displaying due to there not being enough data as of yet. Month is temporarly based off the start date of 12-04-2013 until Jan when then all months will start on the 1st as normal.*

Thanks and Sources:
Seblu
Arch Wiki