diff --git a/pkgs/development/web/mailcatcher/Gemfile b/pkgs/development/web/mailcatcher/Gemfile new file mode 100644 index 000000000000..8cc16fad7e56 --- /dev/null +++ b/pkgs/development/web/mailcatcher/Gemfile @@ -0,0 +1,2 @@ +source 'https://rubygems.org' +gem 'mailcatcher' diff --git a/pkgs/development/web/mailcatcher/Gemfile.lock b/pkgs/development/web/mailcatcher/Gemfile.lock new file mode 100644 index 000000000000..9a4969c11676 --- /dev/null +++ b/pkgs/development/web/mailcatcher/Gemfile.lock @@ -0,0 +1,43 @@ +GEM + remote: https://rubygems.org/ + specs: + daemons (1.2.4) + eventmachine (1.0.9.1) + mail (2.6.6) + mime-types (>= 1.16, < 4) + mailcatcher (0.6.5) + eventmachine (= 1.0.9.1) + mail (~> 2.3) + rack (~> 1.5) + sinatra (~> 1.2) + skinny (~> 0.2.3) + sqlite3 (~> 1.3) + thin (~> 1.5.0) + mime-types (3.1) + mime-types-data (~> 3.2015) + mime-types-data (3.2016.0521) + rack (1.6.8) + rack-protection (1.5.3) + rack + sinatra (1.4.8) + rack (~> 1.5) + rack-protection (~> 1.4) + tilt (>= 1.3, < 3) + skinny (0.2.4) + eventmachine (~> 1.0.0) + thin (>= 1.5, < 1.7) + sqlite3 (1.3.13) + thin (1.5.1) + daemons (>= 1.0.9) + eventmachine (>= 0.12.6) + rack (>= 1.0.0) + tilt (2.0.7) + +PLATFORMS + ruby + +DEPENDENCIES + mailcatcher + +BUNDLED WITH + 1.14.4 diff --git a/pkgs/development/web/mailcatcher/default.nix b/pkgs/development/web/mailcatcher/default.nix new file mode 100644 index 000000000000..7b19d02103dc --- /dev/null +++ b/pkgs/development/web/mailcatcher/default.nix @@ -0,0 +1,33 @@ +{ stdenv, bundlerEnv, ruby, makeWrapper }: + +stdenv.mkDerivation rec { + name = "mailcatcher-${version}"; + + version = (import ./gemset.nix).mailcatcher.version; + + env = bundlerEnv { + name = "${name}-gems"; + + inherit ruby; + + gemdir = ./.; + }; + + buildInputs = [ makeWrapper ]; + + phases = ["installPhase"]; + + installPhase = '' + mkdir -p $out/bin + makeWrapper ${env}/bin/mailcatcher $out/bin/mailcatcher + makeWrapper ${env}/bin/catchmail $out/bin/catchmail + ''; + + meta = with stdenv.lib; { + description = "SMTP server and web interface to locally test outbound emails"; + homepage = https://mailcatcher.me/; + license = licenses.mit; + maintainers = [ maintainers.zarelit ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/development/web/mailcatcher/gemset.nix b/pkgs/development/web/mailcatcher/gemset.nix new file mode 100644 index 000000000000..d9e95454a500 --- /dev/null +++ b/pkgs/development/web/mailcatcher/gemset.nix @@ -0,0 +1,106 @@ +{ + daemons = { + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1bmb4qrd95b5gl3ym5j3q6mf090209f4vkczggn49n56w6s6zldz"; + type = "gem"; + }; + version = "1.2.4"; + }; + eventmachine = { + source = { + remotes = ["https://rubygems.org"]; + sha256 = "17jr1caa3ggg696dd02g2zqzdjqj9x9q2nl7va82l36f7c5v6k4z"; + type = "gem"; + }; + version = "1.0.9.1"; + }; + mail = { + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0d7lhj2dw52ycls6xigkfz6zvfhc6qggply9iycjmcyj9760yvz9"; + type = "gem"; + }; + version = "2.6.6"; + }; + mailcatcher = { + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0h6gk8n18i5f651f244al1hscjzl27fpma4vqw0qhszqqpd5p3bx"; + type = "gem"; + }; + version = "0.6.5"; + }; + mime-types = { + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0087z9kbnlqhci7fxh9f6il63hj1k02icq2rs0c6cppmqchr753m"; + type = "gem"; + }; + version = "3.1"; + }; + mime-types-data = { + source = { + remotes = ["https://rubygems.org"]; + sha256 = "04my3746hwa4yvbx1ranhfaqkgf6vavi1kyijjnw8w3dy37vqhkm"; + type = "gem"; + }; + version = "3.2016.0521"; + }; + rack = { + source = { + remotes = ["https://rubygems.org"]; + sha256 = "19m7aixb2ri7p1n0iqaqx8ldi97xdhvbxijbyrrcdcl6fv5prqza"; + type = "gem"; + }; + version = "1.6.8"; + }; + rack-protection = { + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0cvb21zz7p9wy23wdav63z5qzfn4nialik22yqp6gihkgfqqrh5r"; + type = "gem"; + }; + version = "1.5.3"; + }; + sinatra = { + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0byxzl7rx3ki0xd7aiv1x8mbah7hzd8f81l65nq8857kmgzj1jqq"; + type = "gem"; + }; + version = "1.4.8"; + }; + skinny = { + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1y3yvx88ylgz4d2s1wskjk5rkmrcr15q3ibzp1q88qwzr5y493a9"; + type = "gem"; + }; + version = "0.2.4"; + }; + sqlite3 = { + source = { + remotes = ["https://rubygems.org"]; + sha256 = "01ifzp8nwzqppda419c9wcvr8n82ysmisrs0hph9pdmv1lpa4f5i"; + type = "gem"; + }; + version = "1.3.13"; + }; + thin = { + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0hrq9m3hb6pm8yrqshhg0gafkphdpvwcqmr7k722kgdisp3w91ga"; + type = "gem"; + }; + version = "1.5.1"; + }; + tilt = { + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1is1ayw5049z8pd7slsk870bddyy5g2imp4z78lnvl8qsl8l0s7b"; + type = "gem"; + }; + version = "2.0.7"; + }; +} \ No newline at end of file diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 16582677904e..fd213d60a1b9 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2731,6 +2731,8 @@ with pkgs; kzipmix = callPackage_i686 ../tools/compression/kzipmix { }; + mailcatcher = callPackage ../development/web/mailcatcher { }; + makebootfat = callPackage ../tools/misc/makebootfat { }; matrix-synapse = callPackage ../servers/matrix-synapse { };