fixes additions

This commit is contained in:
foglar 2024-12-17 09:50:37 +01:00
parent 853fec65f3
commit 6cfe222544
7 changed files with 181 additions and 107 deletions

View File

@ -52,6 +52,9 @@
username = "foglar"; username = "foglar";
hostname = "laptop"; hostname = "laptop";
shell = "bash"; # bash, zsh
terminal = "kitty";
theme = "catppuccin-mocha"; theme = "catppuccin-mocha";
background = "aurora_borealis.png"; background = "aurora_borealis.png";
}; };

View File

@ -12,15 +12,12 @@
config = lib.mkIf config.app_list.terminal_tools.enable { config = lib.mkIf config.app_list.terminal_tools.enable {
home.packages = with pkgs; [ home.packages = with pkgs; [
pfetch
bat
btop btop
cmatrix cmatrix
entr entr
figlet figlet
jp2a jp2a
yt-dlp yt-dlp
eza
nvtopPackages.full nvtopPackages.full
neofetch neofetch
wget wget

View File

@ -56,11 +56,6 @@
wayland.windowManager.hyprland = { wayland.windowManager.hyprland = {
enable = true; enable = true;
#plugins = [
#inputs.hyprland-plugins.packages.${pkgs.system}.hyprbars
#inputs.Hyprspace.packages.${pkgs.system}.Hyprspace
#];
settings = { settings = {
monitor = [ monitor = [
"eDP-1,1920x1080,0x0,1" "eDP-1,1920x1080,0x0,1"

View File

@ -37,7 +37,22 @@
firefox.enable = lib.mkDefault true; firefox.enable = lib.mkDefault true;
spotify.enable = lib.mkDefault true; spotify.enable = lib.mkDefault true;
vscode.enable = lib.mkDefault true; vscode = {
enable = lib.mkDefault true;
ide = {
python.enable = lib.mkDefault true;
go.enable = lib.mkDefault true;
csharp.enable = lib.mkDefault true;
cpp.enable = lib.mkDefault false;
web.enable = lib.mkDefault true;
};
nix.enable = lib.mkDefault true;
markdown.enable = lib.mkDefault true;
ai.enable = lib.mkDefault true;
git.enable = lib.mkDefault true;
themes.enable = lib.mkDefault false;
};
git.enable = lib.mkDefault true; git.enable = lib.mkDefault true;
neovim.enable = lib.mkDefault true; neovim.enable = lib.mkDefault true;
}; };

View File

@ -7,57 +7,117 @@
}: { }: {
options = { options = {
program.vscode.enable = lib.mkEnableOption "enable vscode"; program.vscode.enable = lib.mkEnableOption "enable vscode";
program.vscode.ide.python.enable = lib.mkEnableOption "enable python for vscode";
program.vscode.ide.go.enable = lib.mkEnableOption "enable go for vscode";
program.vscode.ide.csharp.enable = lib.mkEnableOption "enable c# for vscode";
program.vscode.ide.web.enable = lib.mkEnableOption "enable html and css for vscode";
program.vscode.ide.cpp.enable = lib.mkEnableOption "enable cpp for vscode";
program.vscode.nix.enable = lib.mkEnableOption "enable nix support for vscode";
program.vscode.ai.enable = lib.mkEnableOption "enable ai copilot for vscode";
program.vscode.git.enable = lib.mkEnableOption "enable git features for vscode";
program.vscode.themes.enable = lib.mkEnableOption "enable themes for vscode";
program.vscode.markdown.enable = lib.mkEnableOption "enable markdown for vscode";
}; };
config = lib.mkIf config.program.vscode.enable { config = lib.mkMerge [
home.packages = with pkgs; [ (lib.mkIf config.program.vscode.enable {
vscode home.packages = with pkgs; [
]; vscode
];
home.sessionVariables = { programs.vscode = {
GOOS = "linux"; enable = true;
GOARCH = "amd64";
GOPATH = "$HOME/.local/share/go";
};
programs.vscode = { userSettings = {
enable = true; "files.autoSave" = "afterDelay";
"explorer.confirmDragAndDrop" = false;
userSettings = { "editor.fontSize" = 16;
"files.autoSave" = "afterDelay"; "editor.minimap.side" = "right";
"explorer.confirmDragAndDrop" = false; "editor.scrollbar.vertical" = "hidden";
"editor.fontSize" = 16; "editor.scrollbar.verticalScrollbarSize" = 0;
"editor.minimap.side" = "right"; "editor.fontLigatures" = "'calt', 'ss01', 'ss02', 'ss03', 'ss04', 'ss05', 'ss06', 'ss07', 'ss08', 'ss09', 'liga'";
"editor.scrollbar.vertical" = "hidden"; "editor.stickyScroll.enabled" = false;
"editor.scrollbar.verticalScrollbarSize" = 0; "security.workspace.trust.untrustedFiles" = "newWindow";
"editor.fontLigatures" = "'calt', 'ss01', 'ss02', 'ss03', 'ss04', 'ss05', 'ss06', 'ss07', 'ss08', 'ss09', 'liga'"; "security.workspace.trust.startupPrompt" = "never";
"editor.stickyScroll.enabled" = false; "security.workspace.trust.enabled" = false;
"security.workspace.trust.untrustedFiles" = "newWindow"; "terminal.external.linuxExec" = "${pkgs.kitty}/bin/kitty";
"security.workspace.trust.startupPrompt" = "never"; "terminal.integrated.stickyScroll.enabled" = true;
"security.workspace.trust.enabled" = false; "terminal.integrated.inheritEnv" = false;
"terminal.external.linuxExec" = "kitty"; "telemetry.telemetryLevel" = "off";
"terminal.integrated.stickyScroll.enabled" = true; "workbench.activityBar.location" = "hidden"; # bottom
"terminal.integrated.inheritEnv"= false; "workbench.iconTheme" = "material-icon-theme";
"telemetry.telemetryLevel" = "off"; "workbench.productIconTheme" = "material-product-icons";
"workbench.activityBar.location" = "hidden"; # bottom "window.menuBarVisibility" = "toggle";
"workbench.iconTheme" = "material-icon-theme";
"workbench.productIconTheme" = "material-product-icons";
"window.menuBarVisibility" = "toggle";
"github.copilot.editor.enableAutoCompletions" = false;
"[json]" = {
"editor.defaultFormatter" = "esbenp.prettier-vscode";
}; };
extensions = with pkgs-stable.vscode-extensions; [
ms-azuretools.vscode-docker
foxundermoon.shell-format
tamasfe.even-better-toml
aaron-bond.better-comments
christian-kohler.path-intellisense
github.codespaces
# Remote
ms-vscode-remote.remote-ssh
ms-vscode-remote.remote-ssh-edit
];
};
})
(lib.mkIf config.program.vscode.ide.python.enable {
programs.vscode.userSettings = {
"[python]" = { "[python]" = {
"editor.defaultFormatter" = "ms-python.black-formatter"; "editor.defaultFormatter" = "ms-python.black-formatter";
"python.defaultInterpreterPath" = "${pkgs.python3}";
}; };
"[html]" = { };
"editor.defaultFormatter" = "esbenp.prettier-vscode";
}; programs.vscode.extensions = with pkgs-stable.vscode-extensions; [
"python.defaultInterpreterPath" = "${pkgs.python3}"; ms-python.python
ms-python.vscode-pylance
ms-python.black-formatter
ms-python.debugpy
njpwerner.autodocstring
ms-toolsai.jupyter
ms-toolsai.jupyter-keymap
ms-toolsai.jupyter-renderers
];
})
(lib.mkIf config.program.vscode.ide.go.enable {
programs.vscode.userSettings = {
"go.alternateTools" = { "go.alternateTools" = {
"go-langserver" = "${pkgs.gopls}/bin/gopls"; "go-langserver" = "${pkgs.gopls}/bin/gopls";
}; };
"gopls" = {"ui.diagnostic.staticcheck" = true;}; "gopls" = {"ui.diagnostic.staticcheck" = true;};
};
home.sessionVariables = {
GOOS = "linux";
GOARCH = "amd64";
GOPATH = "$HOME/.local/share/go";
};
programs.vscode.extensions = with pkgs-stable.vscode-extensions; [
golang.go
];
})
(lib.mkIf config.program.vscode.ide.csharp.enable {
programs.vscode.extensions = with pkgs-stable.vscode-extensions; [
ms-dotnettools.csharp
ms-dotnettools.csdevkit
ms-dotnettools.vscodeintellicode-csharp
ms-dotnettools.vscode-dotnet-runtime
];
})
(lib.mkIf config.program.vscode.nix.enable {
programs.vscode.userSettings = {
"nix.serverPath" = "nixd"; "nix.serverPath" = "nixd";
"nix.enableLanguageServer" = true; "nix.enableLanguageServer" = true;
"nix.serverSettings" = { "nix.serverSettings" = {
@ -78,53 +138,48 @@
}; };
}; };
extensions = with pkgs-stable.vscode-extensions; [ programs.vscode.extensions = with pkgs-stable.vscode-extensions; [
ms-azuretools.vscode-docker
# Mardown
yzhang.markdown-all-in-one
davidanson.vscode-markdownlint
foxundermoon.shell-format
tamasfe.even-better-toml
aaron-bond.better-comments
christian-kohler.path-intellisense
jnoortheen.nix-ide jnoortheen.nix-ide
];
})
github.vscode-pull-request-github (lib.mkIf config.program.vscode.ide.web.enable {
github.vscode-github-actions programs.vscode.userSettings = {
github.codespaces "[json]" = {
"editor.defaultFormatter" = "esbenp.prettier-vscode";
};
"[html]" = {
"editor.defaultFormatter" = "esbenp.prettier-vscode";
};
};
# Remote programs.vscode.extensions = with pkgs-stable.vscode-extensions; [
ms-vscode-remote.remote-ssh
ms-vscode-remote.remote-ssh-edit
# Webdev
ritwickdey.liveserver ritwickdey.liveserver
esbenp.prettier-vscode esbenp.prettier-vscode
ecmel.vscode-html-css ecmel.vscode-html-css
ms-vscode.live-server ms-vscode.live-server
formulahendry.auto-rename-tag formulahendry.auto-rename-tag
];
})
# Ai (lib.mkIf config.program.vscode.git.enable {
github.copilot programs.vscode.extensions = with pkgs-stable.vscode-extensions; [
github.copilot-chat
# Git
donjayamanne.githistory donjayamanne.githistory
eamodio.gitlens eamodio.gitlens
github.vscode-pull-request-github
github.vscode-github-actions
];
})
# Python (lib.mkIf config.program.vscode.markdown.enable {
ms-python.python programs.vscode.extensions = with pkgs-stable.vscode-extensions; [
ms-python.vscode-pylance yzhang.markdown-all-in-one
ms-python.black-formatter davidanson.vscode-markdownlint
ms-python.debugpy ];
njpwerner.autodocstring })
ms-toolsai.jupyter
ms-toolsai.jupyter-keymap
ms-toolsai.jupyter-renderers
# Theme (lib.mkIf config.program.vscode.themes.enable {
programs.vscode.extensions = with pkgs-stable.vscode-extensions; [
catppuccin.catppuccin-vsc catppuccin.catppuccin-vsc
catppuccin.catppuccin-vsc-icons catppuccin.catppuccin-vsc-icons
zhuangtongfa.material-theme zhuangtongfa.material-theme
@ -132,20 +187,25 @@
enkia.tokyo-night enkia.tokyo-night
pkief.material-product-icons pkief.material-product-icons
pkief.material-icon-theme pkief.material-icon-theme
];
})
# C/C++ (lib.mkIf config.program.vscode.ai.enable {
programs.vscode.userSettings = {
"github.copilot.editor.enableAutoCompletions" = false;
};
programs.vscode.extensions = with pkgs-stable.vscode-extensions; [
github.copilot
github.copilot-chat
];
})
(lib.mkIf config.program.vscode.ide.cpp.enable {
programs.vscode.extensions = with pkgs-stable.vscode-extensions; [
twxs.cmake twxs.cmake
ms-vscode.cmake-tools ms-vscode.cmake-tools
# C#
ms-dotnettools.csharp
ms-dotnettools.csdevkit
ms-dotnettools.vscodeintellicode-csharp
ms-dotnettools.vscode-dotnet-runtime
# Go
golang.go
]; ];
}; })
}; ];
} }

View File

@ -1,6 +1,7 @@
{ {
lib, lib,
config, config,
pkgs,
... ...
}: { }: {
options = { options = {
@ -9,27 +10,26 @@
}; };
config = lib.mkIf config.sh.bash.enable { config = lib.mkIf config.sh.bash.enable {
programs.bash = { programs.bash = {
enable = true; enable = true;
enableCompletion = true; enableCompletion = true;
shellAliases = { shellAliases = {
#vim = "nvim"; #vim = "nvim";
ls = "exa --icons"; ls = "${pkgs.eza}/bin/eza --icons";
ll = "exa -alh --icons"; ll = "${pkgs.eza}/bin/eza -alh --icons";
tree = "exa --tree --icons"; l = "${pkgs.eza}/bin/eza -lh --icons=auto";
tree = "${pkgs.eza}/bin/eza --tree --icons";
open = "rifle"; open = "rifle";
ip = "ip -c"; ip = "ip -c";
s = "kitten ssh"; s = "kitten ssh";
diff = "diff --color"; diff = "diff --color";
respawn = "clear; pfetch"; respawn = "clear; ${pkgs.pfetch}/bin/pfetch";
l = "eza -lh --icons=auto";
mkdir = "mkdir -p"; mkdir = "mkdir -p";
cat = "bat --style plain"; cat = "${pkgs.bat}/bin/bat --style plain";
rasp = "s foglar@192.168.8.140"; rasp = "s foglar@192.168.8.140";
hist = "history | awk '{for (i=2; i<=NF; i++) printf \$i\" \"; print \"\"}' | fzf | wl-copy"; hist = "history | awk '{for (i=2; i<=NF; i++) printf \$i\" \"; print \"\"}' | fzf | wl-copy";
cdx = "zoxide query --interactive"; cdx = "${pkgs.zoxide}/bin/zoxide query --interactive";
#distrobox-enter = "distrobox-enter --root"; #distrobox-enter = "distrobox-enter --root";
#distrobox-create = "distrobox-create --root"; #distrobox-create = "distrobox-create --root";
@ -37,7 +37,7 @@
}; };
bashrcExtra = '' bashrcExtra = ''
pfetch''; ${pkgs.pfetch}/bin/pfetch'';
}; };
home.sessionVariables = { home.sessionVariables = {

View File

@ -22,11 +22,11 @@
# Application lists # Application lists
app_list = { app_list = {
hacking.enable = true;
applications.enable = true; applications.enable = true;
terminal_tools.enable = true;
programming.enable = true;
games.enable = true; games.enable = true;
hacking.enable = true;
programming.enable = true;
terminal_tools.enable = true;
}; };
# Configured programs to enable # Configured programs to enable
@ -34,9 +34,13 @@
kitty.enable = true; kitty.enable = true;
tmux.enable = true; tmux.enable = true;
zoxide.enable = true; zoxide.enable = true;
vscode.enable = true;
vscode = {
enable = true;
};
git.enable = true; git.enable = true;
neovim.enable = true; neovim.enable = true;
firefox.enable = true; firefox.enable = true;
spotify.enable = true; spotify.enable = true;
}; };