let
  nixpkgs = fetchTarball "https://github.com/NixOS/nixpkgs/archive/nixos-unstable.tar.gz";
  pkgs = import nixpkgs { config = {}; overlays = []; };
in

pkgs.mkShell {

  packages = with pkgs; [
    bash
    limine-full
    xorriso
    rustup
    qemu
    cargo-make
    cargo-binutils
  ];

  buildInputs = with pkgs; [
    limine-full
  ];

  shellHook = ''
    echo $TMPDIR;
    rustup default nightly;
    rustup target add x86_64-unknown-none;
    export LIMINEDIR="${pkgs.limine-full}/share/limine"
  '';

}

