A Linux installer made exclusively for TealinuxOS, built with Tauri and SvelteKit.
- lshw
- rsync
- fuse2
- gcc-libs
- webkit2gtk-4.1
- libappindicator-gtk3
- appmenu-gtk-module
To install the required dependencies on a Linux system using pacman, run the following command:
sudo pacman -Sy webkit2gtk-4.1 base-devel curl wget file openssl appmenu-gtk-module libappindicator-gtk3 librsvg lshw dmidecode rsync fuse2 gcc-libs ccacheInstall all dependencies:
bun installRunning the project:
bunx tauri devTo build and bundle into an executable:
bunx tauri build
# if encountering error running image.sh
NO_STRIP=true bunx tauri buildthe TEALINUX_BUILD env accepting two mode
devthis type of build will stop installer touching dangerous parts, essential safe for frontend developmentprod(or explicitlyproduction) this type of build will execute the dangerous parts (such partitioning, format, etc), this also will instruct internal parts library to use real system call instead use dummy data (i.e os-probe output)
this environment evaluation is executed only on build time, the resulted binary must be presistent.
example
# create final executable
TEALINUX_BUILD=prod bunx tauri build
# or run dev instead
TEALINUX_BUILD=dev bunx tauri dev
# if you doing backend development
TEALINUX_BUILD=prod bunx tauri devThis project uses tauri-specta to provide type-safe communication between the Rust backend and the Frontend. The bindings are generated into src/types/bindings.ts.
If you modify Rust commands or structs, you must regenerate the bindings manually. We use unit tests to generate them to avoid file permission issues (since the app runs as root).
To regenerate bindings:
cd src-tauri && cargo testTo contribute, here's list of TODO. Thank you for considering it!
