diff --git a/joann-pupper-bot/default.nix b/joann-pupper-bot/default.nix new file mode 100644 index 0000000..b885260 --- /dev/null +++ b/joann-pupper-bot/default.nix @@ -0,0 +1,16 @@ +{ stdenv, fetchgit, crystal, customCrystal, sqlite, openssl, pkg-config }: +let + url = "https://dev.danilafe.com/Crystal-Bots/joann-pupper-bot"; + rev = "8d90b052a001a6101dc691a907a16de4fb0a26ee"; + sha256 = "0r2xyfqj9v73y9il90f2mp2x5h79nbv4yhfsh79kn1w0li6nlx3s"; +in + customCrystal { + inherit crystal; + pname = "joann-pupper-bot"; + version = rev; + src = fetchgit { inherit url rev sha256; }; + shardsFile = ./shards.nix; + gitShardsFile = ./git-shards.nix; + crystalBinaries.joann-pupper-bot.src = "src/joann-pupper-bot.cr"; + buildInputs = [ sqlite openssl pkg-config ]; + } diff --git a/joann-pupper-bot/git-shards.nix b/joann-pupper-bot/git-shards.nix new file mode 100644 index 0000000..2fd13db --- /dev/null +++ b/joann-pupper-bot/git-shards.nix @@ -0,0 +1,7 @@ +{ + telepathy = { + url = "https://dev.danilafe.com/Crystal-Bots/telepathy"; + rev = "v0.1.2"; + sha256 = "1vis5ncfdjapxqm2q39bd0iwqrkim2wbn84xi3fydshhpkznqh88"; + }; +} diff --git a/joann-pupper-bot/shards.nix b/joann-pupper-bot/shards.nix new file mode 100644 index 0000000..69f07cf --- /dev/null +++ b/joann-pupper-bot/shards.nix @@ -0,0 +1,26 @@ +{ + cron_parser = { + owner = "kostya"; + repo = "cron_parser"; + rev = "v0.3.0"; + sha256 = "0ss5zhlvq8kcmc8j2msigpayrx0nys44j66d6smdnql06bncrm13"; + }; + cron_scheduler = { + owner = "kostya"; + repo = "cron_scheduler"; + rev = "v0.3.0"; + sha256 = "15lk8x7p5nq388ll7g5al9mflr1723kj6akrj9fadqf9535i6rqc"; + }; + db = { + owner = "crystal-lang"; + repo = "crystal-db"; + rev = "v0.9.0"; + sha256 = "0am5njx9g0m7lqmzs4qpgrnqq2pl9yb9h6jfrwgarx15c4jdrrzd"; + }; + sqlite3 = { + owner = "crystal-lang"; + repo = "crystal-sqlite3"; + rev = "v0.16.0"; + sha256 = "1kqbp642gskffwpa98l08s3chx0d49wngjsh0ax7pbjn9kgf7sq5"; + }; +}