81 lines
1.6 KiB
Nix
81 lines
1.6 KiB
Nix
{ pkgs, ... }:
|
|
|
|
{
|
|
# https://devenv.sh/basics/
|
|
# env = {
|
|
# PIP_PREFIX = ""; # Ensures pip installs into the venv
|
|
# };
|
|
|
|
packages = [
|
|
|
|
# dev tools
|
|
pkgs.samply # code profiler
|
|
|
|
# generate python classes from rust code (for AI training)
|
|
pkgs.maturin
|
|
# required during `maturin develop`
|
|
pkgs.python312Packages.pip
|
|
# pkgs.python312Packages.virtualenv # Ensures the venv behaves correctly
|
|
|
|
# required by python numpy (for AI training)
|
|
pkgs.libz
|
|
|
|
# for bevy
|
|
pkgs.alsaLib
|
|
pkgs.udev
|
|
|
|
# bevy fast compile
|
|
pkgs.clang
|
|
pkgs.lld
|
|
|
|
# copié de https://github.com/mmai/Hyperspeedcube/blob/develop/devenv.nix
|
|
# TODO : retirer ce qui est inutile
|
|
# pour erreur à l'exécution, selon https://github.com/emilk/egui/discussions/1587
|
|
pkgs.libxkbcommon
|
|
pkgs.libGL
|
|
|
|
# WINIT_UNIX_BACKEND=wayland
|
|
pkgs.wayland
|
|
|
|
# WINIT_UNIX_BACKEND=x11
|
|
pkgs.xorg.libXcursor
|
|
pkgs.xorg.libXrandr
|
|
pkgs.xorg.libXi
|
|
pkgs.xorg.libX11
|
|
|
|
pkgs.vulkan-headers
|
|
pkgs.vulkan-loader
|
|
# ------------ fin copie
|
|
|
|
];
|
|
|
|
# enterShell = ''
|
|
# hello
|
|
# git --version
|
|
# '';
|
|
|
|
# https://devenv.sh/languages/
|
|
languages.rust.enable = true;
|
|
|
|
# for AI training
|
|
languages.python = {
|
|
enable = true;
|
|
uv.enable = true;
|
|
venv.enable = true;
|
|
venv.requirements = "
|
|
gym
|
|
numpy
|
|
stable-baselines3
|
|
";
|
|
};
|
|
|
|
# https://devenv.sh/scripts/
|
|
# scripts.hello.exec = "echo hello from $GREET";
|
|
|
|
# https://devenv.sh/pre-commit-hooks/
|
|
# pre-commit.hooks.shellcheck.enable = true;
|
|
|
|
# https://devenv.sh/processes/
|
|
# processes.ping.exec = "ping example.com";
|
|
}
|