CoreSystem/aptrpm: различия между версиями
(не показано 12 промежуточных версий 4 участников) | |||
Строка 1: | Строка 1: | ||
'''Sisyphus Core''' — пакетная система | |||
<onlyinclude> | <onlyinclude> | ||
== Планы по развитию apt/rpm == | |||
* пересборка всех бинарных пакетов на | * введение поддержки бинарных пакетов на zstd payload | ||
** позднее: возможно, пересборка всех бинарных пакетов на zstd payload | |||
* сборка rpm с поддержкой biarch (новой версии, или backport на старую) | * сборка rpm с поддержкой biarch (новой версии, или backport на старую) | ||
=== | == Wishlist == | ||
=== Окружение сборки пакетов === | |||
* Встраивание в упаковываемые ELF-объекты [https://systemd.io/ELF_PACKAGE_METADATA/ package notes] | |||
=== Репозитории и тулинг === | |||
* Связь между пакетами типа "рекомендация" [shaba] | |||
** RPM поддерживает в производных пакетах тег <tt>Recommends:</tt> | |||
** Интерактивный install или dist-upgrade предлагает пользователю не 2 варианта, а 3: <tt>Yes</tt>, <tt>Yes with recommends</tt>, <tt>No</tt>. Возможно, поставить это нововведение в зависимость от ключа в <tt>apt.conf</tt> [antohami] | |||
** Если выбран вариант Y и были установлены новые пакеты (далее — мн-во пакетов <tt>K</tt>), по окончании транзакции apt даёт в терминал сжато сформулированное сообщение о к-ве пакетов, "рекомендованных" пакетами из K, и подсказку, как их посмотреть/установить, в виде команды для apt. | |||
<p> | |||
Проясним терминологию. Debian policy [https://www.debian.org/doc/debian-policy/ch-relationships.html says]: | |||
<pre> | |||
Recommends | |||
<...> | |||
The Recommends field should list packages that would be found together with this one in all but unusual installations. | |||
Suggests | |||
This is used to declare that one package may be more useful with one or more others. Using this field tells the packaging system and the user that the listed packages are related to this one and can perhaps enhance its usefulness, but that installing this one without them is perfectly reasonable. | |||
</pre> | |||
</p> | |||
* Бекпорт из апстрима тега <tt>RemovePathPostfixes:</tt> [shaba]. | |||
* Быстрый и компактный contents_index (200Mb сейчас, сжимается после cat | sort | lzma до 7.5Mb, умный radix tree должен дать O(logN) время поиска файлов и размер в ~10Mb) [dottedmag, ab] | * Быстрый и компактный contents_index (200Mb сейчас, сжимается после cat | sort | lzma до 7.5Mb, умный radix tree должен дать O(logN) время поиска файлов и размер в ~10Mb) [dottedmag, ab] | ||
* Утилита <tt>apt-file</tt>, получающая contents способом, не имеющим недостатков rsync и совместимая с одноимённым интерфейсом из apt. [arseny] | |||
** rsync эффективен по к-ву сетевого трафика, но крайне неэффективен по I/O на устройствах, где хранятся новая и обновляемая копия. На rsync-сервере стоит ожидать I/O thrashing от всех качающих. | |||
* Бекпорт (или реализация заново, чего уж там) в APT поддержки [https://en.wikipedia.org/wiki/Happy_Eyeballs Happy Eyeballs]. Есть запрос от [https://t.me/version6/57180 стеснительных пользователей]. [arseny] | |||
* apt-zeroconf: поддержка поиска репозиториев в локальной сети при помощи zeroconf [dottedmag, ab] | * apt-zeroconf: поддержка поиска репозиториев в локальной сети при помощи zeroconf [dottedmag, ab] | ||
* Инструмент для создания APT-источник'а и публикации zeroconf-сервиса [dottedmag, ab]. Пакеты берутся из | * Инструмент для создания APT-источник'а и публикации zeroconf-сервиса [dottedmag, ab]. Пакеты берутся из | ||
Строка 19: | Строка 42: | ||
** Регулярных APT-источников | ** Регулярных APT-источников | ||
</onlyinclude> | </onlyinclude> | ||
=== Описание процедуры сборки пакетов === | |||
Для описания недостатков формата spec и предложений по усовершенствованию цепочки "исходники+спек → артефакты" выделена [[CoreSystem/SpecCriticism|отдельная страница]]. | |||
=== UX администратора === | |||
* Наши инструменты управления источниками пакетов непозволительно часто [[CoreSystem/aptrpm/HistoricalDebianConfusion|путают с дебианом]]. Нужно решиться: | |||
** либо рыбку съесть (спортировать и смёржить apt посвежее, или же озабочиваться совместимостью командного интерфейса с Debian), | |||
** либо не давиться косточкой (обозначиться форком и изменить апту имя). | |||
{{CoreSystem-nav}} | |||
[[Категория:RPM]] | |||
[[Категория:APT]] |
Текущая версия от 02:46, 25 ноября 2023
Sisyphus Core — пакетная система
Планы по развитию apt/rpm
- введение поддержки бинарных пакетов на zstd payload
- позднее: возможно, пересборка всех бинарных пакетов на zstd payload
- сборка rpm с поддержкой biarch (новой версии, или backport на старую)
Wishlist
Окружение сборки пакетов
- Встраивание в упаковываемые ELF-объекты package notes
Репозитории и тулинг
- Связь между пакетами типа "рекомендация" [shaba]
- RPM поддерживает в производных пакетах тег Recommends:
- Интерактивный install или dist-upgrade предлагает пользователю не 2 варианта, а 3: Yes, Yes with recommends, No. Возможно, поставить это нововведение в зависимость от ключа в apt.conf [antohami]
- Если выбран вариант Y и были установлены новые пакеты (далее — мн-во пакетов K), по окончании транзакции apt даёт в терминал сжато сформулированное сообщение о к-ве пакетов, "рекомендованных" пакетами из K, и подсказку, как их посмотреть/установить, в виде команды для apt.
Проясним терминологию. Debian policy says:
Recommends <...> The Recommends field should list packages that would be found together with this one in all but unusual installations. Suggests This is used to declare that one package may be more useful with one or more others. Using this field tells the packaging system and the user that the listed packages are related to this one and can perhaps enhance its usefulness, but that installing this one without them is perfectly reasonable.
- Бекпорт из апстрима тега RemovePathPostfixes: [shaba].
- Быстрый и компактный contents_index (200Mb сейчас, сжимается после cat | sort | lzma до 7.5Mb, умный radix tree должен дать O(logN) время поиска файлов и размер в ~10Mb) [dottedmag, ab]
- Утилита apt-file, получающая contents способом, не имеющим недостатков rsync и совместимая с одноимённым интерфейсом из apt. [arseny]
- rsync эффективен по к-ву сетевого трафика, но крайне неэффективен по I/O на устройствах, где хранятся новая и обновляемая копия. На rsync-сервере стоит ожидать I/O thrashing от всех качающих.
- Бекпорт (или реализация заново, чего уж там) в APT поддержки Happy Eyeballs. Есть запрос от стеснительных пользователей. [arseny]
- apt-zeroconf: поддержка поиска репозиториев в локальной сети при помощи zeroconf [dottedmag, ab]
- Инструмент для создания APT-источник'а и публикации zeroconf-сервиса [dottedmag, ab]. Пакеты берутся из
- CD/DVD-дисков релизов
- CD/DVD-дисков апдейтов
- Регулярных APT-источников
Описание процедуры сборки пакетов
Для описания недостатков формата spec и предложений по усовершенствованию цепочки "исходники+спек → артефакты" выделена отдельная страница.
UX администратора
- Наши инструменты управления источниками пакетов непозволительно часто путают с дебианом. Нужно решиться:
- либо рыбку съесть (спортировать и смёржить apt посвежее, или же озабочиваться совместимостью командного интерфейса с Debian),
- либо не давиться косточкой (обозначиться форком и изменить апту имя).