{ pkgs, config, lib, ... }: let cfg = config.grimmShared; in { config = with cfg; lib.mkIf (enable && tooling.enable) { environment.systemPackages = with pkgs; [ python3 ] ++ lib.optionals cfg.graphical [ jetbrains.pycharm-community ]; programs.xonsh = { enable = true; config = lib.concatLines ( lib.mapAttrsToList ( name: value: ''aliases["${name}"] = "${value}"'' ) config.environment.shellAliases ); package = pkgs.xonsh.override { extraPackages = ps: with ps; [ requests matplotlib numpy scipy pygobject3 ]; }; }; }; }