diff --git a/pkgs/games/90secondportraits/default.nix b/pkgs/games/90secondportraits/default.nix new file mode 100644 index 000000000000..0ada8d64685d --- /dev/null +++ b/pkgs/games/90secondportraits/default.nix @@ -0,0 +1,59 @@ +{ stdenv, fetchurl, unzip, love, lua, makeWrapper, makeDesktopItem }: + +let + pname = "90secondportraits"; + version = "1.01b"; + + icon = fetchurl { + url = "http://tangramgames.dk/img/thumb/90secondportraits.png"; + sha256 = "13k6cq8s7jw77j81xfa5ri41445m778q6iqbfplhwdpja03c6faw"; + }; + + desktopItem = makeDesktopItem { + name = "90secondportraits"; + exec = "${pname}"; + icon = "${icon}"; + comment = "A silly speed painting game"; + desktopName = "90 Second Portraits"; + genericName = "90secondportraits"; + categories = "Game;"; + }; + +in + +stdenv.mkDerivation rec { + name = "${pname}-${version}"; + + src = fetchurl { + url = "https://github.com/SimonLarsen/90-Second-Portraits/releases/download/${version}/${pname}-${version}.love"; + sha256 = "0jj3k953r6vb02212gqcgqpb4ima87gnqgls43jmylxq2mcm33h5"; + }; + + nativeBuildInputs = [ makeWrapper ]; + buildInputs = [ lua love ]; + + phases = "installPhase"; + + installPhase = + '' + mkdir -p $out/bin + mkdir -p $out/share/games/lovegames + + cp -v $src $out/share/games/lovegames/${pname}.love + + makeWrapper ${love}/bin/love $out/bin/${pname} --add-flags $out/share/games/lovegames/${pname}.love + + chmod +x $out/bin/${pname} + mkdir -p $out/share/applications + ln -s ${desktopItem}/share/applications/* $out/share/applications/ + ''; + + meta = with stdenv.lib; { + description = "A silly speed painting game"; + maintainers = with maintainers; [ leenaars ]; + platforms = platforms.linux; + license = licenses.free; + downloadPage = http://tangramgames.dk/games/90secondportraits; + }; + +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 22dbfc41f438..1b023e4d99ff 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -14307,6 +14307,8 @@ let "2048-in-terminal" = callPackage ../games/2048-in-terminal { }; + "90secondportraits" = callPackage ../games/90secondportraits { love = love_0_10; }; + adom = callPackage ../games/adom { }; airstrike = callPackage ../games/airstrike { };