AppImage

From FreeCAD Documentation
Revision as of 07:10, 31 December 2022 by Kaktus (talk | contribs) (Created page with "# Pobierz [https://github.com/antony-jr/AppImageUpdater/releases/tag/continuous-cli appimageupdater-*-x86_64.AppImage] # Uczyń go wykonywalnym: {{Code|code=chmod +x appimageu...")
Od 7 lipca 2019 roku społeczność FreeCAD obserwuje, że pobieranie AppImages z Github wydaje się powodować przekroczenie czasu przed zakończeniem. Nie jesteśmy pewni, dlaczego tak się dzieje. Jeśli tak się dzieje u Ciebie proszę spróbuj pobrać ponownie. Może to zająć kilka prób. Zalecaną praktyką jest użycie funkcji autoaktualizacji, AppImage która przywróci pobieranie z miejsca, w którym się nie powiodło.

Czym jest AppImage?

Wystarczy raz przygotować pakiet, by móc go uruchomić wszędzie. Pozwala dotrzeć do użytkowników wszystkich głównych dystrybucji Linuksa.

AppImage to "uniwersalny pakiet binarny" przeznaczony do dystrybucji aplikacji do dowolnej dystrybucji Linuksa. Więcej o nim można przeczytać na stronie domowej Appimage i Wikipedii.

Aby go uruchomić, najpierw uczyń go wykonywalnym, a następnie wpisz względną lub pełną ścieżkę.

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

Inne rodzaje instalacji znajdziesz na stronie pobierania.

AppImages dla FreeCAD

'Uwaga: Wersje rozwojowe są teraz przechowywane na stronie FreeCAD-Bundle' repozytorium github.
Jeśli poniższe linki do pobrania nie działają, proszę ręcznie pobrać pliki z rozwiniętej sekcji "Assets" powyższego linku
Available FreeCAD AppImages
Stable Development
v0.20.2 link=https://github.com/FreeCAD/FreeCAD-Bundle/releases/tag/weekly-builds Weekly build Weekly build

Ważne uwagi:

  • Rozwój postępuje codziennie i szybko, link dla najbardziej aktualnego AppImage jest celem zmieniającym się.
  • Link do wersji rozwojowej powyżej powinien być aktualny, ponieważ jest aktualizowany przez skrypt.
  • Wielu użytkowników na forum korzysta z wersji rozwojowej.
  • Może być uruchomiona na tym samym systemie równolegle z inną wersją FreeCAD.
  • Użytkownicy używają wersji rozwojowej, aby skorzystać z najnowszych funkcji i poprawek błędów (ponieważ FreeCAD ma długi cykl wydawniczy). Używają jej również do testowania i znajdowania błędów, aby stymulować rozwój i ulepszanie FreeCAD.

Obowiązkowe słowo przestrogi

W przeważającej części wersja rozwojowa jest stabilna, ale oczywiście należy dodać obowiązkowe stwierdzenie, aby używać jej na własne ryzyko. Chociaż większość ludzi, którzy wykorzystują kopie zapasowe i "często zapisują" radzi sobie całkiem dobrze.

Automatyczne aktualizacje

AppImage ma inteligentny i ekonomiczny sposób aktualizacji. Oblicza różnicę między nowym AppImage a starym i pobiera tylko zmiany między ich wersjami. Teoretycznie użytkownik za każdym razem pobiera około 15% zamiast zupełnie nowego AppImage.

Automatyczna aktualizacja odbywa się za pomocą kilku opcjonalnych metod. Obecnie istnieją cztery metody, dwie przez interfejs graficzny (GUI) i dwie przez interfejs wiersza poleceń / terminala (CLI).

Eksperymentalna aktualizacja w aplikacji

Dzięki wysiłkom kilku kluczowych deweloperów, istnieje dyskusja bieżące wysiłki, aby zintegrować funkcję, która pozwala na samoaktualizację AppImage w programie FreeCAD. Począwszy od FC 0.19.21514 istnieje teraz sekcja AppImage dostępna poprzez menu Edycja → Preferencje → AppImage. Proszę przetestować tę możliwość i zgłosić swoje doświadczenia na forum.

GUI, metoda 1 (oficjalna)

To jest oficjalna aplikacja AppImageUpdate GUI.

  1. Pobierz AppImageUpdate-x86_64.AppImage.
  2. Uczyń plik wykonywalnym klikając prawym przyciskiem myszy na nim, wchodząc do właściwości i "Uruchom jako wykonywalny".
  3. Kliknij dwukrotnie na ikonę AppImage, pojawi się okno dialogowe i zostaniesz poproszony o określenie, jaki AppImage chcesz zaktualizować.
  4. Określ ścieżkę do istniejącego AppImage.
  5. Po aktualizacji AppImage, naciśnij przycisk Run updated AppImage.

GUI, metoda 2 (nieoficjalna)

To jest bardziej elegancka, niezależna, nieoficjalna wersja AppImageUpdate o nazwie: AppImageUpdater. Jest jeszcze w fazie rozwoju (w czasie tej edycji wiki), ale mimo to, całkiem przyjemna w użyciu.

  1. Pobierz AppImageUpdater-*-x86_64.AppImage
  2. Nadaj mu atrybut wykonywalności:
    chmod +x AppImageUpdater*-x86_64.AppImage
    
  3. Uruchom go:
    source AppImageUpdater*-x86_64.AppImage
    
  4. Znajdź swój aktualny obraz FreeCAD AppImage i przeciągnij go na AppImageUpdater

Wynik: Postępuj zgodnie z podpowiedziami AppImageUpdater

CLI, metoda 1 (oficjalna)

Uruchom w terminalu następujące instrukcje

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

Uwagi:

  • Nazwy plików będą unikalne z powodu informacji o wersji, która jest w nich osadzona. Powyższe instrukcje są uproszczone dla wygody.
  • Uruchom polecenie ./appimageupdatetool-x86_64.AppImage --help, aby dowiedzieć się o funkcjach takich jak --remove-old, --overwrite i --self-update.
  • Istnieje również wersja i386; zobacz stronę wydania AppImageUpdate.

Zadanie: udostępnić skrypt, który można dodać jako alias lub zadanie [1].

CLI, metoda 2 (nieoficjalna)

Podobnie jak w przypadku metod graficznych mających oficjalne i nieoficjalne podejście do pobierania AppImages, to samo dotyczy wiersza poleceń. Jest to elegancka opcja dotycząca wiersza poleceń pochodząca od innych osób, aby pobrać AppImages.

  1. Pobierz appimageupdater-*-x86_64.AppImage
  2. Uczyń go wykonywalnym:
    chmod +x appimageupdater*-x86_64.AppImage
    
  3. Uruchom go:
    source appimageupdater*-x86_64.AppImage /path/to/old/FreeCAD-AppImage.AppImage
    

Wynik: Aktualizuje wskazany plik AppImage, jeśli aktualizacja jest dostępna.


Experimental

Fixing AppImage zsync

Może się zdarzyć, że AppImage nie będzie aktualizowany, ponieważ jego plik docelowy zmienił się w jakiś sposób. Zamiast pobierać cały nowy AppImage, można przepisać plik zsync, który jest używany przez AppImage do pobrania zmiany. Więcej informacji można znaleźć na stronie https://github.com/antony-jr/appimage-update-info-writer.

This section needs more details.

Downloading via Bittorrent

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

Developer Section

Note: the following sections are intended for developers

Unpacking AppImages

A very convenient aspect of FreeCAD is that a majority of it is built in Python, which doesn't need to be manually compiled like C++. Essentially, a Python file can be modified, and upon restarting FreeCAD those changes will be integrated into the application. A developer can quickly work on the latest FreeCAD release using this technique and an AppImage. Moreover, using an AppImage doesn't modify your system's environment in any way, that is, nothing is installed and no environmental variables are modified.

Modifying AppImages

An AppImage embeds a file system in it with everything that is required to run the application. In order to modify it, the file system needs to be extracted.

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

Now open the required Python source files in your preferred code editor, modify them, and save them. Then run the application.

./AppRun

Repackaging AppImages

If you've modified the code, and now want to re-package the AppImage with your latest changes, use the appimagetool-x86_64 tool on the extracted file system.

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

Personalized AppImages

Thanks to the work of realthunder, author of App Link and Assembly3 Workbench, it is possible to build custom AppImages using a set of scripts.

This makes it very convenient to release images for a specific branch of the source code for others to test. Although AppImages only work on Linux, realthunder's scripts make it possible to generate AppImages also on Windows and MacOS.

The repository for these scripts is at realthunder/FreeCADMakeImage. Please read the Readme.md for more details.

Related