From f6f16b8b98aaa7649b435e8d15599b68f7a1aea5 Mon Sep 17 00:00:00 2001 From: Marie Ramlow Date: Mon, 9 Jun 2025 14:58:58 +0200 Subject: [PATCH] peacock: init at 8.3.0 --- pkgs/by-name/pe/peacock/missing-hashes.json | 52 ++++++++++++ pkgs/by-name/pe/peacock/package.nix | 91 +++++++++++++++++++++ 2 files changed, 143 insertions(+) create mode 100644 pkgs/by-name/pe/peacock/missing-hashes.json create mode 100644 pkgs/by-name/pe/peacock/package.nix diff --git a/pkgs/by-name/pe/peacock/missing-hashes.json b/pkgs/by-name/pe/peacock/missing-hashes.json new file mode 100644 index 000000000000..7bf27a804eda --- /dev/null +++ b/pkgs/by-name/pe/peacock/missing-hashes.json @@ -0,0 +1,52 @@ +{ + "@esbuild/aix-ppc64@npm:0.25.0": "f9a1263789c799c54255f102aa7e5eb92ff2938e5f1e28d7270ae9388d7f0b07a89c6928201089e9917da3531c3370675cbdf3ee213dbb46c219168826dcbf07", + "@esbuild/android-arm64@npm:0.25.0": "b935e4909cfecaf6166268edb337ac481eb79760230efe9893d09dfffc242915307edc890220ff1fe6378f9a6dc88043971a8282929e21ee92d5bb32d1ff33ad", + "@esbuild/android-arm@npm:0.25.0": "109a800ac79c78770cbc5f76c6ba8d2c3a3324c408748016429b5c8aad211463e33d8c0ed7a740f55d8df7a1bac4e78bc5029521f07e740731b7564c688c2206", + "@esbuild/android-x64@npm:0.25.0": "033e21f87df0b0a50b6f54de5ba2dc20c232f008fc62c377c8a359dc27c6d96eaaf57fab8c87c829e36fb49249811bcb0dfb0df958fc2cd1a2311fe443db7a2c", + "@esbuild/darwin-arm64@npm:0.25.0": "d82d5f8b724a77ee7d65b7d47159930015135c7fb0fc7dc3ad056203bb97a1a933f516fd91f0213420a80c0a9ddfec954c952c554edf00629d9bc964313a3836", + "@esbuild/darwin-x64@npm:0.25.0": "ae029503666bfa48c6cbcbc991ac9d841e1f03f056f71782b78e57ac4083022eb505deab330651ee05deab76688cf3139bdbea84caea6491fcaf5caa2b912946", + "@esbuild/freebsd-arm64@npm:0.25.0": "9f72aaa0c1845f3ada5a6a1cffa43c7683c25313455aa997ca8b233316a87d163722d8c26a0e86663c5ebbdca6ab91cf1975f0c0e7fbe062087cbef92c666b04", + "@esbuild/freebsd-x64@npm:0.25.0": "b96749a6d7da71fff98309655eb85b09de84416ae5c09a02e803342bba25c81e0ac181212bac49fa8d8cc28bfa5e1fbb8d349f2b4722e2ca2df2e4a383d17935", + "@esbuild/linux-arm64@npm:0.25.0": "1dbf78595fed87287eccde8fb9a5e35d448ab3b7cd84c03fdfa47c250701a62160d7aa45b4de9ca5e11039975680829644529636bbe254e1627836c5227efca2", + "@esbuild/linux-arm@npm:0.25.0": "b1a165678166d006b32f965cb51719403fdea18c9ec2e498807f0b273b46a3a555b214d5d5f832393471180e1d39ca9f06e7bfe3c2c97c0cbc30314a38b422c0", + "@esbuild/linux-ia32@npm:0.25.0": "21a136d8301fac7f23724061832426efddc2f9769b29b37e88443245ed0406f0b1f9bc05a02b6d0cf7b3e2e8ec2c8e1e8d99b3178a01ace6974369930f0020f6", + "@esbuild/linux-loong64@npm:0.25.0": "f87baa1534a52b24198d9d845821f37bec9c4afb08307ee66c3f1d223d3c684151749f4a0eeb96f3905d365bea9f6256787256ff35b9f80fdd51ed7d4f8356b6", + "@esbuild/linux-mips64el@npm:0.25.0": "2bfdec2d2730879795f6884d8f8a38a0297f0cd46bc3357c568fc59432d49d7e26c723d9b8111c799517628cafb469e30fa968387105079aa4b4b4d4192638bf", + "@esbuild/linux-ppc64@npm:0.25.0": "bca7b660b91939b5d9f4942b4f2e404efad88fa166c51ba49474b3b5ba200213e1c44499c419d2b13c5afe01b560f361b46d201acc146d76515b953be497bd4f", + "@esbuild/linux-riscv64@npm:0.25.0": "dfb00cd66f717315b9afab667a484c67a69a7a3f6bb9e4662cd3dd0b7465da3feb5182bca414ce0ad0f7a95d0a1fd248c792561c63008d483146eff8af6e678c", + "@esbuild/linux-s390x@npm:0.25.0": "4c5872f244ade04c71f1d0f14bd0d3ef0cd24c5404e55e33964fa5ce7b6f2e1283e9d9adb5356db76468cd85724f6cfdb1cd9674ad630344a7d01ca614bf59e3", + "@esbuild/linux-x64@npm:0.25.0": "22f6bfbb856653ee8cff0a93ce63947fd3bd4565c8bc7e9d437845fc4b44a2b3954b5e412b4aa4b63e62977beca12e0214b2607c7bc8c4ce359bd10118755df4", + "@esbuild/netbsd-arm64@npm:0.25.0": "a8286e8b687857779047d005d4a540a693a2e173893a34273773d0272e9908006e10085a52788f54775ca231ad231e8a7af9270dbd8203b9182dbe2c7fee68b6", + "@esbuild/netbsd-x64@npm:0.25.0": "e618540e5e086cabc260010e62110a8afb5b0dfc445e5cd6db843d8a7541403decee971265c5cf59e6f1268b03e8fb50e27b65f709faf647c4e20e0916f19621", + "@esbuild/openbsd-arm64@npm:0.25.0": "60cc4ce058e03389155dd34f777d4d5cae1fb62f9bb9659c615ce5d70e8093a58aa89a9ebb8fde4d2dba56e5771c6aaf4442db45f4a1c9d54d6c36a149b857d0", + "@esbuild/openbsd-x64@npm:0.25.0": "7ba16accc220c711d1bcbb17ada40de4503f9ed54b8a42957345a8a9b9a7c55eac550b234c6a5a812acf50386f2972fb6a5b0381b38f76cff4b3c44ba38ae1ac", + "@esbuild/sunos-x64@npm:0.25.0": "e6cbfb0a93b9f78ef991ff43af2ab33faacf382d9b8db44bf53a80b3fc27a9d0f598061b9a77de1db9481d69fd43a3fd4b20a40a2938923fa52cabdcac84e972", + "@esbuild/win32-arm64@npm:0.25.0": "47bd8e32c90da8472515ddc625e6284cf745b1b9eeecf16e2e699b94b3d11c2d773b16944c8de33d857a8e59426601063a3df04433cb670ed3e8421def07d96b", + "@esbuild/win32-ia32@npm:0.25.0": "072874686fe049446bba0ec18285414275ac74e8232307a856966ede8a822e72ab9f6119f7352f8feb51c629a20065dbc88f4412120480fe5bcc039dd439d0a7", + "@esbuild/win32-x64@npm:0.25.0": "ce021c1bb895345ee30f363d89e1f3631040fb44d2e27e614b65dc697090c30c5b66b80aa9d6e5e3b3153010b37e523d6ef34c7b4f2248192b1b4bdd30701b3f", + "@msgpackr-extract/msgpackr-extract-darwin-arm64@npm:3.0.2": "b46ad6990e54c55d47b12db146e3e293915b0f5621b9a0ddbe62e2d53b7415818b51ff137e65b58c1227fb35fa6a4820fc715814338d8529d40466f7f594b16c", + "@msgpackr-extract/msgpackr-extract-darwin-x64@npm:3.0.2": "6ede5ae1fe02ef9b5200e7f5afc2fdfdd1e099dd0294d6b7701cb5a6602d21a414fb22360e2909aea5879c56aee179df56dd9eb28329f6e74570dfb72780288b", + "@msgpackr-extract/msgpackr-extract-linux-arm64@npm:3.0.2": "ab083dc883c37b259c420875e7cd7b1386d0b37a83df89327ee9c341b144127e502f7b7e5800b682741dbbc93ded52d0fd839b65c1570dd5353e7856dd5abccb", + "@msgpackr-extract/msgpackr-extract-linux-arm@npm:3.0.2": "a65e847f6a53a74d5b91d10f8a575c43724a6b6530918ca8f71784ba763e1e0e2e2ce5f02a8709273d033a5a8b1361026adce08f69c0fcf778c3f1aae1aa9099", + "@msgpackr-extract/msgpackr-extract-linux-x64@npm:3.0.2": "d5af7600096b93294d5e2c8a75661979996e7d0a7eaddfa3fd45a1b41c54f2c4a21765f0852ce6ef28506309c1f19761310e345613edb2d74d5582a205e1514e", + "@msgpackr-extract/msgpackr-extract-win32-x64@npm:3.0.2": "10ab009b2032b638ad9c00c87b91af09e96d85991806bc73ae3bf5c956fe8172057515df4265b0d13e8b46bd5b74fff0682b5b513e3c2cf52bfac42268f6ab94", + "@rollup/rollup-android-arm-eabi@npm:4.35.0": "6608c59811f515fd3817c7b891d34ad042e9a3f4c0edd94fb8af839f17b1748eb5c27b7b12e2431406acd9d174abb60e8e520310d1a8add31046852651b96431", + "@rollup/rollup-android-arm64@npm:4.35.0": "51e6a45d4bd1048c7a6be7b4a091a9af063388f5731d455100a6e090ec6c84d44d927aa0bf8ea508a19f2f8343eaae319db06df0acfdb51eeb708d1a314ae611", + "@rollup/rollup-darwin-arm64@npm:4.35.0": "844a8ae0b0ab412fcc98979f0a91965a93fb60c5cce6edc7971792acf08d592fe42413eab0692ae1880dc118b669897a28c2896bfe0a9c272f1b481db662d71c", + "@rollup/rollup-darwin-x64@npm:4.35.0": "cbcd6d74096e9732db56444d79f4cc739ade75f4a4768e14b259829b2b2905b7e2e5c5811f6294632ae035e813b36a7ee9edf57f529449ae128ce7b4f83f6e80", + "@rollup/rollup-freebsd-arm64@npm:4.35.0": "0a29880358b751650db7ab294131572c3952288169d88919510ad7f1e7534cf2f46ea561c600fba27d89fff0cdabe5efb8c19cf6572d08bc0c126832d52d95d8", + "@rollup/rollup-freebsd-x64@npm:4.35.0": "fed915fc432c395645bbcbc9f2a88bae25c8e5ba4fb7f813e7d11c007954767ae8b78fcfc445d1c1f4f95d637745e27dcfe3acc710022d7c999c80da32f70fae", + "@rollup/rollup-linux-arm-gnueabihf@npm:4.35.0": "47336911b4c51a55c21a9197593acb8e7b578c9e30b4a4e446e6d4ea3aeedc4afca8d2dfa46002d076d4c456a43065eea89dcf863b80daa0b840f95717579a2f", + "@rollup/rollup-linux-arm-musleabihf@npm:4.35.0": "66cb126a20e735224c1caf23531f6d8a6e0f377e5be2ea4943c3043b8d0345eafecfa7d02a763b09c057ca682d4e43fdad8d79c62b3f366d1c4dbadad9758bfd", + "@rollup/rollup-linux-arm64-gnu@npm:4.35.0": "ad2cb0b631f3163709706d77d9ef111bc2bd2cefe9484b89ab00069a150df7d84ddfb3d0bec0e488363f8dcb0dacc1333533e5223ddf818af3d5da84201a1952", + "@rollup/rollup-linux-arm64-musl@npm:4.35.0": "c757a761365e717b2cc48b136d7ba1d0bb298ab475639dbe9393328354afde574248ee278ed66fd7715e72bd56b82f5a84e280dd5358d98736e6f6eaabad6509", + "@rollup/rollup-linux-loongarch64-gnu@npm:4.35.0": "44c1b076ebdea504f1bf64fe17770a1702e833fc84f1fb47a5263d03c965dbae3a18573c594fbacc1a618088dcba42f5dc004bd85c694e72317b84b8e76c0d26", + "@rollup/rollup-linux-powerpc64le-gnu@npm:4.35.0": "24cd93ccc079d4c5af42f06b3b7ce065056ec143720ccf54002e9539934863fda88771fdd62c6dc6388e6d35f15e5e562e372eda86a1a68232b33744e75b8917", + "@rollup/rollup-linux-riscv64-gnu@npm:4.35.0": "2ef06fd488795343cd8f91fb684679a08c5ecc2084e831335358e668d3ea02e121dca662cb8685f2ad16802b6c04eadb0891b1036e800eff1d4b3de258f7011c", + "@rollup/rollup-linux-s390x-gnu@npm:4.35.0": "37a11392d357debd1c9d3c03540028dc4d733e91e1f11525951fb76b572cadfadac821062436bf72100e4cea83e796d1d34c9331834d56cdae9b5fb1cf676ed7", + "@rollup/rollup-linux-x64-gnu@npm:4.35.0": "6406cd583d15a9b6862ed8baa70b90de271663127a9729456efec31b8647d882f3ed3ea5d630cfa46b7330e5795babfa090874feb5a832b9b0964eb01fba1e79", + "@rollup/rollup-linux-x64-musl@npm:4.35.0": "102d679f7347ec8986eb5ceb7eaed73f1948b53f8867ae90f2e60b0efa04acc462d6d7f32ee14c73194e965fca15edcb629bb323865f3ad7953695fcd2e7aaca", + "@rollup/rollup-win32-arm64-msvc@npm:4.35.0": "5344cd7bebdea17e5b8cd517e5ef590df7db23e1589d1bc1665839cb9fea82e331b69fd06859efad00544bf24a5b2af33e3f3f08e1c1a58322cddf52d5b3829a", + "@rollup/rollup-win32-ia32-msvc@npm:4.35.0": "30bd40356401961443c5e2a9c2e96d086d491e7cd956de34bd073a0cbcc8f3a4c87c4e29601b8b27ef1f7d3a13f89e4a59fd6458bd7ef43565b7ac72b2ff30b0", + "@rollup/rollup-win32-x64-msvc@npm:4.35.0": "c684bf21414814a3f7d451be07c1716fc85bf340bcc87eb37ed3f5ea0adbef869af533392971fdc44c932de8b43b9161237cd093a47e233caf66c7be76f54a9d" +} diff --git a/pkgs/by-name/pe/peacock/package.nix b/pkgs/by-name/pe/peacock/package.nix new file mode 100644 index 000000000000..01f9fb1213a3 --- /dev/null +++ b/pkgs/by-name/pe/peacock/package.nix @@ -0,0 +1,91 @@ +{ + lib, + fetchFromGitHub, + stdenv, + nodejs, + yarn-berry_4, + makeWrapper, +}: + +let + yarn-berry = yarn-berry_4; +in + +stdenv.mkDerivation (finalAttrs: { + pname = "peacock"; + version = "8.3.0"; + + src = fetchFromGitHub { + owner = "thepeacockproject"; + repo = "Peacock"; + tag = "v${finalAttrs.version}"; + hash = "sha256-AegJ5h2sxs8iheBLbIBwZXjjZLk5GdcDVLbF4ldcmZ0="; + }; + + nativeBuildInputs = [ + nodejs + yarn-berry.yarnBerryConfigHook + yarn-berry + makeWrapper + ]; + + buildPhase = '' + runHook preBuild + + yarn build + yarn optimize + + runHook postBuild + ''; + + installPhase = '' + runHook preInstall + + node chunk0.js noop + + # Keep more or less in sync with https://github.com/thepeacockproject/Peacock/blob/master/packaging/ciAssemble.sh + # Not all output files are required. + + OUT_DIR="$out/share/peacock" + mkdir -p "$OUT_DIR" "$out/bin" + + cp packaging/HOW_TO_USE.html "$OUT_DIR" + cp chunk*.js "$OUT_DIR" + + mkdir "$OUT_DIR"/resources + cp resources/dynamic_resources_h3.rpkg "$OUT_DIR"/resources/dynamic_resources_h3.rpkg + cp resources/dynamic_resources_h2.rpkg "$OUT_DIR"/resources/dynamic_resources_h2.rpkg + cp resources/dynamic_resources_h1.rpkg "$OUT_DIR"/resources/dynamic_resources_h1.rpkg + + cp -r resources/challenges "$OUT_DIR"/resources/challenges + cp -r resources/mastery "$OUT_DIR"/resources/mastery + cp resources/contracts.prp "$OUT_DIR"/resources/contracts.prp + mkdir "$OUT_DIR"/webui + mkdir "$OUT_DIR"/webui/dist + cp webui/dist/*.html "$OUT_DIR"/webui/dist + cp -r webui/dist/assets "$OUT_DIR"/webui/dist/assets + cp webui/dist/THIRDPARTYNOTICES.txt "$OUT_DIR"/webui/dist/THIRDPARTYNOTICES.txt + cp options.ini "$OUT_DIR" + + makeWrapper ${lib.getExe nodejs} "$out/bin/peacock" \ + --add-flags "$OUT_DIR/chunk0.js" + + runHook postInstall + ''; + + missingHashes = ./missing-hashes.json; + offlineCache = yarn-berry.fetchYarnBerryDeps { + inherit (finalAttrs) src missingHashes; + hash = "sha256-sB0oag0sheimho8pn25HSc8GMeuS1RTmHLZUPiSSDqE="; + }; + + meta = { + description = "Server replacement for the HITMAN™ World of Assassination trilogy"; + homepage = "https://thepeacockproject.org/"; + changelog = "https://github.com/thepeacockproject/Peacock/releases/tag/${finalAttrs.src.tag}"; + license = lib.licenses.agpl3Only; + maintainers = with lib.maintainers; [ marie ]; + mainProgram = "peacock"; + platforms = lib.platforms.linux; + }; +})