An adaptable installer for your application
Go to file
bunnei faeb4885bf
Merge pull request #30 from lat9nq/linux-mainline-fix
linux v3: Use AppImage for Mainline
2022-08-01 11:17:04 -07:00
.travis general: Housekeeping 2022-07-28 16:39:35 -04:00
src installer: Use an inline expression for is_windows 2022-07-28 16:57:36 -04:00
ui SelectPackages: Desktop shortcut is for Windows 2021-07-24 19:02:28 -04:00
.gitignore Use proper logging solution 2018-08-04 16:28:13 +10:00
.travis.yml Update config files for v7 (#12) 2019-07-04 21:23:16 -04:00
banner.png Clean up documentation 2018-08-09 17:06:20 +10:00
bootstrap.linux.toml general: Get ready for Linux release 2021-07-24 19:02:28 -04:00
bootstrap.macos.toml Update config files for v7 (#12) 2019-07-04 21:23:16 -04:00
bootstrap.windows.toml Move to installer v1.8 2019-12-05 09:49:03 -07:00
build.rs Tweak Patreon authentication implementation 2019-11-16 05:43:11 +00:00
Cargo.lock Add authentication task dependency to check for auth on install 2019-11-01 11:15:16 -06:00
Cargo.toml Add new dependencies and update Cargo.lock 2019-10-21 01:11:57 -06:00
config.linux.v1.toml Set advanced hidden flag to true 2018-10-01 11:55:12 +10:00
config.linux.v2.toml Update configs 2019-11-14 15:16:20 -07:00
config.linux.v3.toml linux v3: Use AppImage for Mainline 2022-07-31 19:47:29 -04:00
config.windows.v2.toml Update config files for v1.4 2018-12-30 09:11:07 +11:00
config.windows.v3.toml Update config files for v1.4 2018-12-30 09:11:07 +11:00
config.windows.v4.toml Update config files for v1.4 2018-12-30 09:11:07 +11:00
config.windows.v5.toml Update config files for v1.4 2018-12-30 09:11:07 +11:00
config.windows.v6.toml Update config files for v7 (#12) 2019-07-04 21:23:16 -04:00
config.windows.v7.toml Migrate to new version 2019-10-07 01:11:36 +01:00
config.windows.v8.toml Update old config to the new one 2019-12-01 11:44:05 -07:00
config.windows.v9.toml Unpublish update 1.8 2019-12-08 20:03:23 -07:00
config.windows.v10.toml Launch app on fresh install exit. Add desktop shortcuts 2019-12-06 22:04:44 -07:00
LICENSE Add readme and license 2018-01-31 14:42:28 +11:00
liftinstall.png Add logo 2018-08-09 15:50:38 +10:00
README.md Update config files for v7 (#12) 2019-07-04 21:23:16 -04:00

Usage Documentation - Quick Start - License

Build Status

An installer for your application. Designed to be customisable to the core, hookable from external applications, and have a decent UI.

This is designed to be a more modern interpretation of Qt's Installer Framework, which is hard to develop on, poorly documented, has a hardcoded package listing format, and isn't supported all that well, with rare updates and a large list of bugs.

Building

For more detailed instructions, look at the usage documentation above.

There are are few system dependencies depending on your platform:

  • For all platforms, cargo should be available on your PATH. Rustup is the recommended way to achieve this. Stable or Nightly Rust works fine.
  • Have node.js and Yarn available on your PATH (for building UI components, not needed at runtime).
  • For Windows (MSVC), you need Visual Studio installed.
  • For Windows (Mingw), you need gcc/g++ available on the PATH.
  • For Mac, you need Xcode installed, and Clang/etc available on the PATH.
  • For Linux, you need gcc/g++, webkit2gtk, and libssl. For Ubuntu 18.04 this would look like:
apt install -y build-essential libwebkit2gtk-4.0-dev libssl-dev

In order to build yourself an installer, as a bare minimum, you need to:

  • Add your favicon to ui/public/favicon.ico
  • Add your logo to ui/src/assets/logo.png
  • Modify the bootstrap configuration file as needed (config.PLATFORM.toml).
  • Have the main configuration file somewhere useful, reachable over HTTP.
  • Run:
cargo build --release

Contributing

PRs are very welcome. Code should be run through Rustfmt before submission.

License

LiftInstall is licensed under the Apache 2.0 License, which can be found in LICENSE.