LuaBill · Documentation

Installing and updating LuaBill

The application package and the external document tools are installed separately. The setup wizard helps prepare the formats you use.

Windows

Run LuaBill-Setup-0.1.31-win64.exe on Windows 10 version 1809 or newer, or Windows 11, x64. It installs for the current user and includes Python, PySide6/Qt and Mustang. A separate Python installation is unnecessary.

Choose whether to create a desktop shortcut and associate .luabill files. At the end of Setup, you can open the component preparation wizard. To update, close LuaBill and install the new version into the existing application folder; your projects and user settings remain separate.

Get the Windows installer →

Linux

Extract the complete Linux archive and run the installer in its folder. A compatible Python 3.10–3.15 with venv and pip is required; installation needs Internet access for PySide6/Qt. The script creates a private environment and registers the application menu entry and .luabill files for your user.

The pinned Qt wheels require a supported glibc desktop Linux and the Qt desktop system libraries. Check the download requirements for your architecture. Native installation and graphical launch have not been verified in the current Windows build environment.

sh install.sh
sh install.sh --setup-components --language en

macOS

On macOS 14.4 or newer, install a compatible Python 3.10–3.15 with venv and pip, extract the complete ZIP and open Install_LuaBill.command. Intel and Apple Silicon use the same application sources; pip selects the appropriate PySide6/Qt wheels.

Application files normally live under ~/Library/Application Support/LuaBill, with a locally created launcher at ~/Applications/LuaBill.app. This is a source-based installation with a private Python environment. The launcher has no Developer ID signature or notarization, and native macOS launch has not been tested here.

sh Install_LuaBill.command
sh Install_LuaBill.command --setup-components --language en

External tools and update checks

Prepare LuaLaTeX/texlua, fonts and TeX packages for all documents. Add Java 17+ for XML validation and Ghostscript for ZUGFeRD. Help → Components and installation explains missing tools and links to their official installers.

The component wizard can reuse installed tools and shows actions requiring a terminal or administrator password. After changing PATH or installing a component, restart LuaBill and run the checks again. Help → E-invoice standards and updates checks published rule releases on request; it does not install updates automatically.

Resolve installation or compilation problems →Application release notes →
← Back to documentation

The tools behind your documents

The setup wizard prepares the components needed for your selected formats. Review its plan, then start preparation explicitly; opening the wizard or starting LuaBill does not begin downloads.

LuaLaTeX + texlua

Required for document generation

Use one TeX distribution with lualatex and texlua. On Windows, the wizard can install Basic MiKTeX and prepare the template's 19 direct packages, their dependencies and EN/DE/FR/IT/RU language data. Existing suitable TeX is reused. A LuaHBTeX version banner is normal; keep using lualatex.

Ghostscript

Required for ZUGFeRD; optional for ordinary PDF

Ghostscript prepares PDF/A-3 for ZUGFeRD and can compress ordinary PDFs. The wizard includes it when the ZUGFeRD profile requires it and reuses a suitable installed copy.

Java 17+

Required for XML, XRechnung and ZUGFeRD

A compatible Java 17+ runs the included Mustang validator and packager. New Windows preparation offers Temurin JRE 21; the macOS Homebrew route uses Temurin 21 JDK. Ordinary PDF generation does not need Java.

Python + PySide6/Qt

Included on Windows; set up separately on Linux/macOS

Python runs the application and PySide6/Qt supplies the windows and menus. Linux/macOS installers create an isolated environment; they require an existing compatible Python and download PySide6 during setup.

Private Noto document fonts

Prepared for all five document languages

The wizard downloads a verified set of Noto Sans and Noto Sans Mono into LuaBill's own user-data folder, with its upstream license. The fonts are loaded from those files and are not registered in the operating system. Existing system-font fallbacks remain available.

The installer does not contain a full TeX system. First preparation may download TeX tools, packages, fonts and the optional Java/Ghostscript components. The wizard tests all five languages and a fictional document through the selected generation profile; the read-only component report alone only confirms partial availability.

A smaller installer, guided document setup

LuaBill 0.1.27 adds a multilingual setup wizard. Prepare the tools once, then create documents locally without downloading a complete LaTeX distribution inside the LuaBill installer.

  1. Choose the formats you need

    Open Help → Prepare document creation, or keep the preparation option selected at the end of Windows Setup. Choose PDF, XML/XRechnung or ZUGFeRD.

  2. Review the existing tools

    The wizard identifies suitable TeX, Java and Ghostscript installations and shows the preparation plan. Click Prepare selected components to start downloads and installation.

  3. Prepare packages and fonts

    Windows can start with Basic MiKTeX. The wizard prepares LuaBill's 19 direct LaTeX packages, their dependencies and five document languages, plus private Noto Sans and Noto Sans Mono files. Java and Ghostscript follow the chosen profile.

  4. Create a checked example

    The wizard compiles the standalone LaTeX check twice and runs a fictional invoice through the selected generation path. At completion, open the test PDF; if a step fails, open the log folder or copy the diagnostic details.

A smaller installer, guided document setup
LuaBill 0.1.31 · Example document

PDF

LuaLaTeX, texlua, the template's packages and suitable fonts. Java and Ghostscript are not required for ordinary PDF generation.

PDF + XML / XRechnung

The PDF components plus Java 17+ for Mustang XML validation. New Windows preparation offers the smaller Temurin JRE 21.

ZUGFeRD

The PDF/XML components plus Ghostscript to prepare PDF/A-3 and package the embedded XML; the resulting container is validated.

The application package remains compact; missing tools still require separate Internet downloads. All three generation profiles passed checks on Windows with installed tools. Full dependency installation on a clean Windows computer and native Linux/macOS setup still need separate verification.

Download the standalone LaTeX check ↓

The separate test works without LuaBill: select LuaLaTeX and compile twice. It checks all 19 direct packages, five languages, formulas, icons, tables and fonts. MiKTeX can fetch missing TeX packages when on-the-fly installation is enabled; system fonts need a separate installation outside the wizard. SHA-256 checksums

Update, check components and uninstall

Install the current release over your existing LuaBill and check the active invoice rules from Help. Seven editable examples with ready-made PDFs are included in the application and available as a complete ZIP.

01

Install the new version in place

Close LuaBill, then run the new installer over the existing installation. Removing the previous version first is unnecessary.

  • On Windows, keep the previous installation folder suggested by Setup.
  • On Linux/macOS, reuse the same --prefix for a custom folder.
  • Projects, results and preferences in personal folders remain in place.
Linuxsh install.sh
macOSsh Install_LuaBill.command

Save manual program-file edits separately. Linux/macOS stops on a conflicting file. Review rule versions under Help → E-invoice standards and updates after upgrading; installing an older release over a newer one is not recommended.

02

Prepare components and check a sample

Open Help → Prepare document creation to choose a profile, review installed tools and prepare missing components.

  • The Windows package includes Python/Qt. Linux/macOS use an existing Python and install Qt privately.
  • PDF needs TeX and fonts; XML/XRechnung additionally needs Java 17+; ZUGFeRD also needs Ghostscript.
  • Preparation runs the standalone five-language LaTeX check twice and then the real generation and validation path for the chosen profile.

Starting the wizard only scans. Click Prepare selected components to begin downloads and installation, or verify the current setup. Logs and test PDFs can be opened from the wizard.

03

Remove the program files

A new archive's uninstaller can remove an older installation without reinstalling LuaBill.

  • Close LuaBill and use the original --prefix for a custom installation.
  • Documents, preferences and modified or untracked files are preserved.
  • Review the final warnings and list of remaining files.
Linuxsh uninstall.sh
macOSsh Uninstall_LuaBill.command

The small separate archive also removes existing installations. System TeX, Java, Ghostscript and downloaded package folders are retained.

Separate Linux/macOS uninstaller ↓ ZIP · 23 KB

SHA-256 checksums

User guide ↗