smart-energy-monitor/nix/shell.nix

49 lines
979 B
Nix

{self, ...}: system:
with self.pkgs.${system};
mkShell {
name = "Smart Energy Monitor";
nativeBuildInputs =
[
# Development
editorconfig-checker
esptool
micropython
nodePackages.node-red
openscad
pre-commit
python310Full
python310Packages.mkdocs
python310Packages.mkdocs-material
python310Packages.mkdocs-material-extensions
yaml-language-server
]
++ lib.optionals (pkgs.hostPlatform.system == "x86_64-linux") [
vscodium-fhs
freecad
]
++ [
# Linter
git
yamllint
# Nix
deploy-rs
alejandra
nixUnstable
rnix-lsp
# Service
mosquitto
# Misc
reuse
zstd
wget
raspberrypi-eeprom
];
shellHook = ''
${self.checks.${system}.pre-commit-check.shellHook}
'';
allowUnsupportedSystem = true;
}