-
Notifications
You must be signed in to change notification settings - Fork 5
Installing From Source
These instructions assume a basic knowledge of Linux/Unix and command-line tools.
open890 is currently supported under Linux, or Unix-like operating systems like MacOS. You can also follow these instructions in Windows 10 if you have WSL installed - much of this project was written under WSL. If you are on Windows and do not have WSL installed, you can still compile the app. See Developing on Windows for more information.
-
Raspberry Pi users may need to install the following packages:
sudo apt -y install autoconf libssl-dev libncurses5-dev zip unzip git
-
Fedora Red Hat users will need to install the following packages:
sudo yum install autoconf openssl-devel ncurses-devel automake inotify-tools git
git clone https://github.com/tonyc/open890.git
cd open890
There are two main branches in the repository: main
and develop
-
main
can be interpreted as "stable", but unreleased. Code that lands in main is next in line for a release. This is the default branch you get when cloning the repository. -
develop
should be considered "unstable". Things may break, things may change around rapidly, etc.
To check out the develop
branch:
git checkout develop
asdf is a tool to manage installing specific versions of various programming languages and development tools. It is the recommended way to build open890 from source locally.
-
Install asdf plugins required by open890:
asdf plugin add erlang https://github.com/asdf-vm/asdf-erlang.git asdf plugin-add elixir https://github.com/asdf-vm/asdf-elixir.git asdf plugin-add nodejs https://github.com/asdf-vm/asdf-nodejs.git asdf plugin-add yarn
-
Install the specific versions listed in the
.tool-versions
file:asdf install
-
The Erlang install will take a very long time on a Raspberry Pi. You may also see scary-looking messages during the Erlang install that says something like "fop is missing" or "documentation cannot be built" - this is OK.
-
Once everything has installed, ensure you are running the same versions listed in the
.tool-versions
file. The versions listed below are just examples of output, but make sure the versions correspond with the.tool-versions
file;$ cat .tool-versions elixir 1.12.3-otp-23 erlang 23.3.4.6 nodejs 14.15.4 yarn 1.22.11 $ elixir --version #... Elixir 1.12.3 (compiled with Erlang/OTP 23) $ node --version v14.15.4 $ yarn --version 1.22.11
If you have incorrect versions installed, you may run into installation problems not covered by this guide.
First-time users may need to answer Y
to a couple of prompts
$ mix do deps.get, compile
$ yarn install --cwd assets/
$ mix phx.server
You can now visit http://localhost:4000
from your browser.
Type ^C^C
(aka: ctrl-c twice)