From 603a1dbd45345638f8d68b735524cf354d2ed299 Mon Sep 17 00:00:00 2001 From: xenofem Date: Sun, 24 Jul 2022 02:18:05 -0400 Subject: [PATCH] nix flake for DiceMaiden bot --- Gemfile.lock | 89 ++++++++++++++ flake.lock | 27 +++++ flake.nix | 41 +++++++ gemset.nix | 331 +++++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 488 insertions(+) create mode 100644 Gemfile.lock create mode 100644 flake.lock create mode 100644 flake.nix create mode 100644 gemset.nix diff --git a/Gemfile.lock b/Gemfile.lock new file mode 100644 index 0000000..bb7758d --- /dev/null +++ b/Gemfile.lock @@ -0,0 +1,89 @@ +GIT + remote: https://github.com/Humblemonk/Dice-Bag.git + revision: 808d7d4a532812588fe199d5c038e4c4b2bfc3bd + branch: master + specs: + dicebag (3.3.0) + parslet (~> 1.4, >= 1.4.0) + +GIT + remote: https://github.com/shardlab/discordrb.git + revision: 7c7865d7462a348e6a4171008322fda24634e437 + branch: main + specs: + discordrb (3.4.2) + discordrb-webhooks (~> 3.4.2) + ffi (>= 1.9.24) + opus-ruby + rest-client (>= 2.0.0) + websocket-client-simple (>= 0.3.0) + discordrb-webhooks (3.4.2) + rest-client (>= 2.0.0) + +GEM + remote: https://rubygems.org/ + specs: + ast (2.4.2) + domain_name (0.5.20190701) + unf (>= 0.0.5, < 1.0.0) + dotenv (2.7.6) + event_emitter (0.2.6) + ffi (1.15.5) + http-accept (1.7.0) + http-cookie (1.0.5) + domain_name (~> 0.5) + json (2.6.2) + mime-types (3.4.1) + mime-types-data (~> 3.2015) + mime-types-data (3.2022.0105) + netrc (0.11.0) + opus-ruby (1.0.1) + ffi + parallel (1.22.1) + parser (3.1.2.0) + ast (~> 2.4.1) + parslet (1.8.2) + rainbow (3.1.1) + regexp_parser (2.5.0) + rest-client (2.1.0) + http-accept (>= 1.7.0, < 2.0) + http-cookie (>= 1.0.2, < 2.0) + mime-types (>= 1.16, < 4.0) + netrc (~> 0.8) + rexml (3.2.5) + rubocop (1.32.0) + json (~> 2.3) + parallel (~> 1.10) + parser (>= 3.1.0.0) + rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 1.8, < 3.0) + rexml (>= 3.2.5, < 4.0) + rubocop-ast (>= 1.19.1, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 1.4.0, < 3.0) + rubocop-ast (1.19.1) + parser (>= 3.1.1.0) + ruby-progressbar (1.11.0) + sqlite3 (1.4.4) + unf (0.1.4) + unf_ext + unf_ext (0.0.8.2) + unicode-display_width (2.2.0) + websocket (1.2.9) + websocket-client-simple (0.5.1) + event_emitter + websocket + +PLATFORMS + x86_64-linux + +DEPENDENCIES + dicebag! + discordrb! + dotenv (~> 2.5) + rest-client (~> 2.0, >= 2.0.2) + rubocop + sqlite3 (~> 1.3, >= 1.3.11) + +BUNDLED WITH + 2.3.9 diff --git a/flake.lock b/flake.lock new file mode 100644 index 0000000..2477b7a --- /dev/null +++ b/flake.lock @@ -0,0 +1,27 @@ +{ + "nodes": { + "nixpkgs": { + "locked": { + "lastModified": 1658557357, + "narHash": "sha256-0gqNef6skYQKJSS2vLojxrXOrc72zoX5VTDKUqEo6Gk=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "42ca9bef09e780eabe84328dd1b730cef978f098", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "root": { + "inputs": { + "nixpkgs": "nixpkgs" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000..7a1af36 --- /dev/null +++ b/flake.nix @@ -0,0 +1,41 @@ +{ + description = "Dice roller discord bot"; + + inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; + + outputs = { self, nixpkgs }: let + pkgs = import nixpkgs { system = "x86_64-linux"; }; + src = pkgs.fetchFromGitHub { + owner = "Humblemonk"; + repo = "DiceMaiden"; + rev = "9fb207b44e05953c9a27f287ff7d8eb4dcd4978a"; + sha256 = "078i3nfqnin331bhphz4mqi6w5y6xll5v7g7j4qrxzq1xmvrhkaj"; + }; + gems = pkgs.bundlerEnv { + name = "dicemaiden-env"; + gemfile = "${src}/Gemfile"; + lockfile = ./Gemfile.lock; + gemset = ./gemset.nix; + ignoreCollisions = true; + }; + in rec { + packages.x86_64-linux = rec { + default = dicemaiden; + dicemaiden = pkgs.stdenv.mkDerivation { + name = "dicemaiden"; + src = src; + buildInputs = [ gems pkgs.ruby ]; + installPhase = '' + mkdir -p $out/{bin,share/dicemaiden} + cp -r * $out/share/dicemaiden + bin=$out/bin/dicemaiden + cat > $bin <