bump nimbus-build-system to use Nim v2.0.10 (#6592)

* bump nimbus-build-system to use Nim v2.0.10

* fix `CatchableError` leak on Windows

* define ERROR_INVALID_ACCESS

* trigger finding correct hashes for nix build

* check checksums checksum

* update nix nimble checksum

* csources didn't change
This commit is contained in:
tersec 2024-10-03 15:13:44 +00:00 committed by GitHub
parent 1258fd3592
commit eb30b741d9
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
7 changed files with 30 additions and 9 deletions

View File

@ -47,6 +47,7 @@ when defined(windows):
SERVICE_CONTROL_INTERROGATE = 4 SERVICE_CONTROL_INTERROGATE = 4
SERVICE_ACCEPT_STOP = 1 SERVICE_ACCEPT_STOP = 1
ERROR_INVALID_PARAMETER = 87 ERROR_INVALID_PARAMETER = 87
ERROR_INVALID_ACCESS = 12
ERROR_BAD_CONFIGURATION = 1610 ERROR_BAD_CONFIGURATION = 1610
NO_ERROR = 0 NO_ERROR = 0
@ -155,11 +156,15 @@ when defined(windows):
reportServiceStatus(SERVICE_STOPPED, ERROR_BAD_CONFIGURATION, 0) reportServiceStatus(SERVICE_STOPPED, ERROR_BAD_CONFIGURATION, 0)
quit QuitFailure quit QuitFailure
argEntryPoint(config) try:
argEntryPoint(config)
info "Service thread stopped" info "Service thread stopped"
reportServiceStatus(SERVICE_STOPPED, NO_ERROR, 0)
# we have to report back when we stopped! # we have to report back when we stopped!
reportServiceStatus(SERVICE_STOPPED, NO_ERROR, 0)
except CatchableError:
info "Service thread crashed"
# we have to report back when we stopped!
reportServiceStatus(SERVICE_STOPPED, ERROR_INVALID_ACCESS, 0)
let serviceName = newWideCString(argServiceName) let serviceName = newWideCString(argServiceName)

View File

@ -8,5 +8,5 @@ in pkgs.fetchFromGitHub {
repo = "checksums"; repo = "checksums";
rev = tools.findKeyValue "^ +ChecksumsStableCommit = \"([a-f0-9]+)\"$" sourceFile; rev = tools.findKeyValue "^ +ChecksumsStableCommit = \"([a-f0-9]+)\"$" sourceFile;
# WARNING: Requires manual updates when Nim compiler version changes. # WARNING: Requires manual updates when Nim compiler version changes.
hash = "sha256-RB2IXs2xcfYHhV9d7l1mtHW51mtsrqrYRapSoTikvHw="; hash = "sha256-Bm5iJoT2kAvcTexiLMFBa9oU5gf7d4rWjo3OiN7obWQ=";
} }

View File

@ -59,10 +59,13 @@ in stdenv.mkDerivation rec {
pushd vendor/nimbus-build-system/vendor/Nim pushd vendor/nimbus-build-system/vendor/Nim
mkdir dist mkdir dist
cp -r ${callPackage ./nimble.nix {}} dist/nimble cp -r ${callPackage ./nimble.nix {}} dist/nimble
cp -r ${callPackage ./checksums.nix {}} dist/checksums chmod 777 -R dist/nimble
mkdir -p dist/nimble/dist
cp -r ${callPackage ./sat.nix {}} dist/nimble/dist/sat
cp -r ${callPackage ./checksums.nix {}} dist/checksums # need both
cp -r ${callPackage ./checksums.nix {}} dist/nimble/dist/checksums
cp -r ${callPackage ./csources.nix {}} csources_v2 cp -r ${callPackage ./csources.nix {}} csources_v2
chmod 777 -R dist/nimble csources_v2 chmod 777 -R dist/nimble csources_v2
sed -i 's/isGitRepo(destDir)/false/' tools/deps.nim
popd popd
''; '';

View File

@ -8,5 +8,5 @@ in pkgs.fetchFromGitHub {
repo = "nimble"; repo = "nimble";
rev = tools.findKeyValue "^ +NimbleStableCommit = \"([a-f0-9]+)\".+" sourceFile; rev = tools.findKeyValue "^ +NimbleStableCommit = \"([a-f0-9]+)\".+" sourceFile;
# WARNING: Requires manual updates when Nim compiler version changes. # WARNING: Requires manual updates when Nim compiler version changes.
hash = "sha256-qJcDKnc+9iUvYrZCMUbBbws+Qqa9vmWyCRsvOUEmq8U="; hash = "sha256-sa0irAZjQRZLduEMBPf7sHlY1FigBJTR/vIH4ihii/w=";
} }

12
nix/sat.nix Normal file
View File

@ -0,0 +1,12 @@
{ pkgs ? import <nixpkgs> { } }:
let
tools = pkgs.callPackage ./tools.nix {};
sourceFile = ../vendor/nimbus-build-system/vendor/Nim/koch.nim;
in pkgs.fetchFromGitHub {
owner = "nim-lang";
repo = "sat";
rev = tools.findKeyValue "^ +SatStableCommit = \"([a-f0-9]+)\"$" sourceFile;
# WARNING: Requires manual updates when Nim compiler version changes.
hash = "sha256-JFrrSV+mehG0gP7NiQ8hYthL0cjh44HNbXfuxQNhq7c=";
}

View File

@ -22,6 +22,7 @@ in pkgs.mkShell {
lsof # for killing processes by port lsof # for killing processes by port
killall # for killing processes manually killall # for killing processes manually
curl # for working with the node APIs curl # for working with the node APIs
jq # for parsing beacon API for LC start
openjdk # for running web3signer openjdk # for running web3signer
mkdocs-python mkdocs-python

@ -1 +1 @@
Subproject commit 741274439ce72162ab3c740e7c0ef624d32725f9 Subproject commit c3241765e3896a06ed372dddc9dd6e3c36fae8f6