rec {
  cfg = {
    v0_13_0 = rec {
      version = "0.13.0";
      server = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-restserver-${version}.zip";
        sha256 = "194hp0sd9i8s2nys5hl5kfndqlvhsafr5m3vv8inih6ajcz991jq";
      };
      joex = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-joex-${version}.zip";
        sha256 = "0an4a0gqklh2sr3pi7a43lljlwc4ykfvmvj9wp2yd8nf36gc6h6y";
      };
      tools = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-tools-${version}.zip";
        sha256 = "169dik05s37xm3kh3alglx1cs3wp6y9zsglq4vv3f2cqyh16dr9r";
      };
    };
    v0_12_0 = rec {
      version = "0.12.0";
      server = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-restserver-${version}.zip";
        sha256 = "1wskwlsgbnx8izaflaga00py5abb2kiy2p69ry2j0dbbafnlcgzi";
      };
      joex = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-joex-${version}.zip";
        sha256 = "1ad0wbvb8ssqdvf8w9449bdfva3z2rv2dpk3dcjp9vwl78x01g20";
      };
      tools = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-tools-${version}.zip";
        sha256 = "1nx53imh7jvx9kyfgp1bnc3mdmg5dzm8a4iws8jsbl4dxng46bbc";
      };
    };
    v0_11_1 = rec {
      version = "0.11.1";
      server = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-restserver-${version}.zip";
        sha256 = "16vwk5mbm4jfp3awghwi8mqz7h4garaqk15fx7gsz8yr05c7yzz5";
      };
      joex = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-joex-${version}.zip";
        sha256 = "1mdk68g0zzp5zlr458z7dsn12y2pni2b9c9262almqs53sza7dqq";
      };
      tools = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-tools-${version}.zip";
        sha256 = "1ca7jlwjn505f7s1apbi8xi987yqb1hlrivj6gz25c092xc4bv8c";
      };
    };
    v0_11_0 = rec {
      version = "0.11.0";
      server = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-restserver-${version}.zip";
        sha256 = "1cxwca69bxha1p8bfgkmg2qx0gwai6r1nz8ymhwah32x1mmvp2cf";
      };
      joex = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-joex-${version}.zip";
        sha256 = "133vd9rsi9lwf8mrk9yfwbp0w2s8xyavmlkz8acl43zncxnzlb2b";
      };
      tools = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-tools-${version}.zip";
        sha256 = "0hj2dxk09lrhnr9ph9zr117xf61ql7snkdp86gpap46a7rwlasap";
      };
    };
    v0_10_0 = rec {
      version = "0.10.0";
      server = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-restserver-${version}.zip";
        sha256 = "0md3xqy1qbw8hg6n90i7w5n6nzqipqg9cmc9qypyvmwmxcfpr569";
      };
      joex = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-joex-${version}.zip";
        sha256 = "1ahc3y0m0gn6s38bddy7sq28ssg5qw57sm456rihv3ms9llwpniq";
      };
      tools = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-tools-${version}.zip";
        sha256 = "1kd15p5dj4ksfp6ky5xn8c1axdcrp2iplagz3s7p4jzikr3x8rw0";
      };
    };
    v0_9_0 = rec {
      version = "0.9.0";
      server = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-restserver-${version}.zip";
        sha256 = "0hh9dxmq64qsg28mrvy8vnfq0l1djvlv5n6a7nhvclsf27b9crdm";
      };
      joex = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-joex-${version}.zip";
        sha256 = "0hiw2lhf4cdbvvsfgshn0szs7k6x6g79zjadlhglsb2v40x2vgjj";
      };
      tools = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-tools-${version}.zip";
        sha256 = "0d5k9yzbmhma0si4paykyf43irqhnpqk7w2h1dpwjmzdaic8s3g8";
      };
    };
    v0_8_0 = rec {
      version = "0.8.0";
      server = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-restserver-${version}.zip";
        sha256 = "1s4p6ljrzc8d50nsxngwm16jsr7gq8q9nybazdr3mx2g94h7smjw";
      };
      joex = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-joex-${version}.zip";
        sha256 = "16dnb04rbpy0nvzddfrlcfq6a9lypsf666yqfwm1fh42lsy09ji4";
      };
      tools = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-tools-${version}.zip";
        sha256 = "0ziha21pwqqz356q8p2zdd9k4xm8k1p5a7sgbwss2ihplw5zi7vi";
      };
    };
    v0_7_0 = rec {
      version = "0.7.0";
      server = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-restserver-${version}.zip";
        sha256 = "0kvc1jjkn88z6nq5f8f4a1n6jn4n1gnmivm2r34i3j5pw972kh15";
      };
      joex = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-joex-${version}.zip";
        sha256 = "14jsx5ln1y8xavz4550bbm3cnrp98vzskmwrq0vk79knsxvbf7sy";
      };
      tools = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-tools-${version}.zip";
        sha256 = "01sa8idrz0zihr3206mwgijp0mwswa4kprzfn8pfwps7nhxsqpdk";
      };
    };
    v0_6_0 = rec {
      version = "0.6.0";
      server = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-restserver-${version}.zip";
        sha256 = "1mh8f1hkhh3gy5bwvzxb2kyr7v169w59448pi67q4d49kffk3wl3";
      };
      joex = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-joex-${version}.zip";
        sha256 = "0p1jjaz19sajvzf750mav4h47q0a79p8555irbd4hpv3i8fpasnb";
      };
      tools = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-tools-${version}.zip";
        sha256 = "1yh65crg8hjmmp5ql4k44ipq1aw93qfx2jkc2lbdvi8vza5xaq89";
      };
    };
    v0_5_0 = rec {
      version = "0.5.0";
      server = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-restserver-${version}.zip";
        sha256 = "1cr1x5ncl8prrp50mip17filyh2g1hq4ycjq4h4zmaj1nlvzrfy5";
      };
      joex = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-joex-${version}.zip";
        sha256 = "1pgkay99h59c2hnxhibrg8dy2j5bmlkv1hi18snccf7d304xl6w6";
      };
      tools = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-tools-${version}.zip";
        sha256 = "1bqm3bwg4n2llbsipp9ydmlkk3hv0x0jx482x4jb98x0fjyipzyy";
      };
    };
    v0_4_0 = rec {
      version = "0.4.0";
      server = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-restserver-${version}.zip";
        sha256 = "1n57rspjxwz6znjl69qp59wqyj2374h8b7d90816n0akcqmnkak4";
      };
      joex = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-joex-${version}.zip";
        sha256 = "1jrmnm5bxi7mc9gzwnrpwvgclx5qclmw78dq0pf8xljwmh6zci26";
      };
      tools = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-tools-${version}.zip";
        sha256 = "1xck4h8g0z2avvyf253039yzp5g6fahyq8mkh2bpis0f7bhrrazy";
      };
    };
    v0_3_0 = rec {
      version = "0.3.0";
      server = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-restserver-${version}.zip";
        sha256 = "0j942js8h5v7h64bsizylhf28a57y4lpwyl9nwqcg8n2vd059bz5";
      };
      joex = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-joex-${version}.zip";
        sha256 = "10rfj9ar5aj0hnis4j62k4d2d7pibgbph3qwj7mvn25p51dcfdvp";
      };
      tools = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-tools-${version}.zip";
        sha256 = "1swkmgxfg5rcs45x402gy7s1p40c4ff8hil5qvlx22p7ahwzr25m";
      };
    };
    v0_2_0 = rec {
      version = "0.2.0";
      server = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-restserver-${version}.zip";
        sha256 = "1mpyd66pcsd2q4wx9vszldqlamz9qgv6abrxh7xwzw23np61avy5";
      };
      joex = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-joex-${version}.zip";
        sha256 = "1ycfcfcv24vvkdbzvnahj500gb5l9vdls4bxq0jd1zn72p4z765f";
      };
      tools = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-tools-${version}.zip";
        sha256 = "0hd93rlnnrq8xj7knp38x1jj2mv4y5lvbcv968bzk5f1az51qsvg";
      };
    };
    v0_1_0 = rec {
      version = "0.1.0";
      server = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-restserver-${version}.zip";
        sha256 = "19bmvrk07s4gsw4dszbilfv7jns7bp20lfr0ia73xdmn5w8kdhq0";
      };
      joex = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-joex-${version}.zip";
        sha256 = "175yz0lxra0qv63xjl90hh32idm13c1k1aah2hqc0ncpx22scp5v";
      };
      tools = {
        url = "https://github.com/eikek/docspell/releases/download/v${version}/docspell-tools-${version}.zip";
        sha256 = "03w5cxylk2yfkah15qrx5cl21gfly0vwa0czglb1swsri3808rdb";
      };
    };
  };
  pkg = v: import ./pkg.nix v;
  currentPkg = pkg cfg.v0_13_0;
  module-joex = ./module-joex.nix;
  module-restserver = ./module-server.nix;
  module-consumedir = ./module-consumedir.nix;
  modules = [ module-joex
              module-restserver
              module-consumedir
            ];
}
