Sign in Join
Wiki copytemporary

Online Package Manager/ru: what changed

Revision 1 to 2. Removed lines have a minus sign; added lines have a plus sign.

OldNewLine
11## О плагине
22
33Online Package Manager(OPM) - это инструмент, который автоматизирует процесс установки, обновления и настройки пакетов Lazarus. Пакеты хранятся в главном хранилище (см. столбец хранилища) в виде zip-файлов вместе с файлом [[JSON]]. JSON содержит всю необходимую информацию о пакетах. По запросу пакеты загружаются/извлекаются/компилируются/устанавливаются в IDE. Если доступно, также возможно обновить ранее установленный пакет с веб-страницы разработчика (см. столбец обновления). Здесь также есть веб-версия [репозитория пакетов Lazarus](http://packages.lazarus-ide.org/).
44
5-<span style="color:red">**Пожалуйста, имейте ввиду:**</span>
5+**Пожалуйста, имейте ввиду:**
66
77OPM читает описание пакета из файла lpk. Я могу понять, что описание многих пакетов очень минималистично или вообще отсутствует, но я ничего не могу с этим поделать. Не разрешается изменять описание пакета или любое другое свойство в этом отношении без согласия на то разработчика пакета. Более того протестировать каждый пакет, а затем написать подробное описание просто нереально.
88
99### Screenshot
1010
11-<figure>
12-<img src="OPM6.png" title="OPM6.png" />
13-<figcaption>OPM6.png</figcaption>
14-</figure>
11+![](/wiki-images/6/6e/OPM6.png)
1512
16-<figure>
17-<img src="OPM7.png" title="OPM7.png" />
18-<figcaption>OPM7.png</figcaption>
19-</figure>
13+![](/wiki-images/b/b7/OPM7.png)
2014
2115### License
2216
2317[GNU General Public License](https://opensource.org/licenses/gpl-license)
2418
2519### Загрузка
2620
2721Online package manager является частью исходников Lazarus, расположен в каталоге (\$LazarusDir)/components/onlinepackagemanager.
2822
2923### Системные требования / зависимости
3024
3125- FPC 3.0.0 или новее
3226- Lazarus 1.8 или новее
3327- Вы можете скачать старую версию для серии 1.6: [OPM 1.6](https://drive.google.com/open?id=0B9Me_c5onmWobVZOdVlXSlZRRmc)
3428- Эти версии были доступны на момент написания этого обновления.
3529- Проверено на следующем наборе виджетов: win32/64, gtk2, carbon, qt(win)
3630- Менеджер пакетов не имеет зависимости ни от одного внешнего пакета
3731
3832### Установка
3933
4034В окне Lazarus "Install/Uninstall Packages" выберите «OnlinePackageManager» из списка доступных пакетов, нажмите «Install selection» и затем пересоберите IDE.
4135
4236### Страница поддержки
4337
4438<http://forum.lazarus.freepascal.org/index.php/topic,34297.0.html>
4539
4640## Использование менеждера пакетов
4741
4842### Как начать
4943
50-Перейдите в Lazarus Menu⇒Package(Пакет)⇒Online Package Manager(Сетевой диспетчер пакетов) (горячие клавиши: <span class="kbd">Ctrl</span>+<span class="kbd">Alt</span>+<span class="kbd">Shift</span>+<span class="kbd">O</span>). При запуске менеджер пакетов автоматически загрузит список доступных пакетов из репозитория, который отображается в виде дерева (см. скриншоты выше).
44+Перейдите в Lazarus Menu⇒Package(Пакет)⇒Online Package Manager(Сетевой диспетчер пакетов) (горячие клавиши: `Ctrl`+`Alt`+`Shift`+`O`). При запуске менеджер пакетов автоматически загрузит список доступных пакетов из репозитория, который отображается в виде дерева (см. скриншоты выше).
5145
5246### Фильтрация дерева/Поиск пакетов
5347
54-<figure>
55-<img src="OPM3.png" title="OPM3.png" />
56-<figcaption>OPM3.png</figcaption>
57-</figure>
48+![](/wiki-images/b/b3/OPM3.png)
5849
5950Вы можете отфильтровать список пакетов по:
6051
6152- имени пакета
6253- файлу пакета(.lpk)⇒пакет репозитория может содержать несколько файлов lpk
6354- категории пакета
6455- статусу пакета
6556- версии
6657- описанию
6758- автору
6859- совместимостью с версией Lazarus
6960- совместимостью с версией FPC
7061- поддерживаемым виджетсетам
7162- типу пакета
7263- зависимостям
7364- виду лицензии
7465
7566### Действия с пакетами
7667
77-<figure>
78-<img src="OPM4.png" title="OPM4.png" />
79-<figcaption>OPM4.png</figcaption>
80-</figure>
68+![](/wiki-images/a/a5/OPM4.png)
8169
8270#### Обновление списка пакетов
8371
8472Нажмите кнопку "Refresh"(Обновить), чтобы обновить список пакетов.
8573
8674#### Загрузка пакета
8775
8876Отметьте один или несколько пакетов, затем нажмите кнопку "Download"(Скачать). Это позволит загрузить/извлечь пакеты в предварительно выбранный каталог. Установлено ничего не будет. Бывает полезно, когда вы хотите установить пакеты вручную или изучить их исходники без установки.
8977
9078#### Установка пакета
9179
9280Отметьте один или несколько пакетов, затем нажмите кнопку "Install"(Установить). Менеджер пакетов автоматически загрузит/извлечет/скомпилирует/установит выбранные пакеты (из основного репозитория), а затем при необходимости пересоберет IDE (пакеты Designtime/Designtime_and_runtime). Подтвердите пересборку среды, нажав кнопку "Yes". Обратите внимание: функция компиляции доступна только начиная с версии Lazarus 1.7+.
9381
9482#### Обновление пакета
9583
96-Пометьте один или несколько пакетов, затем нажмите кнопку "Update"(Обновить). Менеджер пакетов обновит выбранные пакеты с домашней страницы разработчика(если доступно). Пакет сначала должен быть установлен, хотя прямое обновление возможно, но не допускается дабы предотвратить ошибку неразрешенной зависимости.</br> <span style="color:red">**Обратите внимание:**</span> загрузка/установка пакета по внешней ссылке не лишена риска. Обновляйте пакет, только если вы доверяете разработчику пакета.
84+Пометьте один или несколько пакетов, затем нажмите кнопку "Update"(Обновить). Менеджер пакетов обновит выбранные пакеты с домашней страницы разработчика(если доступно). Пакет сначала должен быть установлен, хотя прямое обновление возможно, но не допускается дабы предотвратить ошибку неразрешенной зависимости. **Обратите внимание:** загрузка/установка пакета по внешней ссылке не лишена риска. Обновляйте пакет, только если вы доверяете разработчику пакета.
9785
9886#### Различие между загрузкой/установкой/обновлением
9987
10088Загрузка/установка -\> Операция между вами и основным хранилищем.
10189
10290Обновление -\> Операция между вами и разработчиком пакета.
10391
104-<figure>
105-<img src="OPM10.png" title="OPM10.png" />
106-<figcaption>OPM10.png</figcaption>
107-</figure>
92+![](/wiki-images/6/61/OPM10.png)
10893
10994Видеоссылка: [Различие между загрузкой/установкой/обновлением](https://www.youtube.com/watch?v=wiN2GoCvgjc)
11095
11196#### Очистка локального хранилища
11297
11398Эта операция удалит все неустановленные пакеты/архивы из локального репозитория. Чтобы очистить локальный репозиторий, нажмите кнопку "Cleanup"(Очистить).
11499
115100#### Создание
116101
117102*Этот раздел предназначен для разработчиков. Сначала вы должны перейти в Options(Параметры)⇒Profiles(Профили) и выбрать package maintainer(сопровождающий/разработчик пакета).*
118103
119104##### Создание репозитория пакета
120105
121106Для создания репозитория пакета нажмите пункт меню "Create repository package"(Создать репозиторий пакета), затем:
122107
123108- выберите основной каталог пакета (менеджер пакетов будет рекурсивно искать все файлы пакета внутри папки)
124109- выберите репозиторий пакета(корневой узел)
125110 - выберите категорию (обязательно)
126111 - введите отображаемое имя (необязательно)
127112 - домашняя страница (необязательно)
128113 - ссылка для обновления (необязательно, подробности см. ниже в разделе [[Online Package Manager/ru|Создание JSON для обновлений]]).
129114 - создайте JSON для обновлений(необязательно), имеет те же функции, что и диалоговое окно [[Online Package Manager/ru|Создание JSON для обновлений]]. Он также был добавлен сюда для ускорения процесса.
130115
131-<figure>
132-<img src="OPM15.png" title="OPM15.png" />
133-<figcaption>OPM15.png</figcaption>
134-</figure>
116+![](/wiki-images/6/6c/OPM15.png)
135117
136118- пометьте каждый пакет, который вы хотите включить, при необходимости измените информацию о пакете (совместимость с lazarus/fpc, поддерживаемый набор виджетов и т.д.)
137119
138-<figure>
139-<img src="OPM16.png" title="OPM16.png" />
140-<figcaption>OPM16.png</figcaption>
141-</figure>
120+![](/wiki-images/6/6d/OPM16.png)
142121
143122- нажмите кнопку "Create"(Создать), если все пойдет хорошо, вы должны получить zip и json файл. Загрузите куда-нибудь файлы и отправьте ссылку на getmem1@gmail.com или
144123- нажмите кнопку "Submit"(Отправить), файлы будут напрямую загружены на удаленный сервер. Каждый пакет будет принят после короткой проверки (вредоносная программа, лицензия и т.д.).
145124
146125Также допускает отправка нескольких версий одного и того же пакета.
147126
148127##### Создание JSON для обновлений
149128
150129Чтобы позволить пользователю обновлять пакет непосредственно с вашей веб-страницы, выполните следующие действия:
151130
152131- Убедитесь, что ваш пакет уже находится в главном хранилище (см. предыдущий раздел)
153132- Вы можете загрузить и использовать [[OPM External Update json Editor|Редактор для внешних обновлений json Сетевого менеждера пакетов]]
154133 - или через OnlinePackageManager:
155134- Отметьте пакет, нажмите пункт меню "Create JSON for upates"(Создать JSON для обновлений), затем создайте JSON.
156135
157-<figure>
158-<img src="OPM11.png" title="OPM11.png" />
159-<figcaption>OPM11.png</figcaption>
160-</figure>
136+![](/wiki-images/d/d1/OPM11.png)
161137
162138- Отредактируйте JSON, загрузите на свою веб-страницу, затем пришлите мне ссылку.
163139
164140JSON будет выглядеть так:
165141
166-<figure>
167-<img src="OPM12.png" title="OPM12.png" />
168-<figcaption>OPM12.png</figcaption>
169-</figure>
142+![](/wiki-images/0/09/OPM12.png)
170143
171144Редактируемые элементы в JSON:
172145
173146**"DownloadZipURL"** ⇒ Ссылка на ваш новый, обновленный пакет
174147
175148**"DisableInOPM"** ⇒ Если вы хотите временно отключить ваш пакет, установите для этого логического значения true. Это полезно в процессе разработки, пакет будет выделен серым цветом в дереве. Пользователь не сможет загрузить/установить/обновить пакет.
176149
177150**"Version"/"ForceNotify"/"InternalVersion"** ⇒ Чтобы показать сообщение об обновлении на компьютере пользователя, вы можете:
178151
179152- Увеличьте число **"Version"**. Полезно, когда вы хотите выпустить новую версию пакета.
180153- Установите значение **"ForceNotify"** в true. Полезно после незначительного изменения в вашем исходнике, которое не требует изменения версии или в случае версии с транком. Чтобы предотвратить постоянные сообщения об ошибках, необходимо использовать **"ForceNotify"** в сочетании с **"InternalVersion"**. После того, как пользователь обновит пакет, OPM локально сохранит значение **"InternalVersion"**. Если вы хотите показать новое сообщение, увеличьте значение **"InternalVersion"** на одну единицу. Если **"ForceNotify"** имеет значение true, параметр **"Version"** всегда игнорируется.
181154
182155Наиболее распространенный сценарий таков:
183156
184157- генерируется JSON
185158- изменияется **"DownloadZipURL"**
186159- увеличивается номер версии при необходимости.
187160
188161Обратите внимание: после того, как вы отредактировали JSON, изменения будут видны в дереве не сразу. Обычно это занимает 1-2 минуты. Это также зависит от настроек пользователя (Options(Параметры)⇒General(общие)⇒Check for package updates(Проверять наличие обновленных пакетов)).
189162
190163#### Параметры
191164
192165Для отображения диалогового окна параметров нажмите кнопку "Options"(Параметры).
193166
194167### Создание частного репозитория
195168
196169Чтобы создать частный репозиторий, пожалуйста, сделайте следующее:
197170
1981711\. Сначала убедитесь, что выбран профиль «Сопровождающий пакета» в Options(Параметры)⇒Profiles(Профили), а затем откройте форму частного репозитория (см. скриншот ниже).
199172
200-<figure>
201-<img src="OPM17.png" title="OPM17.png" />
202-<figcaption>OPM17.png</figcaption>
203-</figure>
173+![](/wiki-images/b/b0/OPM17.png)
204174
2051752\. Нажмите кнопку "Create"(Создать). Введите имя хранилища, адрес (необязательно), описание (необязательно). Сохраните репозиторий в пустую папку
206176
207-<figure>
208-<img src="OPM18.png" title="OPM18.png" />
209-<figcaption>OPM18.png</figcaption>
210-</figure>
177+![](/wiki-images/c/c7/OPM18.png)
211178
212179- Если все заполнено, адрес хранилища (в данном случае <http://localhost/packages/>) автоматически добавится в список доступных хранилищ (форма параметров)
213180
214-<figure>
215-<img src="OPM19.png" title="OPM19.png" />
216-<figcaption>OPM19.png</figcaption>
217-</figure>
181+![](/wiki-images/8/8e/OPM19.png)
218182
2191833\. Начинайте добавлять/удалять пакеты. У вас есть два варианта:
220184
221185- a\. создать новый пакет через [[Online Package Manager/ru|Создание репозитория пакета]]
222186- b\. добавить ранее сохраненный пакет
223187
224-<figure>
225-<img src="OPM20.png" title="OPM20.png" />
226-<figcaption>OPM20.png</figcaption>
227-</figure>
188+![](/wiki-images/5/5b/OPM20.png)
228189
2291904.Вы также можете открыть ранее сохраненный репозиторий. При запуске автоматически открывается последний репозиторий.
230191
2311925\. Загрузите файлы (packagelist.json, * .zip) на локальный или удаленный сервер.
232193
2331946\. Убедившись, что сервер запущен, измените "Remote repository"(Удаленный репозиторий) в Options(Параметры)⇒General(Общие)
234195
235196## См. также
236197
237198- [Видео о процессе уставноки компонентов в OPM](https://www.youtube.com/watch?v=IRJkyiOn3AA)
238199
239200---
240201*From the Free Pascal wiki, page "Online Package Manager/ru", as it stood on 2019-11-06 after a change by Almuhandis, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*

Back to history