{ pkgs ? import <nixpkgs> {}, name ? "user-env", }: with pkgs; buildEnv { inherit name; extraOutputsToInstall = ["out" "man" "lib"]; # to get all needed symlinks paths = [ # ❯❯❯ nix_related #nix # if not on NixOS, this is needed direnv nixVersions.nix_2_21 #nixVersions.latest #nixVersions.git nix-prefetch-git validatePkgConfig nix-output-monitor nix-tree jq #gx #alejandra git # ❯❯❯ dev gnumake ps # ❯❯❯ d_build_related # ❯❯ package manager dub # ❯❯ compiler #dmd ldc # ❯❯❯ sqlite search related sqlite # this will create a script that will rebuild and upgrade your setup; using shell script syntax (writeScriptBin "nix-rebuild" '' #!${stdenv.shell} #cd <path-to-flake> || exit 1 nix flake update nix profile upgrade '.*' '') # puts in your root the nixpkgs version (writeTextFile { name = "nixpkgs-version"; destination = "/nixpkgs-version"; text = lib.version; }) ]; }