2024-11-01 15:54:20 +01:00
|
|
|
# This shell setup was inspired by sioodmy. Check out his setup!
|
|
|
|
{pkgs, ...}: let
|
|
|
|
toml = pkgs.formats.toml {};
|
|
|
|
starship-config = import ./starship.nix;
|
|
|
|
aliases = import ./aliases.nix {inherit pkgs;};
|
|
|
|
|
|
|
|
fishinit = import ./fishinit.nix {inherit pkgs aliasesStr;};
|
|
|
|
|
|
|
|
aliasesStr =
|
|
|
|
pkgs.lib.concatStringsSep "\n"
|
|
|
|
(pkgs.lib.mapAttrsToList (k: v: "alias ${k}=\"${v}\"") aliases);
|
|
|
|
packages = import ./packages.nix pkgs;
|
|
|
|
in
|
|
|
|
(pkgs.symlinkJoin {
|
|
|
|
name = "fish-wrapped";
|
|
|
|
paths = [pkgs.fish] ++ packages;
|
|
|
|
buildInputs = [pkgs.makeWrapper];
|
|
|
|
postBuild = ''
|
|
|
|
wrapProgram $out/bin/fish --set STARSHIP_CONFIG "${toml.generate "starship.toml" starship-config}" \
|
2024-11-01 20:55:25 +01:00
|
|
|
--set SSH_AUTH_SOCK /run/user/1000/ssh-agent \
|
2024-11-01 15:54:20 +01:00
|
|
|
'';
|
|
|
|
})
|
|
|
|
.overrideAttrs (_: {
|
|
|
|
passthru = {
|
|
|
|
shellPath = "/bin/fish";
|
|
|
|
};
|
|
|
|
})
|