blob: 5909659e90a5319812680c746792127a41a598ed [file] [log] [blame]
{ pkgs, ... }: let
signageForPkgs = pkgs: with { inherit (pkgs) love fetchFromGitHub stdenv curl; }; let
# Build LÖVE2D 12, currently still in development. This gives us https
# support.
love12 = (love.overrideAttrs (oa: {
version = "12.0-dev";
src = fetchFromGitHub {
owner = "love2d";
repo = "love";
rev = "d586d1847446f5212d5f7e9efb94e50fcfba7d77";
sha256 = "sha256-gTpVtyqXV6/GsezuCpooaY+x5tPfOF9p1b83v4kKR4E=";
};
makeFlags = [
"CPPFLAGS=-DHTTPS_BACKEND_CURL"
];
buildInputs = oa.buildInputs ++ [ curl ];
NIX_LDFLAGS = "-lcurl";
enableParallelBuilding = true;
}));
signage = stdenv.mkDerivation {
name = "signage";
src = ./.;
installPhase = ''
mkdir -p $out/share/signage
cp -rv $src/* $out/share/signage/
mkdir -p $out/bin/
cat <<EOF >$out/bin/signage
#!/usr/bin/env bash
${love12}/bin/love $out/share/signage
EOF
chmod +x $out/bin/signage
'';
passthru.runtime = love12;
};
in signage;
in {
prod = signageForPkgs pkgs;
local = signageForPkgs (import <nixpkgs> {});
}