Skip to content

Instantly share code, notes, and snippets.

@jakobrs
Last active February 9, 2020 16:54
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jakobrs/a4d78d94956b5aa0074f381684279bba to your computer and use it in GitHub Desktop.
Save jakobrs/a4d78d94956b5aa0074f381684279bba to your computer and use it in GitHub Desktop.
Patches
From 85ba6429ea2718349d4516037a739b1b30303ffb Mon Sep 17 00:00:00 2001
From: jakobrs <jakobrs100@gmail.com>
Date: Sat, 8 Feb 2020 09:31:20 +0100
Subject: [PATCH 1/4] vvvvvv: factor vvvvvv-bin out of vvvvvv
---
pkgs/games/vvvvvv/default.nix | 94 ++++++++++++++++++++++-----------
pkgs/top-level/all-packages.nix | 4 +-
2 files changed, 66 insertions(+), 32 deletions(-)
diff --git a/pkgs/games/vvvvvv/default.nix b/pkgs/games/vvvvvv/default.nix
index a336e8ad85d..b95239a3eec 100644
--- a/pkgs/games/vvvvvv/default.nix
+++ b/pkgs/games/vvvvvv/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, fetchFromGitHub, requireFile, makeWrapper
+{ stdenv, stdenvNoCC, fetchurl, fetchFromGitHub, requireFile
, SDL2, SDL2_mixer, cmake, ninja
, fullGame ? false }:
@@ -23,40 +23,72 @@ let
# if the user does not own the full game, build the Make and Play edition
flags = if fullGame then [] else [ "-DMAKEANDPLAY" ];
-in stdenv.mkDerivation rec {
- pname = "vvvvvv";
- version = "unstable-2020-02-02";
-
- src = fetchFromGitHub {
- owner = "TerryCavanagh";
- repo = "VVVVVV";
- rev = "4bc76416f551253452012d28e2bc049087e2be73";
- sha256 = "1sc64f7sxf063bdgnkg23vc170chq2ix25gs836hyswx98iyg5ly";
- };
-
- CFLAGS = flags;
- CXXFLAGS = flags;
- nativeBuildInputs = [ cmake ninja makeWrapper ];
- buildInputs = [ SDL2 SDL2_mixer ];
+ vvvvvv-bin = stdenv.mkDerivation rec {
+ pname = "vvvvvv-bin";
+ version = "unstable-2020-02-02";
+
+ src = fetchFromGitHub {
+ owner = "TerryCavanagh";
+ repo = "VVVVVV";
+ rev = "4bc76416f551253452012d28e2bc049087e2be73";
+ sha256 = "1sc64f7sxf063bdgnkg23vc170chq2ix25gs836hyswx98iyg5ly";
+ };
+
+ CFLAGS = flags;
+ CXXFLAGS = flags;
+
+ nativeBuildInputs = [ cmake ninja ];
+ buildInputs = [ SDL2 SDL2_mixer ];
+
+ sourceRoot = "source/desktop_version";
+
+ installPhase = ''
+ mkdir -p $out/bin
+ cp VVVVVV $out/bin/VVVVVV
+ '';
+
+ meta = with stdenv.lib; {
+ description = "A retro-styled platform game";
+ longDescription = ''
+ VVVVVV is a platform game all about exploring one simple mechanical
+ idea - what if you reversed gravity instead of jumping?
+ '';
+ homepage = "https://thelettervsixtim.es";
+ license = licenses.unfreeRedistributable;
+ maintainers = [ maintainers.dkudriavtsev ];
+ platforms = platforms.all;
+ };
+ };
- sourceRoot = "source/desktop_version";
+ vvvvvv = stdenvNoCC.mkDerivation rec {
+ pname = "vvvvvv";
+ version = "unstable-2020-02-02";
- installPhase = ''
- install -d $out/bin
- install -t $out/bin VVVVVV
- wrapProgram $out/bin/VVVVVV --add-flags "-assets ${dataZip}"
- '';
+ dontUnpack = true;
- meta = with stdenv.lib; {
- description = "A retro-styled platform game";
- longDescription = ''
- VVVVVV is a platform game all about exploring one simple mechanical
- idea - what if you reversed gravity instead of jumping?
+ installPhase = ''
+ mkdir -p $out/bin
+ cat > $out/bin/VVVVVV << EOF
+ #!/bin/sh
+ exec -a "\$0" ${vvvvvv-bin}/bin/VVVVVV -assets ${dataZip} "\$@"
+ EOF
+ chmod a+x $out/bin/VVVVVV
'';
- homepage = "https://thelettervsixtim.es";
- license = if fullGame then licenses.unfree else licenses.unfreeRedistributable;
- maintainers = [ maintainers.dkudriavtsev ];
- platforms = platforms.all;
+
+ meta = with stdenv.lib; {
+ description = "A retro-styled platform game";
+ longDescription = ''
+ VVVVVV is a platform game all about exploring one simple mechanical
+ idea - what if you reversed gravity instead of jumping?
+ '';
+ homepage = "https://thelettervsixtim.es";
+ license = if fullGame then licenses.unfree else licenses.unfreeRedistributable;
+ maintainers = [ maintainers.dkudriavtsev ];
+ platforms = platforms.all;
+ };
};
+
+in {
+ inherit vvvvvv-bin vvvvvv;
}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 9e384873854..16042f1ae39 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -23521,7 +23521,9 @@ in
libpng = libpng12;
};
- vvvvvv = callPackage ../games/vvvvvv { };
+ vvvvvvPackages = callPackages ../games/vvvvvv { };
+
+ inherit (vvvvvvPackages) vvvvvv-bin vvvvvv;
warmux = callPackage ../games/warmux { };
--
2.23.1
From 2fee970a412ba5d63a4e1ef6c0d0f970203eef85 Mon Sep 17 00:00:00 2001
From: jakobrs <jakobrs100@gmail.com>
Date: Sat, 8 Feb 2020 09:45:31 +0100
Subject: [PATCH 2/4] vvvvvv: add full version to all-packages.nix
---
pkgs/top-level/all-packages.nix | 3 +++
1 file changed, 3 insertions(+)
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 16042f1ae39..feda09cc6ce 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -23525,6 +23525,9 @@ in
inherit (vvvvvvPackages) vvvvvv-bin vvvvvv;
+ vvvvvv-bin-full = vvvvvv-bin.override { fullGame = true; };
+ vvvvvv-full = vvvvvv.override { fullGame = true; };
+
warmux = callPackage ../games/warmux { };
warsow-engine = callPackage ../games/warsow/engine.nix { };
--
2.23.1
From f1ebaed441d85230ca57ebd55517b13dd2753819 Mon Sep 17 00:00:00 2001
From: leo60228 <iakornfeld@gmail.com>
Date: Sat, 8 Feb 2020 10:16:40 -0500
Subject: [PATCH 3/4] vvvvvv: fully split vvvvvv and vvvvvv-bin
---
pkgs/games/vvvvvv/default.nix | 110 +++++++++-----------------------
pkgs/games/vvvvvv/wrapper.nix | 49 ++++++++++++++
pkgs/top-level/all-packages.nix | 9 ++-
3 files changed, 84 insertions(+), 84 deletions(-)
create mode 100644 pkgs/games/vvvvvv/wrapper.nix
diff --git a/pkgs/games/vvvvvv/default.nix b/pkgs/games/vvvvvv/default.nix
index b95239a3eec..23513ed4198 100644
--- a/pkgs/games/vvvvvv/default.nix
+++ b/pkgs/games/vvvvvv/default.nix
@@ -3,92 +3,44 @@
, fullGame ? false }:
let
- dataZip = if fullGame then requireFile {
- # the data file for the full game
- name = "data.zip";
- sha256 = "1q2pzscrglmwfgdl8yj300wymwskh51iq66l4xcd0qk0q3g3rbkg";
- message = ''
- In order to install VVVVVV, you must first download the game's
- data file (data.zip) as it is not released freely.
- Once you have downloaded the file, place it in your current
- directory, use the following command and re-run the installation:
- nix-prefetch-url file://\$PWD/data.zip
- '';
- } else fetchurl {
- # the data file for the free Make and Play edition
- url = https://thelettervsixtim.es/makeandplay/data.zip;
- name = "mapdata.zip";
- sha256 = "1q2pzscrglmwfgdl8yj300wymwskh51iq66l4xcd0qk0q3g3rbkg";
- };
-
# if the user does not own the full game, build the Make and Play edition
flags = if fullGame then [] else [ "-DMAKEANDPLAY" ];
- vvvvvv-bin = stdenv.mkDerivation rec {
- pname = "vvvvvv-bin";
- version = "unstable-2020-02-02";
-
- src = fetchFromGitHub {
- owner = "TerryCavanagh";
- repo = "VVVVVV";
- rev = "4bc76416f551253452012d28e2bc049087e2be73";
- sha256 = "1sc64f7sxf063bdgnkg23vc170chq2ix25gs836hyswx98iyg5ly";
- };
-
- CFLAGS = flags;
- CXXFLAGS = flags;
-
- nativeBuildInputs = [ cmake ninja ];
- buildInputs = [ SDL2 SDL2_mixer ];
-
- sourceRoot = "source/desktop_version";
-
- installPhase = ''
- mkdir -p $out/bin
- cp VVVVVV $out/bin/VVVVVV
- '';
-
- meta = with stdenv.lib; {
- description = "A retro-styled platform game";
- longDescription = ''
- VVVVVV is a platform game all about exploring one simple mechanical
- idea - what if you reversed gravity instead of jumping?
- '';
- homepage = "https://thelettervsixtim.es";
- license = licenses.unfreeRedistributable;
- maintainers = [ maintainers.dkudriavtsev ];
- platforms = platforms.all;
- };
+in stdenv.mkDerivation rec {
+ pname = "vvvvvv-bin";
+ version = "unstable-2020-02-02";
+
+ src = fetchFromGitHub {
+ owner = "TerryCavanagh";
+ repo = "VVVVVV";
+ rev = "4bc76416f551253452012d28e2bc049087e2be73";
+ sha256 = "1sc64f7sxf063bdgnkg23vc170chq2ix25gs836hyswx98iyg5ly";
};
- vvvvvv = stdenvNoCC.mkDerivation rec {
- pname = "vvvvvv";
- version = "unstable-2020-02-02";
+ CFLAGS = flags;
+ CXXFLAGS = flags;
- dontUnpack = true;
+ nativeBuildInputs = [ cmake ninja ];
+ buildInputs = [ SDL2 SDL2_mixer ];
- installPhase = ''
- mkdir -p $out/bin
- cat > $out/bin/VVVVVV << EOF
- #!/bin/sh
- exec -a "\$0" ${vvvvvv-bin}/bin/VVVVVV -assets ${dataZip} "\$@"
- EOF
- chmod a+x $out/bin/VVVVVV
- '';
+ sourceRoot = "source/desktop_version";
- meta = with stdenv.lib; {
- description = "A retro-styled platform game";
- longDescription = ''
- VVVVVV is a platform game all about exploring one simple mechanical
- idea - what if you reversed gravity instead of jumping?
- '';
- homepage = "https://thelettervsixtim.es";
- license = if fullGame then licenses.unfree else licenses.unfreeRedistributable;
- maintainers = [ maintainers.dkudriavtsev ];
- platforms = platforms.all;
- };
- };
+ installPhase = ''
+ mkdir -p $out/bin
+ cp VVVVVV $out/bin/VVVVVV
+ '';
+
+ passthru.fullGame = fullGame;
-in {
- inherit vvvvvv-bin vvvvvv;
+ meta = with stdenv.lib; {
+ description = "A retro-styled platform game";
+ longDescription = ''
+ VVVVVV is a platform game all about exploring one simple mechanical
+ idea - what if you reversed gravity instead of jumping?
+ '';
+ homepage = "https://thelettervsixtim.es";
+ license = licenses.unfreeRedistributable;
+ maintainers = [ maintainers.dkudriavtsev ];
+ platforms = platforms.all;
+ };
}
diff --git a/pkgs/games/vvvvvv/wrapper.nix b/pkgs/games/vvvvvv/wrapper.nix
new file mode 100644
index 00000000000..ec3fd3e123f
--- /dev/null
+++ b/pkgs/games/vvvvvv/wrapper.nix
@@ -0,0 +1,49 @@
+{ stdenvNoCC, stdenv, vvvvvv-bin, fetchurl, requireFile }:
+
+let
+ fullGame = vvvvvv-bin.fullGame;
+ dataZip = if fullGame then requireFile {
+ # the data file for the full game
+ name = "data.zip";
+ sha256 = "1q2pzscrglmwfgdl8yj300wymwskh51iq66l4xcd0qk0q3g3rbkg";
+ message = ''
+ In order to install VVVVVV, you must first download the game's
+ data file (data.zip) as it is not released freely.
+ Once you have downloaded the file, place it in your current
+ directory, use the following command and re-run the installation:
+ nix-prefetch-url file://\$PWD/data.zip
+ '';
+ } else fetchurl {
+ # the data file for the free Make and Play edition
+ url = https://thelettervsixtim.es/makeandplay/data.zip;
+ name = "mapdata.zip";
+ sha256 = "1q2pzscrglmwfgdl8yj300wymwskh51iq66l4xcd0qk0q3g3rbkg";
+ };
+
+in stdenvNoCC.mkDerivation rec {
+ pname = "vvvvvv";
+ version = "unstable-2020-02-02";
+
+ dontUnpack = true;
+
+ installPhase = ''
+ mkdir -p $out/bin
+ cat > $out/bin/VVVVVV << EOF
+ #!/bin/sh
+ exec -a "\$0" ${vvvvvv-bin}/bin/VVVVVV -assets ${dataZip} "\$@"
+ EOF
+ chmod a+x $out/bin/VVVVVV
+ '';
+
+ meta = with stdenv.lib; {
+ description = "A retro-styled platform game";
+ longDescription = ''
+ VVVVVV is a platform game all about exploring one simple mechanical
+ idea - what if you reversed gravity instead of jumping?
+ '';
+ homepage = "https://thelettervsixtim.es";
+ license = if fullGame then licenses.unfree else licenses.unfreeRedistributable;
+ maintainers = [ maintainers.dkudriavtsev ];
+ platforms = platforms.all;
+ };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index feda09cc6ce..f88fe7e579c 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -7587,7 +7587,7 @@ in
zpaqd = callPackage ../tools/archivers/zpaq/zpaqd.nix { };
zsh-autoenv = callPackage ../tools/misc/zsh-autoenv { };
-
+
zsh-bd = callPackage ../shells/zsh/zsh-bd { };
zsh-git-prompt = callPackage ../shells/zsh/zsh-git-prompt { };
@@ -23521,12 +23521,11 @@ in
libpng = libpng12;
};
- vvvvvvPackages = callPackages ../games/vvvvvv { };
-
- inherit (vvvvvvPackages) vvvvvv-bin vvvvvv;
+ vvvvvv-bin = callPackage ../games/vvvvvv { };
+ vvvvvv = callPackage ../games/vvvvvv/wrapper.nix { };
vvvvvv-bin-full = vvvvvv-bin.override { fullGame = true; };
- vvvvvv-full = vvvvvv.override { fullGame = true; };
+ vvvvvv-full = vvvvvv.override { vvvvvv-bin = vvvvvv-bin-full; };
warmux = callPackage ../games/warmux { };
--
2.23.1
From aa1459a0973e11881d8c2d48a10b47ca8d50087b Mon Sep 17 00:00:00 2001
From: jakobrs <jakobrs100@gmail.com>
Date: Sun, 9 Feb 2020 09:30:15 +0100
Subject: [PATCH 4/4] vvvvvv: bump to 2020-02-09
Fixes a segfault in the Make and Play edition. See
TerryCavanagh/VVVVVV#153 and TerryCavanagh/VVVVVV#155.
---
pkgs/games/vvvvvv/default.nix | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/pkgs/games/vvvvvv/default.nix b/pkgs/games/vvvvvv/default.nix
index 23513ed4198..bc0adcc0cc2 100644
--- a/pkgs/games/vvvvvv/default.nix
+++ b/pkgs/games/vvvvvv/default.nix
@@ -8,13 +8,13 @@ let
in stdenv.mkDerivation rec {
pname = "vvvvvv-bin";
- version = "unstable-2020-02-02";
+ version = "unstable-2020-02-09";
src = fetchFromGitHub {
owner = "TerryCavanagh";
repo = "VVVVVV";
- rev = "4bc76416f551253452012d28e2bc049087e2be73";
- sha256 = "1sc64f7sxf063bdgnkg23vc170chq2ix25gs836hyswx98iyg5ly";
+ rev = "9642921a6428dadd3193a9ff15805779858efd89";
+ sha256 = "0rbczh4psx9vlbylk6lhqk7c6agk0db4n9w9a0xi1dd04n1mipb5";
};
CFLAGS = flags;
--
2.23.1
From 6f297c4943b9aa640253f9bdfe560daa6afe2655 Mon Sep 17 00:00:00 2001
From: jakobrs <jakobrs100@gmail.com>
Date: Sun, 9 Feb 2020 12:56:44 +0100
Subject: [PATCH] vvvvvv: remove redundant stdenvNoCC
---
pkgs/games/vvvvvv/default.nix | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/pkgs/games/vvvvvv/default.nix b/pkgs/games/vvvvvv/default.nix
index bc0adcc0cc2..20e29cff1b6 100644
--- a/pkgs/games/vvvvvv/default.nix
+++ b/pkgs/games/vvvvvv/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, stdenvNoCC, fetchurl, fetchFromGitHub, requireFile
+{ stdenv, fetchurl, fetchFromGitHub, requireFile
, SDL2, SDL2_mixer, cmake, ninja
, fullGame ? false }:
--
2.23.1
From eb3527f4751bef53c87bca02f51a3c5e370669ab Mon Sep 17 00:00:00 2001
From: jakobrs <jakobrs100@gmail.com>
Date: Sun, 9 Feb 2020 17:52:53 +0100
Subject: [PATCH] vvvvvv: advance version
---
pkgs/games/vvvvvv/default.nix | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/pkgs/games/vvvvvv/default.nix b/pkgs/games/vvvvvv/default.nix
index 20e29cff1b6..d21fdbfd288 100644
--- a/pkgs/games/vvvvvv/default.nix
+++ b/pkgs/games/vvvvvv/default.nix
@@ -13,8 +13,8 @@ in stdenv.mkDerivation rec {
src = fetchFromGitHub {
owner = "TerryCavanagh";
repo = "VVVVVV";
- rev = "9642921a6428dadd3193a9ff15805779858efd89";
- sha256 = "0rbczh4psx9vlbylk6lhqk7c6agk0db4n9w9a0xi1dd04n1mipb5";
+ rev = "3273b4ab554c369311007212b4341ff8e3884b16";
+ sha256 = "0hfnc31sbrixrqb24g1x8vgkkgz6wabmw35j0dqd7k97qwjcb3k8";
};
CFLAGS = flags;
--
2.23.1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment