102 lines
2.2 KiB
Nix
102 lines
2.2 KiB
Nix
{
|
|
makeWrapper,
|
|
fetchFromGitHub,
|
|
symlinkJoin,
|
|
python3,
|
|
inputs,
|
|
system,
|
|
zoxide,
|
|
... # ffs nixpkgs
|
|
}: let
|
|
xonsh =
|
|
python3
|
|
.withPackages (ps: [
|
|
ps.xonsh
|
|
(let
|
|
pname = "xontrib-fish-completer";
|
|
version = "0.0.1";
|
|
in
|
|
ps.buildPythonPackage {
|
|
inherit pname version;
|
|
src = fetchFromGitHub {
|
|
owner = "xonsh";
|
|
repo = pname;
|
|
rev = version;
|
|
hash = "sha256-PhhdZ3iLPDEIG9uDeR5ctJ9zz2+YORHBhbsiLrJckyA=";
|
|
};
|
|
})
|
|
(let
|
|
pname = "xontrib-prompt-starship";
|
|
version = "0.3.6";
|
|
in
|
|
ps.buildPythonPackage {
|
|
inherit pname version;
|
|
src = fetchFromGitHub {
|
|
owner = "anki-code";
|
|
repo = pname;
|
|
tag = version;
|
|
hash = "sha256-CLOvMa3L4XnH53H/k6/1W9URrPakPjbX1T1U43+eSR0=";
|
|
};
|
|
})
|
|
(let
|
|
pname = "xontrib-init-ssh-agent";
|
|
version = "1.0.1";
|
|
in
|
|
ps.buildPythonPackage {
|
|
inherit pname version;
|
|
pyproject = true;
|
|
build-system = [
|
|
ps.setuptools
|
|
ps.wheel
|
|
];
|
|
dependencies = [
|
|
ps.xonsh
|
|
];
|
|
src = fetchFromGitHub {
|
|
owner = "amadaluzia";
|
|
repo = pname;
|
|
rev = "cac9cfec70ec15b0ed4f1c8a18154ea9b4f8fb47";
|
|
hash = "sha256-UkRPdaZFNP8qv7lMwsTUalnre3k2UMfqMzmiTveLiBM=";
|
|
};
|
|
})
|
|
(let
|
|
pname = "xonsh-direnv";
|
|
version = "1.6.5";
|
|
in
|
|
ps.buildPythonPackage {
|
|
inherit pname version;
|
|
src = fetchFromGitHub {
|
|
owner = "74th";
|
|
repo = pname;
|
|
tag = version;
|
|
hash = "sha256-huBJ7WknVCk+WgZaXHlL+Y1sqsn6TYqMP29/fsUPSyU=";
|
|
};
|
|
})
|
|
]);
|
|
in
|
|
symlinkJoin {
|
|
name = "xonsh";
|
|
|
|
paths = [
|
|
xonsh
|
|
inputs.self.packages.${system}.amadaluzian-starship
|
|
zoxide
|
|
];
|
|
|
|
nativeBuildInputs = [
|
|
makeWrapper
|
|
];
|
|
|
|
postBuild = ''
|
|
wrapProgram $out/bin/xonsh \
|
|
--set XONSH_CONFIG_DIR ${./cfg}
|
|
'';
|
|
|
|
passthru = {
|
|
shellPath = "/bin/xonsh";
|
|
};
|
|
|
|
meta = {
|
|
mainProgram = "xonsh";
|
|
};
|
|
}
|