carapace: Use home-manager module
This commit is contained in:
parent
12efb214e0
commit
db9e19eff0
2 changed files with 28 additions and 50 deletions
|
@ -1,15 +1,3 @@
|
||||||
let carapace_completer = {|spans|
|
|
||||||
let expanded_alias = (scope aliases | where name == $spans.0 | get -i 0 | get -i expansion)
|
|
||||||
|
|
||||||
let spans = (if $expanded_alias != null {
|
|
||||||
spans | skip 1 | prepend ($expanded_alias | split row " " | take 1)
|
|
||||||
} else {
|
|
||||||
$spans
|
|
||||||
})
|
|
||||||
|
|
||||||
carapace $spans.0 nushell ...$spans | from json
|
|
||||||
}
|
|
||||||
|
|
||||||
# The default config record. This is where much of your global configuration is setup.
|
# The default config record. This is where much of your global configuration is setup.
|
||||||
$env.config = {
|
$env.config = {
|
||||||
explore: {
|
explore: {
|
||||||
|
@ -34,7 +22,6 @@ $env.config = {
|
||||||
algorithm: "fuzzy" # prefix or fuzzy
|
algorithm: "fuzzy" # prefix or fuzzy
|
||||||
external: {
|
external: {
|
||||||
enable: true # set to false to prevent nushell looking into $env.PATH to find more suggestions, `false` recommended for WSL users as this look up my be very slow
|
enable: true # set to false to prevent nushell looking into $env.PATH to find more suggestions, `false` recommended for WSL users as this look up my be very slow
|
||||||
completer: $carapace_completer # check 'carapace_completer' above as an example
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
filesize: {
|
filesize: {
|
||||||
|
|
|
@ -7,8 +7,6 @@
|
||||||
with lib;
|
with lib;
|
||||||
let
|
let
|
||||||
cfg = config.eboskma.programs.nushell;
|
cfg = config.eboskma.programs.nushell;
|
||||||
|
|
||||||
zoxideOptions = concatStringsSep " " config.programs.zoxide.options;
|
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
options.eboskma.programs.nushell = {
|
options.eboskma.programs.nushell = {
|
||||||
|
@ -16,56 +14,49 @@ in
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
programs.nushell = {
|
programs = {
|
||||||
enable = true;
|
nushell = {
|
||||||
package = pkgs.nushellFull;
|
enable = true;
|
||||||
configFile.source = ./config.nu;
|
package = pkgs.nushellFull;
|
||||||
envFile.source = ./env.nu;
|
configFile.source = ./config.nu;
|
||||||
|
envFile.source = ./env.nu;
|
||||||
|
|
||||||
extraEnv = ''
|
extraEnv = ''
|
||||||
$env.command_not_found_db = ${config.programs.command-not-found.dbPath}
|
$env.command_not_found_db = ${config.programs.command-not-found.dbPath}
|
||||||
$env.NIX_SYSTEM = "${pkgs.system}"
|
$env.NIX_SYSTEM = "${pkgs.system}"
|
||||||
|
|
||||||
let zoxide_cache = "${config.xdg.cacheHome}/zoxide"
|
$env.NU_LIB_DIRS = ($env.NU_LIB_DIRS | append ${pkgs.nu_scripts}/share/nu_scripts)
|
||||||
if not ($zoxide_cache | path exists) {
|
'';
|
||||||
mkdir $zoxide_cache
|
extraConfig = ''
|
||||||
}
|
alias vim = nvim
|
||||||
${config.programs.zoxide.package}/bin/zoxide init nushell ${zoxideOptions} | save --force ${config.xdg.cacheHome}/zoxide/init.nu
|
alias tree = ${pkgs.eza}/bin/eza -F -b --git --tree --icons
|
||||||
# Temporary fix until zoxide releases new version
|
|
||||||
sed -i 's/def-env/def --env/g' ${config.xdg.cacheHome}/zoxide/init.nu
|
|
||||||
|
|
||||||
$env.NU_LIB_DIRS = ($env.NU_LIB_DIRS | append ${pkgs.nu_scripts}/share/nu_scripts)
|
$env.LS_COLORS = (${pkgs.vivid}/bin/vivid generate gruvbox-dark | str trim)
|
||||||
'';
|
|
||||||
extraConfig = ''
|
|
||||||
alias vim = nvim
|
|
||||||
alias tree = ${pkgs.eza}/bin/eza -F -b --git --tree --icons
|
|
||||||
|
|
||||||
$env.LS_COLORS = (${pkgs.vivid}/bin/vivid generate gruvbox-dark | str trim)
|
register ${pkgs.nushellPlugins.query}/bin/nu_plugin_query
|
||||||
|
register ${pkgs.nushellPlugins.formats}/bin/nu_plugin_formats
|
||||||
|
register ${pkgs.nushellPlugins.net}/bin/nu_plugin_net
|
||||||
|
|
||||||
register ${pkgs.nushellPlugins.query}/bin/nu_plugin_query
|
use kink.nu
|
||||||
register ${pkgs.nushellPlugins.formats}/bin/nu_plugin_formats
|
|
||||||
register ${pkgs.nushellPlugins.net}/bin/nu_plugin_net
|
|
||||||
|
|
||||||
use kink.nu
|
# use ${pkgs.nu_scripts}/share/nu_scripts/themes/nu-themes/dracula.nu
|
||||||
|
use themes/nu-themes/dracula.nu
|
||||||
|
|
||||||
# use ${pkgs.nu_scripts}/share/nu_scripts/themes/nu-themes/dracula.nu
|
$env.config = ($env.config | merge { color_config: (dracula)})
|
||||||
use themes/nu-themes/dracula.nu
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
$env.config = ($env.config | merge { color_config: (dracula)})
|
carapace = {
|
||||||
|
enable = true;
|
||||||
source ${config.xdg.cacheHome}/zoxide/init.nu
|
};
|
||||||
'';
|
|
||||||
};
|
};
|
||||||
|
|
||||||
# Temporary until zoxide releases new version
|
|
||||||
programs.zoxide.enableNushellIntegration = false;
|
|
||||||
|
|
||||||
xdg.configFile."nushell/scripts" = {
|
xdg.configFile."nushell/scripts" = {
|
||||||
source = ./scripts;
|
source = ./scripts;
|
||||||
};
|
};
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
carapace
|
# carapace
|
||||||
nu_scripts
|
nu_scripts
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in a new issue