Исходный код Sailfish OS

В соответствии с архитектурой Sailfish OS существует множество слоев, которые составляют стек Sailfish OS. Исходные репозитории для компонентов каждого слоя обычно размещаются в одной инфраструктуре.

Исходный код базового слоя, как правило, не доступен для публичного доступа. Исходные репозитории для связующего программного обеспечения Mer и библиотек пользовательского интерфейса доступны на сайте Mer.

Специфичное для Sailfish OS ПО, включая приложения и плагины промежуточного ПО, доступно на сайте GitHub. Проекты, специфичные для Sailfish SDK, расположены в соответствующем репозитории.

Для получения полного списка различных компонентов, которые составляют стек Sailfish ОS, в том числе ссылок на исходные репозитории для этих компонентов необходимо обратиться к документации по ядру и API.

Поиск исходного кода пакета

Для определения местоположение исходного репозитория для конкретного пакета предусмотрены следующие варианты:

  1. Поиск документации по ядру и API в соответствующем репозитории.
  2. Поиск по сайту build.merproject.org, а затем просмотр файла _service данного пакета для его исходного URL.
  3. Поиск на сайтах git.merproject.org и github.com/sailfishos.

Возможно использование инструментов управления пакетами, таких как pkcon и zypper. Для них может потребоваться предварительная установка репозитория mer-tools. Подробная информация об инструментах разработки Mer представлена на сайте wiki.merproject.org.

Возможно использование rpm для поиска информации о том, какие пакеты установлены или могут быть установлены, какие пакеты предоставляют те или иные файлы, а также из какого исходного репозитория были собраны пакеты.

Следующие команды могут быть использованы для поиска и получения информации об установленных или доступных для установки пакетах:

devel-su pkcon search name browser
devel-su pkcon get-details sailfish-browser

или

devel-su zypper se browser
devel-su zypper info sailfish-browser

Для определения того, какой пакет предоставляет данный файл необходимо использовать команду:

devel-su rpm -qf /etc/gps.conf

Сайт build.merproject.org содержит информацию о пакетах. После поиска необходимого пакета возможно проанализировать сервис-файл для определения репозитория исходного кода.