LINUX.ORG.RU

История изменений

Исправление teod0r, (текущая версия) :

убрать дубли, проверить версии

это всё будет делаться в интервалах между запуском установки гаждого пакета: просто греп текстого файла, содержащего то, что уже установлено

ок: есть 1 пакет - парсим сорсы ---> 10 пакетов зависимостей.
распаковываем сорсы 10 пакетов, парсим сорсы ---> ещё по 10 зависимостей у каждого

качаем первые 10 пакетов; запускаем сначала установку первого, спрашиваем опции, создаём файл с опциями этого пакета и файл его зависимостей; -> проверяем список установленных и качаем пакеты из списка, которых нет в списке установленных; запускаем установку первого, создаём файлы опций, зависимостей; -> проверяем; переходим ко второму пакету; -> проверяем...
и так для каждого пакета по дереву по очереди. чего считать? после установки каждого пакета обновляется список установленных пакетов, потом перед установкой следущего, этот список просто грепается при проверке наличия в системе нужной зависимости. когда доходит до последней матрёшки в ветке зависимостей, поднимаемся на уровень выше — запускаем install для того пакета, ради которого устанавливалось дерево его зависимостей, пишем его в файл списка установленных в системе пакетов.
зачем десятки гигов рамы?

Исправление teod0r, :

убрать дубли, проверить версии

это всё будет делаться в интервалах между запуском установки гаждого пакета: просто греп текстого файла, содержащего то, что уже установлено

ок: есть 1 пакет - парсим сорсы ---> 10 пакетов зависимостей.
распаковываем сорсы 10 пакетов, парсим сорсы ---> ещё по 10 зависимостей у каждого

качаем первые 10 пакетов; запускаем сначала установку первого, спрашиваем опции, создаём файл с опциями этого пакета и файл его зависимостей; -> проверяем список установленных и качаем пакеты из списка, которых нет в списке установленных; запускаем установку первого, создаём файлы опций, зависимостей; -> проверяем; переходим ко второму пакету; -> проверяем...
и так для каждого пакета по дереву по очереди. чего считать? после установки каждого пакета обновляется список установленных пакетов, потом перед установкой следущего, этот список просто грепается при проверке наличия в системе нужной зависимости. когда доходит до последней матрёшки в ветке зависимостей, поднимаемся на уровень выше — запускаем install для того пакета, ради которого устанавливалось дерево его зависимостей, пишем его в файл списка установленных в системк пакетов.
зачем десятки гигов рамы?

Исходная версия teod0r, :

убрать дубли, проверить версии

это всё будет делаться в интервалах между запуском установки гаждого пакета: просто греп текстого фала, содержащего то, что уже установлено

ок: есть 1 пакет - парсим сорсы ---> 10 пакетов зависимостей.
распаковываем сорсы 10 пакетов, парсим сорсы ---> ещё по 10 зависимостей у каждого

качаем первые 10 пакетов; запускаем сначала установку первого, спрашиваем опции, создаём файл с опциями этого пакета и файл его зависимостей; -> проверяем список установленных и качаем пакеты из списка, которых нет в списке установленных; запускаем установку первого, создаём файлы опций, зависимостей; -> проверяем; переходим ко второму пакету; -> проверяем...
и так для каждого пакета по дереву по очереди. чего считать? после установки каждого пакета обновляется список установленных пакетов, потом перед установкой следущего, этот список просто грепается при проверке наличия в системе нужной зависимости. когда доходит до последней матрёшки в ветке зависимостей, поднимаемся на уровень выше — запускаем install для того пакета, ради которого устанавливалось дерево его зависимостей, пишем его в файл списка установленных в системк пакетов.
зачем десятки гигов рамы?