Nieoficjalne
Na tej stronie
  1. 01Co aplikacja bierze z projektu
  2. 02Nowa aplikacja z przepisami projektu
  3. 03Kompilacja
  4. 04Aktywuj ją i przenieś gdzie indziej
  5. 05Inny projekt albo żaden
  6. 06Zasady

Własna aplikacja z Twoich przepisów i przepisów biblioteki

Aplikacja App Builder może brać przepisy jednego projektu obok przepisów biblioteki. Ten poradnik tworzy na stronie Aplikacje aplikację termtools: cmatrix pochodzi z projektu z poradnika Twój pierwszy własny przepis, a tmux i htop z biblioteki. Potem poradnik aktywuje aplikację na NAS-ie i ją eksportuje.

  1. Projektwłasne przepisy
  2. Nowa aplikacjaPrzepisy z projektu
  3. Przepisyz projektu i z biblioteki
  4. Kompilacjajedno zadanie
  5. UżycieAktywuj, Eksportuj

Zrzuty ekranu pochodzą z panelu Bucket & Code Server IDE, a każdy krok wykonano tak, jak opisuje ten poradnik.

01Co aplikacja bierze z projektu

Oprócz przepisów z biblioteki aplikacja może brać przepisy z jednego projektu. Nadaje się każdy projekt ze strony Projekty, którego folder recipes/ zawiera choć jeden przepis, bez względu na rodzaj projektu. Przepis projektu o takiej samej nazwie jak przepis z biblioteki zastępuje tamten przepis, ale tylko w aplikacjach, które biorą ten projekt.

02Nowa aplikacja z przepisami projektu

Na stronie Aplikacje kreator Nowa aplikacja najpierw pyta o nazwę i prefiks, środowisko, cel, miejsce działania programów i tryb linkowania. Nazwij aplikację termtools; prefiks wypełni się wtedy jako /usr/app/termtools. Jako środowisko wybierz builder z Ubuntu 24.04, cel zostaw na tym NAS-ie, tryb linkowania zostaw dynamiczny i naciśnij Wybierz przepisy.

Nad listą przepisów jest pole Przepisy z projektu. Można w nim wybrać projekt z przepisami albo Brak: tylko biblioteka. Wybierz cmatrix. Lista pokazuje wtedy najpierw przepisy projektu, pod nazwą projektu i z oznaczeniem projekt, a przepisy biblioteki pod nagłówkiem Biblioteka przepisów. Przy przepisie projektu, który zastępuje przepis z biblioteki, jest napis zastępuje wersję … z biblioteki z wersją tamtego przepisu.

Nowa aplikacja, Przepisy: Przepisy z projektu ustawione na cmatrix; cmatrix 2.0 z oznaczeniem projekt nad Biblioteką przepisów

Zaznacz cmatrix w grupie projektu oraz tmux i htop w grupie biblioteki; łatwo je znaleźć polem wyszukiwania. Krok Kolejność budowania dodaje przepisy, których potrzebują, i przy każdym pokazuje, który przepis go wymaga. Podsumowanie wymienia wszystkie wybory, także Przepisy z projektu, a przycisk Utwórz i zbuduj tworzy aplikację i uruchamia jej kompilację.

03Kompilacja

Strona aplikacji pokazuje postęp kompilacji przepis po przepisie. Pod nazwą aplikacji jest napis Przepisy z projektu cmatrix; konto z rolą developer widzi go jako link do projektu. Zadanie kompilacji czyta przepisy projektu raz, na starcie, a jego log podaje, co przeczytało:

recipes of the project cmatrix, read at the job's start: 1 (cmatrix)
Zbudowana aplikacja termtools: Przepisy z projektu cmatrix pod jej nazwą; ncurses, cmatrix, libevent, tmux i htop ze stanem test zaliczony

Plik projektu zapisany później wejdzie dopiero do następnej kompilacji (przycisk Zbuduj ponownie na stronie aplikacji).

04Aktywuj ją i przenieś gdzie indziej

Aktywuj (admin) zmienia /usr/app/termtools w dowiązanie do najnowszej udanej kompilacji. Programy uruchamiasz wtedy na NAS-ie z tej ścieżki:

/usr/app/termtools/bin/cmatrix
/usr/app/termtools/bin/tmux -V

Pobierz daje kompilację jako archiwum, które rozpakujesz pod tym samym prefiksem na NAS-ie o tej samej architekturze. Eksportuj jako QPKG, dostępne dla admina po zainstalowaniu QDK (Toolchainy, zakładka QNAP), pakuje ją jako pakiet QTS bez podpisu; aplikacji zbudowanej z ustawieniem tylko ten NAS nie da się wyeksportować. App Center z własnego repozytorium pokazuje, jak pakiet zostaje podpisany i udostępniony. Transmission od zera pokazuje całą drogę jednego programu: od NAS-a, na którym nic jeszcze nie skonfigurowano, do podpisanego pakietu QTS, który jest zainstalowany i odpowiada w przeglądarce.

05Inny projekt albo żaden

Przyciskiem Zmień na stronie aplikacji ustawisz Przepisy z projektu na nowo: inny projekt albo Brak: tylko biblioteka. Wybrany wcześniej przepis, którego nie ma na nowej liście, pojawia się pod polem, na przykład Brak na tej liście, pominięte: cmatrix, i nie wchodzi do aplikacji, dopóki obowiązuje ten wybór. Zapisz zmianę nie zmienia plików aplikacji; zmiana działa od następnej kompilacji.

Zmień termtools: Przepisy z projektu ustawione na Brak: tylko biblioteka oraz wiersz Brak na tej liście, pominięte: cmatrix

06Zasady

  • Aplikacja zapamiętuje projekt po nazwie jego folderu. Gdy folder zmieni nazwę albo zniknie, kompilacja aplikacji zostaje odrzucona z komunikatem Nie ma projektu „cmatrix”. Tak samo odrzucona zostaje zmiana, która zostawia tę nazwę. W oknie Zmień wybierz wtedy nową nazwę folderu albo Brak: tylko biblioteka.
  • Przepis projektu z błędem zostaje pominięty, a pole podaje powód. Przepis biblioteki o tej samej nazwie nie zajmuje jego miejsca.
  • Przepisy projektu widzi tylko konto z rolą developer. Konto z rolą viewer widzi aplikację i jej kompilacje; strona aplikacji informuje je, że kolejność budowania jest ukryta.
  • Tworzenie aplikacji wymaga roli developer. Aktywuj, Dezaktywuj i Eksportuj jako QPKG są dostępne dla admina.