diff options
author | Eric Merritt <eric@merritt.tech> | 2016-03-28 14:14:13 -0700 |
---|---|---|
committer | Eric Merritt <eric@merritt.tech> | 2016-04-23 19:03:24 -0700 |
commit | 8dbcb4e35ecc2513dab1ed8cb6052f68ab0a6537 (patch) | |
tree | 7c59313015440aa0adeed1acf01e9445081b308d /pkgs/development/beam-modules | |
parent | 3b7aee2e5a87b256aaff903a33106d974a25dbef (diff) |
beamPackages: Add support for Mix and Erlang.mk
Diffstat (limited to 'pkgs/development/beam-modules')
-rw-r--r-- | pkgs/development/beam-modules/build-erlang-mk.nix | 86 | ||||
-rw-r--r-- | pkgs/development/beam-modules/build-hex.nix | 19 | ||||
-rw-r--r-- | pkgs/development/beam-modules/build-mix.nix | 86 | ||||
-rw-r--r-- | pkgs/development/beam-modules/build-rebar3.nix | 89 | ||||
-rw-r--r-- | pkgs/development/beam-modules/default.nix | 17 | ||||
-rw-r--r-- | pkgs/development/beam-modules/fetch-hex.nix | 34 | ||||
-rw-r--r-- | pkgs/development/beam-modules/hex-packages.nix | 43524 | ||||
-rw-r--r-- | pkgs/development/beam-modules/hex-registry-snapshot.nix | 23 | ||||
-rw-r--r-- | pkgs/development/beam-modules/hex/default.nix | 58 | ||||
-rwxr-xr-x | pkgs/development/beam-modules/mix-bootstrap | 112 | ||||
-rw-r--r-- | pkgs/development/beam-modules/pgsql/default.nix | 34 | ||||
-rw-r--r-- | pkgs/development/beam-modules/webdriver/default.nix | 40 |
12 files changed, 44122 insertions, 0 deletions
diff --git a/pkgs/development/beam-modules/build-erlang-mk.nix b/pkgs/development/beam-modules/build-erlang-mk.nix new file mode 100644 index 000000000000..8c2b72aa43cf --- /dev/null +++ b/pkgs/development/beam-modules/build-erlang-mk.nix @@ -0,0 +1,86 @@ +{ stdenv, writeText, erlang, perl, which, gitMinimal, wget }: + +{ name, version +, src +, setupHook ? null +, buildInputs ? [] +, beamDeps ? [] +, postPatch ? "" +, compilePorts ? false +, installPhase ? null +, meta ? {} +, ... }@attrs: + +with stdenv.lib; + +let + shell = drv: stdenv.mkDerivation { + name = "interactive-shell-${drv.name}"; + buildInputs = [ drv ]; + }; + + pkg = self: stdenv.mkDerivation ( attrs // { + app_name = "${name}"; + name = "${name}-${version}"; + inherit version; + + dontStrip = true; + + inherit src; + + setupHook = if setupHook == null + then writeText "setupHook.sh" '' + addToSearchPath ERL_LIBS "$1/lib/erlang/lib" + '' + else setupHook; + + buildInputs = [ erlang perl which gitMinimal wget ]; + propagatedBuildInputs = beamDeps; + + configurePhase = '' + runHook preConfigure + + # We shouldnt need to do this, but it seems at times there is a *.app in + # the repo/package. This ensures we start from a clean slate + make SKIP_DEPS=1 clean + + runHook postConfigure + ''; + + buildPhase = '' + runHook preBuild + + make SKIP_DEPS=1 + + runHook postBuild + ''; + + installPhase = '' + runHook preInstall + + mkdir -p $out/lib/erlang/lib/${name} + cp -r ebin $out/lib/erlang/lib/${name}/ + cp -r src $out/lib/erlang/lib/${name}/ + + if [ -d include ]; then + cp -r include $out/lib/erlang/lib/${name}/ + fi + + if [ -d priv ]; then + cp -r priv $out/lib/erlang/lib/${name}/ + fi + + if [ -d doc ]; then + cp -r doc $out/lib/erlang/lib/${name}/ + fi + + runHook postInstall + ''; + + passthru = { + packageName = name; + env = shell self; + inherit beamDeps; + }; +}); +in fix pkg diff --git a/pkgs/development/beam-modules/build-hex.nix b/pkgs/development/beam-modules/build-hex.nix new file mode 100644 index 000000000000..ff6e47e5a805 --- /dev/null +++ b/pkgs/development/beam-modules/build-hex.nix @@ -0,0 +1,19 @@ +{ stdenv, buildRebar3, fetchHex }: + +{ name, version, sha256 +, hexPkg ? name +, ... }@attrs: + +with stdenv.lib; + +let + pkg = self: buildRebar3 (attrs // { + + src = fetchHex { + pkg = hexPkg; + inherit version; + inherit sha256; + }; + }); +in + fix pkg diff --git a/pkgs/development/beam-modules/build-mix.nix b/pkgs/development/beam-modules/build-mix.nix new file mode 100644 index 000000000000..12efc00b0509 --- /dev/null +++ b/pkgs/development/beam-modules/build-mix.nix @@ -0,0 +1,86 @@ +{ stdenv, writeText, elixir, erlang, hexRegistrySnapshot, hex }: + +{ name +, version +, src +, setupHook ? null +, buildInputs ? [] +, beamDeps ? [] +, postPatch ? "" +, compilePorts ? false +, installPhase ? null +, meta ? {} +, ... }@attrs: + +with stdenv.lib; + +let + shell = drv: stdenv.mkDerivation { + name = "interactive-shell-${drv.name}"; + buildInputs = [ drv ]; + }; + + bootstrapper = ./mix-bootstrap; + + pkg = self: stdenv.mkDerivation ( attrs // { + name = "${name}-${version}"; + inherit version; + + dontStrip = true; + + inherit src; + + setupHook = if setupHook == null + then writeText "setupHook.sh" '' + addToSearchPath ERL_LIBS "$1/lib/erlang/lib" + '' + else setupHook; + + inherit buildInputs; + propagatedBuildInputs = [ hexRegistrySnapshot hex elixir ] ++ beamDeps; + + configurePhase = '' + runHook preConfigure + ${erlang}/bin/escript ${bootstrapper} + runHook postConfigure + ''; + + buildPhase = '' + runHook preBuild + + export HEX_OFFLINE=1 + export HEX_HOME=`pwd` + export MIX_ENV=prod + + MIX_ENV=prod mix compile --debug-info --no-deps-check + + runHook postBuild + ''; + + installPhase = '' + runHook preInstall + + MIXENV=prod + + if [ -d "_build/shared" ]; then + MIXENV=shared + fi + + mkdir -p "$out/lib/erlang/lib/${name}-${version}" + for reldir in src ebin priv include; do + fd="_build/$MIXENV/lib/${name}/$reldir" + [ -d "$fd" ] || continue + cp -Hrt "$out/lib/erlang/lib/${name}-${version}" "$fd" + success=1 + done + + runHook postInstall + ''; + + passthru = { + packageName = name; + env = shell self; + inherit beamDeps; + }; +}); +in fix pkg diff --git a/pkgs/development/beam-modules/build-rebar3.nix b/pkgs/development/beam-modules/build-rebar3.nix new file mode 100644 index 000000000000..2627ddf99a6b --- /dev/null +++ b/pkgs/development/beam-modules/build-rebar3.nix @@ -0,0 +1,89 @@ +{ stdenv, writeText, erlang, rebar3, openssl, libyaml, + pc, buildEnv }: + +{ name, version +, src +, setupHook ? null +, buildInputs ? [], beamDeps ? [], buildPlugins ? [] +, postPatch ? "" +, compilePorts ? false +, installPhase ? null +, meta ? {} +, ... }@attrs: + +with stdenv.lib; + +let + ownPlugins = buildPlugins ++ (if compilePorts then [pc] else []); + + shell = drv: stdenv.mkDerivation { + name = "interactive-shell-${drv.name}"; + buildInputs = [ drv ]; + }; + + pkg = self: stdenv.mkDerivation (attrs // { + + name = "${name}-${version}"; + inherit version; + + buildInputs = buildInputs ++ [ erlang rebar3 openssl libyaml ]; + propagatedBuildInputs = unique (beamDeps ++ ownPlugins); + + dontStrip = true; + # The following are used by rebar3-nix-bootstrap + inherit compilePorts; + buildPlugins = ownPlugins; + + inherit src; + + setupHook = if setupHook == null + then writeText "setupHook.sh" '' + addToSearchPath ERL_LIBS "$1/lib/erlang/lib/" + '' + else setupHook; + + postPatch = '' + rm -f rebar rebar3 + ''; + + configurePhase = '' + runHook preConfigure + rebar3-nix-bootstrap + runHook postConfigure + ''; + + buildPhase = '' + runHook preBuild + HOME=. rebar3 compile + ${if compilePorts then '' + HOME=. rebar3 pc compile + '' else ''''} + runHook postBuild + ''; + + installPhase = if installPhase == null + then '' + runHook preInstall + mkdir -p "$out/lib/erlang/lib/${name}-${version}" + for reldir in src ebin priv include; do + fd="_build/default/lib/${name}/$reldir" + [ -d "$fd" ] || continue + cp -Hrt "$out/lib/erlang/lib/${name}-${version}" "$fd" + success=1 + done + runHook postInstall + '' + else installPhase; + + meta = { + inherit (erlang.meta) platforms; + } // meta; + + passthru = { + packageName = name; + env = shell self; + inherit beamDeps; + }; + }); +in + fix pkg diff --git a/pkgs/development/beam-modules/default.nix b/pkgs/development/beam-modules/default.nix new file mode 100644 index 000000000000..03bab8c4aa95 --- /dev/null +++ b/pkgs/development/beam-modules/default.nix @@ -0,0 +1,17 @@ +{ stdenv, pkgs }: #? import <nixpkgs> {} }: + +let + self = rec { + hexPackages = import ./hex-packages.nix { stdenv = stdenv; callPackage = self.callPackage; }; + callPackage = pkgs.lib.callPackageWith (pkgs // self // hexPackages); + buildRebar3 = callPackage ./build-rebar3.nix {}; + buildHex = callPackage ./build-hex.nix {}; + buildErlangMk = callPackage ./build-erlang-mk.nix {}; + buildMix = callPackage ./build-mix.nix {}; + + ## Non hex packages + hex = callPackage ./hex {}; + webdriver = callPackage ./webdriver {}; + elli = callPackage ./elli {}; + }; +in self // self.hexPackages diff --git a/pkgs/development/beam-modules/fetch-hex.nix b/pkgs/development/beam-modules/fetch-hex.nix new file mode 100644 index 000000000000..1b1378c10cbd --- /dev/null +++ b/pkgs/development/beam-modules/fetch-hex.nix @@ -0,0 +1,34 @@ +{ stdenv, fetchurl }: + +{ pkg, version, sha256 +, meta ? {} +}: + +with stdenv.lib; + +stdenv.mkDerivation ({ + name = "hex-source-${pkg}-${version}"; + + src = fetchurl { + url = "https://s3.amazonaws.com/s3.hex.pm/tarballs/${pkg}-${version}.tar"; + inherit sha256; + }; + + phases = [ "unpackPhase" "installPhase" ]; + + unpackCmd = '' + tar -xf $curSrc contents.tar.gz + mkdir contents + tar -C contents -xzf contents.tar.gz + ''; + + installPhase = '' + runHook preInstall + mkdir "$out" + cp -Hrt "$out" . + success=1 + runHook postInstall + ''; + + inherit meta; +}) diff --git a/pkgs/development/beam-modules/hex-packages.nix b/pkgs/development/beam-modules/hex-packages.nix new file mode 100644 index 000000000000..d7b635176a8d --- /dev/null +++ b/pkgs/development/beam-modules/hex-packages.nix @@ -0,0 +1,43524 @@ +/* hex-packages.nix is an auto-generated file -- DO NOT EDIT! */ + +/* Unbuildable packages: + + +*/ +{ stdenv, callPackage, overrides ? (self: super: {}) }: + +let + packages = self: rec { + abnf_0_0_1 = callPackage + ( + { buildMix, fetchHex }: + buildMix { + name = "abnf"; + version = "0.0.1"; + src = fetchHex { + pkg = "abnf"; + version = "0.0.1"; + sha256 = + "81e263f061ba677bda3e0d7f8884730eb51c14d7bc6526647c46cce659f1b054"; + }; + + meta = { + description = ''ABNF parser for Elixir''; + license = stdenv.lib.licenses.mit; + homepage = "https://github.com/vanstee/abnf"; + }; + } + ) {}; + + abnf = abnf_0_0_1; + + absinthe_0_5_2 = callPackage + ( + { buildMix, fetchHex }: + buildMix { + name = "absinthe"; + version = "0.5.2"; + src = fetchHex { + pkg = "absinthe"; + version = "0.5.2"; + sha256 = + "2b926ae2b61e0227caf437419d017bb146a9073a67e4e5fa5ed754f3b30994f6"; + }; + + meta = { + description = ''GraphQL for Elixir''; + license = stdenv.lib.licenses.bsd3; + homepage = "https://github.com/CargoSense/absinthe"; + }; + } + ) {}; + + absinthe = absinthe_0_5_2; + + absinthe_plug_0_5_0 = callPackage + ( + { buildMix, fetchHex, plug_1_1_1, absinthe_0_5_2 }: + buildMix { + name = "absinthe_plug"; + version = "0.5.0"; + src = fetchHex { + pkg = "absinthe_plug"; + version = "0.5.0"; + sha256 = + "eaa22a2af708ee3c37217ad5fcf31210347bb7c0807f7c96cffb09b311326291"; + }; + beamDeps = [ plug_1_1_1 absinthe_0_5_2 ]; + + meta = { + description = ''A plug for Absinthe, an experimental GraphQL + toolkit''; + license = stdenv.lib.licenses.bsd3; + homepage = "https://github.com/CargoSense/absinthe_plug"; + }; + } + ) {}; + + absinthe_plug = absinthe_plug_0_5_0; + + access_token_extractor_0_1_1 = callPackage + ( + { buildMix, fetchHex, plug_1_1_1, cowboy_1_0_4 }: + buildMix { + name = "access_token_extractor"; + version = "0.1.1"; + src = fetchHex { + pkg = "access_token_extractor"; + version = "0.1.1"; + sha256 = + "40f76799f8fbb5b03230b31d4d55c5a169e7c3ad82d776a9d87fe0c65c85396d"; + }; + beamDeps = [ plug_1_1_1 cowboy_1_0_4 ]; + + meta = { + longDescription = ''Simple Plug to extract access_token from + request and add it to private map in Plug.Conn + struct.''; + license = stdenv.lib.licenses.mit; + homepage = + "https://github.com/rohanpujaris/access_token_extractor"; + }; + } + ) {}; + + access_token_extractor = access_token_extractor_0_1_1; + + active_0_9_0 = callPackage + ( + { buildRebar3, fetchHex }: + buildRebar3 { + name = "active"; + version = "0.9.0"; + src = fetchHex { + pkg = "active"; + version = "0.9.0"; + sha256 = + "3ec6a0eda29137866674ddd56d44f6b0383fa3ec4480121639d2ef61b443ec28"; + }; + + meta = { + description = ''Erlang active reloader''; + license = stdenv.lib.licenses.mit; + homepage = "https://github.com/synrc/active"; + }; + } + ) {}; + + active = active_0_9_0; + + adam7_0_4_0 = callPackage + ( + { buildMix, fetchHex, apex_0_3_7 }: + buildMix { + name = "adam7"; + version = "0.4.0"; + src = fetchHex { + pkg = "adam7"; + version = "0.4.0"; + sha256 = + "8b540817f2fa92ba4b198d42d1ee4af348ed1edf8bd02d69691e0d8bdbecdcee"; + }; + beamDeps = [ apex_0_3_7 ]; + + meta = { + longDescription = ''Adam7 interlacing library for Elixir. + Primarily used for interlacing and + de-interlacing image data for PNGs.''; + license = stdenv.lib.licenses.mit; + homepage = "https://github.com/SenecaSystems/imagineer"; + }; + } + ) {}; + + adam7 = adam7_0_4_0; + + adap_0_0_1 = callPackage + ( + { buildMix, fetchHex }: + buildMix { + name = "adap"; + version = "0.0.1"; + src = fetchHex { + pkg = "adap"; + version = "0.0.1"; + sha256 = + "10679369764e2aa68560008c1f8bea40d5c715389e27e10b35b1ceda3fedadbb"; + }; + + meta = { + longDescription = '' Create a data stream across your information + systems to query, augment and transform data + according to Elixir matching rules. ''; + license = stdenv.lib.licenses.mit; + homepage = "http://github.com/awetzel/adap"; + }; + } + ) {}; + + adap = adap_0_0_1; + + addict_0_1_0 = callPackage + ( + { + buildMix, + fetchHex, + phoenix_1_1_4, + mailgun_0_0_2, + ecto_0_16_0, + cowboy_1_0_4, + comeonin_1_6_0 + }: + buildMix { + name = "addict"; + version = "0.1.0"; + src = fetchHex { + pkg = "addict"; + version = "0.1.0"; + sha256 = + "8d8ca253ee73bae88c1eb756992fe4435aa4e7b58eddcd102097b13dc4af611a"; + }; + beamDeps = [ + phoenix_1_1_4 + mailgun_0_0_2 + ecto_0_16_0 + cowboy_1_0_4 + comeonin_1_6_0 + ]; + + meta = { + longDescription = ''Addict allows you to manage users on your + Phoenix app easily. Register, login, logout, + recover password and password updating is + available off-the-shelf.''; + license = stdenv.lib.licenses.mit; + homepage = "https://github.com/trenpixster/addict"; + }; + } + ) {}; + + addict = addict_0_1_0; + + address_us_0_1_1 = callPackage + ( + { buildMix, fetchHex }: + buildMix { + name = "address_us"; + version = "0.1.1"; + src = fetchHex { + pkg = "address_us"; + version = "0.1.1"; + sha256 = + "e29c6dd33d2a2ebd97441bfdac3eb23fa6221cf5d3be8b8c66247ee61ce442c6"; + }; + + meta = { + description = ''Library for parsing US Addresses into their + individual parts.''; + license = stdenv.lib.licenses.asl20; + homepage = "https://github.com/smashedtoatoms/address_us"; + }; + } + ) {}; + + address_us = address_us_0_1_1; + + aeacus_0_3_0 = callPackage + ( + { buildMix, fetchHex, comeonin_1_6_0 }: + buildMix { + name = "aeacus"; + version = "0.3.0"; + src = fetchHex { + pkg = "aeacus"; + version = "0.3.0"; + sha256 = + "3cc138cfc7c508cfd85afddd0881632dde2e663d222c9e3749fae8c80ebb2c0b"; + }; + beamDeps = [ comeonin_1_6_0 ]; + + meta = { + longDescription = ''A simple, secure, and highly configurable + Elixir identity [username | email | id | + etc.]/password authentication module; Compatible + with Ecto.''; + license = stdenv.lib.licenses.bsd3; + homepage = "https://github.com/zmoshansky/aeacus"; + }; + } + ) {}; + + aeacus = aeacus_0_3_0; + + airbrake_0_1_0 = callPackage + ( + { buildMix, fetchHex, poison_1_5_2, httpoison_0_8_1 }: + buildMix { + name = "airbrake"; + version = "0.1.0"; + src = fetchHex { + pkg = "airbrake"; + version = "0.1.0"; + sha256 = + "45d3e2da7f5a8793b9fd7752cbeaa988a848396f44b77d0265f3bed36182d901"; + }; + beamDeps = [ poison_1_5_2 httpoison_0_8_1 ]; + + meta = { + description = ''An Elixir notifier to the Airbrake''; + license = stdenv.lib.licenses.mit; + homepage = "https://github.com/romul/airbrake-elixir"; + }; + } + ) {}; + + airbrake = airbrake_0_1_0; + + airbrake_plug_0_1_1 = callPackage + ( + { buildMix, fetchHex, airbrake_0_1_0 }: + buildMix { + name = "airbrake_plug"; + version = "0.1.1"; + src = fetchHex { + pkg = "airbrake_plug"; + version = "0.1.1"; + sha256 = + "2560f8b830e94b09788952165cd3053b47106d4afebf547dc370d7f307e804b9"; + }; + beamDeps = [ airbrake_0_1_0 ]; + + meta = { + description = ''Airbrake reporter for Elixir`s Plug''; + license = stdenv.lib.licenses.mit; + homepage = "https://github.com/romul/airbrake_plug"; + }; + } + ) {}; + + airbrake_plug = airbrake_plug_0_1_1; + + airbrakex_0_0_6 = callPackage + ( + { buildMix, fetchHex, poison_2_1_0, httpoison_0_8_1 }: + buildMix { + name = "airbrakex"; + version = "0.0.6"; + src = fetchHex { + pkg = "airbrakex"; + version = "0.0.6"; + sha256 = + "a8efc0a9a641a6c5ada2585ee5889291b74ded10977af7b1a4ac6bc445d166e8"; + }; + beamDeps = [ poison_2_1_0 httpoison_0_8_1 ]; + + meta = { + description = ''Airbrake Elixir Notifier''; + license = stdenv.lib.licenses.mit; + homepage = "https://github.com/fazibear/airbrakex"; + }; + } + ) {}; + + airbrakex = airbrakex_0_0_6; + + alambic_0_1_0 = callPackage + ( + { buildMix, fetchHex }: + buildMix { + name = "alambic"; + version = "0.1.0"; + src = fetchHex { + pkg = "alambic"; + version = "0.1.0"; + sha256 = + "04dc4cc88d56539ec4006a84668186501be9be4c369f145af6a606bb63d97ce0"; + }; + + meta = { + longDescription = ''A collection of small elixir utilities. + Semaphore: quick way of limiting access to a + resource CountDown: quick way of counting fan + in/out events''; + license = stdenv.lib.licenses.asl20; + homepage = "https://github.com/sdanzan/alambic"; + }; + } + ) {}; + + alambic = alambic_0_1_0; + + alchemy_0_0_1 = callPackage + ( + { buildMix, fetchHex, uuid_1_1_3 }: + buildMix { + name = "alchemy"; + version = "0.0.1"; + src = fetchHex { + pkg = "alchemy"; + version = "0.0.1"; + sha256 = + "109ce3f83d596a6ab9a947f472516f87da7b0df823fe2d91e27bc6594a305c3d"; + }; + beamDeps = [ uuid_1_1_3 ]; + + meta = { + description = ''Perform experiments in production''; + license = stdenv.lib.licenses.mit; + homepage = "https://github.com/keathley/alchemy"; + }; + } + ) {}; + + alchemy = alchemy_0_0_1; + + aleppo_0_9_0 = callPackage + ( + { buildRebar3, fetchHex }: + buildRebar3 { + name = "aleppo"; + version = "0.9.0"; + src = fetchHex { + pkg = "aleppo"; + version = "0.9.0"; + sha256 = + "2f360631d64da53f40621714e157fd33805a95d0160d5c62fcfb3e132986ce71"; + }; + + meta = { + description = ''Aleppo: ALternative Erlang Pre-ProcessOr''; + license = stdenv.lib.licenses.apsl20; + homepage = "https://github.com/ErlyORM/aleppo"; + }; + } + ) {}; + + aleppo = aleppo_0_9_0; + + alexa_plug_0_2_0 = callPackage + ( + { buildMix, fetchHex, plug_1_1_1 }: + buildMix { + name = "alexa_plug"; + version = "0.2.0"; + src = fetchHex { + pkg = "alexa_plug"; + version = "0.2.0"; + sha256 = + "a78f6fa5e3ba33ce0943f4cb96d6cfcc9b36637a4575314469c8a0d45fff40d0"; + }; + beamDeps = [ plug_1_1_1 ]; + + meta = { + longDescription = ''A simple set of plugs and utilities for + interfacing with the Amazon Echo and the Alexa + Skills Kit.''; + license = stdenv.lib.licenses.mit; + homepage = "https://github.com/jordantdavis/alexa_plug"; + }; + } + ) {}; + + alexa_plug = alexa_plug_0_2_0; + + algae_0_9_1 = callPackage + ( + { buildMix, fetchHex, quark_1_0_2 }: + buildMix { + name = "algae"; + version = "0.9.1"; + src = fetchHex { + pkg = "algae"; + version = "0.9.1"; + sha256 = + "6d0877d508bd16098b4fb6d0549c5070b8217016b61ac8b220d9f35f3fb82391"; + }; + beamDeps = [ quark_1_0_2 ]; + + meta = { + description = ''Bootstrapped algebraic data types for Elixir''; + license = stdenv.lib.licenses.mit; + homepage = "https://github.com/robot-overlord/algae"; + }; + } + ) {}; + + algae = algae_0_9_1; + + alice_0_1_2 = callPackage + ( + { + buildMix, + fetchHex, + slack_0_4_2, + redix_0_3_4, + poolboy_1_5_1, + poison_2_0_1 + }: + buildMix { + name = "alice"; + version = "0.1.2"; + src = fetchHex { + pkg = "alice"; + version = "0.1.2"; + sha256 = + "badb6a115a8de88bab122b197214881cd64d2aaf48d8004013adbc6a024fb985"; + }; + beamDeps = [ slack_0_4_2 redix_0_3_4 poolboy_1_5_1 poison_2_0_1 + ]; + + meta = { + description = ''A Slack bot''; + license = stdenv.lib.licenses.mit; + homepage = "https://github.com/adamzaninovich/alice"; + }; + } + ) {}; + + alice = alice_0_1_2; + + alice_against_humanity_0_0_1 = callPackage + ( + { buildMix, fetchHex, alice_0_1_2 }: + buildMix { + name = "alice_against_humanity"; + version = "0.0.1"; + src = fetchHex { + pkg = "alice_against_humanity"; + version = "0.0.1"; + sha256 = + "8c9ddbd7b5db3a18740a354b2e385c7e652e820f4262279dfabee36de93c7816"; + }; + beamDeps = [ alice_0_1_2 ]; + + meta = { + description = ''A handler for the Alice Slack bot. Play Cards + Against Humanity with Alice.''; + license = stdenv.lib.licenses.mit; + homepage = + "https://github.com/adamzaninovich/alice_against_humanity"; + }; + } + ) {}; + + alice_against_humanity = alice_against_humanity_0_0_1; + + alice_google_images_0_0_1 = callPackage + ( + { buildMix, fetchHex, alice_0_1_2 }: + buildMix { + name = "alice_google_images"; + version = "0.0.1"; + src = fetchHex { + pkg = "alice_google_images"; + version = "0.0.1"; + sha256 = + "ca276e382bde0a996866c7196ae454d3fdc0eb835398e8ece56c24b2c74736cc"; + }; + beamDeps = [ alice_0_1_2 ]; + + meta = { + description = ''A handler for the Alice Slack bot. Get random + images from Google''; + license = stdenv.lib.licenses.mit; + homepage = + "https://github.com/adamzaninovich/alice_google_images"; + }; + } + ) {}; + + alice_google_images = alice_google_images_0_0_1; + + alice_karma_0_0_1 = callPackage + ( + { buildMix, fetchHex, alice_0_1_2 }: + buildMix { + name = "alice_karma"; + version = "0.0.1"; + src = fetchHex { + pkg = "alice_karma"; + version = "0.0.1"; + sha256 = + "b2c1d8b0b7fe077b2a4bc1f24b01e872e24d4f6c82d50791ef6b3a57fc2af150"; + }; + beamDeps = [ alice_0_1_2 ]; + + meta = { + longDescription = ''A handler for the Alice Slack bot. Allows + Alice to keep track of karma points for + arbitrary terms.''; + license = stdenv.lib.licenses.mit; + homepage = "https://github.com/adamzaninovich/alice_karma"; + }; + } + ) {}; + + alice_karma = alice_karma_0_0_1; + + alphonse_0_1_0 = callPackage + ( + { buildMix, fetchHex, cipher_0_1_0 }: + buildMix { + name = "alphonse"; + version = "0.1.0"; + src = fetchHex { + pkg = "alphonse"; + version = "0.1.0"; + sha256 = + "01666afde723be7d84fcd2e55741c90fd8bc78a407001677deb0717f685b8d21"; + }; + beamDeps = [ cipher_0_1_0 ]; + + meta = { + description = ''A module wrapper to encrypt and decrypt files + with aes-128-cbc''; + license = stdenv.lib.licenses.mit; + homepage = "https://github.com/chrisenytc/alphonse"; + }; + } + ) {}; + + alphonse = alphonse_0_1_0; + + amazon_product_advertising_client_0_1_0 = callPackage + ( + { + buildMix, + fetchHex, + timex_1_0_0_rc4, + sweet_xml_0_6_1, + httpoison_0_8_1 + }: + buildMix { + name = "amazon_product_advertising_client"; + version = "0.1.0"; + src = fetchHex { + pkg = "amazon_product_advertising_client"; + version = "0.1.0"; + sha256 = + "b50ac32e0386060de093955662a8152bcb446c81c6fa5315ec0cf94586c69c24"; + }; + beamDeps = [ timex_1_0_0_rc4 sweet_xml_0_6_1 httpoison_0_8_1 ]; + + meta = { + description = ''An Amazon Product Advertising API client for + |