main

Archlinux repo freeze: 2011-10

Сделан очередной срез репозиториев арча. На этот раз - без битых ссылок. Индексы пересозданы, старые доступны в поддиректории ".oldindex".

Команды:

cd /path/to/arch/repo
mkdir _archive/2011-10
cp -r -t "_archive/2011-10/" core/ community/ extra/ pool/ arch-games/ aur-local{/,-custom/} _abs/
fdupes -r -1 "." | while read files
> do
>   SRC=$(echo "$files" | cut "-d " -f 1)
>   DST=$(echo "$files" | cut "-d " -f 2)
>   ln -f "$SRC" "$DST"
> done
find -L . -type l # ищем битые ссылки
# докачиваем недостающее
ls -1 -d */ | tr -d "/" | while read repo
> do
>   [ "$repo" == "pool" ] && continue
>   pushd "$repo/os/i686/" || continue
>   rm -rf ".oldindex/"
>   mkdir ".oldindex/"
>   mv $repo.* ".oldindex/"
>   repo-add -d -f -q "$repo.db.tar.gz" *.pkg.tar.?z
>   popd
> done

TODO: В следующий раз сделать сразу создание хардлинков. Долго.