let
envBase =
{ pkgs, lib, ... }:
let
inherit (lib.lists) singleton;
variables = {
EDITOR = "hx";
SHELL = "${pkgs.nushell}/bin/nu";
TERMINAL = "zellij";
TERM_PROGRAM = "zellij";
};
in
{
environment.variables = variables;
hjem.extraModules = singleton {
environment.sessionVariables = variables;
# TODO: Add sessionPath equivalent in hjem?
# home-manager.sharedModules = [{
# home.sessionPath = [
# "$HOME/.local/bin"
# "$HOME/.cargo/bin"
# "$HOME/.bun/bin"
# ];
# }];
};
};
in
{
flake.modules.nixos.env = envBase;
flake.modules.darwin.env = envBase;
}