46 lines
1.3 KiB
Nix
46 lines
1.3 KiB
Nix
final: prev: {
|
|
xonsh = prev.xonsh.overrideAttrs (old: rec {
|
|
version = "0.12.4";
|
|
src = final.fetchFromGitHub {
|
|
owner = "xonsh";
|
|
repo = "xonsh";
|
|
rev = version;
|
|
sha256 = "0kdps0gf0767zy0fs6qn39rv4z3x7ck0qz1pzx6962593171yk8b";
|
|
};
|
|
propagatedBuildInputs = prev.xonsh.propagatedBuildInputs ++ [final.python3Packages.virtualenv];
|
|
});
|
|
|
|
python39 = prev.python39.override {
|
|
self = prev.python39;
|
|
packageOverrides = pself: psuper: {
|
|
prompt-toolkit = psuper.prompt-toolkit.overrideAttrs (old: rec {
|
|
version = "3.0.29";
|
|
src = final.python3Packages.fetchPypi {
|
|
pname = "prompt_toolkit";
|
|
inherit version;
|
|
sha256 = "sha256-vWQPYOjOzXTw3CSXE9QzrOLdxitl7gf5bTWOCxUrbqc=";
|
|
};
|
|
});
|
|
};
|
|
};
|
|
|
|
# Mach-nix is a toolkit for constructing custom Python environments
|
|
mach-nix = import (builtins.fetchGit {
|
|
url = "https://github.com/DavHau/mach-nix/";
|
|
ref = "refs/tags/3.4.0";
|
|
}) {
|
|
pkgs = final;
|
|
};
|
|
|
|
xonsh_pyenv = final.mach-nix.mkPython {
|
|
requirements = ''
|
|
xontrib-fzf-widgets
|
|
xonsh-direnv
|
|
'';
|
|
};
|
|
|
|
xonsh_with_plugins = final.xonsh.overrideAttrs (old: {
|
|
propagatedBuildInputs = old.propagatedBuildInputs ++ final.xonsh_pyenv.python.pkgs.selectPkgs final.xonsh_pyenv.python.pkgs;
|
|
});
|
|
}
|