English
About this handbook

This handbook belongs to QuartzControl version 1.1.0 and explains every one of its screens; every screen links to its page here.

How to write notes so they make good pages is in the Example handbook.

System requirements

Supported systems

SystemAt least
macOS12 (Monterey), on Apple Silicon and on Intel
Linuxx86_64 and arm64; glibc 2.34 or newer — Ubuntu 22.04, Debian 12, RHEL 9, Fedora 35

The numbers do not come from this handbook but from the program: QuartzControl is built on Electron 43, the shipped bundle carries the 12 as its LSMinimumSystemVersion, and the Linux figure comes from the bundled git, not from Electron, which gets by with glibc 2.25. On an older system QuartzControl starts but says it cannot use its own git there; a git from the package manager helps, since QuartzControl prefers the machine’s git anyway.

The Flatpak is independent of all that: it brings its own runtime (freedesktop 25.08) and runs wherever Flatpak runs. It was built and tried on Debian 13.

Windows is absent on purpose — the reasons are below.

What QuartzControl brings along

A first launch should require nothing that has to be installed first. So it carries:

Node and npmElectron’s own runtime, through three shims on the path. No Node installation needed.
gitas a fallback only. If the machine has a git that answers, that one wins — so your own .gitconfig and your own credential helpers keep working.
The basic templateas a fallback for creating a project with no network.

Which of these was found at startup and where it came from is what the start screen states line by line — see 1.3 – Installing and the first run.

What the system has to supply

A network for everything that gets fetched: Quartz when a project is created, plugins from the marketplace, templates, publishing.

A keychain, if connections with a password or token are to be saved. On macOS there always is one. On Linux it takes gnome-keyring or KWallet; without either, QuartzControl does not save such connections at all rather than storing them unprotected.

Why there is no Windows build

Not for lack of interest, but because three things are different there and QuartzControl would not do what it promises without them:

  1. Directory links need elevated rights. That is exactly what connects a project to an Obsidian vault.
  2. npm and npx are spawned through cmd.exe. Free-text arguments get reinterpreted there — what QuartzControl passes is not necessarily what arrives.
  3. There is no equivalent of rsync. One of the publishing paths would fall away.

A Windows entry in the packaging config would produce an installer for a version that does not do what this handbook describes.