diff options
| author | Ben Busby <contact@benbusby.com> | 2023-03-22 11:56:22 -0600 |
|---|---|---|
| committer | Ben Busby <contact@benbusby.com> | 2023-03-22 11:56:22 -0600 |
| commit | 9eb11ed2645d30e81d89c8cfd53a4935b3167c10 (patch) | |
| tree | 2b2bf58e5022a60b006cd87797b441d57cf68541 /mix.exs | |
| parent | b75355ed758201a7e2280cb7b3350407ee269d57 (diff) | |
| download | farside-9eb11ed2645d30e81d89c8cfd53a4935b3167c10.tar.gz | |
Allow compiling to standalone binary via bakeware
This introduces a simple way of compiling Farside to a somewhat portable,
standalone binary. The resulting binary isn't completely portable since it
depends on the C runtime of the host system. As a result, it's advised to use
systems with older library versions when compiling for true portability.
Closes #50
Co-authored-by: Jason Clark <mithereal@gmail.com>
Diffstat (limited to 'mix.exs')
| -rw-r--r-- | mix.exs | 50 |
1 files changed, 45 insertions, 5 deletions
@@ -1,16 +1,31 @@ defmodule Farside.MixProject do use Mix.Project + @source_url "https://github.com/benbusby/farside.git" + @version "0.1.1" + @app :farside + def project do [ - app: :farside, - version: "0.1.0", + app: @app, + version: @version, + name: "farside", elixir: "~> 1.8", - start_permanent: Mix.env() == :prod, - deps: deps() + source_url: @source_url, + start_permanent: Mix.env() == :prod || Mix.env() == :cli, + deps: deps(), + aliases: aliases(), + description: description(), + package: package(), + releases: [{@app, release()}], + preferred_cli_env: [release: :cli] ] end + defp aliases do + [] + end + # Run "mix help compile.app" to learn about applications. def application do [ @@ -27,7 +42,32 @@ defmodule Farside.MixProject do {:plug_attack, "~> 0.4.2"}, {:plug_cowboy, "~> 2.0"}, {:quantum, "~> 3.0"}, - {:cubdb, "~> 2.0.1"} + {:cubdb, "~> 2.0.1"}, + {:bakeware, "~> 0.2.4"} + ] + end + + defp description() do + "A redirecting service for FOSS alternative frontends." + end + + defp package() do + [ + name: "farside", + files: ["lib", "mix.exs", "README*"], + maintainers: ["Ben Busby"], + licenses: ["MIT"], + links: %{"GitHub" => "https://github.com/benbusby/farside"} + ] + end + + defp release() do + [ + overwrite: true, + cookie: "#{@app}_cookie", + quiet: true, + steps: [:assemble, &Bakeware.assemble/1], + strip_beams: Mix.env() == :cli ] end end |
