{ pkgs, lib, config, ... }: with pkgs; with lib; { config = mkMerge [ (mkIf config.gui.enable { home.packages = [ # general unstable.jetbrains.idea-ultimate #vscode jetbrains.mps unstable.jetbrains.datagrip # Rust # ---- unstable.jetbrains.clion gcc rustup # Python # ------ unstable.jetbrains.pycharm-professional # planing ((ganttproject-bin.override { jre = pkgs.openjdk11; }).overrideAttrs (old: { version = "3.1.3100"; src = pkgs.fetchzip { url = "https://dl.ganttproject.biz/ganttproject-3.1.3100/ganttproject-3.1.3100.zip"; sha256 = "sha256-hw2paak0P670/kemiuqYHIaN0uUtkVKy+AX2X7OdnJ4="; }; })) mermaid-cli ]; }) { home.packages = let pandocScript = { inputFormat, outputFormat }: pkgs.writers.writeDashBin "pandoc-from-${inputFormat}-to-${outputFormat}" '' ${pkgs.pandoc}/bin/pandoc \ --from ${inputFormat} \ --to ${outputFormat} \ --standalone \ "$@" ''; in [ lnav tmux nethogs netsniff-ng iftop # terminal recorder asciinema asciinema-agg asciinema-scenario termtosvg # shell gum yq-go gojq jq ijq # nomad unstable.nomad wander # terraform unstable.terragrunt unstable.terraform terraform-docs awscli2 # python python3Full pipenv unstable.mdbook nodePackages.prettier shfmt black pre-commit nixpkgs-fmt treefmt (pkgs.writers.writeBashBin "ssl-check-cert-of-domain" '' DOMAIN=$1 echo | \ ${pkgs.openssl}/bin/openssl s_client -servername ''${DOMAIN} -connect ''${DOMAIN}:443 2>/dev/null | \ ${pkgs.openssl}/bin/openssl x509 -text | \ ${pkgs.less}/bin/less '') ] ++ (map pandocScript (lib.cartesianProductOfSets { inputFormat = [ "man" "markdown" "mediawiki" "asciidoc" ]; outputFormat = [ "mediawiki" "docbook5" "html5" "man" "jira" "markdown" ]; })); } ]; }