Build with neoidiosyn flake

This commit is contained in:
Mikael 2024-11-17 14:57:59 +01:00
parent a8958e8b3a
commit bae214f426
Signed by: mikael
SSH key fingerprint: SHA256:21QyD2Meiot7jOUVitIR5YkGB/XuXdCvLW1hE6dsri0
3 changed files with 121 additions and 14 deletions

View file

@ -1,12 +1,104 @@
{ {
"nodes": { "nodes": {
"flake-utils": {
"inputs": {
"systems": "systems"
},
"locked": {
"lastModified": 1731533236,
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
"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"
}
},
"lix": {
"flake": false,
"locked": {
"lastModified": 1732112222,
"narHash": "sha256-H7GN4++a4vE49SUNojZx+FSk4mmpb2ifJUtJMJHProI=",
"rev": "66f6dbda32959dd5cf3a9aaba15af72d037ab7ff",
"type": "tarball",
"url": "https://git.lix.systems/api/v1/repos/lix-project/lix/archive/66f6dbda32959dd5cf3a9aaba15af72d037ab7ff.tar.gz?rev=66f6dbda32959dd5cf3a9aaba15af72d037ab7ff"
},
"original": {
"type": "tarball",
"url": "https://git.lix.systems/lix-project/lix/archive/main.tar.gz"
}
},
"lix-module": {
"inputs": {
"flake-utils": "flake-utils",
"flakey-profile": "flakey-profile",
"lix": [
"neoidiosyn",
"lix"
],
"nixpkgs": [
"neoidiosyn",
"nixpkgs"
]
},
"locked": {
"lastModified": 1731967274,
"narHash": "sha256-n6dPGRlMGdL8X5gviA6ZuRfUdbdD5KiNN/BpABA5YT0=",
"rev": "aa2846680fa9a2032939d720487942567fd9eb63",
"type": "tarball",
"url": "https://git.lix.systems/api/v1/repos/lix-project/nixos-module/archive/aa2846680fa9a2032939d720487942567fd9eb63.tar.gz?rev=aa2846680fa9a2032939d720487942567fd9eb63"
},
"original": {
"type": "tarball",
"url": "https://git.lix.systems/lix-project/nixos-module/archive/main.tar.gz"
}
},
"neoidiosyn": {
"inputs": {
"lix": "lix",
"lix-module": "lix-module",
"nixpkgs": "nixpkgs"
},
"locked": {
"lastModified": 1732399768,
"narHash": "sha256-EgIgOxux6Pspvkpf3DzVjN8Ed6EjHTUEMAhgKss/bYk=",
"ref": "refs/heads/main",
"rev": "f0ecd20339d01be9631ace8f2ced4afbac9c4bdb",
"revCount": 1,
"type": "git",
"url": "https://woof.rip/mikael/neoidiosyn.git"
},
"original": {
"type": "git",
"url": "https://woof.rip/mikael/neoidiosyn.git"
}
},
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1731531548, "lastModified": 1731890469,
"narHash": "sha256-sz8/v17enkYmfpgeeuyzniGJU0QQBfmAjlemAUYhfy8=", "narHash": "sha256-D1FNZ70NmQEwNxpSSdTXCSklBH1z2isPR84J6DQrJGs=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "24f0d4acd634792badd6470134c387a3b039dace", "rev": "5083ec887760adfe12af64830a66807423a859a7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -18,7 +110,22 @@
}, },
"root": { "root": {
"inputs": { "inputs": {
"nixpkgs": "nixpkgs" "neoidiosyn": "neoidiosyn"
}
},
"systems": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
} }
} }
}, },

View file

@ -2,7 +2,7 @@
description = "Hardened Linux kernel"; description = "Hardened Linux kernel";
inputs = { inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; neoidiosyn.url = "git+https://woof.rip/mikael/neoidiosyn.git";
}; };
nixConfig = { nixConfig = {
@ -11,29 +11,29 @@
extra-trusted-public-keys = [ "cache.kyouma.net:Frjwu4q1rnwE/MnSTmX9yx86GNA/z3p/oElGvucLiZg=" ]; extra-trusted-public-keys = [ "cache.kyouma.net:Frjwu4q1rnwE/MnSTmX9yx86GNA/z3p/oElGvucLiZg=" ];
}; };
outputs = { self, nixpkgs, ... }@inputs: let outputs = { self, neoidiosyn, ... }@inputs: let
inherit (nixpkgs) lib; inherit (neoidiosyn) lib;
packageWith = pkgs: args: pkgs.callPackage ./package.nix packageWith = pkgs: args: pkgs.callPackage ./package.nix
(if builtins.isPath args then import args else args); (if builtins.isPath args then import args else args);
in { in {
lib.kernel = import ./lib.nix { inherit lib; }; lib.kernel = import ./lib.nix { inherit lib; };
packages = { packages = {
riscv64-linux = let riscv64-linux = let
package = packageWith nixpkgs.legacyPackages.riscv64-linux; package = packageWith neoidiosyn.legacyPackages.riscv64-linux;
in { in {
default = package { }; default = package { };
paravirt = package ./platform/paravirt.nix; paravirt = package ./platform/paravirt.nix;
}; };
aarch64-linux = let aarch64-linux = let
package = packageWith nixpkgs.legacyPackages.aarch64-linux; package = packageWith neoidiosyn.legacyPackages.aarch64-linux;
in { in {
default = package { }; default = package { };
paravirt = package ./platform/paravirt.nix; paravirt = package ./platform/paravirt.nix;
}; };
x86_64-linux = let x86_64-linux = let
package = packageWith nixpkgs.legacyPackages.x86_64-linux; package = packageWith neoidiosyn.legacyPackages.x86_64-linux;
in { in {
default = package { }; default = package { };
paravirt = package ./platform/paravirt.nix; paravirt = package ./platform/paravirt.nix;
@ -44,7 +44,7 @@
devShells = lib.genAttrs [ "riscv64-linux" "aarch64-linux" "x86_64-linux" ] (system: { devShells = lib.genAttrs [ "riscv64-linux" "aarch64-linux" "x86_64-linux" ] (system: {
default = let default = let
pkgs = nixpkgs.legacyPackages.${system}; pkgs = neoidiosyn.legacyPackages.${system};
in pkgs.mkShell { in pkgs.mkShell {
packages = with pkgs; [ pkg-config ncurses.dev bison ]; packages = with pkgs; [ pkg-config ncurses.dev bison ];
inputsFrom = [ self.packages.${system}.default ]; inputsFrom = [ self.packages.${system}.default ];
@ -52,6 +52,6 @@
}); });
hydraJobs = self.packages |> lib.foldlAttrs (jobs: system: packages: lib.recursiveUpdate jobs hydraJobs = self.packages |> lib.foldlAttrs (jobs: system: packages: lib.recursiveUpdate jobs
(lib.mapAttrs (name: package: { ${system} = package; }) packages)) { }; (lib.mapAttrs (name: package: { ${system} = lib.hydraJob package; }) packages)) { };
}; };
} }

View file

@ -2,7 +2,7 @@
lib, lib,
stdenv, stdenv,
buildPackages, buildPackages,
llvmPackages_19, llvmPackages,
hostPlatform, hostPlatform,
fetchFromGitHub, fetchFromGitHub,
buildEnv, buildEnv,
@ -29,7 +29,7 @@
}@args: }@args:
lib.makeOverridable ({ lib.makeOverridable ({
llvmPackages ? llvmPackages_19, llvmPackages ? llvmPackages,
instSetArch ? hostPlatform.gccarch or null, instSetArch ? hostPlatform.gccarch or null,
platformConfig ? { }, platformConfig ? { },
extraConfig ? { }, extraConfig ? { },