lum_libs 0.2.4

Serves as a central collection and re-export of all external crates used in the lum framework to ensure consistent dependency versions across the framework
Documentation
{
  pkgs ? import <nixpkgs> { },
}:

pkgs.mkShell {
  buildInputs = [
    pkgs.rustup
  ];

  TEMPDIR = "/tmp/rust/shell";
  TMPDIR = "/tmp/rust/shell";
  TEMP = "/tmp/rust/shell";
  TMP = "/tmp/rust/shell";

  shellHook = ''
    DATA_DIR="/tmp/rust"
    export RUSTUP_HOME="$DATA_DIR/rustup"
    export CARGO_HOME="$DATA_DIR/cargo"
    export PATH=$CARGO_HOME/bin:$PATH
    mkdir -p "$CARGO_HOME"
    mkdir -p "$RUSTUP_HOME"
    mkdir -p "$DATA_DIR/shell"

    rustup default stable
    rustup toolchain install
    rustup update
    cargo fetch

    echo
    echo
    echo

    echo "Rustup installed at $RUSTUP_HOME"
    echo "Cargo installed at $CARGO_HOME"
    echo "$(rustup --version)"
    echo "$(cargo --version)"
  '';
}