123 lines
2.5 KiB
Nix
123 lines
2.5 KiB
Nix
{ 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" ];
|
|
}));
|
|
|
|
}
|
|
];
|
|
}
|