nix/home-manager/modules/packages.nix

63 lines
2 KiB
Nix
Executable file

{ pkgs, inputs, system, lib, ty-home-manager-options, ... }:
{
home.packages = (with pkgs; [
# :3
fastfetch # Modern & faster neofetch alternative
# CLI Tools
ripgrep # Text searching and manipulation
jq # JSON filtering
eza # Directory lister
bat # File reading
doggo # DNS Requests
nmap # Network scanning
glow # Markdown rendering
tealdeer # TLDR
usbutils # `lsusb`
pciutils # `lspci`
unzip # Extract zip files
# Process tools
btop # Process monitor
nvtopPackages.full # GPU monitor
]) ++ (lib.optionals ty-home-manager-options.plasma.enable (with pkgs; [
# Documents
logseq # Outliner
libreoffice-qt6-fresh # Office-style editing
# Video
jellyfin-media-player # Jellyfin electron client w/ MPV
vlc # Video file player
# Chat
element-desktop # Matrix client
vesktop # Discord client
signal-desktop # Signal client
# KDE Themes
vimix-cursors # Cursors
(pkgs.callPackage ../../packages/beautyline {}) # Icons
(pkgs.callPackage ../../packages/magna-splash-6 {}) # Splash
# Programming
jetbrains.idea-ultimate # Jetbrains IntelliJ Idea Ultimate IDE
nixd # LSP for .nix files
gcc # GNU C++ Compiler
(lib.meta.hiPrio clang) # LLVM C++ Compiler (better than g++)
clang-tools # Clang language server
cling # C++ REPL
deno # Typescript & Javascript runtime
gnumake # Makefile support
# UI Tools
qalculate-qt # Calculator
])) ++ (lib.optionals ty-home-manager-options.firefox.enable [
# Firefox nightly
inputs.firefox-nightly.packages.${system}.firefox-nightly-bin
]) ++ (lib.optionals ty-home-manager-options.plasma.enable (with pkgs.kdePackages; [
kate # IDE
elisa # Music
kdeconnect-kde # Phone sync
polkit-kde-agent-1 # Polkit authentication popup support
]));
}