# Прога для управления бинарными пакетами в Gentoo

## theSoul

Привет народ. Просьба заценить скриптец и высказать пожелания/предложения/критику, и, если есть желание, присоединиться к разработке.

Значит, решил я написать скрипт для portage, который бы предоставлял удобный интерфейс к базе .tbz2-пакетов в Gentoo. Скрипт написан на Python и для взаимодействия с базой пакетов использует собственные модули системы портежей из /usr/lib/portage/pym.

На данный момент скрипт умеет показывать общую информацию об имеющихся пакетах, выводить список пакетов в формате категория/пакет и список .tbz2 файлов. Планируется наделить его способностью делать бэкап пакетов на cd-r/rw, dvd или в указанную директорию, а также удалять старые версии пакетов. Ваши идеи?

Скрипт можно взять здесь: http://dog.front.ru/binpkgtool

Почта.ру пихает баннеры куда не попадя, так что лучше сделать copy&paste из окна браузера.

./binpkgtool help - справка. Опции clean & backup пока не работают.

Для запуска не нужно ничего, кроме системы портежей.

----------

## svyatogor

я мало бинарными пакетами пользуюсь, но мне кажется утилитка весьма полезная. может есть смысл ее с etcat интегрировать?

----------

## viy

Просто и весьма полезно!

Буду ждать дальнейшего развития, тем более, что часто всплывают вопросы управления бинарными пакетами.

----------

## theSoul

Обычно я ставлю софт командой `emerge -b', которая кладёт бинарный пакет /usr/portage/packages. Мне это нужно, так как я имею Gentoo установленной на рабочем и на домашнем компах. На работе выделенная линия, а дома дохлый диалап, поэтому качать обновления приходится на работе. И чтобы не заморачиваться с перекомпиляцией дома на не самой быстрой тачке, я делаю `emerge -b' на рабочей и домой несу готовые пакеты на болванке. Да и при переустановке системы полезно, чтобы не париться с компиляцией. Но:

```

$ du -h /usr/portage/packages/All

1.8G    /usr/portage/packages/All

$ ls /usr/portage/packages/All | wc

    996     996   21370

```

~2 Гб в ~1k файлов, многие из которых - разные версии одних и тех же программ. Поди попробуй вручную удалить ненужное... Отсюда и возникла идея написать скрипт, который бы использовал движок portage для взаимодействия с этой свалкой.

Думаю, стоит ещё добавить возможность заливать пакеты на фтп, скажем, для централизованного обновления в сети Gentoo-машин.

----------

## theSoul

Я доработал скрипт: http://dog.front.ru/binpkg

Все фичи работают, кроме создания образов. Можно делать бэкап пакетов в директорию, удобно писать на болванку в пакетном режиме. Ещё можно обновлять свои пакеты из директории. Например, бэкапишь на одной тачке так:

$ BACKUPDIR=/mnt/cdrw binpkg backup new

а на другую их сливаешь так:

# UPDATEDIR=/mnt/cdrom binpkg update

можно удалить старые версии пакетов:

# binpkg clean

можно даже так:

# PKGDIR=/mnt/cdrw binpkg clean

Вобщем, для моих потребностей достаточно. пожалуй, сделаю запись в образ, да добавлю выбор пакетов по категориям. Или ещё что-нибудь? (-:

----------

## YD

```
FEATURES="buildpkg"
```

 @ make.conf

Единстенное, что полезное я для себя увидел, так это удаление старых tbz2 и их просмотр. Остальные опции, разве, что для администратора большого количества сервером, но пакеты достаточно часто обновляются, а шарить легче через NFS/FTP. Тогда может предприятиям, которые диски с обновлениями gentoo распростроняют в местах, где туго с интернетом.

----------

