Cross-kompilacja Tauri na ARM64 – Raspberry Pi

Krab na malinie. Przynajmniej według AI.

Ostatnio napisałem prostą aplikację graficzną na malinę – wyświetlanie paru rzeczy na podłączonym wyświetlaczu. Do realizacji wybrałem Tauri – zużycie pamięci, w połączeniu z cage oscyluje u mnie na poziomie 200MB, a same widoki mogę pisać przy użyciu Preact, zamiast tzw. „rzeźby” z komponentami GUI. Moim zdaniem, dobry kompromis między zużyciem zasobów a szybkością developmentu.

Pewien problem pojawił się z kompilacją i uruchomieniem. Przy próbie zbudowania na Raspberry, pomijając czas budowania, najzwyczajniej… zabrakło mi pamięci. Pierwsze co przychodzi do głowy jest cross-compilation, czyli wykorzystanie komputera do zbudowania binarki na inną architekturę. Niestety, dokumentacja opisuje to wprost:

Tauri relies heavily on native libraries and toolchains, so meaningful cross-compilation is not possible at the current moment.

Nie uwierzyłem, sprawdziłem. Budując w obrazie Dockera rust:latest i instalując biblioteki :arm64, dotarłem do punktu gdzie binarkę zbudować się udało, ale…

Czytaj dalej

Obsługa webhooków BitBucket w skrypcie PHP

Webhooki wysyłane przez hostingi Gita mogą być używane między innymi do aktualizacji wersji aplikacji na serwerze (deployment). Po określonej akcji – np. wysłanie poprawek do repozytorium – skrypt po stronie hostingu może wykonać zapytanie HTTP do skryptu w celu uruchomienia procedury automatycznej aktualizacji. W tym artykule pokażę jak utworzyć taki skrypt, podpiąć go do repozytorium i zabezpieczyć przed niepowołanymi żądaniami.

Czytaj dalej

Kurs SDL2 – cz. 1

Biblioteka SDL2 uchodzi za jedną z najlepszych do tworzenia prostych gier 2D w C++, jednocześnie jest nieskomplikowana i nie ma dużych zależności. Wydaje się że jest to idealny wybór dla początkującego gamemakera chcącego napisać lekką grę w C++. W tym kursie poprowadzę Cię od podstaw do własnej, prostej gry. To co, zaczynamy?

SDL2 - Hello, world!
Hello, world!
Czytaj dalej