Skip to content

HackerOS-Linux-System/Hacker-Lang

Repository files navigation

Hacker Lang

Opis

Hacker Lang to lekki i wygodny język skryptowy stworzony dla HackerOS, zaprojektowany jako bezpośrednia alternatywa dla tradycyjnych skryptów .sh — zamiast skryptów shellowych używasz binarek skompilowanych z kodu .hacker.

Hacker Lang korzysta z systemu pakietów i bibliotek hostowanych w repozytorium bytes.io.

Dlaczego Hacker Lang?

  • Zastępuje złożone skrypty .sh prostymi, czytelnymi plikami .hacker.

  • Umożliwia kompilację do binarek, co przyśpiesza uruchamianie oraz ułatwia dystrybucję.

  • Integruje się z repozytorium bibliotek bytes.io — instalacja i aktualizacja bibliotek odbywa się przez hackerc.

  • Zaprojektowany do użytku wewnętrznego w ekosystemie HackerOS, ale nadaje się też do zastosowań zewnętrznych.

Szybkie rozpoczęcie

Wymagania

  • HackerOS lub inna dystrybucja Linuksa z podstawowymi narzędziami developerskimi (najlepiej Ubuntu albo Debian).

  • hackerc — narzędzie CLI dla Hacker Lang (dostępne w repo projektu).

Komendy hackerc

Poniżej lista podstawowych komend dostępnych w narzędziu hackerc:

  • hackerc run {plik.hacker}:: Uruchamia plik .hacker bez kompilacji.

  • hackerc run .:: Uruchamia hacker.bytes.

  • hackerc compile --bytes:: Uruchamia proces kompilacji na podstawie pliku hacker.bytes.

  • hackerc compiler {plik.hacker} {lokalizacja}:: Kompiluje plik .hacker do binarki i zapisuje wynik w podanej lokalizacji.

  • hackerc check {plik.hacker}:: Sprawdza poprawność składni i podstawowe błędy logiczne w pliku.

  • hackerc init:: Tworzy przykładowy plik .hacker w bieżącym katalogu.

  • hackerc clean:: Czyści cache oraz pliki tymczasowe hackerc.

  • hackerc repl:: Uruchamia interaktywny REPL Hacker Lang.

  • hackerc version:: Wyświetla wersję hackerc.

  • hackerc help:: Pokazuje listę dostępnych komend i krótkie opisy.

  • hackerc unpack bytes:: Sprawdza czy manager zależności bytes jeżeli nie instaluje go.

  • bytes install:: Instaluje wybrana biblioteke.

  • bytes remove:: Usuwa wybrana biblioteke wybrana biblioteke.

  • bytes search:: Szuka wybranej biblioteki.

Składnia i przykład prostego skryptu .hacker

Poniżej przykład prostego pliku .hacker.

// sudo
// apt
> sudo apt update

Składnia Hacker Lang

Prefiks Znaczenie Przykład

!

Komentarz (cała linia jest ignorowana)

! To jest komentarz

//

Zależność systemowa (pakiet z apt)

// curlsudo apt install curl

#

Biblioteka (lib) – biblioteka z repozytorium bytes.io (zainstaluj ją za pomocą bytes install)

# obsidian

@

Zmienna środowiskowa

@USER=admin

>

Komenda do wykonania

> echo "Hello"

=

Pętla (liczba > komenda)

=3 > echo "Hi" → 3 razy

?

Warunek (warunek > komenda)

? [ -f file ] > echo OK

&

Uruchom w tle

& sleep 10

[

Początek sekcji konfiguracyjnej

[

]

Koniec sekcji konfiguracyjnej

]

Przykładowy workflow

  1. Napisz script.hacker.

  2. Sprawdź składnię: hackerc check script.hacker.

  3. Uruchom testowo bez kompilacji: hackerc run script.hacker.

  4. Skompiluj do binarki: hackerc compiler script.hacker /usr/local/bin/myscript.

  5. Uruchamiaj bezpośrednio jako binarkę.

Integracja z bytes.io

Hacker Lang używa repozytorium bibliotek bytes.io. Użyj bytes install <nazwa> aby pobrać paczkę; bytes update aby ją zaktualizować. Jeżeli nie masz zainstalowanego narzędzia cli bytes użyj komendy hackerc unpack bytes.

FAQ (krótkie)

  • Jak debugować?:: Użyj hackerc check oraz hackerc run z dodatkowymi flagami debug (jeśli dostępne). Logi hackerc znajdują się w domyślnym katalogu cache.

  • Czy .hacker może wywoływać polecenia systemowe?:: Tak — użyj > aby wykonać komendę shellową.

  • Gdzie znaleźć dokumentację?:: Pełna dokumentacja i wiki: Wiki na GitHubie.

  • Gdzie znajde repozytorium bytes.io ?:: Repozytorium bytes.io

  • Zgłoś błąd:: Issues na GitHubie

Licencja

Projekt jest dostępny na licencji MIT. Zobacz plik LICENSE w repozytorium.

Kontakt

Masz pomysł albo błąd? Otwórz issue na GitHubie w repozytorium projektu. Kontakt na email: [email protected]