LucyOS/flake.nix

43 lines
1.1 KiB
Nix
Raw Normal View History

2025-09-01 18:37:12 +02:00
{
description = "A very basic flake";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
};
outputs = { self, nixpkgs }:
let
arch = "x86_64";
system = "${arch}-linux";
pkgs = import nixpkgs { inherit system; };
lib = pkgs.lib;
fs = lib.fileset;
# Cross Compilation Toolchain
binutilsStage = import ./derivations/cross_toolchain/binutils.nix { pkgs = pkgs; };
2025-09-01 19:57:53 +02:00
gccStage1 = import ./derivations/cross_toolchain/gcc.nix { pkgs = pkgs; binutils = binutilsStage; };
linuxHeadersStage = import ./derivations/cross_toolchain/linuxHeaders.nix { pkgs = pkgs; cc1 = linuxHeadersStage; };
2025-09-01 18:37:12 +02:00
in
{
packages.${system}.crossToolchain = {
2025-09-01 19:57:53 +02:00
linuxHeaders = linuxHeadersStage;
gcc = gccStage1;
2025-09-01 18:37:12 +02:00
binutils = binutilsStage;
};
formatter.x86_64-linux = nixpkgs.legacyPackages.x86_64-linux.nixfmt-rfc-style;
devShells.x86_64-linux.default = pkgs.mkShell {
buildInputs = with pkgs; [
git
nixfmt-rfc-style
];
shellHook = ''
echo "Welcome to LucyOS Dev Env"
'';
};
};
}