{ description = "Experimental Nintendo Switch emulator written in C++"; inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-23.11"; flake-compat.url = "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz"; }; outputs = { self, nixpkgs, ... }: let supportedSystems = ["x86_64-linux" "x86_64-darwin" "aarch64-linux" "aarch64-darwin" "x86_64-w64-mingw32" "x86_64-w64-mingw64"]; forAllSystems = nixpkgs.lib.genAttrs supportedSystems; pkgsFor = system: nixpkgs.legacyPackages.${system}; in { devShells = forAllSystems (system: let pkgs = pkgsFor system; in { default = pkgs.mkShell { packages = with pkgs; [ ]; override = { stdenv = pkgs.clang15Stdenv; }; shellHook = '' echo "Welcome to the automated Nix workflow. " ''; }; }); packages = forAllSystems (system: let pkgs = pkgsFor system; in { }); }; } # Thank you Nobbz for holding my hand through this. The biggest issue of the Nix ecosystem is literally the documentation.