mirror of
https://seed.flo-the.dev/z3gWc1qgaeZaoGwL4WTstLNoqjayM.git
synced 2025-12-06 04:47:35 +01:00
51 lines
945 B
Nix
51 lines
945 B
Nix
{
|
|
pkgs,
|
|
lib,
|
|
config,
|
|
inputs,
|
|
...
|
|
}:
|
|
|
|
let
|
|
req = pkgs.concatText "req" [
|
|
./requirements.txt
|
|
./requirements-dev.txt
|
|
];
|
|
in
|
|
{
|
|
# https://devenv.sh/packages/
|
|
packages = [
|
|
pkgs.file
|
|
pkgs.swig4
|
|
pkgs.openssl
|
|
];
|
|
|
|
# https://devenv.sh/languages/
|
|
languages.nix.enable = true;
|
|
languages.python = {
|
|
enable = true;
|
|
venv = {
|
|
enable = true;
|
|
requirements = builtins.readFile req;
|
|
};
|
|
};
|
|
|
|
# https://devenv.sh/pre-commit-hooks/
|
|
git-hooks.hooks = {
|
|
nixfmt.enable = true;
|
|
nixfmt.package = pkgs.nixfmt-rfc-style;
|
|
# remove unused imports
|
|
autoflake.enable = true;
|
|
# formatter
|
|
black.enable = true;
|
|
# sort imports
|
|
isort.enable = true;
|
|
# same profile for black and isort
|
|
isort.settings.flags = "--profile black";
|
|
# look for code smell
|
|
pylint.enable = true;
|
|
detect-private-keys.enable = true;
|
|
detect-private-keys.excludes = [ "tests/" ];
|
|
};
|
|
}
|