Current section
Files
Jump to
Current section
Files
webengine_kiosk
mix.exs
mix.exs
defmodule WebengineKiosk.MixProject do
use Mix.Project
@version "0.3.0"
@source_url "https://github.com/nerves-web-kiosk/webengine_kiosk"
def project do
[
app: :webengine_kiosk,
version: @version,
elixir: "~> 1.6",
description: description(),
package: package(),
source_url: @source_url,
compilers: [:elixir_make | Mix.compilers()],
make_targets: ["all"],
make_clean: ["clean"],
make_error_message: make_help(),
docs: docs(),
dialyzer: [
flags: [:unmatched_returns, :error_handling, :race_conditions, :underspecs]
],
deps: deps()
]
end
def application do
[
extra_applications: [:logger],
mod: {WebengineKiosk.Application, []}
]
end
defp description do
"Display and control web pages on a local fullscreen browser"
end
defp package do
[
files: [
"lib",
"src",
"assets",
"test",
"mix.exs",
"README.md",
"LICENSE",
"CHANGELOG.md",
"Makefile"
],
licenses: ["Apache-2.0", "LGPL-3.0-only"],
links: %{"GitHub" => @source_url}
]
end
defp deps do
[
{:system_registry, "~> 0.8", optional: true},
{:elixir_make, "~> 0.6", runtime: false},
{:ex_doc, "~> 0.19", only: [:dev, :test], runtime: false},
{:dialyxir, "~> 1.0.0-rc.6", only: :dev, runtime: false}
]
end
defp docs do
[
extras: ["README.md"],
main: "readme",
source_ref: "v#{@version}",
source_url: @source_url
]
end
defp using_nerves? do
System.get_env("CROSSCOMPILE") != nil
end
defp make_help do
"""
Please look above this message for the compiler error before filing an
issue. The first error after the text `==> webengine_kiosk` is usually the
most helpful.
The webengine_kiosk library requires the Qt framework to build.
""" <> make_help_os(:os.type(), using_nerves?())
end
defp make_help_os({:unix, :darwin}, _nerves) do
"""
To install Qt using Homebrew, run `brew install qt`. Homebrew doesn't add
qt to your path, so you'll need to add it or set the QMAKE environment
variable. For example, `export QMAKE=/usr/local/opt/qt/bin/qmake`.
"""
end
defp make_help_os({:unix, _}, true) do
"""
Please install Qt using your system's package manager or via source. Since
this is a Nerves-based project, only `qmake` is needed. For Ubuntu, this
looks like:
sudo apt install qt5-qmake
Another option is to set the `QMAKE` environment variable to the path to
the qmake binary:
QMAKE=~/Qt/5.11.1/gcc_64/bin/qmake
"""
end
defp make_help_os({:unix, _}, false) do
"""
Please install Qt using your system's package manager or via source. Be
sure to install the development headers and libraries for Qt Webengine.
For Ubuntu, this looks like:
sudo apt install qt5-default qtwebengine5-dev qtmultimedia5-dev
"""
end
defp make_help_os({other, _}, _nerves) do
"""
I'm not familiar with installing Qt5 on #{inspect(other)}. Please install
Qt5 using your platform's package manager or from source and consider
making an issue or a PR to #{@source_url} to benefit other users.
If you're getting an error that `qmake` isn't found, try setting the
`QMAKE` environment variable to the path to `qmake`.
"""
end
end