From 1bca5f184ccdfdcecc67f71af52b391e4ecbf059 Mon Sep 17 00:00:00 2001 From: thomasjm Date: Wed, 2 Sep 2026 03:05:17 -0700 Subject: [PATCH 1/2] Bump nixpkgs to e7215ec and drop the vendored gophernotes fork --- default.nix | 6 +++--- flake.lock | 6 +++--- modules/kernels/go/kernel.nix | 14 ++------------ 3 files changed, 8 insertions(+), 18 deletions(-) diff --git a/default.nix b/default.nix index b4ca712..8642595 100644 --- a/default.nix +++ b/default.nix @@ -6,16 +6,16 @@ }: let - stableRev = "ca23145d9899c9d4b7f035339e2f21cf3106aa79"; # nixpkgs-rev + stableRev = "e7215ec9581d62b85a3b1b870cd40cc353a06816"; # nixpkgs-rev stableFetchFromGitHub = fetchFromGitHub { owner = "NixOS"; repo = "nixpkgs"; rev = stableRev; - hash = "sha256-UxFzpSVQ7zZdd9bPc/sgCkbtSMwJkAKi82tas5FXgFI="; # nixpkgs-hash + hash = "sha256-/PS45tTr/AN2x7rjT/fj1Scc5Fz0WjePt9davTICV8E="; # nixpkgs-hash }; stableBuiltins = builtins.fetchTarball { url = ''https://github.com/NixOS/nixpkgs/archive/${stableRev}.tar.gz''; - sha256 = "0ll0ay8v6nkbyfi05409ri4fsiha43xp7kynfxfkdvsh4njp64ak"; # nixpkgs-sha256 + sha256 = "1hap08rbsnnpny7kfnplbkj1q9ymwgvlzqxsqxv07z7bskkbix7w"; # nixpkgs-sha256 }; pkgsStableSrc = if fetchFromGitHub != null then stableFetchFromGitHub else stableBuiltins; pkgsStable = import pkgsStableSrc ({ diff --git a/flake.lock b/flake.lock index 2d6191e..0ec1bfd 100644 --- a/flake.lock +++ b/flake.lock @@ -17,11 +17,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1787993413, - "narHash": "sha256-UxFzpSVQ7zZdd9bPc/sgCkbtSMwJkAKi82tas5FXgFI=", + "lastModified": 1788341762, + "narHash": "sha256-/PS45tTr/AN2x7rjT/fj1Scc5Fz0WjePt9davTICV8E=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "ca23145d9899c9d4b7f035339e2f21cf3106aa79", + "rev": "e7215ec9581d62b85a3b1b870cd40cc353a06816", "type": "github" }, "original": { diff --git a/modules/kernels/go/kernel.nix b/modules/kernels/go/kernel.nix index 7997d79..5c4fad1 100644 --- a/modules/kernels/go/kernel.nix +++ b/modules/kernels/go/kernel.nix @@ -1,6 +1,5 @@ { lib , callPackage -, fetchFromGitHub , gophernotes , attrs @@ -13,23 +12,14 @@ with lib; let common = callPackage ../common.nix {}; - gophernotesPatched = gophernotes.overrideAttrs (_oldAttrs: { - src = fetchFromGitHub { - owner = "codedownio"; - repo = "gophernotes"; - rev = "6b18077f97aa913b73093beeb2152b2d51ee64af"; - hash = "sha256-gSD2zUWka3cur5jkv4siYp2gJdxD+00bmJi6BZd0c+c="; # nixpkgs-hash - }; - - vendorHash = "sha256-bGaXnd0E6dRNiwvGIn7Ptddrt7dRzPfkPThgHPuL2Vo="; - + gophernotes' = gophernotes.overrideAttrs (_oldAttrs: { # The upstream tests give the kernel a fixed retry budget to come up on a ZMQ port, which # isn't long enough on an emulated or loaded builder. The go suite covers the kernel anyway. doCheck = false; }); argv = [ - "${gophernotesPatched}/bin/gophernotes" + "${gophernotes'}/bin/gophernotes" "{connection_file}" ]; From ff743eed1b44459c6684a080eeb26a490d3edd43 Mon Sep 17 00:00:00 2001 From: thomasjm Date: Wed, 2 Sep 2026 14:07:32 -0700 Subject: [PATCH 2/2] Only disable gophernotes' checks on aarch64-linux, so other platforms stay cacheable --- modules/kernels/go/kernel.nix | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/modules/kernels/go/kernel.nix b/modules/kernels/go/kernel.nix index 5c4fad1..4a9293d 100644 --- a/modules/kernels/go/kernel.nix +++ b/modules/kernels/go/kernel.nix @@ -1,5 +1,6 @@ { lib , callPackage +, stdenv , gophernotes , attrs @@ -12,11 +13,13 @@ with lib; let common = callPackage ../common.nix {}; - gophernotes' = gophernotes.overrideAttrs (_oldAttrs: { - # The upstream tests give the kernel a fixed retry budget to come up on a ZMQ port, which - # isn't long enough on an emulated or loaded builder. The go suite covers the kernel anyway. - doCheck = false; - }); + # The upstream tests give the kernel a fixed one second to come up on a ZMQ port, which isn't + # long enough under the QEMU emulation our aarch64-linux builds run in; the connect fails with + # ECONNREFUSED. Everywhere else leave the derivation exactly as nixpkgs ships it, so it can be + # substituted from cache.nixos.org rather than rebuilt. The go suite covers the kernel anyway. + gophernotes' = if stdenv.hostPlatform.system == "aarch64-linux" + then gophernotes.overrideAttrs (_oldAttrs: { doCheck = false; }) + else gophernotes; argv = [ "${gophernotes'}/bin/gophernotes"