{
  version
}:

final: prev: {
  patos = prev.lib.makeScope prev.newScope (self: {
    kernel = final.callPackage ../pkgs/kernel { };
    glibc = final.callPackage ../pkgs/glibc { };
    busybox = final.callPackage ../pkgs/busybox { };
    openssl = final.callPackage ../pkgs/openssl { };
    kexec = final.callPackage ../pkgs/kexec-tools { };
    lvm2 = final.callPackage ../pkgs/lvm2 { };
    tpm2-tools = final.callPackage ../pkgs/tpm2-tools { };
    tpm2-tss = final.callPackage ../pkgs/tpm2-tss { };
    systemd = final.callPackage ../pkgs/systemd { };
    dbus-broker = final.callPackage ../pkgs/dbus-broker { };

    rootfs = final.callPackage ../pkgs/rootfs/mkrootfs.nix { inherit version; };
    initrd = final.callPackage ../pkgs/rootfs/mkinitrd.nix { inherit version; };
  });
}