A premium, frosted Glass native Linux launcher designed exclusively for compiling, installing, running, and managing Tiwut applications in a non-root, user-space environment. Built with a 100% native CPP backend integrated with a responsive WebKit user interface.
- frosted Glass Modern UI: Transparent window overlay with smooth hover effects, micro-animations, full CSS glassmorphism, dynamic console logs, and built-in tabbed navigation.
- Subprocess Downloader with Fail-safes: Downloads remote files asynchronously. If the native Qt network manager encounters a problem, it automatically drops through robust fallbacks:
- Native Qt network download
curlsubprocess downloadwgetsubprocess download
- Non-Root Extractor Pipeline: Installs a wide variety of Linux application packages locally without needing sudo/root access:
- AppImages: Configures execution permissions and performs automatic squashing/extraction if FUSE (
libfuse2) is unavailable on the host machine. - Debian Packages (
.deb): Automatically extracts data archives usingdpkg-debor falls back to standardar+tarpipelines. - RedHat Packages (
.rpm): Extracts packages usingrpm2cpio+cpioor falls back to7z. - Flatpak Bundles: Installs
.flatpakbundles silently in the user-registry context (flatpak install --user). - Compressed Archives (
.zip,.tar.gz,.tar.xz,.tgz): Dynamically extracts archives using standard system utilities or custom Python-based zip/tarball extractors.
- AppImages: Configures execution permissions and performs automatic squashing/extraction if FUSE (
- Asynchronous Compiler State Machine: Clones repositories from GitHub (or fetches branch ZIP files if git cloning fails) and automatically determines the best compile path:
- CMake: Automatically configures and compiles targets (
cmake -B buildfollowed bycmake --build). - Shell Scripts: Detects and runs executable build/install scripts (e.g.,
build.sh,install.sh,compile.sh). - Makefiles: Resolves parallel building dynamically based on system thread count (
make -jN).
- CMake: Automatically configures and compiles targets (
- Detached Launch & Deep Clean Uninstaller: Launches applications fully detached from the main launcher process, terminates running instances gracefully via system signals (
pkill/pgrep/kill/killall), and completely purges local files and binary caches.
Tiwut Launcher utilizes a dual-engine architecture:
- Core Engine (C++ / Qt6): Handles OS interaction, network management, asynchronous process control (
QProcess), dynamic file system scanning, extraction, and local compilation. - Frontend UI (HTML5 / Vanilla CSS / JavaScript): A modern reactive visual layer rendered inside
QWebEngineViewwith a bridge that triggers system RPC methods seamlessly.
Ensure you have a modern C++17 compiler and Qt6 development libraries installed on your Linux distribution.
sudo apt install build-essential cmake qt6-base-dev qt6-webengine-devsudo dnf install cmake gcc-c++ qt6-qtbase-devel qt6-qtwebengine-develsudo pacman -S cmake gcc qt6-base qt6-webengine-
Clone this repository to your local machine:
git clone https://github.com/tiwut/Tiwut-Launcher-Linux.git cd Tiwut-Launcher-Linux -
Configure the build directory:
cmake -B build -S . -
Compile the application:
cmake --build build
-
Launch the binary:
./build/TiwutLauncher
├── CMakeLists.txt # Port-ready CMake configuration
├── src
│ ├── main.cpp # App initialization and WebEngine configuration
│ ├── mainwindow.h # Controller definitions and async states
│ ├── mainwindow.cpp # System RPC layer, subprocess pipelines, and resolvers
│ └── index.html # Rich Liquid-Glass UI & frontend application logic
└── build/ # Created build outputs
This project is open-source and available under the MIT License.