diff --git a/akkoma/default.nix b/akkoma/default.nix new file mode 100644 index 0000000..9970823 --- /dev/null +++ b/akkoma/default.nix @@ -0,0 +1,171 @@ +{ pkgs, inputs }: with pkgs; +{ akkoma = + +beamPackages.mixRelease rec { + pname = "akkoma"; + version = inputs.akkoma.lastModifiedDate; + + src = inputs.akkoma; + + mixNixDeps = import ./mix.nix { + inherit beamPackages lib; + overrides = (final: prev: { + # mix2nix does not support git dependencies yet, + # so we need to add them manually + captcha = beamPackages.buildMix rec { + name = "captcha"; + version = "0.1.0"; + + src = fetchFromGitLab { + domain = "git.pleroma.social"; + group = "pleroma"; + owner = "elixir-libraries"; + repo = "elixir-captcha"; + rev = "e0f16822d578866e186a0974d65ad58cddc1e2ab"; + sha256 = "0qbf86l59kmpf1nd82v4141ba9ba75xwmnqzpgbm23fa1hh8pi9c"; + }; + beamDeps = with final; [ ]; + }; + elasticsearch = beamPackages.buildMix rec { + name = "elasticsearch"; + version = "1.0.1"; + src = fetchFromGitea { + domain = "akkoma.dev"; + owner = "AkkomaGang"; + repo = "elasticsearch-elixir"; + rev = "6cd946f75f6ab9042521a009d1d32d29a90113ca"; + sha256 = "0pf8m5a91nqkcivyp8q2p2p08rv0whb9zgkpk9g3lmbyb4fr1n8a"; + }; + beamDeps = with final; []; + }; + linkify = beamPackages.buildMix rec { + name = "linkify"; + version = "0.5.2"; + src = fetchFromGitea { + domain = "akkoma.dev"; + owner = "AkkomaGang"; + repo = "linkify"; + rev = "2567e2c1073fa371fd26fd66dfa5bc77b6919c16"; + sha256 = "1y7n48clwfgs1gyif85c7zar3xaz6f5frnwl0za0zjvfnjak6z3v"; + }; + beamDeps = with final; []; + }; + mfm_parser = beamPackages.buildMix rec { + name = "mfm_parser"; + version = "0.1.1"; + src = fetchFromGitea { + domain = "akkoma.dev"; + owner = "AkkomaGang"; + repo = "mfm-parser"; + rev = "912fba81152d4d572e457fd5427f9875b2bc3dbe"; + sha256 = "0frkklrnxmiq0avsi3pkpx7insg8s81h8j1iy96caasa3h8scxcz"; + }; + beamDeps = with final; [ temple ]; + }; + temple = beamPackages.buildMix rec { + name = "temple"; + version = "0.9.0-rc.1"; + src = fetchFromGitea { + domain = "akkoma.dev"; + owner = "AkkomaGang"; + repo = "temple"; + rev = "066a699ade472d8fa42a9d730b29a61af9bc8b59"; + sha256 = "05sqxlzqxlnrcxq6nb1pgdbyxdpwcw20868pif7fv36cckqk63d8"; + }; + beamDeps = with final; []; + patchPhase = '' + cp config/dev.exs config/prod.exs + ''; + }; + + + gettext = beamPackages.buildMix rec { + name = "gettext"; + version = "0.19.1"; + src = fetchFromGitHub { + owner = "tusooa"; + repo = "gettext"; + rev = "72fb2496b6c5280ed911bdc3756890e7f38a4808"; + sha256 = "0zbq6yv81cy1zv51rr0ra9h6xdy23x75hrn2b9lba0fww89scjjp"; + }; + beamDeps = with final; []; + }; + remote_ip = beamPackages.buildMix rec { + name = "remote_ip"; + version = "0.1.5"; + + src = fetchFromGitLab { + domain = "git.pleroma.social"; + group = "pleroma"; + owner = "elixir-libraries"; + repo = "remote_ip"; + rev = "b647d0deecaa3acb140854fe4bda5b7e1dc6d1c8"; + sha256 = "0c7vmakcxlcs3j040018i7bfd6z0yq6fjfig02g5fgakx398s0x6"; + }; + beamDeps = with final; [ combine plug inet_cidr ]; + }; + search_parser = beamPackages.buildMix rec { + name = "search_parser"; + version = "0.1.0"; + src = fetchFromGitHub { + owner = "FloatingGhost"; + repo = "pleroma-contrib-search-parser"; + rev = "08971a81e68686f9ac465cfb6661d51c5e4e1e7f"; + sha256 = "0xl3mbcwlhn02igh0nm4c1icy8nf43i1g031lcwkv8bnr8lkvfmi"; + }; + beamDeps = with final; [ nimble_parsec ]; + }; + crypt = beamPackages.buildRebar3 rec { + name = "crypt"; + version = "0.4.3"; + + src = fetchFromGitHub { + owner = "msantos"; + repo = "crypt"; + rev = "f75cd55325e33cbea198fb41fe41871392f8fb76"; + sha256 = "sha256-ZYhZTe7cTITkl8DZ4z2IOlxTX5gnbJImu/lVJ2ZjR1o="; + }; + + postInstall = "mv $out/lib/erlang/lib/crypt-${version}/priv/{source,crypt}.so"; + + beamDeps = with final; [ elixir_make ]; + }; + + # Some additional build inputs and build fixes + http_signatures = prev.http_signatures.override { + patchPhase = '' + substituteInPlace mix.exs --replace ":logger" ":logger, :public_key" + ''; + }; + fast_html = prev.fast_html.override { + nativeBuildInputs = [ cmake ]; + dontUseCmakeConfigure = true; + }; + syslog = prev.syslog.override { + buildPlugins = with beamPackages; [ pc ]; + }; + + majic = prev.majic.override { + buildInputs = [ file ]; + }; + + mime = prev.mime.override { + patchPhase = let + cfgFile = writeText "config.exs" '' + use Mix.Config + config :mime, :types, %{ + "application/activity+json" => ["activity+json"], + "application/jrd+json" => ["jrd+json"], + "application/ld+json" => ["activity+json"], + "application/xml" => ["xml"], + "application/xrd+xml" => ["xrd+xml"] + } + ''; + in '' + mkdir config + cp ${cfgFile} config/config.exs + ''; + }; + }); + }; +};} diff --git a/akkoma/mix.nix b/akkoma/mix.nix new file mode 100644 index 0000000..1e39acb --- /dev/null +++ b/akkoma/mix.nix @@ -0,0 +1,1481 @@ +{ lib, beamPackages, overrides ? (x: y: {}) }: + +let + buildRebar3 = lib.makeOverridable beamPackages.buildRebar3; + buildMix = lib.makeOverridable beamPackages.buildMix; + buildErlangMk = lib.makeOverridable beamPackages.buildErlangMk; + + self = packages // (overrides self packages); + + packages = with beamPackages; with self; { + base62 = buildMix rec { + name = "base62"; + version = "1.2.2"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1fvpygkdmd7l737lv7svir8n1vhk0m094i8ygwcvx9gam2ykc4yl"; + }; + + beamDeps = [ custom_base ]; + }; + + bbcode_pleroma = buildMix rec { + name = "bbcode_pleroma"; + version = "0.2.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1hyixcxhcf2j2gyavmmnvfslnl6z60dz1qa9xysfspws85s1118r"; + }; + + beamDeps = [ nimble_parsec ]; + }; + + bcrypt_elixir = buildMix rec { + name = "bcrypt_elixir"; + version = "2.3.1"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "0ybjs37fyn45x31lzhxic4kd4jmzwcwkgy4spwayykbn8rgjs622"; + }; + + beamDeps = [ comeonin elixir_make ]; + }; + + benchee = buildMix rec { + name = "benchee"; + version = "1.1.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "14vdbvmkkqhcqvilq1w8zl895f4hpbv7fw2q5c0ml5h3a1a7v9bx"; + }; + + beamDeps = [ deep_merge statistex ]; + }; + + bunt = buildMix rec { + name = "bunt"; + version = "0.2.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "0lw3v9kwbbcy1v6ygziiky887gffwwmxvyg4r1v0zm71kzhcgxbs"; + }; + + beamDeps = []; + }; + + cachex = buildMix rec { + name = "cachex"; + version = "3.4.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1rfbbij81zmk6p75z33wg04mfcjqsxzzh67vclllvfjgmfqj609p"; + }; + + beamDeps = [ eternal jumper sleeplocks unsafe ]; + }; + + calendar = buildMix rec { + name = "calendar"; + version = "1.0.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "0vqa1zpzsdgr6i3yx8j9b6qscvgrbvzn43p5bqm930hcja0ra3lr"; + }; + + beamDeps = [ tzdata ]; + }; + + castore = buildMix rec { + name = "castore"; + version = "0.1.17"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1yb3470p0mfawdy34gaa5lkhqrb8d35jai9235snxljjxlkl516r"; + }; + + beamDeps = []; + }; + + certifi = buildRebar3 rec { + name = "certifi"; + version = "2.9.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "0ha6vmf5p3xlbf5w1msa89frhvfk535rnyfybz9wdmh6vdms8v96"; + }; + + beamDeps = []; + }; + + combine = buildMix rec { + name = "combine"; + version = "0.10.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "06s5y8b0snr1s5ax9v3s7rc6c8xf5vj6878d1mc7cc07j0bvq78v"; + }; + + beamDeps = []; + }; + + comeonin = buildMix rec { + name = "comeonin"; + version = "5.3.3"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1pw4rhhsh8mwj26dkbxz2niih9j8pc3qijlpcl8jh208rg1cjf1y"; + }; + + beamDeps = []; + }; + + concurrent_limiter = buildMix rec { + name = "concurrent_limiter"; + version = "0.1.1"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1sqnb987qwwy4ip7kxh9g7vv5wz61fpv3pbnxpbv9yy073r8z5jk"; + }; + + beamDeps = [ telemetry ]; + }; + + connection = buildMix rec { + name = "connection"; + version = "1.1.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1746n8ba11amp1xhwzp38yfii2h051za8ndxlwdykyqqljq1wb3j"; + }; + + beamDeps = []; + }; + + cors_plug = buildMix rec { + name = "cors_plug"; + version = "2.0.3"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1sls8rns2k48qrga0ngysbn9aknapmn3xfn28by1gqbcir0y2jpf"; + }; + + beamDeps = [ plug ]; + }; + + cowboy = buildErlangMk rec { + name = "cowboy"; + version = "2.9.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1phv0a1zbgk7imfgcm0dlacm7hbjcdygb0pqmx4s26jf9f9rywic"; + }; + + beamDeps = [ cowlib ranch ]; + }; + + cowboy_telemetry = buildRebar3 rec { + name = "cowboy_telemetry"; + version = "0.3.1"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1bzhcdq12p837cii2jgvzjyrffiwgm5bsb1pra2an3hkcqrzsvis"; + }; + + beamDeps = [ cowboy telemetry ]; + }; + + cowlib = buildRebar3 rec { + name = "cowlib"; + version = "2.11.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1ac6pj3x4vdbsa8hvmbzpdfc4k0v1p102jbd39snai8wnah9sgib"; + }; + + beamDeps = []; + }; + + credo = buildMix rec { + name = "credo"; + version = "1.6.5"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1zdshpy731417lf1r3jvh2vw0gqdkydwrlnc8qr7qf87d4zfa78h"; + }; + + beamDeps = [ bunt file_system jason ]; + }; + + custom_base = buildMix rec { + name = "custom_base"; + version = "0.2.1"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "0qx47d4w2mxa3rr6mrxdasgk7prxqwd0y9zpjhz61jayrkx1kw4d"; + }; + + beamDeps = []; + }; + + db_connection = buildMix rec { + name = "db_connection"; + version = "2.4.2"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "0s1nx1gi96r8g7x8y7cklz8z823a6llh4fk996i5xxcr3flkrrag"; + }; + + beamDeps = [ connection telemetry ]; + }; + + decimal = buildMix rec { + name = "decimal"; + version = "2.0.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "0xzm8hfhn8q02rmg8cpgs68n5jz61wvqg7bxww9i1a6yanf6wril"; + }; + + beamDeps = []; + }; + + deep_merge = buildMix rec { + name = "deep_merge"; + version = "1.0.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "0c2li2a3hxcc05nwvy4kpsal0315yk900kxyybld972b15gqww6f"; + }; + + beamDeps = []; + }; + + earmark = buildMix rec { + name = "earmark"; + version = "1.4.26"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1ibqz982fvzir4fwnbnwqa0db73cy1chjgzk59ly1v3bnn11h8z1"; + }; + + beamDeps = [ earmark_parser ]; + }; + + earmark_parser = buildMix rec { + name = "earmark_parser"; + version = "1.4.26"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1g5ajj6l4j1nnkd6vcnhp8vk6kzn04f62xh68z2m434aky4n1m28"; + }; + + beamDeps = []; + }; + + eblurhash = buildRebar3 rec { + name = "eblurhash"; + version = "1.2.2"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "0k040pj8hlm8mwy0ra459hk35v9gfsvvgp596nl27q2dj00cl84c"; + }; + + beamDeps = []; + }; + + ecto = buildMix rec { + name = "ecto"; + version = "3.8.4"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1m42zrwnv2pjggl9y94wpdjfbq7lyf600fj62l2v8bflp244497r"; + }; + + beamDeps = [ decimal jason telemetry ]; + }; + + ecto_enum = buildMix rec { + name = "ecto_enum"; + version = "1.4.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1r2ffrr020fhfviqn21cv06sd3sp4bf1jra0xrgb3hl1f445rdcg"; + }; + + beamDeps = [ ecto ecto_sql postgrex ]; + }; + + ecto_psql_extras = buildMix rec { + name = "ecto_psql_extras"; + version = "0.7.4"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1ra9jh2p1jp1hn4g7aynivbrj52y9c20aspmqw6ksbkp3cpv079i"; + }; + + beamDeps = [ ecto_sql postgrex table_rex ]; + }; + + ecto_sql = buildMix rec { + name = "ecto_sql"; + version = "3.8.3"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "16rjcz9qa2gabl7nlpifi7i0ay5mzkm4jw58a7rgdnp6p5zv331l"; + }; + + beamDeps = [ db_connection ecto postgrex telemetry ]; + }; + + elixir_make = buildMix rec { + name = "elixir_make"; + version = "0.6.3"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "05ppvbhqi5m9zk1c4xnrki814sqhxrc7d1dpvfmwm2v7qm8xdjzm"; + }; + + beamDeps = []; + }; + + eternal = buildMix rec { + name = "eternal"; + version = "1.2.2"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "10p7m6kv2z2c16gw36wgiwnkykss4lfkmm71llxp09ipkhmy77rc"; + }; + + beamDeps = []; + }; + + ex_aws = buildMix rec { + name = "ex_aws"; + version = "2.1.9"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "040dmj94xg3wnk9wplm0myr2q12zad4w1xz1zc0n01y90dkpfv1y"; + }; + + beamDeps = [ hackney jason sweet_xml ]; + }; + + ex_aws_s3 = buildMix rec { + name = "ex_aws_s3"; + version = "2.3.3"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "017iswr9m2kwri2m5j3r9m0b7hk4vqqddbqy09k5d4nfz6vg0i00"; + }; + + beamDeps = [ ex_aws sweet_xml ]; + }; + + ex_const = buildMix rec { + name = "ex_const"; + version = "0.2.4"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "0rwppain0bd36krph1as0vxlxb42psc6mlkfi67jp6fc21k39zcn"; + }; + + beamDeps = []; + }; + + ex_doc = buildMix rec { + name = "ex_doc"; + version = "0.28.4"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1vgqqf5cf0cw18aw593ll9qk9bsqm6hvvf6xr24iv49lvl1x11dz"; + }; + + beamDeps = [ earmark_parser makeup_elixir makeup_erlang ]; + }; + + ex_machina = buildMix rec { + name = "ex_machina"; + version = "2.7.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1y2v4j1zg1ji8q8di0fxpc3z3n2jmbnc85d6hx68j4fykfisg6j1"; + }; + + beamDeps = [ ecto ecto_sql ]; + }; + + ex_syslogger = buildMix rec { + name = "ex_syslogger"; + version = "1.5.2"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "16c376cvw0bcjz8a6gs3nhmg037i894gl5kgxi8jdinv6r0sp7xb"; + }; + + beamDeps = [ poison syslog ]; + }; + + excoveralls = buildMix rec { + name = "excoveralls"; + version = "0.12.3"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1nnsr9dv7mybcxx3y5p2gqzyy3p479w21c55vvsq6hi6dihkx2jn"; + }; + + beamDeps = [ hackney jason ]; + }; + + fast_html = buildMix rec { + name = "fast_html"; + version = "2.0.5"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "01k51qri44535b1hwixlxk7151vph6vapswlfq918g245544ypv0"; + }; + + beamDeps = [ elixir_make nimble_pool ]; + }; + + fast_sanitize = buildMix rec { + name = "fast_sanitize"; + version = "0.2.3"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1qjnbs63q0d95dqhh2r9sz3zpg2y4hjy23kxsqanwf6h21njibg8"; + }; + + beamDeps = [ fast_html plug ]; + }; + + file_system = buildMix rec { + name = "file_system"; + version = "0.2.10"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1p0myxmnjjds8bbg69dd6fvhk8q3n7lb78zd4qvmjajnzgdmw6a1"; + }; + + beamDeps = []; + }; + + finch = buildMix rec { + name = "finch"; + version = "0.10.2"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "0l3mvf0jnh49rj58vj1051fvsj6294wjhlh8ycpfqb07har132yx"; + }; + + beamDeps = [ castore mint nimble_options nimble_pool telemetry ]; + }; + + flake_id = buildMix rec { + name = "flake_id"; + version = "0.1.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "09yq3dlqqrb7v4ysblwpz1al0q5qcmryldkwq1kx5b71zn881z1i"; + }; + + beamDeps = [ base62 ecto ]; + }; + + floki = buildMix rec { + name = "floki"; + version = "0.33.1"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1ihjszkd5pbgzvp1rgvchzngn2p5n6h8ag141zrzs4sz2byka426"; + }; + + beamDeps = [ html_entities ]; + }; + + gen_smtp = buildRebar3 rec { + name = "gen_smtp"; + version = "0.15.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "03s40l97j6z4mx6a84cbl9w94v3dvfw4f97dqx4hi61hh2l19g99"; + }; + + beamDeps = []; + }; + + gun = buildRebar3 rec { + name = "gun"; + version = "2.0.0-rc.2"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1z2lsbbpl2925z8x2ri0rhp30ccn9d08pgqd2hkxf4342jp1x7bb"; + }; + + beamDeps = [ cowlib ]; + }; + + hackney = buildRebar3 rec { + name = "hackney"; + version = "1.18.1"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "13hja14kig5jnzcizpdghj68i88f0yd9wjdfjic9nzi98kzxmv54"; + }; + + beamDeps = [ certifi idna metrics mimerl parse_trans ssl_verify_fun unicode_util_compat ]; + }; + + hpax = buildMix rec { + name = "hpax"; + version = "0.1.1"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "09n8qrmcxlrhlyz5mh0nrk15rwvnqhzcz7x3yz5612jan2hdbrqa"; + }; + + beamDeps = []; + }; + + html_entities = buildMix rec { + name = "html_entities"; + version = "0.5.2"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1k7xyj0q38ms3n5hbn782pa6w1vgd6biwlxr4db6319l828a6fy5"; + }; + + beamDeps = []; + }; + + http_signatures = buildMix rec { + name = "http_signatures"; + version = "0.1.1"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "18s2b5383xl2qjijkxag4mvwk2p5kv2fw58c9ii7pk12fc08lfyc"; + }; + + beamDeps = []; + }; + + httpoison = buildMix rec { + name = "httpoison"; + version = "1.8.1"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1q3r7v84zbyggqr35mpd689g4p205ja0iqi9j9mm2vcdcxnnl59m"; + }; + + beamDeps = [ hackney ]; + }; + + idna = buildRebar3 rec { + name = "idna"; + version = "6.1.1"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1sjcjibl34sprpf1dgdmzfww24xlyy34lpj7mhcys4j4i6vnwdwj"; + }; + + beamDeps = [ unicode_util_compat ]; + }; + + inet_cidr = buildMix rec { + name = "inet_cidr"; + version = "1.0.4"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1g61i08cizr99ivy050lv8fmvnwia9zmipfvlwff8jkhi40x78k4"; + }; + + beamDeps = []; + }; + + jason = buildMix rec { + name = "jason"; + version = "1.3.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1b620901micds3q2pfnwcp861hjiwx0wpyahgvnf142k4m8izz2k"; + }; + + beamDeps = [ decimal ]; + }; + + joken = buildMix rec { + name = "joken"; + version = "2.5.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1rvlvwgxi7myg5mp1yb0f75gk82yl90660iigg5dhpkwc64mrci2"; + }; + + beamDeps = [ jose ]; + }; + + jose = buildMix rec { + name = "jose"; + version = "1.11.2"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1lj715gzl022yc47qsg9712x8nc9wi7x70msv8c3lpym92y3y54q"; + }; + + beamDeps = []; + }; + + jumper = buildMix rec { + name = "jumper"; + version = "1.0.1"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "0cvlbfkapkvbwaijmjq3cxg5m6yv4rh69wvss9kfj862i83mk31i"; + }; + + beamDeps = []; + }; + + majic = buildMix rec { + name = "majic"; + version = "1.0.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "17hab8kmqc6gsiqicfgsaik0rvmakb6mbshlbxllj3b5fs7qa1br"; + }; + + beamDeps = [ elixir_make mime nimble_pool plug ]; + }; + + makeup = buildMix rec { + name = "makeup"; + version = "1.1.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "19jpprryixi452jwhws3bbks6ki3wni9kgzah3srg22a3x8fsi8a"; + }; + + beamDeps = [ nimble_parsec ]; + }; + + makeup_elixir = buildMix rec { + name = "makeup_elixir"; + version = "0.16.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1rrqydcq2bshs577z7jbgdnrlg7cpnzc8n48kap4c2ln2gfcpci8"; + }; + + beamDeps = [ makeup nimble_parsec ]; + }; + + makeup_erlang = buildMix rec { + name = "makeup_erlang"; + version = "0.1.1"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1fvw0zr7vqd94vlj62xbqh0yrih1f7wwnmlj62rz0klax44hhk8p"; + }; + + beamDeps = [ makeup ]; + }; + + meck = buildRebar3 rec { + name = "meck"; + version = "0.9.2"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "09jq0jrsd3dwzjlnwqjv6m9r2rijgiv57yja6jl41p2p2db4yd41"; + }; + + beamDeps = []; + }; + + metrics = buildRebar3 rec { + name = "metrics"; + version = "1.0.1"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "05lz15piphyhvvm3d1ldjyw0zsrvz50d2m5f2q3s8x2gvkfrmc39"; + }; + + beamDeps = []; + }; + + mime = buildMix rec { + name = "mime"; + version = "1.6.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "19qrpnmaf3w8bblvkv6z5g82hzd10rhc7bqxvqyi88c37xhsi89i"; + }; + + beamDeps = []; + }; + + mimerl = buildRebar3 rec { + name = "mimerl"; + version = "1.2.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "08wkw73dy449n68ssrkz57gikfzqk3vfnf264s31jn5aa1b5hy7j"; + }; + + beamDeps = []; + }; + + mint = buildMix rec { + name = "mint"; + version = "1.4.2"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "106x9nmzi4ji5cqaddn76pxiyxdihk12z2qgszcdgd2rrjxsaxff"; + }; + + beamDeps = [ castore hpax ]; + }; + + mock = buildMix rec { + name = "mock"; + version = "0.3.7"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "0p3yrx049fdw88kjidngd2lkwqkkyck5r51ng2dxj7z41539m92d"; + }; + + beamDeps = [ meck ]; + }; + + mogrify = buildMix rec { + name = "mogrify"; + version = "0.9.2"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "17b9dy40rq3rwn7crjggjafibxz4ys4nqq81adcf486af3yi13f1"; + }; + + beamDeps = []; + }; + + mox = buildMix rec { + name = "mox"; + version = "1.0.2"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1wpyh6wp76lyx0q2cys23rpmci4gj1pqwnqvfk467xxanchlk1pr"; + }; + + beamDeps = []; + }; + + nimble_options = buildMix rec { + name = "nimble_options"; + version = "0.4.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "0bd0pi3sij9vxhiilv25x6n3jls75g3b38rljvm1x896ycd1qw76"; + }; + + beamDeps = []; + }; + + nimble_parsec = buildMix rec { + name = "nimble_parsec"; + version = "1.2.3"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1c3hnppmjkwnqrc9vvm72kpliav0mqyyk4cjp7vsqccikgiqkmy8"; + }; + + beamDeps = []; + }; + + nimble_pool = buildMix rec { + name = "nimble_pool"; + version = "0.2.6"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "0gv59waa505mz2gi956sj1aa6844c65w2dp2qh2jfgsx15am0w8w"; + }; + + beamDeps = []; + }; + + oban = buildMix rec { + name = "oban"; + version = "2.12.1"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "0n6h8a6v9hzk6s5dhadfbrvwnx2nkl64n575ff5ph3afnz14864v"; + }; + + beamDeps = [ ecto_sql jason postgrex telemetry ]; + }; + + open_api_spex = buildMix rec { + name = "open_api_spex"; + version = "3.10.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "0rc7q857b8zb9vc4c699arjihca353rzm3bfjc31z0ib7pg2pfrd"; + }; + + beamDeps = [ jason plug poison ]; + }; + + parse_trans = buildRebar3 rec { + name = "parse_trans"; + version = "3.3.1"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "12w8ai6b5s6b4hnvkav7hwxd846zdd74r32f84nkcmjzi1vrbk87"; + }; + + beamDeps = []; + }; + + phoenix = buildMix rec { + name = "phoenix"; + version = "1.6.11"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1hpv9f3759xi8kkb800f3ihfy98j95zrbpdsiy8s8pn2h17y6r0n"; + }; + + beamDeps = [ jason phoenix_pubsub phoenix_view plug plug_cowboy plug_crypto telemetry ]; + }; + + phoenix_ecto = buildMix rec { + name = "phoenix_ecto"; + version = "4.4.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1h9wnjmxns8y8dsr0r41ks66gscaqm7ivk4gsh5y07nkiralx1h9"; + }; + + beamDeps = [ ecto phoenix_html plug ]; + }; + + phoenix_html = buildMix rec { + name = "phoenix_html"; + version = "3.2.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "0ky5idgid1psz6hmh2b2kmj6n974axww74hrxwv02p6jasx9gv1n"; + }; + + beamDeps = [ plug ]; + }; + + phoenix_live_dashboard = buildMix rec { + name = "phoenix_live_dashboard"; + version = "0.6.5"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "0lmq1m7k465i9mzw35l7bx69n85mibwzd76976840r43sw6sakzg"; + }; + + beamDeps = [ ecto ecto_psql_extras mime phoenix_live_view telemetry_metrics ]; + }; + + phoenix_live_view = buildMix rec { + name = "phoenix_live_view"; + version = "0.17.11"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "169zqjil0x6552fzpgdkywv0nxkzy2jscdariz8hxydp8hcpjxvi"; + }; + + beamDeps = [ jason phoenix phoenix_html telemetry ]; + }; + + phoenix_pubsub = buildMix rec { + name = "phoenix_pubsub"; + version = "2.1.1"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1nfqrmbrq45if9pgk6g6vqiply2sxc40is3bfanphn7a3rnpqdl1"; + }; + + beamDeps = []; + }; + + phoenix_swoosh = buildMix rec { + name = "phoenix_swoosh"; + version = "0.3.4"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "072pa2rnzkvw645f3jh15rmgsnzccbyqjx1wbsmj28138qc24w9r"; + }; + + beamDeps = [ hackney phoenix phoenix_html swoosh ]; + }; + + phoenix_view = buildMix rec { + name = "phoenix_view"; + version = "1.1.2"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "0mis1z24wmd78sfpiik2f0ypqsjisbhn3fxdyrk14289gg90msbs"; + }; + + beamDeps = [ phoenix_html ]; + }; + + plug = buildMix rec { + name = "plug"; + version = "1.10.4"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1874ixvvjklg0hnxr6d990qzarvvfxhd4s35c5bfqbixwwzj67md"; + }; + + beamDeps = [ mime plug_crypto telemetry ]; + }; + + plug_cowboy = buildMix rec { + name = "plug_cowboy"; + version = "2.5.2"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "0i0hxbpkbgv2zi4z04x0l207dgbks2kj4h6kr1h8sq68fkvqfvpa"; + }; + + beamDeps = [ cowboy cowboy_telemetry plug ]; + }; + + plug_crypto = buildMix rec { + name = "plug_crypto"; + version = "1.2.2"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1nxnxj62iv4yvm4771jbxpj3l4brn2crz053y12s998lv5x1qqw7"; + }; + + beamDeps = []; + }; + + plug_static_index_html = buildMix rec { + name = "plug_static_index_html"; + version = "1.0.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1kxm1flxw3rnsj5jj24c2p23wq1wyblbl32n4rf6046i6k7lzzbr"; + }; + + beamDeps = [ plug ]; + }; + + poison = buildMix rec { + name = "poison"; + version = "3.1.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1kng8xadrs03i77irxvdk9vfncrqzncmgxc5gc8y8gkknw76dj7y"; + }; + + beamDeps = []; + }; + + poolboy = buildRebar3 rec { + name = "poolboy"; + version = "1.5.2"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1qq116314418jp4skxg8c6jx29fwp688a738lgaz6h2lrq29gmys"; + }; + + beamDeps = []; + }; + + postgrex = buildMix rec { + name = "postgrex"; + version = "0.16.3"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "142535k22dl5zdq757fhmnih7kk4lnq43llhzvjs8b9js79f3amf"; + }; + + beamDeps = [ connection db_connection decimal jason ]; + }; + + pot = buildRebar3 rec { + name = "pot"; + version = "1.0.2"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1q62ascgjgddq0l42nvysfwkxmbvh9qsd8m5dsfr2psgb9zi5zkq"; + }; + + beamDeps = []; + }; + + quack = buildMix rec { + name = "quack"; + version = "0.1.1"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "0hr5ppds4a9vih14hzs3lfj07r5069w8ifr7022fn4j18jkvydnp"; + }; + + beamDeps = [ poison tesla ]; + }; + + ranch = buildRebar3 rec { + name = "ranch"; + version = "1.8.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1rfz5ld54pkd2w25jadyznia2vb7aw9bclck21fizargd39wzys9"; + }; + + beamDeps = []; + }; + + recon = buildMix rec { + name = "recon"; + version = "2.5.2"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "070f4dgfp1vzvz0fxwavzv9bd7nl5fx3rmmkyr0zy7g9vv426x9c"; + }; + + beamDeps = []; + }; + + sleeplocks = buildRebar3 rec { + name = "sleeplocks"; + version = "1.1.1"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1q823i5bisc83pyssgrqkggyxiasm7b8dygzj2r943adzyp3gvl4"; + }; + + beamDeps = []; + }; + + ssl_verify_fun = buildRebar3 rec { + name = "ssl_verify_fun"; + version = "1.1.6"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1026l1z1jh25z8bfrhaw0ryk5gprhrpnirq877zqhg253x3x5c5x"; + }; + + beamDeps = []; + }; + + statistex = buildMix rec { + name = "statistex"; + version = "1.0.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "09vcm2sz2llv00cm7krkx3n5r8ra1b42zx9gfjs8l0imf3p8p7gz"; + }; + + beamDeps = []; + }; + + sweet_xml = buildMix rec { + name = "sweet_xml"; + version = "0.7.3"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1fpmwhqgvakvdpbwmmyh31ays3hzhnm9766xqyzp9zmkl5kwh471"; + }; + + beamDeps = []; + }; + + swoosh = buildMix rec { + name = "swoosh"; + version = "1.7.3"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "0v95r9b387a5qqpp8a69a1ckks4psmlw5vlcm9dq5dlm7wqsravn"; + }; + + beamDeps = [ cowboy ex_aws finch gen_smtp hackney jason mime plug_cowboy telemetry ]; + }; + + syslog = buildRebar3 rec { + name = "syslog"; + version = "1.1.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1qarnqappln4xhlr700rhnhfnfvgvv9l3y1ywdxmh83y7hvl2sjc"; + }; + + beamDeps = []; + }; + + table_rex = buildMix rec { + name = "table_rex"; + version = "3.1.1"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "141404hwnwnpspvhs112j2la8dfnvkwr0xy14ff42w6nljmj72k7"; + }; + + beamDeps = []; + }; + + telemetry = buildRebar3 rec { + name = "telemetry"; + version = "0.4.3"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "0hc0fr2bh97wah9ycpm7hb5jdqr5hnl1s3b2ibbbx9gxbwvbhwpb"; + }; + + beamDeps = []; + }; + + telemetry_metrics = buildMix rec { + name = "telemetry_metrics"; + version = "0.6.1"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1iilk2n75kn9i95fdp8mpxvn3rcn3ghln7p77cijqws13j3y1sbv"; + }; + + beamDeps = [ telemetry ]; + }; + + tesla = buildMix rec { + name = "tesla"; + version = "1.4.4"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "0mv48vgby1fv9b2npc0ird3y4isr10np3a3yas3v5hfyz54kll6m"; + }; + + beamDeps = [ castore finch gun hackney jason mime mint poison telemetry ]; + }; + + timex = buildMix rec { + name = "timex"; + version = "3.7.8"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "0d8lz1y8kjzgiakvl5kzmc5ijfx8chfml9g5d5fj1ddabzf8wfwg"; + }; + + beamDeps = [ combine gettext tzdata ]; + }; + + trailing_format_plug = buildMix rec { + name = "trailing_format_plug"; + version = "0.0.7"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "0gv9z8m1kpfs5f5zcsh9m6vr36s88x1xc6g0k6lr7sgk2m6dwkxx"; + }; + + beamDeps = [ plug ]; + }; + + tzdata = buildMix rec { + name = "tzdata"; + version = "1.1.1"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "11wpm1mjla8hbkb5mssprg3gsq1v24s8m8nyk3hx5z7aaa1yr756"; + }; + + beamDeps = [ hackney ]; + }; + + ueberauth = buildMix rec { + name = "ueberauth"; + version = "0.10.1"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1cgxirz6pw3q1wy59sn0a1ywdf0fpg33grnqn8kcri4m4db5nwdv"; + }; + + beamDeps = [ plug ]; + }; + + unicode_util_compat = buildRebar3 rec { + name = "unicode_util_compat"; + version = "0.7.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "08952lw8cjdw8w171lv8wqbrxc4rcmb3jhkrdb7n06gngpbfdvi5"; + }; + + beamDeps = []; + }; + + unsafe = buildMix rec { + name = "unsafe"; + version = "1.0.1"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1rahpgz1lsd66r7ycns1ryz2qymamz1anrlps986900lsai2jxvc"; + }; + + beamDeps = []; + }; + + vex = buildMix rec { + name = "vex"; + version = "0.9.0"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "0zw51hj525xiiggjk9n5ciix6pdhr8fvl6z7mqgkzan8sm2gz7y6"; + }; + + beamDeps = []; + }; + + web_push_encryption = buildMix rec { + name = "web_push_encryption"; + version = "0.3.1"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "18p2f1gqkg209vf3nychjxy7xpxhgiwyhn4halvr7yr2fvjv50jg"; + }; + + beamDeps = [ httpoison jose ]; + }; + + websockex = buildMix rec { + name = "websockex"; + version = "0.4.3"; + + src = fetchHex { + pkg = "${name}"; + version = "${version}"; + sha256 = "1r2kmi2pcmdzvgbd08ci9avy0g5p2lhx80jn736a98w55c3ygwlm"; + }; + + beamDeps = []; + }; + }; +in self + diff --git a/flake.lock b/flake.lock index dad7984..fc57d6b 100644 --- a/flake.lock +++ b/flake.lock @@ -1,5 +1,21 @@ { "nodes": { + "akkoma": { + "flake": false, + "locked": { + "lastModified": 1662632362, + "narHash": "sha256-X2rk9x1qvSBZK7FFhiO6JeMk6lcAi0LdZ9O8jaM9v8Q=", + "ref": "refs/heads/develop", + "rev": "a6d85003fe0cedab924a14f1065c181a2d468a1b", + "revCount": 14702, + "type": "git", + "url": "https://akkoma.dev/AkkomaGang/akkoma" + }, + "original": { + "type": "git", + "url": "https://akkoma.dev/AkkomaGang/akkoma" + } + }, "cargo2nix": { "inputs": { "flake-compat": "flake-compat", @@ -258,23 +274,6 @@ "type": "github" } }, - "mastodon": { - "flake": false, - "locked": { - "lastModified": 1662133938, - "narHash": "sha256-pVSxp3htAzIIQfv6bprMu5wRE/eVJGc0tHKNDEcgGeg=", - "ref": "develop", - "rev": "3a83d8fd9150c2e8a8d5d347e3f63425548bb65e", - "revCount": 15834, - "type": "git", - "url": "https://git.kescher.at/kescher/catstodon" - }, - "original": { - "ref": "develop", - "type": "git", - "url": "https://git.kescher.at/kescher/catstodon" - } - }, "matrix-media-repo": { "flake": false, "locked": { @@ -702,6 +701,7 @@ }, "root": { "inputs": { + "akkoma": "akkoma", "cargo2nix": "cargo2nix", "clean-s3-cache": "clean-s3-cache", "drone-runner-docker": "drone-runner-docker", @@ -711,7 +711,6 @@ "hydra-base": "hydra-base", "hydra-patched": "hydra-patched", "kreative-open-relay": "kreative-open-relay", - "mastodon": "mastodon", "matrix-media-repo": "matrix-media-repo", "mautrix-discord": "mautrix-discord", "mautrix-signal": "mautrix-signal", diff --git a/flake.nix b/flake.nix index d99f4b0..2d411ef 100644 --- a/flake.nix +++ b/flake.nix @@ -11,8 +11,8 @@ clean-s3-cache.flake = false; miifox-net.url = "git+https://git.chir.rs/CarolineHusky/MiiFox.net"; miifox-net.flake = false; - mastodon.url = "git+https://git.kescher.at/kescher/catstodon?ref=develop"; - mastodon.flake = false; + akkoma.url = "git+https://akkoma.dev/AkkomaGang/akkoma"; + akkoma.flake = false; matrix-media-repo.url = "github:turt2live/matrix-media-repo"; matrix-media-repo.flake = false; mautrix-whatsapp.url = "github:mautrix/whatsapp"; @@ -69,7 +69,7 @@ ./scripts/clean-s3-cache.nix ./web/old-homepage.nix ./web/miifox-net.nix - ./mastodon + ./akkoma ./matrix/matrix-media-repo ./matrix/mautrix-whatsapp ./matrix/mautrix-discord