feat: move all shell related stuff to separate module.

This commit is contained in:
CronyAkatsuki 2025-03-18 10:59:33 +01:00
parent 3575914a0e
commit da58fe5c3a
3 changed files with 120 additions and 101 deletions

View File

@ -14,20 +14,10 @@
# PACKAGES
home.packages = with pkgs; [
alejandra
keepassxc
age
nix-output-monitor
nvd
tutanota-desktop
nurl
entr
ffmpeg
imagemagick
glow
spice-gtk
vesktop
buku
piper
heroic
prismlauncher
@ -37,17 +27,9 @@
itch
wineWowPackages.staging
rpcs3
unzip
p7zip
aria2
osu-lazer-bin
overskride
delfin
commitizen
license-go
termsonic
inputs.iamb.packages.x86_64-linux.default
toot
];
programs.thunderbird = {
@ -61,92 +43,9 @@
# Install imv
programs.imv.enable = true;
# Enable nix-index
programs.nix-index = {
enable = true;
enableZshIntegration = true;
};
# Enable comma
programs.nix-index-database.comma.enable = true;
# Enable git
programs.git = {
enable = true;
userName = "Crony Akatsuki";
userEmail = "crony@cronyakatsuki.xyz";
};
# Enable syncthing
services.syncthing.enable = true;
# Install fzf
programs.fzf = {
enable = true;
enableZshIntegration = true;
defaultCommand = "fd --type f";
};
# Install starship
programs.starship = {
enable = true;
enableZshIntegration = true;
settings = {
add_newline = false;
};
};
# Install zoxide
programs.zoxide = {
enable = true;
enableZshIntegration = true;
};
# Install eza
programs.eza = {
enable = true;
enableZshIntegration = true;
git = true;
icons = "always";
};
# Install direnv
programs.direnv = {
enable = true;
enableZshIntegration = true;
nix-direnv.enable = true;
};
# Install the fuck
programs.thefuck = {
enable = true;
enableZshIntegration = true;
};
# Install tealdeer
programs.tealdeer.enable = true;
# Install bat
programs.bat.enable = true;
# Install jq
programs.jq.enable = true;
# Install fd
programs.fd = {
enable = true;
hidden = true;
ignores = ["~/Documents/Share" ".git"];
};
# Install rg
programs.ripgrep = {
enable = true;
};
# Install btop
programs.btop.enable = true;
# Default environmental variables
home.sessionVariables = {
EDITOR = "nvim";

View File

@ -11,6 +11,7 @@
./restic.nix
./hyprland.nix
./browsers
./shell.nix
];
crony.mangohud.enable = lib.mkDefault true;
@ -24,4 +25,5 @@
crony.restic.enable = lib.mkDefault true;
crony.hyprland.enable = lib.mkDefault true;
crony.browsers.enable = lib.mkDefault true;
crony.shell.enable = lib.mkDefault true;
}

View File

@ -0,0 +1,118 @@
{
inputs,
config,
pkgs,
lib,
...
}: {
# Module that bundles all my shell related software that make up my shell experience
options = {
crony.shell.enable = lib.mkEnableOption "Enable my bundled shell software that make up my shell experience";
};
config = lib.mkIf config.crony.shell.enable {
home.packages = with pkgs; [
alejandra
age
nix-output-monitor
nvd
nurl
entr
ffmpeg
imagemagick
glow
buku
unzip
p7zip
aria2
commitizen
license-go
termsonic
inputs.iamb.packages.x86_64-linux.default
toot
];
# Enable nix-index
programs.nix-index = {
enable = true;
enableZshIntegration = true;
};
# Enable comma
programs.nix-index-database.comma.enable = true;
# Enable git
programs.git = {
enable = true;
userName = "Crony Akatsuki";
userEmail = "crony@cronyakatsuki.xyz";
};
# Install fzf
programs.fzf = {
enable = true;
enableZshIntegration = true;
defaultCommand = "fd --type f";
};
# Install starship
programs.starship = {
enable = true;
enableZshIntegration = true;
settings = {
add_newline = false;
};
};
# Install zoxide
programs.zoxide = {
enable = true;
enableZshIntegration = true;
};
# Install eza
programs.eza = {
enable = true;
enableZshIntegration = true;
git = true;
icons = "always";
};
# Install direnv
programs.direnv = {
enable = true;
enableZshIntegration = true;
nix-direnv.enable = true;
};
# Install the fuck
programs.thefuck = {
enable = true;
enableZshIntegration = true;
};
# Install tealdeer
programs.tealdeer.enable = true;
# Install bat
programs.bat.enable = true;
# Install jq
programs.jq.enable = true;
# Install fd
programs.fd = {
enable = true;
hidden = true;
ignores = ["~/Documents/Share" ".git"];
};
# Install rg
programs.ripgrep = {
enable = true;
};
# Install btop
programs.btop.enable = true;
};
}