nixpkgs: 2025-01-28 -> 2025-02-07

This commit is contained in:
2025-02-08 11:52:44 +00:00
parent f6cddfb7e8
commit 77f62d247f
12 changed files with 93 additions and 66 deletions

View File

@@ -253,7 +253,7 @@ in
"endless-sky" # space merchantilism/exploration
# "factorio"
# "frozen-bubble" # WAN + LAN + 1P/2P bubble bobble
"hase" # WAN worms game
# "hase" # WAN worms game
# "hedgewars" # WAN + LAN worms game (5~10 people online at any moment; <https://hedgewars.org>)
# "libremines" # meh: trivial minesweeper; qt6
# "mario0" # SMB + portal

View File

@@ -7,7 +7,7 @@ in
packageUnwrapped = pkgs.bunpen.overrideAttrs (base: {
# create a directory which holds just the `bunpen` so that we
# can add bunpen as a dependency to binaries via `PATH=/run/current-system/libexec/bunpen` without forcing rebuild every time bunpen changes
postInstall = ''
postInstall = (base.postInstall or "") + ''
mkdir -p $out/libexec/bunpen
ln -s $out/bin/bunpen $out/libexec/bunpen/bunpen
'';

View File

@@ -17,6 +17,7 @@ in
sane.programs.marksman.enableFor = { system = false; user.colin = false; }; # markdown neovim LSP: cross compiles, but the result is a x86 .NET exe (2025-01-05)
sane.programs.mercurial.enableFor.user.colin = false; #< does not cross compile (2025-01-05; unblocked)
sane.programs.nix-tree.enableFor = { system = false; user.colin = false; }; #< does not cross compile (2025-01-05; blocked by vty)
sane.programs.pyright.enableFor = { system = false; user.colin = false; }; # python neovim LSP: doesn't cross compile (2025-01-05; unblocked)
sane.programs.pyright.enableFor = { system = false; user.colin = false; }; #< python neovim LSP: doesn't cross compile (2025-01-05; unblocked)
sane.programs.vulkan-tools.enableFor = { system = false; user.colin = false; }; #< does not cross compile (2025-02-08)
};
}

View File

@@ -422,7 +422,8 @@ let
passthru = (prevAttrs.passthru or {}) // extraPassthru // {
checkSandboxed = runCommand "${pkgName}-check-sandboxed" {
preferLocalBuild = true;
nativeBuildInputs = [ bunpen file gnugrep ];
depsBuildBuild = [ bunpen ];
nativeBuildInputs = [ file gnugrep ];
buildInputs = builtins.map (out: finalAttrs.finalPackage."${out}") (finalAttrs.outputs or [ "out" ]);
} ''
# invoke each binary in a way only the sandbox wrapper will recognize,

View File

@@ -330,6 +330,21 @@ in with final; {
];
};
# 2025/02/08: upstreaming is unblocked
flatpak = prev.flatpak.overrideAttrs (upstream: {
outputs = lib.remove "devdoc" upstream.outputs;
depsBuildBuild = (upstream.depsBuildBuild or []) ++ [
pkgsBuildBuild.pkg-config
];
nativeBuildInputs = upstream.nativeBuildInputs ++ [
gtk-doc
pkgsBuildHost.wayland-scanner
];
mesonFlags = upstream.mesonFlags ++ [
"-Dgtkdoc=disabled"
];
});
# 2025/01/13: upstreaming is blocked by glycin-loaders
fractal = prev.fractal.override {
cargo = crossCargo;

View File

@@ -1,7 +1,25 @@
# personal preferences
# prefer to encode these in `sane.programs`
# resort to this method for e.g. system dependencies, or things which are referenced from too many places.
(self: super: with self; {
(self: super:
with self;
let
# XXX(2025-02-08): `nix-build -A hosts.desko.pkgs.bunpen` FAILS (`nix-build -A pkgs.bunpen`, meanwhile, PASSES!)
# this is some weird cross thing, where `pkgs.gnu64.stdenv` != `hosts.desko.pkgs.gnu64.stdenv`,
# and this impacts hare because hare forces cross compilation always.
#
# the patch here ASSUMES THE BUILD MACHINE IS x86, and it works by forcing cc/bintools to be built as native packages, not gnu64 cross packages.
# TODO: this is a hack and can hopefully be someday removed!
x86_64PkgsCrossToolchain = pkgs.pkgsBuildBuild;
hare = pkgs.pkgsBuildTarget.hare.override {
inherit x86_64PkgsCrossToolchain;
};
crossHareHook = pkgs.hareHook.override {
inherit hare;
};
in
{
# DISABLE HDCP BLOB in pinephone pro.
# this is used by u-boot; requires redeploying the bootloader (the SPL, specifically).
# i can see that nixpkgs does process this option, but the hash of bl31.elf doesn't actually change
@@ -16,10 +34,17 @@
# };
# };
bonsai = super.bonsai.override {
hareHook = crossHareHook;
};
bunpen = super.bunpen.override {
hareHook = crossHareHook;
};
# XXX(2024-12-26): prefer pre-built electron because otherwise it takes 4 hrs to build from source.
# but wait 2 days after staging -> master merge, and normal electron should be cached and safe to remove
# electron = electron-bin;
electron_33 = electron_33-bin;
# electron_33 = electron_33-bin;
# evolution-data-server = super.evolution-data-server.override {
# # OAuth depends on webkitgtk_4_1: old, forces an annoying recompilation
@@ -66,59 +91,37 @@
# samba = null;
# };
# XXX(2024-12-29): avoid temporary pysaml2 build failure; optional SSO feature which i probably don't even have enabled on my matrix
# see: <https://github.com/NixOS/nixpkgs/issues/367976>
matrix-synapse-unwrapped = super.matrix-synapse-unwrapped.overridePythonAttrs (upstream: {
# nativeCheckInputs = lib.remove python3.pkgs.pysaml2 upstream.nativeCheckInputs;
nativeCheckInputs = lib.subtractLists upstream.optional-dependencies.saml2 upstream.nativeCheckInputs;
# `tests.storage.databases.main.test_events_worker.DatabaseOutageTestCase.test_recovery` is failing,
# apparently independent of pysaml2. can't find how to disable that except by disabling ALL tests.
doCheck = false;
# env.NIX_BUILD_CORES = 1;
# disabledTests = [
# "tests.storage.databases.main.test_events_worker.DatabaseOutageTestCase.test_recovery"
# "storage.databases.main.test_events_worker.DatabaseOutageTestCase.test_recovery"
# "databases.main.test_events_worker.DatabaseOutageTestCase.test_recovery"
# "main.test_events_worker.DatabaseOutageTestCase.test_recovery"
# "test_events_worker.DatabaseOutageTestCase.test_recovery"
# "DatabaseOutageTestCase.test_recovery"
# "test_recovery"
# "tests.storage.databases.main.test_events_worker.DatabaseOutageTestCase"
# "storage.databases.main.test_events_worker.DatabaseOutageTestCase"
# "databases.main.test_events_worker.DatabaseOutageTestCase"
# "main.test_events_worker.DatabaseOutageTestCase"
# "test_events_worker.DatabaseOutageTestCase"
# "DatabaseOutageTestCase"
# "tests.storage.databases.main.test_events_worker"
# "storage.databases.main.test_events_worker"
# "databases.main.test_events_worker"
# "main.test_events_worker"
# "test_events_worker"
# "tests.storage.databases"
# "storage.databases"
# "databases"
# ];
# disabledTestPaths = [
# "tests/storage/databases/main/test_events_worker.py"
# "storage/databases/main/test_events_worker.py"
# "databases/main/test_events_worker.py"
# "main/test_events_worker.py"
# "test_events_worker.py"
# ];
haredoc = super.haredoc.override {
hareHook = crossHareHook;
};
hareThirdParty = super.hareThirdParty.overrideScope (sself: ssuper: {
hare-ev = (ssuper.hare-ev.override {
hareHook = crossHareHook;
}).overrideAttrs { doCheck = false; };
hare-json = (ssuper.hare-json.override {
hareHook = crossHareHook;
}).overrideAttrs { doCheck = false; };
});
# hare = pkgsBuildTarget.hare.override {
# x86_64PkgsCrossToolchain = super.pkgsBuildBuild;
# };
# hareHook = super.hareHook.override {
# hare = pkgsBuildTarget.hare.override {
# x86_64PkgsCrossToolchain = pkgsBuildBuild;
# };
# };
# phog = super.phog.override {
# # disable squeekboard because it takes 20 minutes to compile when emulated
# squeekboard = null;
# };
rsyslog = super.rsyslog.override {
# XXX(2024-07-28): required for cross compilation
withGcrypt = false;
};
# rsyslog = super.rsyslog.override {
# # XXX(2024-07-28): required for cross compilation
# withGcrypt = false;
# };
# swaynotificationcenter = super.swaynotificationcenter.override {
# gvfs = gvfs.override {

View File

@@ -13,13 +13,13 @@ let
self = stdenv.mkDerivation
{
pname = "euicc-manual";
version = "0-unstable-2025-01-05";
version = "0-unstable-2025-02-04";
# XXX: their gitea downloads are broken, so use fetchgit
src = fetchgit {
url = "https://gitea.osmocom.org/sim-card/euicc-manual";
rev = "da6fdfcf2a8b54973a1c43f17b3f3194789d07f3";
hash = "sha256-FEQztINgafXo2RWnWeV4A8iFs5nmpt3LsTXEiKE8ajU=";
rev = "4f0e8a3e6ac7faeff1274c74a674b32911825643";
hash = "sha256-Rm2csSvWj20KHmtNeAnWYxm5kTZsRvRU+bzbZGw2k2Y=";
};
nativeBuildInputs = [

View File

@@ -8,8 +8,8 @@
mkNixpkgs ? import ./mkNixpkgs.nix {}
}:
mkNixpkgs {
rev = "ac24885fb5e9b15729a5fa78f14cfe159e5a86ec";
sha256 = "sha256-1VeCNga84owW5OVFNTUM5pYAluXyKntwC3HNe2zgzvg=";
version = "0-unstable-2025-01-28";
rev = "e6af9ae5f57c822138873482a2c23f24dc399906";
sha256 = "sha256-OX5e6ktRV5apeO3dBEsLMEQfc9Qc57DQXagqbbOBEjk=";
version = "0-unstable-2025-02-07";
branch = "master";
}

View File

@@ -46,6 +46,13 @@ in
# hash = "sha256-jW66W1V3upZMfbjuoruY3OGNJfEewx7DW/Z4vAhMEXw=";
# })
(fetchpatch' {
# XXX(2025-02-08): required for coturn (servo) to build
name = "coturn: ignore broken symlinks";
prUrl = "https://github.com/NixOS/nixpkgs/pull/379889";
hash = "sha256-Sm3uZ3ooRBCh7eYW7BHuzS0XD6tZTUllgLROZflUiZs=";
})
(fetchpatch' {
# patch should be safe to remove; keeping it here to track the upstreaming status
name = "nixos/gitea: don't configure the database if `createDatabase == false`";

View File

@@ -2,8 +2,8 @@
mkNixpkgs ? import ./mkNixpkgs.nix {}
}:
mkNixpkgs {
rev = "b6f676fbd2c31ad426f9ef245edf840019313d20";
sha256 = "sha256-JKDQb6jzpA8g5Mh7ZjKOUbDcgVkuYtgscXZzx1Zpu4s=";
version = "0-unstable-2025-01-27";
rev = "6793b353338d2bfd6a95bef48e4bc78f6dc24436";
sha256 = "sha256-OqJKH1Rnbb/nO9ISlfDl47G1vvolHK1KiOcwhxAZ+7A=";
version = "0-unstable-2025-02-07";
branch = "staging-next";
}

View File

@@ -2,8 +2,8 @@
mkNixpkgs ? import ./mkNixpkgs.nix {}
}:
mkNixpkgs {
rev = "66a80f5e4c914603d4849bd87aaff5d507d74f39";
sha256 = "sha256-3XArw9NnbZrpmN3CD6krkPlwsaXThmZ8WefGyQ0ZcHw=";
version = "0-unstable-2025-01-25";
rev = "746797476c9e43c348bc0b8d2bafa4c65b74e7c4";
sha256 = "sha256-0eXqAsNHngVQbXgXE7Fpuo3m2fL9u4zZlWkMhNsdhz0=";
version = "0-unstable-2025-02-07";
branch = "staging";
}

View File

@@ -92,7 +92,7 @@
buildNpmPackage,
buildPackages,
cups,
electron-bin,
electron_33-bin,
fetchFromGitHub,
fetchurl,
flac,
@@ -169,7 +169,7 @@ let
# prefer to use the same electron version as everywhere else, and a `-bin` version to avoid 4hr rebuilds.
# the non-bin varieties *seem* to ship the wrong `electron.headers` property.
# - maybe they can work if i manually DL and ship the corresponding headers
electron' = electron-bin;
electron' = electron_33-bin;
buildNpmArch = if stdenv.buildPlatform.isAarch64 then "arm64" else "x64";
hostNpmArch = if stdenv.hostPlatform.isAarch64 then "arm64" else "x64";