This repository builds the Datashare installers for macOS, Windows and Linux. Each release publishes:
datashare-X.Y.Z.pkg— macOS installerdatashare-X.Y.Z.exe— Windows installer- the datashare snap for Linux, built from snap/snapcraft.yaml
The Datashare version the installers target is stored in VERSION.txt, the bundled Elasticsearch version in ELASTICSEARCH_VERSION.txt.
| Path | Purpose |
|---|---|
| mac/ | macOS .pkg installer (flat package built with bomutils and xar, signed and notarized with rcodesign) |
| windows/ | Windows .exe installer (NSIS) |
| snap/ | Linux snap definition |
| scripts/deploy.sh | Uploads built installers to a GitHub release (run by the Datashare CI) |
| scripts/stats.py | Exports per-release download counts to ds_stats.csv |
Run make help to list targets. VERSION defaults to the content of VERSION.txt:
make mac # mac/dist/datashare-$(VERSION).pkg
make windows # windows/dist/datashare-$(VERSION).exe
make VERSION=21.14.0 all # both, for a specific versionBuilt as a flat package following this tutorial (cf mac/Makefile). You need cpio, imagemagick, icnsutils, bomutils, xar and rcodesign (apple-codesign crate). make -C mac package builds an unsigned .pkg with no credentials. make mac (or make -C mac all) also signs and notarizes, which requires Apple credentials in environment variables: see mac/README.md.
Built with NSIS (nsis package on Ubuntu/Debian) and three plugins, each copied to /usr/share/nsis/Plugins/:
See .circleci/config.yml for the exact setup.
The snap is built by Snapcraft from snap/snapcraft.yaml. It picks its version from the latest git tag and bundles OpenJDK 21, Tesseract OCR and the Datashare release tarball.
- macOS: ensures Xcode Command Line Tools and a package manager (Homebrew, or MacPorts on older systems) are installed, installs Tesseract OCR and OpenJDK 21 with it, downloads the Datashare jar and Elasticsearch, installs
Datashare.appand adatashareCLI. - Windows: downloads and installs the Temurin JRE 21, Tesseract OCR and Elasticsearch, downloads the Datashare jar and creates the launcher.
- Linux (snap): self-contained, bundles the JRE and Tesseract so nothing else is installed on the host.