KIAUH: A Menu-Driven Script to Install Klipper and Its Ecosystem on Raspberry Pi
Klipper Installation And Update Helper
At a glance
- What is it?
- KIAUH (Klipper Installation And Update Helper) is a shell script that installs Klipper, Moonraker, Mainsail, Fluidd, and a set of community extensions on a Debian-based Linux system with a menu-driven interface. It is aimed at 3D printer enthusiasts who want to set up the Klipper firmware stack on a Raspberry Pi or similar single-board computer without configuring each component separately.
- Who is it for?
- KIAUH is the standard setup path for a Klipper-based 3D printer stack on a Raspberry Pi or compatible SBC. It handles the installation of Klipper, the Moonraker API server, and your choice of web UI (Mainsail or Fluidd) through a single interactive menu.
- Can I use it commercially?
- Yes, with conditions. GPL-3.0 is a copyleft licence: if you distribute software that includes it, you must release that software's source code under the same licence. Running it internally without distributing it does not trigger that obligation.
- Is it still maintained?
- Yes. The repository last received commits 58 days ago.
- What is it written in?
- Mainly Python, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 30, 2026, and from our analysis. They are not legal advice.
Editorial analysis
What KIAUH Does and Who It Is For
Klipper is a 3D printer firmware that runs on a Raspberry Pi and sends low-level motion commands to a microcontroller board on the printer. Setting up the full Klipper stack requires installing Klipper itself, then Moonraker (the API server that connects Klipper to web interfaces), then a web UI such as Mainsail or Fluidd, and optionally additional components. Installing each piece manually and making them work together is a multi-step process that involves Python environments, systemd services, and Nginx configuration.
KIAUH wraps that process in a numbered menu. The README describes KIAUH as 'a handy installation script that makes installing Klipper (and more) a breeze.' The target audience is 3D printer hobbyists who know they want Klipper but do not want to configure each component from scratch. It is not for developers who need a custom installation layout.
The README states the script has been primarily tested on Raspberry Pi OS Lite (Debian 10 Buster and Debian 11 Bullseye). It likely also works on Ubuntu 20 to 22, and it has been reported to work on Armbian, though the README notes this is not tested in detail. Distributions based on Debian 11 Bullseye are described as the configuration most likely to succeed.
Prerequisites: What Must Be in Place Before Running KIAUH
KIAUH is not a bootstrapping tool. It requires a functional Linux system already running on the target machine. The README specifies that you must start with a Linux image flashed to your Raspberry Pi's SD card. Raspberry Pi OS Lite (32-bit or 64-bit) is the recommended image.
The README walks through using the official Raspberry Pi Imager to flash the image. The Advanced Options in the Imager (the cog icon) must be used to enable SSH and configure WiFi before writing the card. The README is explicit: failing to configure SSH before flashing means you will have no way to connect to the Pi over the network.
For other SBCs such as Orange Pi, the README directs users to find an appropriate Linux image for that board and use Balena Etcher to flash it. The KIAUH script itself needs to be run over an SSH session once the board is booted.
Once you have SSH access to the running system, the actual KIAUH installation takes three commands. Installing git first is required because KIAUH is distributed as a git repository:
Downloading and Running KIAUH: Three Commands
After connecting to your Raspberry Pi via SSH, install git if it is not already present:
sudo apt-get update && sudo apt-get install git -yClone the KIAUH repository into your home directory:
cd ~ && git clone https://github.com/dw-0/kiauh.gitLaunch the script:
./kiauh/kiauh.shThe script presents a main menu with numbered options. You choose what to install by typing the corresponding number and pressing Enter. The README notes that some operations require your sudo password.
The default configuration file is at default.kiauh.cfg in the repository root. The script checks the docs/changelog.md file for important changes before each run; the README asks users to check this file for breaking changes between KIAUH versions.
Core Components KIAUH Can Install
KIAUH installs five core components. Klipper is the 3D printer firmware, authored by KevinOConnor. Moonraker, authored by Arksine, is the API server that Klipper web interfaces use to communicate with the firmware. Mainsail is a web UI for Klipper, maintained by the mainsail-crew. Fluidd is an alternative web UI, maintained by the fluidd-core team. KlipperScreen is a touchscreen UI for Klipper, authored by alfrix, aimed at printers with an attached display.
Mainsail and Fluidd serve the same purpose: they provide a browser-based dashboard for monitoring and controlling the printer, uploading gcode files, and modifying the Klipper configuration. The choice between them is one of preference for UI design; both are installed and configured through the same KIAUH menu.
Each component is installed as a systemd service. KIAUH configures Nginx to proxy the web UIs so they are accessible from a browser on the same local network. These dependencies mean the script is specifically designed for Linux distributions that use systemd and include Nginx in their package repositories.
Community Extensions: Nine Additional Components
Beyond the core components, KIAUH's menu also provides nine community extensions. OctoPrint is the older, established web interface for 3D printers, maintained by the OctoPrint team; it predates Klipper and is included for users who prefer its plugin ecosystem. Moonraker-Telegram-Bot by nlef lets you receive printer notifications and send commands via Telegram. PrettyGCode for Klipper by Kragrathea renders gcode toolpaths visually in the browser.
Obico for Klipper (previously The Spaghetti Detective) by the Obico team provides AI-based print failure detection and remote access. Mobileraker's Companion by Patrick Schmidt connects to the Mobileraker mobile app for iOS and Android monitoring. OctoEverywhere for Klipper by Quinn Damerell provides remote access to the printer over the internet. OctoApp for Klipper by Christian Wurthner connects to the OctoApp mobile application. Klipper-Backup by Staubgeborener automates backup of Klipper configuration to a Git repository. SimplyPrint for Klipper by the SimplyPrint team connects the printer to a managed print queue service.
Each of these is optional. KIAUH installs only what you choose from the menu.
Limitations: Linux Only, No macOS or Windows, Sudo Required
KIAUH is a Linux-only tool. The README does not mention macOS or Windows support, and the script uses Linux-specific package managers (apt-get), systemd, and Nginx. Running it on macOS or Windows is not a supported use case.
The script requires sudo privileges for several installation steps. The README is explicit that you will be prompted for your sudo password. Users who need a locked-down or non-root setup cannot run KIAUH without modification.
KIAUH installs software but does not configure it for your specific printer. After installation, Klipper still requires a printer.cfg file that maps the firmware to your printer's hardware: stepper motor pins, bed dimensions, extruder configuration, and sensor pins. This configuration step is outside KIAUH's scope.
The README's compatibility note is specific: primarily tested on Raspberry Pi OS Lite, and distributions based on Debian 11 Bullseye are the most reliable. Distributions based on newer Debian releases are not explicitly tested. The README also advises reading the changelog before updating.
Alternative: MainsailOS
MainsailOS is a pre-built Raspberry Pi OS image that includes Klipper, Moonraker, and Mainsail already installed and configured. The key difference from KIAUH is setup approach. MainsailOS is flashed directly to the SD card as a complete operating system image, so Klipper and its web stack are present on first boot without any installation steps.
KIAUH, by contrast, is installed on top of a base Raspberry Pi OS image. This means KIAUH gives you more control over the base operating system and allows you to install only the components you want from the menu. MainsailOS is faster to a working setup but is tied to whatever OS version the image was built on.
For users who want Fluidd instead of Mainsail, KIAUH is the more direct path; a FluidOS image exists but is a separate project. For users who want OctoPrint alongside Klipper, KIAUH provides that as a community extension, while MainsailOS does not include OctoPrint.
Editorial conclusion
KIAUH is the standard setup path for a Klipper-based 3D printer stack on a Raspberry Pi or compatible SBC. It handles the installation of Klipper, the Moonraker API server, and your choice of web UI (Mainsail or Fluidd) through a single interactive menu. It is not a configuration tool: after running KIAUH, you still need to configure Klipper for your specific printer hardware. The last push was on 2026-08-03. The license is GPL-3.0. Before starting, verify you have a functional Debian-based Linux image flashed to your SBC's SD card and SSH access configured.
Frequently asked questions
How do I install KIAUH on a Raspberry Pi?
First install git with sudo apt-get update && sudo apt-get install git -y, then clone the repository with cd ~ && git clone https://github.com/dw-0/kiauh.git, then run ./kiauh/kiauh.sh. You need a working Debian-based Linux image on the Pi before running these commands.
What are the differences between MainsailOS and KIAUH?
MainsailOS is a complete Raspberry Pi OS image with Klipper, Moonraker, and Mainsail pre-installed, ready on first boot. KIAUH is a script you run on a base Raspberry Pi OS install to choose and install components from a menu. KIAUH gives you more control over what gets installed and supports Fluidd, OctoPrint, and community extensions that MainsailOS does not include.
Is there an alternative to KIAUH for setting up Klipper?
MainsailOS is the most common alternative: it is a pre-built OS image that includes Klipper and Mainsail out of the box, without requiring a separate installation script. For users who want more control over which components are installed, KIAUH remains the standard interactive installation approach.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/dw-0-kiauh)