# Development packages. # These are installed on all systems for developing functionality. # Organized by category for maintainability. { config, pkgs, ... }: { environment.systemPackages = with pkgs; [ # === SOURCE CONTROL AND PROJECT MANAGEMENT === # Code hosting and project management tools gh # GitHub CLI tool # === DATA PROCESSING AND QUERY TOOLS === # Tools for working with structured data jq # JSON processor yq # YAML processor # === NETWORK ANALYSIS === # Network debugging and analysis tools jwhois # Internet whois client tcpdump # Network packet analyzer lftp # FTP/HTTP file transfer client # === DATABASE TOOLS === # Database management and querying sqlite # Lightweight SQL database engine # === TEXT PROCESSING AND SPELLCHECKING === # Language support and text processing hunspell # Spell checker hunspellDicts.de_DE # German dictionary hunspellDicts.en_US-large # English US dictionary # === C/C++ DEVELOPMENT === # LLVM toolchain and language server support llvmPackages_20.libclang # LLVM Clang library llvmPackages_20.libclang.python # Python bindings for libclang # === JAVA DEVELOPMENT === # Java ecosystem tools and frameworks jdk # Java Development Kit maven # Java project management and build tool jdt-language-server # Eclipse JDT Language Server for Java # === SCALA DEVELOPMENT === # Scala ecosystem tools and frameworks dotty # Scala 3 compiler scala_3 # Scala 3 language sbt # Scala Build Tool bloop # Scala build server metals # Scala Language Server coursier # Scala artifact fetcher scalafmt # Scala code formatter mill # Scala build tool # === JAVASCRIPT DEVELOPMENT === # JavaScript/Node.js ecosystem nodejs # JavaScript runtime ] ++ (if pkgs.stdenv.isLinux then [ # === LINUX-SPECIFIC PACKAGES === # Packages that are only available/useful on Linux systems # --- SYSTEM DEBUGGING --- strace # System call tracer ] else [ ]) ++ (if pkgs.stdenv.isDarwin then [ # === MACOS-SPECIFIC PACKAGES === # Packages specifically for macOS systems # Currently empty - add macOS-specific tools here as needed # Examples: darwin.apple_sdk.frameworks.Security ] else []); }