diff --git a/pkgs/by-name/br/brogue/fix-compilation.diff b/pkgs/by-name/br/brogue/fix-compilation.diff
new file mode 100644
index 000000000000..e68f6fcafcc1
--- /dev/null
+++ b/pkgs/by-name/br/brogue/fix-compilation.diff
@@ -0,0 +1,38 @@
+diff --git a/src/brogue/Architect.c b/src/brogue/Architect.c
+index abe5acf..b38291d 100755
+--- a/src/brogue/Architect.c
++++ b/src/brogue/Architect.c
+@@ -1676,7 +1676,7 @@ void addMachines() {
+ // Add the amulet holder if it's depth 26:
+ if (rogue.depthLevel == AMULET_LEVEL) {
+ for (failsafe = 50; failsafe; failsafe--) {
+- if (buildAMachine(MT_AMULET_AREA, -1, -1, NULL, NULL, NULL, NULL)) {
++ if (buildAMachine(MT_AMULET_AREA, -1, -1, 0L, NULL, NULL, NULL)) {
+ break;
+ }
+ }
+diff --git a/src/brogue/RogueMain.c b/src/brogue/RogueMain.c
+index 49b08b9..3666963 100755
+--- a/src/brogue/RogueMain.c
++++ b/src/brogue/RogueMain.c
+@@ -880,7 +880,7 @@ void startLevel(short oldLevelNumber, short stairDirection) {
+ getQualifyingPathLocNear(&loc[0], &loc[1],
+ player.xLoc, player.yLoc,
+ true,
+- T_DIVIDES_LEVEL, NULL,
++ T_DIVIDES_LEVEL, 0L,
+ T_PATHING_BLOCKER, (HAS_MONSTER | HAS_ITEM | HAS_STAIRS | IS_IN_MACHINE),
+ false);
+ }
+diff --git a/src/platform/platformdependent.c b/src/platform/platformdependent.c
+index 635a738..e725513 100644
+--- a/src/platform/platformdependent.c
++++ b/src/platform/platformdependent.c
+@@ -21,6 +21,7 @@
+ * along with Brogue. If not, see .
+ */
+
++#include
+ #include
+ #include
+ #include
diff --git a/pkgs/by-name/br/brogue/package.nix b/pkgs/by-name/br/brogue/package.nix
index c450b7c0ab5f..f3891abbd5ef 100644
--- a/pkgs/by-name/br/brogue/package.nix
+++ b/pkgs/by-name/br/brogue/package.nix
@@ -14,9 +14,11 @@ stdenv.mkDerivation (finalAttrs: {
version = "1.7.5";
src = fetchurl {
- url = "https://sites.google.com/site/broguegame/brogue-${finalAttrs.version}-linux-amd64.tbz2";
- sha256 = "0i042zb3axjf0cpgpdh8hvfn66dbfizidyvw0iymjk2n760z2kx7";
+ url = "https://drive.google.com/uc?export=download&id=1ED_2nPubP-P0e_PHKYVzZF42M1Y9pUb4";
+ hash = "sha256-p0/xgTlWTFl9BHz7Fn90qxlj3YYItvsuA052NdYXBEQ=";
+ name = "brogue.tbz2";
};
+
patches = [
# Pull upstream fix for -fno-common toolchains:
# https://github.com/tmewett/BrogueCE/pull/63
@@ -25,6 +27,8 @@ stdenv.mkDerivation (finalAttrs: {
url = "https://github.com/tmewett/BrogueCE/commit/2c7ed0c48d9efd06bf0a2589ba967c0a22a8fa87.patch";
sha256 = "19lr2fa25dh79klm4f4kqyyqq7w5xmw9z0fvylkcckqvcv7dwhp3";
})
+ # error: passing argument 4 of 'buildAMachine' makes integer from pointer without a cast []
+ ./fix-compilation.diff
];
prePatch = ''