Skip to content

Commit

Permalink
Run a Hydra server
Browse files Browse the repository at this point in the history
The test suites for gbenchmark, hypothesis, libopus, sh, and tornado
time out.

httplib2's test suite indirectly depends on selenium, which doesn't
build on RISC-V.
SeleniumHQ/selenium#13194

The other disabled test suites fail for various cryptic reasons.
  • Loading branch information
AlexandreTunstall committed Apr 24, 2024
1 parent df3a550 commit 357cfa4
Show file tree
Hide file tree
Showing 2 changed files with 55 additions and 0 deletions.
29 changes: 29 additions & 0 deletions modules/services/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,37 @@
{
services.getty.autologinUser = "root";

services.hydra = {
enable = true;
hydraURL = "http://hydra.riscv.tunstall.xyz/";
notificationSender = "unused@localhost";
extraConfig = ''
# NixOS Hydra bans IFD therefore so shall we
allow_import_from_derivation = false
# Limit the evaluator memory usage a bit
evaluator_workers = 1
evaluator_max_memory_size = 1024
max_concurrent_evals = 1
'';
};

services.nginx = {
enable = true;
recommendedGzipSettings = true;
recommendedOptimisation = true;
recommendedProxySettings = true;
recommendedTlsSettings = true;

virtualHosts."hydra.riscv.tunstall.xyz" = {
locations."/".proxyPass = "http://localhost:3000/";
};
};

services.openssh = {
enable = true;
settings.PermitRootLogin = "yes";
};

networking.firewall.allowedTCPPorts = [ 80 ];
}
26 changes: 26 additions & 0 deletions overlays/riscv-fixes.nix
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,17 @@ in {
NIX_CFLAGS_COMPILE = "${NIX_CFLAGS_COMPILE} -Wno-error=cast-align";
});

folly = super.folly.overrideAttrs ({ meta ? {}, ... }: {
meta = meta // {
platforms = (meta.platforms or []) ++ [ "riscv64-linux" ];
};
});

gbenchmark = dontCheck super.gbenchmark;

# The default gn does not recognise RISC-V
gn = self.gn1924;

haskell = super.haskell // {
packages = super.haskell.packages // {
ghc964 = super.haskell.packages.ghc964.override {
Expand All @@ -27,7 +38,10 @@ in {
};
};

hydra_unstable = dontCheck super.hydra_unstable;

libbsd = dontCheck super.libbsd;
libopus = dontCheck super.libopus;
libuv = dontCheck super.libuv;

# Fails in ./configure when LuaJIT isn't available
Expand All @@ -38,12 +52,24 @@ in {
'';
});

perlPackages = super.perlPackages.overrideScope (plSelf: plSuper: {
Test2Harness = dontCheck plSuper.Test2Harness;
UUID4Tiny = dontCheck plSuper.UUID4Tiny;
});

pixman = dontCheck super.pixman;
protobuf = dontCheck super.protobuf;

pythonPackagesExtensions = super.pythonPackagesExtensions ++ [
(pySelf: pySuper: {
executing = pyDontCheck pySuper.executing;
httplib2 = pyDontCheck pySuper.httplib2;
hypothesis = pyDontCheck pySuper.hypothesis;
numpy = pyDontCheck pySuper.numpy;
paramiko = pyDontCheck pySuper.paramiko;
sh = pyDontCheck pySuper.sh;
sphinx = pyDontCheck pySuper.sphinx;
tornado = pyDontCheck pySuper.tornado;
})
];
}

0 comments on commit 357cfa4

Please sign in to comment.