Compare commits
8 commits
jade/lix-u
...
main
Author | SHA1 | Date | |
---|---|---|---|
raito | 5aeb620a66 | ||
raito | 8e72e4585e | ||
raito | 852d0c107b | ||
Linus Heckemann | fe3e4a50fb | ||
jade | c1f9e26c06 | ||
jade | 227e8a381a | ||
jade | 4ae36d6b79 | ||
raito | 7248adf458 |
|
@ -3,6 +3,7 @@ let
|
|||
inherit
|
||||
(self.inputs)
|
||||
nixpkgs
|
||||
lix-module
|
||||
home-manager
|
||||
agenix
|
||||
nur
|
||||
|
@ -44,6 +45,9 @@ let
|
|||
# srvos.nixosModules.mixins-telegraf
|
||||
# srvos.nixosModules.mixins-terminfo
|
||||
|
||||
# use lix
|
||||
lix-module.nixosModules.default
|
||||
|
||||
agenix.nixosModules.default
|
||||
({ pkgs
|
||||
, config
|
||||
|
@ -56,7 +60,7 @@ let
|
|||
{
|
||||
nix.nixPath = [
|
||||
"home-manager=${home-manager}"
|
||||
"nixpkgs=${pkgs.path}"
|
||||
"nixpkgs=flake:nixpkgs"
|
||||
"nur=${nur}"
|
||||
];
|
||||
# TODO: share nixpkgs for each machine to speed up local evaluation.
|
||||
|
@ -68,10 +72,7 @@ let
|
|||
#};
|
||||
# sops.defaultSopsFile = lib.mkIf (builtins.pathExists sopsFile) sopsFile;
|
||||
|
||||
nix.extraOptions = ''
|
||||
flake-registry = ${flake-registry}/flake-registry.json
|
||||
builders-use-substitutes = true
|
||||
'';
|
||||
nix.settings.builders-use-substitutes = true;
|
||||
|
||||
nix.registry = {
|
||||
home-manager.flake = home-manager;
|
||||
|
@ -102,6 +103,12 @@ in
|
|||
flake.colmena = {
|
||||
meta.nixpkgs = import nixpkgs {
|
||||
system = "x86_64-linux";
|
||||
# yikes, this overlay has to be listed twice since colmena makes us
|
||||
# import nixpkgs explicitly here
|
||||
overlays = [
|
||||
# bonking cppnix out of the closure as much as possible
|
||||
lix-module.overlays.default
|
||||
];
|
||||
};
|
||||
epyc = {
|
||||
imports =
|
||||
|
|
111
flake.lock
111
flake.lock
|
@ -199,22 +199,6 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-registry": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1717415742,
|
||||
"narHash": "sha256-HKvoLGZUsBpjkxWkdtctGYj6RH0bl6vcw0OjTOqyzJk=",
|
||||
"owner": "NixOS",
|
||||
"repo": "flake-registry",
|
||||
"rev": "895a65f8d5acf848136ee8fe8e8f736f0d27df96",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"repo": "flake-registry",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils": {
|
||||
"locked": {
|
||||
"lastModified": 1667395993,
|
||||
|
@ -245,6 +229,39 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_3": {
|
||||
"inputs": {
|
||||
"systems": "systems_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1726560853,
|
||||
"narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flakey-profile": {
|
||||
"locked": {
|
||||
"lastModified": 1712898590,
|
||||
"narHash": "sha256-FhGIEU93VHAChKEXx905TSiPZKga69bWl1VB37FK//I=",
|
||||
"owner": "lf-",
|
||||
"repo": "flakey-profile",
|
||||
"rev": "243c903fd8eadc0f63d205665a92d4df91d42d9d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "lf-",
|
||||
"repo": "flakey-profile",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"home-manager": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
|
@ -298,27 +315,52 @@
|
|||
"pre-commit-hooks": "pre-commit-hooks"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1728506278,
|
||||
"narHash": "sha256-ZAPqzjR86En31Yfau0auQmkDuyzr2QfD8yW+7205e8A=",
|
||||
"lastModified": 1729296222,
|
||||
"narHash": "sha256-fwJyGrkTemR1SwkAPXfxlY0RYCxy34NedmR35amytCc=",
|
||||
"ref": "refs/heads/main",
|
||||
"rev": "9865ebaaa618d82a7b7fdccc636cbaa7dfa42427",
|
||||
"revCount": 16335,
|
||||
"rev": "60578b4d7d0dfc296c61cae963b6b2763422788e",
|
||||
"revCount": 16362,
|
||||
"type": "git",
|
||||
"url": "https://git.lix.systems/lix-project/lix.git"
|
||||
},
|
||||
"original": {
|
||||
"ref": "refs/heads/main",
|
||||
"rev": "60578b4d7d0dfc296c61cae963b6b2763422788e",
|
||||
"type": "git",
|
||||
"url": "https://git.lix.systems/lix-project/lix.git"
|
||||
}
|
||||
},
|
||||
"lix-module": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_3",
|
||||
"flakey-profile": "flakey-profile",
|
||||
"lix": [
|
||||
"lix"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1727752861,
|
||||
"narHash": "sha256-jowmo2aEzrEpPSM96IWtajuogdJm7DjAWxFTEb7Ct0s=",
|
||||
"rev": "fd186f535a4ac7ae35d98c1dd5d79f0a81b7976d",
|
||||
"type": "tarball",
|
||||
"url": "https://git.lix.systems/api/v1/repos/lix-project/nixos-module/archive/fd186f535a4ac7ae35d98c1dd5d79f0a81b7976d.tar.gz?rev=fd186f535a4ac7ae35d98c1dd5d79f0a81b7976d"
|
||||
},
|
||||
"original": {
|
||||
"type": "tarball",
|
||||
"url": "https://git.lix.systems/lix-project/nixos-module/archive/main.tar.gz"
|
||||
}
|
||||
},
|
||||
"nix2container": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1720642556,
|
||||
"narHash": "sha256-qsnqk13UmREKmRT7c8hEnz26X3GFFyIQrqx4EaRc1Is=",
|
||||
"lastModified": 1724996935,
|
||||
"narHash": "sha256-njRK9vvZ1JJsP8oV2OgkBrpJhgQezI03S7gzskCcHos=",
|
||||
"owner": "nlewo",
|
||||
"repo": "nix2container",
|
||||
"rev": "3853e5caf9ad24103b13aa6e0e8bcebb47649fe4",
|
||||
"rev": "fa6bb0a1159f55d071ba99331355955ae30b3401",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -424,11 +466,11 @@
|
|||
"pre-commit-hooks": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1721042469,
|
||||
"narHash": "sha256-6FPUl7HVtvRHCCBQne7Ylp4p+dpP3P/OYuzjztZ4s70=",
|
||||
"lastModified": 1726745158,
|
||||
"narHash": "sha256-D5AegvGoEjt4rkKedmxlSEmC+nNLMBPWFxvmYnVLhjk=",
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"rev": "f451c19376071a90d8c58ab1a953c6e9840527fd",
|
||||
"rev": "4e743a6920eab45e8ba0fbe49dc459f1423a4b74",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -444,9 +486,9 @@
|
|||
"colmena": "colmena",
|
||||
"disko": "disko",
|
||||
"flake-parts": "flake-parts",
|
||||
"flake-registry": "flake-registry",
|
||||
"home-manager": "home-manager_2",
|
||||
"lix": "lix",
|
||||
"lix-module": "lix-module",
|
||||
"nixos-hardware": "nixos-hardware",
|
||||
"nixpkgs": "nixpkgs_2",
|
||||
"nur": "nur",
|
||||
|
@ -503,6 +545,21 @@
|
|||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_2": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
|
|
21
flake.nix
21
flake.nix
|
@ -4,9 +4,13 @@
|
|||
# To update all inputs:
|
||||
# $ nix flake update --recreate-lock-file
|
||||
inputs = {
|
||||
lix.url = "git+https://git.lix.systems/lix-project/lix.git";
|
||||
lix.url = "git+https://git.lix.systems/lix-project/lix.git?ref=refs/heads/main&rev=60578b4d7d0dfc296c61cae963b6b2763422788e";
|
||||
lix.inputs.nixpkgs.follows = "nixpkgs";
|
||||
|
||||
lix-module.url = "https://git.lix.systems/lix-project/nixos-module/archive/main.tar.gz";
|
||||
lix-module.inputs.nixpkgs.follows = "nixpkgs";
|
||||
lix-module.inputs.lix.follows = "lix";
|
||||
|
||||
disko.url = "github:nix-community/disko";
|
||||
disko.inputs.nixpkgs.follows = "nixpkgs";
|
||||
|
||||
|
@ -37,9 +41,6 @@
|
|||
# Private repository, you need a valid SSH key to access it
|
||||
# nixos-hypervisor.url = "git+ssh://gitea@git.newtype.fr/newtype/nixos-hypervisor?ref=main";
|
||||
# nixos-hypervisor.inputs.nixpkgs.follows = "nixpkgs";
|
||||
|
||||
flake-registry.url = "github:NixOS/flake-registry";
|
||||
flake-registry.flake = false;
|
||||
};
|
||||
|
||||
outputs =
|
||||
|
@ -61,9 +62,19 @@
|
|||
# ./pkgs/flake-module.nix
|
||||
# ./templates
|
||||
];
|
||||
|
||||
# provide debug, allSystems, currentSystem in the resulting flake
|
||||
debug = true;
|
||||
|
||||
perSystem =
|
||||
{ self', pkgs, ... }:
|
||||
{ self', pkgs, system, ... }:
|
||||
{
|
||||
# apply the lix overlay to banish CppNix
|
||||
_module.args.pkgs = import inputs.nixpkgs {
|
||||
inherit system;
|
||||
overlays = [ inputs.lix-module.overlays.default ];
|
||||
};
|
||||
|
||||
devShells.default = pkgs.mkShellNoCC {
|
||||
buildInputs = [
|
||||
pkgs.ipmitool
|
||||
|
|
|
@ -16,6 +16,15 @@ in
|
|||
../modules/lix-bug-details-pls
|
||||
];
|
||||
|
||||
# Include debuginfo for Lix
|
||||
environment.systemPackages = [
|
||||
pkgs.lix.debug
|
||||
pkgs.lix.passthru.capnproto-lix.debug
|
||||
];
|
||||
environment.pathsToLink = [
|
||||
"/lib/debug"
|
||||
];
|
||||
|
||||
networking.hostName = "epyc";
|
||||
|
||||
security.acme.acceptTerms = true;
|
||||
|
@ -34,19 +43,7 @@ in
|
|||
'';
|
||||
networking.firewall.allowedTCPPorts = [ 5432 ];
|
||||
|
||||
nix.buildMachines = [
|
||||
{
|
||||
hostName = "localhost";
|
||||
systems = [
|
||||
"x86_64-linux"
|
||||
"riscv64-linux"
|
||||
];
|
||||
supportedFeatures = [ "kvm" "nixos-test" "big-parallel" "benchmark" ] ++ gcc-system-features "znver3";
|
||||
maxJobs = 2;
|
||||
}
|
||||
];
|
||||
|
||||
boot.binfmt.emulatedSystems = [ "riscv64-linux" "aarch64-linux" "riscv64-linux" ];
|
||||
boot.binfmt.emulatedSystems = [ "riscv64-linux" "aarch64-linux" ];
|
||||
|
||||
simd.arch = "znver3";
|
||||
system.stateVersion = "23.05";
|
||||
|
|
|
@ -12,8 +12,9 @@
|
|||
nixpkgs.overlays = [
|
||||
(final: prev: {
|
||||
lix = prev.lix.overrideAttrs (old: {
|
||||
patches = old.patches ++ [
|
||||
./0001-wip-complain-about-failing-goals-at-warn-level.patch
|
||||
patches = (old.patches or [ ]) ++ [
|
||||
# This patch doesn't apply anymore.
|
||||
# ./0001-wip-complain-about-failing-goals-at-warn-level.patch
|
||||
];
|
||||
});
|
||||
})
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
{ lib
|
||||
, config
|
||||
, pkgs
|
||||
, inputs
|
||||
, ...
|
||||
}:
|
||||
|
||||
|
@ -36,6 +35,7 @@ in
|
|||
|
||||
# Avoid weird failures for builders.
|
||||
services.openssh.settings.MaxStartups = 100;
|
||||
services.openssh.settings.MaxSessions = 100;
|
||||
|
||||
# Memory accounting techniques
|
||||
systemd.services.nix-daemon.serviceConfig = {
|
||||
|
@ -57,10 +57,6 @@ in
|
|||
# Randomize GC to avoid thundering herd effects.
|
||||
gc.randomizedDelaySec = "1800";
|
||||
|
||||
# A much better choice.
|
||||
# Raito: We use this machine as a testing bed for cutting edge Lix features.
|
||||
package = inputs.lix.packages.x86_64-linux.default;
|
||||
|
||||
# should be enough?
|
||||
nrBuildUsers = 128;
|
||||
|
||||
|
|
Loading…
Reference in a new issue