The graphical installer for SlashOS. Written in Python, using pywebview for the interface and standard Linux tools for system provisioning.
Get the latest installers from the Releases page:
- Windows: Download
desktop-installer-windows.exe - macOS: Download
desktop-installer-macos.dmg - Linux: Download
desktop-installer-linux.AppImage
| Welcome | Keyboard | Language |
|---|---|---|
![]() |
![]() |
![]() |
| Partitioning | User Setup | Progress |
|---|---|---|
![]() |
![]() |
![]() |
This installer comes pre-installed on SlashOS live ISOs.
To run it locally for development (Windows/Linux):
# 1. Clone
git clone https://github.com/slashos/desktop-installer.git
cd desktop-installer
# 2. Venv setup
python -m venv venv
source venv/bin/activate # or venv\Scripts\activate on Windows
pip install -r requirements.txt
# 3. Run in dry-run mode (safe for testing)
python -m installer_api --dry-runNote: The --dry-run flag mocks all disk operations and system commands. Do not run without this flag on a dev machine unless you intend to wipe your drive.
The project connects a Python backend to a simple HTML/JS frontend.
.
├── installer_api/ # Python Backend
│ ├── installation.py # specific Arch/pacstrap logic
│ ├── webview.py # GUI entry point (pywebview)
│ └── ...
├── web/ # Frontend
│ ├── pages/ # HTML views
│ ├── scripts/ # JS logic
│ └── styles/ # CSS
└── PKGBUILD # Arch packaging
If you are tweaking the partitioning or installation logic, use the CLI test script to verify logic without launching the GUI:
python test_install.py --dry-runTo build platform-specific executables:
./build.shThis generates downloadable installers for Windows (.exe), macOS (.dmg), and Linux (AppImage).
To build the package for SlashOS:
makepkg -siPRs are welcome. If you are modifying the partitioning logic, please ensure you test thoroughly with --dry-run enabled.





