mirror of
https://github.com/Jokiller230/puzzlevision.git
synced 2025-09-10 04:40:05 +00:00
✨ add nushell and vscodium configurations
This commit is contained in:
parent
124d6b7ede
commit
24fff4ee33
4 changed files with 161 additions and 71 deletions
74
modules/home/apps/codium/default.nix
Normal file
74
modules/home/apps/codium/default.nix
Normal file
|
@ -0,0 +1,74 @@
|
|||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
namespace,
|
||||
...
|
||||
}: let
|
||||
inherit (lib) mkEnableOption mkIf;
|
||||
cfg = config.${namespace}.apps.vscodium;
|
||||
in {
|
||||
options.${namespace}.apps.vscodium = {
|
||||
enable = mkEnableOption "vscodium";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
home.packages = with pkgs; [
|
||||
alejandra
|
||||
];
|
||||
|
||||
programs.vscode = {
|
||||
enable = true;
|
||||
package = pkgs.vscodium;
|
||||
|
||||
enableUpdateCheck = false;
|
||||
enableExtensionUpdateCheck = false;
|
||||
mutableExtensionsDir = false;
|
||||
|
||||
extensions = with pkgs; [
|
||||
### Theming
|
||||
vscode-extensions.pkief.material-icon-theme
|
||||
vscode-extensions.catppuccin.catppuccin-vsc
|
||||
|
||||
### General
|
||||
vscode-extensions.usernamehw.errorlens
|
||||
vscode-extensions.leonardssh.vscord
|
||||
vscode-extensions.davidlday.languagetool-linter
|
||||
vscode-extensions.christian-kohler.path-intellisense
|
||||
vscode-extensions.wakatime.vscode-wakatime
|
||||
|
||||
### Language specific
|
||||
# Nushell
|
||||
vscode-extensions.thenuprojectcontributors.vscode-nushell-lang
|
||||
|
||||
# Nix
|
||||
vscode-extensions.kamadorueda.alejandra
|
||||
vscode-extensions.jnoortheen.nix-ide
|
||||
|
||||
# Env
|
||||
vscode-extensions.irongeek.vscode-env
|
||||
|
||||
# Deno (JavaScript)
|
||||
vscode-extensions.denoland.vscode-deno
|
||||
];
|
||||
|
||||
userSettings = {
|
||||
"files.autoSave" = "on";
|
||||
"workbench.colorTheme" = "Catppuccin Macchiato";
|
||||
|
||||
"[nix]" = {
|
||||
"editor.tabSize" = 2;
|
||||
"formatterPath" = "alejandra";
|
||||
|
||||
"enableLanguageServer" = true;
|
||||
"serverPath" = "nixd";
|
||||
"serverSettings" = {
|
||||
"nixd" = {
|
||||
"formatting.command" = ["alejandra"];
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
69
modules/home/apps/nushell/default.nix
Normal file
69
modules/home/apps/nushell/default.nix
Normal file
|
@ -0,0 +1,69 @@
|
|||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
namespace,
|
||||
...
|
||||
}: let
|
||||
inherit (lib) mkEnableOption mkIf;
|
||||
cfg = config.${namespace}.apps.nushell;
|
||||
in {
|
||||
options.${namespace}.apps.nushell = {
|
||||
enable = mkEnableOption "Whether to enable nushell customization.";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
programs = {
|
||||
nushell = {
|
||||
enable = true;
|
||||
|
||||
extraConfig = ''
|
||||
let carapace_completer = {|spans|
|
||||
carapace $spans.0 nushell ...$spans | from json
|
||||
}
|
||||
|
||||
$env.config = {
|
||||
completions: {
|
||||
case_sensitive: false # case-sensitive completions
|
||||
quick: true # set to false to prevent auto-selecting completions
|
||||
partial: true # set to false to prevent partial filling of the prompt
|
||||
algorithm: "fuzzy" # prefix or fuzzy
|
||||
external: {
|
||||
# set to false to prevent nushell looking into $env.PATH to find more suggestions
|
||||
enable: true
|
||||
# set to lower can improve completion performance at the cost of omitting some options
|
||||
max_results: 200
|
||||
completer: $carapace_completer # check 'carapace_completer'
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$env.PATH = ($env.PATH |
|
||||
split row (char esep) |
|
||||
prepend /run/wrappers/bin |
|
||||
prepend /home/jo/.nix-profile/bin |
|
||||
append /usr/bin/env/run/wrappers/bin
|
||||
)
|
||||
'';
|
||||
};
|
||||
|
||||
carapace.enable = true;
|
||||
carapace.enableNushellIntegration = true;
|
||||
|
||||
starship = {
|
||||
enable = true;
|
||||
settings = {
|
||||
add_newline = true;
|
||||
character = {
|
||||
success_symbol = "[➜](bold green)";
|
||||
error_symbol = "[➜](bold red)";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
home.packages = with pkgs; [
|
||||
carapace
|
||||
];
|
||||
};
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue