refactor(xonsh): make a better xonsh wrapper

This commit is contained in:
Artur Manuel 2025-01-18 22:53:36 +00:00
commit 41992c65e7
4 changed files with 103 additions and 87 deletions

View file

@ -43,7 +43,7 @@
networking.networkmanager.enable = true;
time.timeZone = "Europe/London";
i18n.defaultLocale = "nl_NL.UTF-8";
i18n.defaultLocale = "de_DE.UTF-8";
system.stateVersion = "24.11";
};
}

View file

@ -1,5 +1,8 @@
{self, ...}: {
flake.overlays.default = _final: prev: {
flake.overlays.default = _final: prev: let
packages = {
amadaluzian-starship = prev.callPackage ./derivations/starship.nix {};
amadaluzian-xonsh = prev.callPackage ./derivations/xonsh {inherit (packages) amadaluzian-starship;};
fairfax = prev.callPackage ./derivations/fairfax.nix {};
river-bedload = prev.callPackage ./derivations/river-bedload {};
nicotine-plus = prev.symlinkJoin {
@ -20,9 +23,9 @@
hash = "sha256-vCWs+TOVURl18EdbJr5QAHfB+JX9lYJ3TPO6IklKeFE=";
};
});
amadaluzian-starship = prev.callPackage ./derivations/starship.nix {};
amadaluzian-xonsh = prev.callPackage ./derivations/xonsh {};
};
in
packages;
perSystem = {pkgs, ...}: {
packages = self.overlays.default null pkgs;
};

View file

@ -6,8 +6,21 @@
amadaluzian-starship,
zoxide,
}: let
xonsh = python3.withPackages (ps: [
ps.xonsh
xonsh =
(python3.override {
packageOverrides = pyprev: _pyfinal: {
custom-xonsh = pyprev.xonsh.overrideAttrs (finalAttrs: {
src = fetchFromGitHub {
owner = "amadaluzia";
repo = finalAttrs.pname;
rev = "8d01b29e0e9b4f7d63ec380ceb1e701302c33ee8";
hash = "sha256-jBAJTjH80GJ89u8r/zVWnMNXXi9V9qPw0AVy071a7rg=";
};
});
};
})
.withPackages (ps: [
ps.custom-xonsh
(let
pname = "xontrib-fish-completer";
version = "0.0.1";
@ -34,27 +47,27 @@
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 = "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";