push sheeet
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s

This commit is contained in:
Dark Steveneq
2025-10-09 14:15:47 +02:00
commit 646b892680
49168 changed files with 5897842 additions and 0 deletions
+65
View File
@@ -0,0 +1,65 @@
{
lib,
stdenv,
fetchzip,
requireFile,
}:
let
version = "1.32c";
in
stdenv.mkDerivation (finalAttrs: {
pname = "quake3arenadata";
inherit version;
src = requireFile rec {
name = "pak0.pk3";
hash = "sha256-fOizkQYgzVCgnk8RAPQm6MYYD2iJXVifgOa9la9UvK4=";
message = ''
Quake 3 Arena requires the original ${name} file, from any legal source of the game.
This could be an old CD-ROM you have lying around or you can try to buy the game.
To my knowledge the Steam Quake-Collection-Package, is about the last legal way to get it.
Please note, there are plenty of versions of this file online like:
- https://github.com/nrempel/q3-server/raw/master/baseq3/pak0.pk3
- https://archive.org/details/quake-3-arena
However, none of these have the blessing of ID-Software and thus do not qualify.
Once you download a version or checked your old CD-ROM, locate the ${name} file
inside the baseq3 folder and then run the following command on it:
nix-prefetch-url file:///path/to/baseq3/${name}
'';
};
buildCommand = ''
mkdir -p $out/baseq3
echo 'wwwwwwwwwwwwwwww' > $out/baseq3/q3key
ln -s $src $out/baseq3/pak0.pk3
'';
preferLocalBuild = true;
meta = {
description = "Quake 3 Arena content";
longDescription = ''
Quake III Arena and it's demo don't offer current wide screen resolutions in the menu.
To switch to such a resolution, you will have to enter something like this in the quake console (invoke with ~ by default)
r_mode -1; r_customwidth 2560; r_customheight 1440; r_fullscreen 1; vid_restart
Or call the quake commandline with these parameters
$ quake3 +set r_mode -1 +set r_customwidth 2560 +set r_customheight 1440 +set r_fullscreen 1
'';
homepage = "https://www.idsoftware.com/";
license = lib.licenses.unfreeRedistributable;
platforms = lib.platforms.all;
maintainers = [ ];
};
})
+46
View File
@@ -0,0 +1,46 @@
{
lib,
stdenv,
fetchurl,
}:
let
version = "1.11-6";
in
stdenv.mkDerivation {
pname = "quake3-demodata";
inherit version;
src = fetchurl {
url = "https://ftp.gwdg.de/pub/misc/ftp.idsoftware.com/idstuff/quake3/linux/linuxq3ademo-${version}.x86.gz.sh";
sha256 = "1v54a1hx1bczk9hgn9qhx8vixsy7xn7wj2pylhfjsybfkgvf7pk4";
};
buildCommand = ''
tail -n +165 $src | tar xfz -
mkdir -p $out/baseq3
cp demoq3/*.pk3 $out/baseq3
'';
preferLocalBuild = true;
meta = with lib; {
description = "Demo of Quake 3 Arena, a classic first-person shooter";
longDescription = ''
Quake III Arena and it's demo don't offer current wide screen resolutions in the menu.
To switch to such a resolution, you will have to enter something like this in the quake console (invoke with ~ by default)
r_mode -1; r_customwidth 2560; r_customheight 1440; r_fullscreen 1; vid_restart
Or call the quake commandline with these parameters
$ quake3 +set r_mode -1 +set r_customwidth 2560 +set r_customheight 1440 +set r_fullscreen 1
'';
homepage = "https://www.idsoftware.com/";
license = licenses.unfreeRedistributable;
platforms = platforms.all;
maintainers = [ ];
};
}
+74
View File
@@ -0,0 +1,74 @@
{
stdenv,
lib,
fetchzip,
fetchurl,
fetchFromGitHub,
libarchive,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "quake3hires";
version = "unstable-2020-01-20"; # Unknown version, used the date of web.archive.org capture.
nativeBuildInputs = [
libarchive
];
src = fetchzip {
url = "https://web.archive.org/web/20200120024216/http://ioquake3.org/files/xcsv_hires.zip";
sha256 = "09vhrray8mh1ic2qgcwv0zlmsnz789y32dkkvrz1vdki4yqkf717";
stripRoot = false;
};
# https://www.moddb.com/mods/high-quality-quake
# TODO check if that file needs renaming to something that starts with z_* so it actually overrides anything in pak0.pk3
extra-pack-resolution = fetchurl {
url = "https://web.archive.org/web/20250310093216/https://fmt3.dl.dbolical.com/dl/2018/11/06/q3a-hqq-v37.zip?st=0XzNnNvOYWrJAi_6AB3mKw==&e=1741602736";
hash = "sha256-0nAXkrf4ahlct75TgO18PjuT9IkH8fpDhtTflJfPpPM=";
};
# https://www.moddb.com/mods/cz45modbundle/addons/cz45-q3a-weapon-model-remake-v10
# https://www.moddb.com/downloads/mirror/255463/130/9de70b5dc7ebb1baa44acf91458b04f9/
# this is only part of the mod, only the weapons skins
# url = "https://github.com/diegoulloao/ioquake3-mac-install/raw/master/extras/hd-weapons.pk3";
hd-weapons = fetchurl {
name = "czq3hdweaprem_v10.zip";
url = "https://web.archive.org/web/20250310101737/https://fmt1.dl.dbolical.com/dl/2023/08/13/czq3hdweaprem_v10.zip?st=XBoRCpVmvTYtc60xxi36VQ==&e=1741605457";
hash = "sha256-pL7MsEFsKJV+a+z45Ns16SPdQB3i2D6T3x7tBqWtm1s=";
};
# According to the @diegoulloao (see https://github.com/diegoulloao/ioquake3-mac-install/issues/23#issuecomment-2817031996)
# quake3-live-sounds.pk3 is likely a custom repack from https://www.moddb.com/addons/quake-live-announcers-pack
# zpack-weapons.pk3 is an amalgamation of multiple mods, where he can't recall which ones he used exactly.
# It still makes him the authorative source for these file.
ioquake3_mac = fetchFromGitHub {
owner = "diegoulloao";
repo = "ioquake3-mac-install";
rev = "3a767ff0131742ec517fd5f13ddca16dee91927d";
hash = "sha256-uY3pybCnQ7lZatP3s9AiT779/4xj8N3R4qx8V6991aM=";
};
buildCommand = ''
mkdir -p $out/baseq3
install -Dm444 $src/xcsv_bq3hi-res.pk3 $out/baseq3/xcsv_bq3hi-res.pk3
install -Dm444 ${finalAttrs.extra-pack-resolution} $out/baseq3/pak9hqq37test20181106.pk3
bsdunzip ${finalAttrs.hd-weapons}
install -Dm444 zzczhdwr1.pk3 $out/baseq3/zzczhdwr1.pk3
# https://github.com/diegoulloao/ioquake3-mac-install takes only the first file, following his lead for now
# install -Dm444 zzczhdwr2.pk3 $out/baseq3/zzczhdwr2.pk3
# install -Dm444 zzczhdwr3.pk3 $out/baseq3/zzczhdwr3.pk3
install -Dm444 ${finalAttrs.ioquake3_mac}/extras/quake3-live-sounds.pk3 $out/baseq3/quake3-live-sounds.pk3
install -Dm444 ${finalAttrs.ioquake3_mac}/extras/zpack-weapons.pk3 $out/baseq3/zpack-weapons.pk3
'';
preferLocalBuild = true;
meta = with lib; {
description = "Quake 3 high-resolution textures";
license = licenses.cc0;
platforms = platforms.all;
maintainers = with maintainers; [ rvolosatovs ];
};
})
@@ -0,0 +1,34 @@
{
lib,
stdenv,
fetchurl,
}:
let
version = "1.32b-3";
in
stdenv.mkDerivation {
pname = "quake3-pointrelease";
inherit version;
src = fetchurl {
url = "https://ftp.gwdg.de/pub/misc/ftp.idsoftware.com/idstuff/quake3/linux/linuxq3apoint-${version}.x86.run";
sha256 = "11piyksfqyxwl9mpgbc71w9sacsh4d3cdsgia0cy0dbbap2k4qf3";
};
buildCommand = ''
sh $src --tar xf
mkdir -p $out/baseq3
cp baseq3/*.pk3 $out/baseq3
'';
preferLocalBuild = true;
meta = with lib; {
description = "Quake 3 Arena point release";
license = licenses.unfreeRedistributable;
platforms = platforms.all;
maintainers = [ ];
};
}