uboot: (firmwareOdroidC2/C4) don't invoke patch tool, use patches = [] instead
https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh#L948 this can do it nicely. Signed-off-by: Anton Arapov <anton@deadbeef.mx>
This commit is contained in:
commit
56de2bcd43
30691 changed files with 3076956 additions and 0 deletions
157
pkgs/tools/misc/pre-commit/default.nix
Normal file
157
pkgs/tools/misc/pre-commit/default.nix
Normal file
|
|
@ -0,0 +1,157 @@
|
|||
{ lib
|
||||
, python3Packages
|
||||
, fetchFromGitHub
|
||||
# tests
|
||||
, cargo
|
||||
, dotnet-sdk
|
||||
, git
|
||||
, go
|
||||
, libiconv
|
||||
, nodejs
|
||||
}:
|
||||
|
||||
with python3Packages;
|
||||
buildPythonPackage rec {
|
||||
pname = "pre-commit";
|
||||
version = "2.19.0";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "pre-commit";
|
||||
repo = "pre-commit";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-5YV0FJhHiq/NJFKYvwddIWUQVxKJpnIJLLNmyY0NX4A=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
./languages-use-the-hardcoded-path-to-python-binaries.patch
|
||||
./hook-tmpl.patch
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
cfgv
|
||||
identify
|
||||
nodeenv
|
||||
pyyaml
|
||||
toml
|
||||
virtualenv
|
||||
] ++ lib.optional (pythonOlder "3.8") [
|
||||
importlib-metadata
|
||||
] ++ lib.optional (pythonOlder "3.7") [
|
||||
importlib-resources
|
||||
];
|
||||
|
||||
checkInputs = [
|
||||
cargo
|
||||
dotnet-sdk
|
||||
git
|
||||
go
|
||||
nodejs
|
||||
pytest-env
|
||||
pytest-xdist
|
||||
pytestCheckHook
|
||||
re-assert
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
# Required for rust test on x86_64-darwin
|
||||
libiconv
|
||||
];
|
||||
|
||||
doCheck = true;
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace pre_commit/resources/hook-tmpl \
|
||||
--subst-var-by pre-commit $out
|
||||
substituteInPlace pre_commit/languages/python.py \
|
||||
--subst-var-by virtualenv ${virtualenv}
|
||||
substituteInPlace pre_commit/languages/node.py \
|
||||
--subst-var-by nodeenv ${nodeenv}
|
||||
|
||||
patchShebangs pre_commit/resources/hook-tmpl
|
||||
'';
|
||||
|
||||
pytestFlagsArray = [
|
||||
"--forked"
|
||||
];
|
||||
|
||||
preCheck = ''
|
||||
export GIT_AUTHOR_NAME=test GIT_COMMITTER_NAME=test \
|
||||
GIT_AUTHOR_EMAIL=test@example.com GIT_COMMITTER_EMAIL=test@example.com \
|
||||
VIRTUALENV_NO_DOWNLOAD=1 PRE_COMMIT_NO_CONCURRENCY=1 LANG=en_US.UTF-8
|
||||
|
||||
git init -b master
|
||||
|
||||
export HOME=$(mktemp -d)
|
||||
|
||||
python -m venv --system-site-packages venv
|
||||
source "$PWD/venv/bin/activate"
|
||||
#$out/bin/pre-commit install
|
||||
python setup.py develop
|
||||
'';
|
||||
|
||||
postCheck = ''
|
||||
deactivate
|
||||
'';
|
||||
|
||||
disabledTests = [
|
||||
# ERROR: The install method you used for conda--probably either `pip install conda`
|
||||
# or `easy_install conda`--is not compatible with using conda as an application.
|
||||
"test_conda_"
|
||||
"test_local_conda_"
|
||||
|
||||
# /build/pytest-of-nixbld/pytest-0/test_install_ruby_with_version0/rbenv-2.7.2/libexec/rbenv-init:
|
||||
# /usr/bin/env: bad interpreter: No such file or directory
|
||||
"ruby"
|
||||
|
||||
# network
|
||||
"test_additional_dependencies_roll_forward"
|
||||
"test_additional_golang_dependencies_installed"
|
||||
"test_additional_node_dependencies_installed"
|
||||
"test_additional_rust_cli_dependencies_installed"
|
||||
"test_additional_rust_lib_dependencies_installed"
|
||||
"test_dart_hook"
|
||||
"test_dotnet_hook"
|
||||
"test_golang_hook"
|
||||
"test_golang_hook_still_works_when_gobin_is_set"
|
||||
"test_installs_without_links_outside_env"
|
||||
"test_local_dart_additional_dependencies"
|
||||
"test_local_golang_additional_dependencies"
|
||||
"test_local_lua_additional_dependencies"
|
||||
"test_local_perl_additional_dependencies"
|
||||
"test_local_rust_additional_dependencies"
|
||||
"test_lua_hook"
|
||||
"test_perl_hook"
|
||||
"test_r_hook"
|
||||
"test_r_inline_hook"
|
||||
"test_r_local_with_additional_dependencies_hook"
|
||||
"test_r_with_additional_dependencies_hook"
|
||||
"test_run_a_node_hook_default_version"
|
||||
"test_run_versioned_node_hook"
|
||||
|
||||
# python2, no explanation needed
|
||||
"python2"
|
||||
"test_switch_language_versions_doesnt_clobber"
|
||||
|
||||
# docker
|
||||
"test_run_a_docker_hook"
|
||||
|
||||
# i don't know why these fail
|
||||
"test_install_existing_hooks_no_overwrite"
|
||||
"test_installed_from_venv"
|
||||
"test_uninstall_restores_legacy_hooks"
|
||||
];
|
||||
|
||||
pythonImportsCheck = [
|
||||
"pre_commit"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "A framework for managing and maintaining multi-language pre-commit hooks";
|
||||
homepage = "https://pre-commit.com/";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ borisbabic ];
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue