42 lines
1.2 KiB
Nix
42 lines
1.2 KiB
Nix
{
|
|
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 = "0c94c97bb01bda9e39742e67454ca3a236911a09";
|
|
sha256 = "090g5cn0k930x4dm1p10z9729fdk8nnr3znh9ssmgk3n8wz37nlw";
|
|
};
|
|
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 <<EOF
|
|
#!/bin/sh -e
|
|
exec ${gems}/bin/bundle exec ${pkgs.ruby}/bin/ruby $out/share/dicemaiden/dice_maiden.rb "\$@"
|
|
EOF
|
|
chmod +x $bin
|
|
'';
|
|
};
|
|
};
|
|
};
|
|
}
|