{ description = "Shiny"; inputs = { nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable"; flake-utils.url = "github:numtide/flake-utils"; rust-overlay = { url = "github:oxalica/rust-overlay"; inputs.nixpkgs.follows = "nixpkgs"; }; }; outputs = { nixpkgs, flake-utils, rust-overlay, ... }: flake-utils.lib.eachDefaultSystem(system: let overlays = [(import rust-overlay)]; pkgs = import nixpkgs { inherit system overlays; }; rust = rec { package = pkgs.rust-bin.nightly.latest.default; devPackage = package.override { extensions = [ "rust-src" "rust-analyzer" ]; }; }; in { devShells.default = pkgs.mkShell { shellHook = '' export PS1="(shiny) $PS1" ''; buildInputs = [ rust.devPackage ]; }; } ); }