/* -------------------------------------------------------------------------- */ /* Programming/Development Environment config */ /* -------------------------------------------------------------------------- */ { lib, config, options, pkgs, ... }: with lib; let cfg = config.modules.desktop.code; in { options.modules.desktop.code = { enable = mkEnableOption false; heavyweight = mkEnableOption false; }; config = mkIf cfg.enable { programs.nix-ld = { enable = true; libraries = with pkgs; [ stdenv.cc.cc.lib ]; }; environment.systemPackages = with pkgs; [ /* ---------------------------- Language support ---------------------------- */ # Rust rustc rustup # Python python3 # Lua lua # C/C++ gcc libgcc gnumake cmake extra-cmake-modules # JS nodejs_22 /* --------------------------------- Editors -------------------------------- */ # ? FHS VScode is a variant that lets you manually install extensions. # ? Otherwise, you'd specify extensions here. vscode.fhs vim jetbrains.idea-ultimate jetbrains.clion jetbrains.pycharm-professional jetbrains.datagrip jetbrains.webstorm /* ----------------------------- Version Control ---------------------------- */ git github-desktop /* ----------------------------- Virtualization ----------------------------- */ distrobox ]; }; }