{ description = "PBSA: Physikalisch Basierte Simulation und Animation"; inputs.nixpkgs.url = "nixpkgs/nixpkgs-unstable"; outputs = { nixpkgs , self , ... }: let systems = [ "x86_64-linux" "aarch64-linux" ]; forAllSystems = f: nixpkgs.lib.genAttrs systems (system: f system); in { devShells = forAllSystems (system: let pkgs = nixpkgs.legacyPackages.${system}; in { default = let py-pkg = pkgs.python3.withPackages (python-pkgs: with python-pkgs; [ # glad2 # todo glad anyqt eigenpy pip ]); in pkgs.mkShell { packages = with pkgs; [ # base toolchain gcc13 gdb clang libgcc qt6.full qtcreator cmake nlohmann_json qt6.qtwayland icu libcxx nil libGL libGLU eigen py-pkg ]; shellHook = '' # Tells pip to put packages into $PIP_PREFIX instead of the usual locations. # See https://pip.pypa.io/en/stable/user_guide/#environment-variables. export PIP_PREFIX=$(pwd)/_build/pip_packages export PYTHONPATH="$PIP_PREFIX/${py-pkg.sitePackages}:$PYTHONPATH" export PATH="$PIP_PREFIX/bin:$PATH" unset SOURCE_DATE_EPOCH ''; }; }); }; }