название | архитектура | описание | пакетов | байт | обновлён |
---|---|---|---|---|---|
Binaries | x86_gcc2 | Портированные и нативные программы в бинарном виде (x86_gcc2 он же гибрид gcc2/gcc4) | - | - | ---- |
Any-arch | any | Перепакованные кросспатформенные программы (java, python и.т.п.) | - | - | ---- |
Подключение/отключение репозиториев делается консольной утилитой pkgman - подробности см. на страницах репозитория.
Установка пакетов производится стандартной GUI-программой HaikuDepot или тем же pkgman. Через индекс репозитория имеется возможность скачать выбранный пакет без его установки. Полученный таким образом пакет может быть инсталлирован вручную, путем его перемещения в папку /system/packages.
Пакеты из Any-arch не содержат нативного кода, только интерпретируемый, но зависят от пакетов из Binaries. Если обнаруживается неудовлетворённая зависимость - добавьте себе репозиторий Binaries.
Цель и логика у такой организации простые: софт из Any-arch зависит только от Питона и Явы, софт оттуда будет работать пока работают Ява и Питон из официального репозитория. Эти репозитории можно будет использовать в неизменном виде, если Haiku начнёт поддерживать новые архитектуры (например, ARM и х86_64). Кроме того Any-arch должны нормально работать на неофициальных сборках (например чистых gcc4).
Мне не нравится, как упакована Java из официальных HaikuPorts (openjdk_x86). Чтобы пакеты из Any-arch с ней корректно работали, нужно поставить подпорку - пакет openjdk_x86_aliases из Binaries. Если в будущем openjdk из HaikuPorts будет исправлен, то пакет *_aliases станет ненужным.
name | architecture | description | packages | bytes | updated |
---|---|---|---|---|---|
Binaries | x86_gcc2 | Native and ported binary applications | - | - | ---- |
Any-arch | any | Packaged cross-platform software (java, python etc.) | - | - | ---- |
Use pkgman utility to add or remove the repository to your system. Open repository page for detailed instructions.
Package installation/deinstallation can be done via standard HaikuDepot GUI application or via console pkgman utility. You may also download any hpkg from repository page and install it manually by placing it into /system/packages folder.
Any-arch contains no native code, only interpreted sources/bytecode, but apps from this repo require some packages from Binaries. Add Binaries repo to your system if you have unresolved dependency issue.
The purpose of existing repository structure is simple: Any-arch depends only on Java or Python and won't became outdated/broken as long as Java and Python work in Haiku. Another advantage is that you can seamlessly use these two repositories when (and if) Haiku gains full support of new architectures. Unofficial builds (gcc4 and so on) are also compatible with Any-arch repo.
I strongly dislike file naming in official Java port from HaikuPorts (openjdk_x86). Programs from Any-arch won't work without openjdk_x86_aliases from Binaries repo. This issue will probably be solved by evolution of openjdk_x86, so someday *_aliases package will become unnecessary.