{ makeWrapper, fetchFromGitHub, symlinkJoin, python3, amadaluzian-starship, zoxide, }: 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 amadaluzian-starship zoxide ]; nativeBuildInputs = [ makeWrapper ]; postBuild = '' wrapProgram $out/bin/xonsh \ --set XONSH_CONFIG_DIR ${./cfg} ''; passthru = { shellPath = "/bin/xonsh"; }; meta = { mainProgram = "xonsh"; }; }