{ description = "Yerba Linux"; inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-26.05"; outputs = { self, nixpkgs }: let system = "x86_64-linux"; pkgs = nixpkgs.legacyPackages.${system}; pkgsStatic = nixpkgs.legacyPackages.${system}.pkgsStatic; pkgsMusl = nixpkgs.legacyPackages.${system}.pkgsMusl; in { devShells.${system}.default = pkgs.mkShell { buildInputs = with pkgs; [ gcc clang gnumake xorriso cpio ]; }; packages.${system} = { kernel = pkgs.callPackage ./nix/kernel.nix {}; busybox = pkgs.callPackage ./nix/busybox.nix { inherit (pkgs) pkgsStatic; }; limine = pkgs.callPackage ./nix/limine.nix {}; initramfs = pkgs.callPackage ./nix/initramfs.nix { inherit (self.packages.${system}) kernel busybox; }; rootfs = pkgs.callPackage ./nix/rootfs.nix { inherit (self.packages.${system}) busybox; inherit (pkgsMusl) musl; }; iso = pkgs.callPackage ./nix/iso.nix { inherit (self.packages.${system}) kernel limine initramfs rootfs; }; default = self.packages.${system}.iso; }; }; }