AppImage/ru: Difference between revisions

From FreeCAD Documentation
(Created page with "Репозиторий этих скриптов находится по адресу [https://github.com/realthunder/FreeCADMakeImage realthunder/FreeCADMakeImage]. Допо...")
(Updating to match new version of source page)
 
(27 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<languages/>
<languages/>

{{VeryImportantMessage|По состоянию на 7 июля 2019 года сообщество FreeCAD отмечает, что загрузка AppImages из Github, похоже, истекает по таймауту до завершения. Мы не уверены, почему это происходит. Если это произойдет с вами, попробуйте загрузить еще раз. Это займет несколько попыток. Рекомендуется использовать [[#Автообновление/ru|функцию автоматического обновления]] AppImage, которая восстановит загрузку с того места, где произошла ошибка.}}


{{TOCright}}
{{TOCright}}


<span id="What_is_an_AppImage?"></span>
== Что такое AppImage? ==
== Что такое AppImage? ==


[[Image:AppImage-logo.png|link=https://appimage.org]] {{Emphasis|Упакуй раз и запускай везде. Дойдите до пользователей всех основных дистрибутивов рабочих столов Linux.}}
[[Image:AppImage-logo.png|link=https://appimage.org]] {{Emphasis|Упакуйте один раз и запускайте везде. Охватите пользователей всех основных дистрибутивов Linux на настольных ПК.}}


AppImage это "универсальный двоичный пакет", предназначенный для распространения приложений на любой дистрибутив Linux. Читайте дальше о нём на [https://appimage.org домашней странице Appimage] и в [https://ru.wikipedia.org/wiki/AppImage Wikipedia].
AppImage это "универсальный двоичный пакет", предназначенный для распространения приложений на любой дистрибутив Linux. Читайте дальше о нём на [https://appimage.org домашней странице Appimage] и в [https://ru.wikipedia.org/wiki/AppImage Wikipedia].
Line 20: Line 19:
Для других типов установки смотрите [[Download/ru|Download]].
Для других типов установки смотрите [[Download/ru|Download]].


<span id="FreeCAD_AppImages"></span>
== AppImages FreeCADа ==
== AppImage FreeCAD'а ==

{{VeryImportantMessage|'''Примечание:''' Разрабатываемые сборки теперь размещаются на [https://github.com/FreeCAD/FreeCAD-Bundle/releases/tag/weekly-builds '''FreeCAD-Bundle'''] репозитория github.<br/>Если приведённые ниже ссылки не работают, загрузите файлы вручную из расширенного раздела «Assets» приведённой выше ссылки.}}


{| class="wikitable" style="margin-left: auto; margin-right: auto; border: none;"
{| class="wikitable" style="margin-left: auto; margin-right: auto; border: none;"
Line 30: Line 28:
! style="text-align: center; font-size: 200%;" | Development
! style="text-align: center; font-size: 200%;" | Development
|-
|-
| style="text-align: center;" | [[Image:AppImage-logo.png|link=https://github.com/FreeCAD/FreeCAD-Bundle/releases/tag/0.20]] <!-- [https://github.com/FreeCAD/FreeCAD/releases/download/0.19.3/FreeCAD_0.19.3-Linux-Conda_glibc2.12-x86_64.AppImage 0.19.3] ([https://github.com/FreeCAD/FreeCAD/releases/download/0.19.3/FreeCAD_0.19.3-Linux-Conda_glibc2.12-x86_64.AppImage-SHA256.txt SHA256]) --> [https://github.com/FreeCAD/FreeCAD-Bundle/releases/tag/0.20 v0.20]
| style="text-align: center;" | [[Image:AppImage-logo.png|link=https://github.com/FreeCAD/FreeCAD-Bundle/releases/tag/0.21.2]] [https://github.com/FreeCAD/FreeCAD-Bundle/releases/tag/0.21.2 v0.21.2]
| style="text-align: center;" | <!-- [[Image:AppImage-logo.png|link=https://github.com/FreeCAD/FreeCAD-Bundle/releases/download/weekly-builds/FreeCAD_weekly-builds-{{:Template:Development-Version}}-Linux-Conda_glibc2.12-x86_64.AppImage]] [https://github.com/FreeCAD/FreeCAD-Bundle/releases/download/weekly-builds/FreeCAD_weekly-builds-{{:Template:Development-Version}}-Linux-Conda_glibc2.12-x86_64.AppImage {{:Template:Development-Version}}] ([https://github.com/FreeCAD/FreeCAD-Bundle/releases/download/weekly-builds/FreeCAD_weekly-builds-{{:Template:Development-Version}}-Linux-Conda_glibc2.12-x86_64.AppImage-SHA256.txt SHA256]) --> [[Image:AppImage-logo.png|link=https://github.com/FreeCAD/FreeCAD-Bundle/releases/tag/weekly-builds Weekly build]] [https://github.com/FreeCAD/FreeCAD-Bundle/releases/tag/weekly-builds Weekly build]
| style="text-align: center;" | [[Image:AppImage-logo.png|link=https://github.com/FreeCAD/FreeCAD-Bundle/releases/tag/weekly-builds]] [https://github.com/FreeCAD/FreeCAD-Bundle/releases/tag/weekly-builds Weekly build]
|}
|}


'''Важные замчания:'''
'''Важные замечания:'''
* Разработка происходит ежедневно и быстро, ссылка на самую последнюю версию AppImage постоянно меняется.
* Разработка происходит ежедневно и быстро.
* Ссылка на разработку выше должна быть актуальной, потому что она обновляется с помощью скрипта.
* Ссылка на разработку выше должна быть актуальной, потому что она обновляется с помощью скрипта.
* Многие пользователи форума используют версию для разработки.
* Многие пользователи форума используют версию для разработки.
Line 41: Line 39:
* Пользователи используют версию для разработчиков, чтобы воспользоваться последними функциями и исправлениями ошибок (поскольку FreeCAD имеет длительный цикл выпуска). Они также используют его для тестирования и поиска ошибок, чтобы стимулировать разработку и улучшение FreeCAD.
* Пользователи используют версию для разработчиков, чтобы воспользоваться последними функциями и исправлениями ошибок (поскольку FreeCAD имеет длительный цикл выпуска). Они также используют его для тестирования и поиска ошибок, чтобы стимулировать разработку и улучшение FreeCAD.


<span id="Obligatory_Word_of_Caution"></span>
==== Необходимое предупреждение ====
==== Необходимое предупреждение ====


По большей части разрабатываемая версия стабильна, но, конечно, важно добавить обязательное заявление, что вы её используете на свой страх и риск. Хотя у большинства людей, которые используют резервные копии и 'часто сохраняются', всё довольно хорошо.
По большей части разрабатываемая версия стабильна, но, конечно, важно добавить обязательное заявление, что вы её используете на свой страх и риск. Хотя у большинства людей, которые используют резервные копии и 'часто сохраняются', всё довольно хорошо.


<span id="Automatic_updating"></span>
== Автообновление ==
== Автообновление ==


Line 51: Line 51:
Автоматическое обновление выполняется несколькими возможными методами. В настоящее время существует 4 метода: 2 - через графический интерфейс (GUI) и 2 - через интерфейс командной строки/терминала (CLI).
Автоматическое обновление выполняется несколькими возможными методами. В настоящее время существует 4 метода: 2 - через графический интерфейс (GUI) и 2 - через интерфейс командной строки/терминала (CLI).


<span id="Experimental_in-app_updating"></span>
=== Экспериментальное обновление в приложении ===
=== Экспериментальное обновление в приложении ===


Несколько ключевых разработчиков прилагают [https://forum.freecadweb.org/viewtopic.php?f=8&t=44324 постоянные усилия] по интеграции функции, которая позволяет '''самообновлять AppImage изнутри FreeCAD'''. Начиная с FC 0.19.21514 существует раздел AppImage, который можно найти через {{MenuCommand|Правка → Настройки → AppImage}}. Пожалуйста, проверьте эту возможность и сообщите о своем опыте в [https://forum.freecadweb.org/viewtopic.php?f=8&t=44324 обсуждении на форуме].
Несколько ключевых разработчиков прилагают [https://forum.freecadweb.org/viewtopic.php?f=8&t=44324 постоянные усилия] по интеграции функции, которая позволяет '''самообновлять AppImage изнутри FreeCAD'''. Начиная с FC 0.19.21514 существует раздел AppImage, который можно найти через {{MenuCommand|Правка → Настройки → AppImage}}. Пожалуйста, проверьте эту возможность и сообщите о своем опыте в [https://forum.freecadweb.org/viewtopic.php?f=8&t=44324 обсуждении на форуме].


<span id="GUI_method_1_(official)"></span>
=== Метод через GUI №1 (официальный) ===
=== Метод через GUI №1 (официальный) ===


Line 64: Line 66:
# После обновления AppImage нажмите кнопку {{Button|Run updated AppImage}}.
# После обновления AppImage нажмите кнопку {{Button|Run updated AppImage}}.


<span id="GUI_method_2_(unofficial)"></span>
=== Метод через GUI №2 (неофициальный) ===
=== Метод через GUI №2 (неофициальный) ===


Line 73: Line 76:
Далее: Следуйте инструкциям AppImageUpdater
Далее: Следуйте инструкциям AppImageUpdater


<span id="CLI_method_1_(official)"></span>
=== Метод через командную строку №1 (официальный) ===
=== Метод через командную строку №1 (официальный) ===


Line 90: Line 94:
* Также есть версия i386; см. страницу [https://github.com/AppImage/AppImageUpdate/releases AppImageUpdate release].
* Также есть версия i386; см. страницу [https://github.com/AppImage/AppImageUpdate/releases AppImageUpdate release].


<div class="mw-translate-fuzzy">
Что нужно сделать: поделитесь скриптом, который можно добавить в качестве алиаса или задания cron.
Что нужно сделать: поделитесь скриптом, который можно добавить в качестве алиаса или задания [https://ru.wikipedia.org/wiki/Cron cron].
</div>


<span id="CLI_method_2_(unofficial)"></span>
=== Метод через командную строку №2 (неофициальный) ===
=== Метод через командную строку №2 (неофициальный) ===


Аналогично графическим методам, имеющим официальный и неофициальный подходы к загрузке AppImages, то же самое относится и к командной строке.
Аналогично графическим методам, имеющим официальный и неофициальный подходы к загрузке AppImages, то же самое относится и к командной строке. Это более элегантный сторонний вариант в командной строке для загрузки AppImages.
Это более элегантный сторонний вариант в командной строке для загрузки AppImages.


# Загрузите [https://github.com/antony-jr/AppImageUpdater/releases/tag/continuous-cli appimageupdater-*-x86_64.AppImage]
# Загрузите [https://github.com/antony-jr/AppImageUpdater/releases/tag/continuous-cli appimageupdater-*-x86_64.AppImage]
Line 103: Line 109:




= Experimental =
<span id="Experimental"></span>
= Экспериментальные функции =


<span id="Fixing_AppImage_zsync"></span>
== Fixing AppImage zsync ==
== Исправление AppImage через zsync ==


It may happen that an AppImage won't update because it's target file changed in some way. Instead of downloading a whole new appimage, it's possible to rewrite the zsync file that is used by the AppImage to download the delta. More info can be found at https://github.com/antony-jr/appimage-update-info-writer.
Может случиться так, что AppImage не будет обновляться, потому что его целевой файл каким-то образом изменился. Вместо того, чтобы загружать новый AppImage, можно переписать файл zsync, который используется AppImage для загрузки дельты. Дополнительную информацию можно найти на странице https://github.com/antony-jr/appimage-update-info-writer.


Этот раздел требует более подробной информации.
Этот раздел требует более подробной информации.


<span id="Downloading_via_Bittorrent"></span>
== Downloading via Bittorrent ==
== Загрузка через Bittorrent ==


Экспериментальная возможность, которую исследует команда разработчиков пакетов FreeCAD (благодаря работе Antony-jr), позволяет загрузить дельту AppImage FreeCAD через битторрент. Репозиторий исходников находится по адресу https://github.com/FreeCAD/FreeCAD-Bundle/issues/49.
An experimental feature that the FreeCAD packaging team is exploring (thanks to the work of Antony-jr) is being able to download an appimage delta of FreeCAD via bittorrent. The repository issue is at https://github.com/FreeCAD/FreeCAD-Bundle/issues/49


<span id="Developer_Section"></span>
= Секция разработчика =
= Секция разработчика =


{{Emphasis|Примечание:}} следующая секция предназначена для разработчиков
{{Emphasis|Примечание:}} следующая секция предназначена для разработчиков


<span id="Unpacking_AppImages"></span>
== Распаковка AppImage ==
== Распаковка AppImage ==


Очень удобный аспект FreeCAD заключается в том, что большая его часть построена на [[Python/ru|Python]], который не нужно компилировать вручную, как C ++. По сути, файл Python можно изменить, и после перезапуска FreeCAD эти изменения будут интегрированы в приложение. Разработчик может быстро работать над последней версией FreeCAD, используя эту технику и в AppImage. Более того, использование AppImage никоим образом не изменяет среду вашей системы, то есть ничего не устанавливается и никакие переменные среды не изменяются.
Очень удобный аспект FreeCAD заключается в том, что большая его часть построена на [[Python/ru|Python]], который не нужно компилировать вручную, как C ++. По сути, файл Python можно изменить, и после перезапуска FreeCAD эти изменения будут интегрированы в приложение. Разработчик может быстро работать над последней версией FreeCAD, используя эту технику и в AppImage. Более того, использование AppImage никоим образом не изменяет среду вашей системы, то есть ничего не устанавливается и никакие переменные среды не изменяются.


<span id="Modifying_AppImages"></span>
=== Модификация AppImage ===
=== Модификация AppImage ===


Line 138: Line 150:
}}
}}


<span id="Repackaging_AppImages"></span>
=== Переупаковка AppImage ===
=== Переупаковка AppImage ===


Line 149: Line 162:
}}
}}


<span id="Personalized_AppImages"></span>
== Персонализация AppImage ==
== Персонализированные AppImage ==


Благодаря работе {{Emphasis|realthunder}}, автора [[App_Link/ru|App Link]] и [[Assembly3_Workbench/ru|Верстака Assembly3]], можно создавать пользовательские AppImages с помощью набора скриптов.
Благодаря работе {{Emphasis|realthunder}}, автора [[App_Link/ru|App Link]] и [[Assembly3_Workbench/ru|Верстака Assembly3]], можно создавать пользовательские AppImage с помощью набора скриптов.


Это делает очень удобным выпуск образов определённой ветви исходного кода для тестирования другими. Хотя AppImages работают только в Linux, скрипты realthunder'а позволяют создавать AppImage также в Windows и MacOS.
Это делает очень удобным выпуск образов определённой ветви исходного кода для тестирования другими. Хотя AppImages работают только в Linux, скрипты realthunder'а позволяют создавать AppImage также в Windows и MacOS.
Line 157: Line 171:
Репозиторий этих скриптов находится по адресу [https://github.com/realthunder/FreeCADMakeImage realthunder/FreeCADMakeImage]. Дополнительную информацию смотри в [https://github.com/realthunder/FreeCADMakeImage/blob/master/Readme.md Readme.md].
Репозиторий этих скриптов находится по адресу [https://github.com/realthunder/FreeCADMakeImage realthunder/FreeCADMakeImage]. Дополнительную информацию смотри в [https://github.com/realthunder/FreeCADMakeImage/blob/master/Readme.md Readme.md].


== Related ==
<span id="Related"></span>
== Связанные ссылки ==


* Пакеты [[Ubuntu_Snap/ru|Snap]].
* Пакеты [[Ubuntu_Snap/ru|Snap]].

Latest revision as of 05:37, 9 January 2024

Что такое AppImage?

Упакуйте один раз и запускайте везде. Охватите пользователей всех основных дистрибутивов Linux на настольных ПК.

AppImage это "универсальный двоичный пакет", предназначенный для распространения приложений на любой дистрибутив Linux. Читайте дальше о нём на домашней странице Appimage и в Wikipedia.

Чтобы запустить его, сначала сделайте его исполняемым, а затем введите относительный или полный путь.

chmod +x FreeCAD_xxx-x86_64.AppImage
./FreeCAD_xxx-x86_64.AppImage

Для других типов установки смотрите Download.

AppImage'и FreeCAD'а

Available FreeCAD AppImages
Stable Development
v0.21.2 Weekly build

Важные замечания:

  • Разработка происходит ежедневно и быстро.
  • Ссылка на разработку выше должна быть актуальной, потому что она обновляется с помощью скрипта.
  • Многие пользователи форума используют версию для разработки.
  • Его можно запускать в той же системе параллельно с другой версией FreeCAD.
  • Пользователи используют версию для разработчиков, чтобы воспользоваться последними функциями и исправлениями ошибок (поскольку FreeCAD имеет длительный цикл выпуска). Они также используют его для тестирования и поиска ошибок, чтобы стимулировать разработку и улучшение FreeCAD.

Необходимое предупреждение

По большей части разрабатываемая версия стабильна, но, конечно, важно добавить обязательное заявление, что вы её используете на свой страх и риск. Хотя у большинства людей, которые используют резервные копии и 'часто сохраняются', всё довольно хорошо.

Автообновление

AppImage имеет умный и экономичный способ обновления. Он вычисляет разницу между новым AppImage и старым и загружает только изменения между их версиями. Теоретически пользователь каждый раз загружает около 15% вместо совершенно нового AppImage.

Автоматическое обновление выполняется несколькими возможными методами. В настоящее время существует 4 метода: 2 - через графический интерфейс (GUI) и 2 - через интерфейс командной строки/терминала (CLI).

Экспериментальное обновление в приложении

Несколько ключевых разработчиков прилагают постоянные усилия по интеграции функции, которая позволяет самообновлять AppImage изнутри FreeCAD. Начиная с FC 0.19.21514 существует раздел AppImage, который можно найти через Правка → Настройки → AppImage. Пожалуйста, проверьте эту возможность и сообщите о своем опыте в обсуждении на форуме.

Метод через GUI №1 (официальный)

Это официальное приложение с графическим интерфейсом AppImageUpdate.

  1. Загрузить AppImageUpdate-x86_64.AppImage.
  2. Сделайте его исполняемым, щелкнув правой кнопкой мыши по файлу, войдя в свойства и установив «Запускать как исполняемый файл».
  3. Дважды щелкните значок AppImage, появится диалоговое окно, в котором вам будет предложено указать, какой AppImage вы хотите обновить.
  4. Укажите путь к существующему AppImage.
  5. После обновления AppImage нажмите кнопку Run updated AppImage.

Метод через GUI №2 (неофициальный)

Это более элегантная сторонняя неофициальная версия AppImageUpdate с именем AppImageUpdater. Он всё ещё находится в разработке (на момент этого редактирования вики), но тем не менее, довольно удобен в использовании.

  1. Загрузите AppImageUpdater-*-x86_64.AppImage
  2. Сделайте его исполняемым:
    chmod +x AppImageUpdater*-x86_64.AppImage
    
  3. Запустите его:
    source AppImageUpdater*-x86_64.AppImage
    
  4. Найдите текущий файл FreeCAD AppImage и перетащите его в AppImageUpdater

Далее: Следуйте инструкциям AppImageUpdater

Метод через командную строку №1 (официальный)

Выполните следующие инструкции в своем терминале

wget https://github.com/AppImage/AppImageUpdate/releases/download/continuous/appimageupdatetool-x86_64.AppImage
chmod +x ./appimageupdatetool-x86_64.AppImage
./appimageupdatetool.AppImage path/to/old/FreeCAD.AppImage
chmod +x path/to/updated/FreeCAD.AppImage
./path/to/updated/FreeCAD.AppImage

Примечания:

  • Имена файлов будут уникальными, поскольку в них встроена информация о версии. Приведённые выше инструкции упрощены для удобства.
  • Запустите ./appimageupdatetool-x86_64.AppImage --help, чтобы узнать о таких функциях, как --remove-old, --overwrite и --self-update.
  • Также есть версия i386; см. страницу AppImageUpdate release.

Что нужно сделать: поделитесь скриптом, который можно добавить в качестве алиаса или задания cron.

Метод через командную строку №2 (неофициальный)

Аналогично графическим методам, имеющим официальный и неофициальный подходы к загрузке AppImages, то же самое относится и к командной строке. Это более элегантный сторонний вариант в командной строке для загрузки AppImages.

  1. Загрузите appimageupdater-*-x86_64.AppImage
  2. Сделайте его исполняемым:
    chmod +x appimageupdater*-x86_64.AppImage
    
  3. Запустите его:
    source appimageupdater*-x86_64.AppImage /path/to/old/FreeCAD-AppImage.AppImage
    

Результат: Обновляет указанный файл AppImage, если обновление существует.


Экспериментальные функции

Исправление AppImage через zsync

Может случиться так, что AppImage не будет обновляться, потому что его целевой файл каким-то образом изменился. Вместо того, чтобы загружать новый AppImage, можно переписать файл zsync, который используется AppImage для загрузки дельты. Дополнительную информацию можно найти на странице https://github.com/antony-jr/appimage-update-info-writer.

Этот раздел требует более подробной информации.

Загрузка через Bittorrent

Экспериментальная возможность, которую исследует команда разработчиков пакетов FreeCAD (благодаря работе Antony-jr), позволяет загрузить дельту AppImage FreeCAD через битторрент. Репозиторий исходников находится по адресу https://github.com/FreeCAD/FreeCAD-Bundle/issues/49.

Секция разработчика

Примечание: следующая секция предназначена для разработчиков

Распаковка AppImage

Очень удобный аспект FreeCAD заключается в том, что большая его часть построена на Python, который не нужно компилировать вручную, как C ++. По сути, файл Python можно изменить, и после перезапуска FreeCAD эти изменения будут интегрированы в приложение. Разработчик может быстро работать над последней версией FreeCAD, используя эту технику и в AppImage. Более того, использование AppImage никоим образом не изменяет среду вашей системы, то есть ничего не устанавливается и никакие переменные среды не изменяются.

Модификация AppImage

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

./FreeCAD_xxx.AppImage --appimage-extract
cd squashfs-root/

Теперь откройте необходимые исходные файлы Python в предпочитаемом вами редакторе кода, измените их и сохраните. Затем запустите приложение.

./AppRun

Переупаковка AppImage

Если вы изменили код и теперь хотите повторно упаковать AppImage с последними изменениями, примените appimagetool- x86_64 к извлеченной файловой системе.

cd ..
wget "https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage"
chmod +x appimagetool-x86_64.AppImage
./appimagetool-x86_64.AppImage squashfs-root

Персонализированные AppImage

Благодаря работе realthunder, автора App Link и Верстака Assembly3, можно создавать пользовательские AppImage с помощью набора скриптов.

Это делает очень удобным выпуск образов определённой ветви исходного кода для тестирования другими. Хотя AppImages работают только в Linux, скрипты realthunder'а позволяют создавать AppImage также в Windows и MacOS.

Репозиторий этих скриптов находится по адресу realthunder/FreeCADMakeImage. Дополнительную информацию смотри в Readme.md.

Связанные ссылки