168 lines
3.8 KiB
Nix
168 lines
3.8 KiB
Nix
{ pkgs, lib, config, ... }:
|
|
with pkgs;
|
|
with lib;
|
|
{
|
|
|
|
config = mkMerge [
|
|
|
|
(mkIf config.gui.enable {
|
|
|
|
home.packages =
|
|
let
|
|
|
|
# to make copilot work
|
|
# jetbrains.pycharm-professional
|
|
#fhsPyCharm = pkgs.buildFHSUserEnv {
|
|
# name = "pycharm";
|
|
# targetPkgs = pkgs: (with pkgs; [
|
|
# black
|
|
# isort
|
|
# #unstable.jetbrains.pycharm-professional
|
|
# jetbrains.pycharm-professional
|
|
# python311
|
|
# pipenv
|
|
# zlib # needed for NumPy
|
|
# nodejs
|
|
# git
|
|
# ]);
|
|
# runScript = "pycharm-professional";
|
|
#};
|
|
|
|
# jetbrains.datagrip
|
|
#fhsDataGrip = pkgs.buildFHSUserEnv {
|
|
# name = "datagrip";
|
|
# targetPkgs = pkgs: (with pkgs; [
|
|
# unstable.jetbrains.datagrip
|
|
# ]);
|
|
# runScript = "datagrip";
|
|
#};
|
|
|
|
#fhsClion = pkgs.buildFHSUserEnv {
|
|
# name = "clion";
|
|
# targetPkgs = pkgs: (with pkgs; [
|
|
# unstable.jetbrains.clion
|
|
# ]);
|
|
# runScript = "clion";
|
|
#};
|
|
|
|
in
|
|
[
|
|
|
|
# general
|
|
unstable.jetbrains.idea-ultimate
|
|
#vscode
|
|
|
|
jetbrains.mps
|
|
|
|
unstable.jetbrains.datagrip
|
|
#fhsDataGrip
|
|
#(pkgs.makeDesktopItem {
|
|
# name = "datagrip";
|
|
# desktopName = "DataGrip";
|
|
# exec = "${fhsDataGrip}/bin/datagrip";
|
|
# terminal = false;
|
|
#})
|
|
|
|
# Rust
|
|
unstable.jetbrains.clion
|
|
#fhsClion
|
|
#(pkgs.makeDesktopItem {
|
|
# name = "clion";
|
|
# desktopName = "Clion";
|
|
# exec = "${fhsClion}/bin/clion";
|
|
# terminal = false;
|
|
#})
|
|
gcc
|
|
rustup
|
|
|
|
# python
|
|
|
|
unstable.jetbrains.pycharm-professional
|
|
#fhsPyCharm
|
|
#(pkgs.makeDesktopItem {
|
|
# name = "pycharm";
|
|
# desktopName = "PyCharm";
|
|
# exec = "${fhsPyCharm}/bin/pycharm";
|
|
# terminal = false;
|
|
#})
|
|
|
|
# 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=";
|
|
};
|
|
}))
|
|
|
|
];
|
|
})
|
|
{
|
|
|
|
home.packages =
|
|
let
|
|
pandocScript = { inputFormat, outputFormat }:
|
|
pkgs.writers.writeDashBin "pandoc-from-${inputFormat}-to-${outputFormat}" ''
|
|
${pkgs.pandoc}/bin/pandoc \
|
|
--from ${inputFormat} \
|
|
--to ${outputFormat} \
|
|
--standalone \
|
|
"$@"
|
|
'';
|
|
in
|
|
[
|
|
|
|
# smoke
|
|
|
|
tmux
|
|
|
|
nethogs
|
|
netsniff-ng
|
|
iftop
|
|
|
|
# terminal recorder
|
|
asciinema
|
|
asciinema-agg
|
|
asciinema-scenario
|
|
termtosvg
|
|
|
|
# shell
|
|
gum
|
|
yq-go
|
|
gojq
|
|
jq
|
|
ijq
|
|
|
|
# nomad
|
|
nomad
|
|
wander
|
|
|
|
# terraform
|
|
unstable.terragrunt
|
|
unstable.terraform
|
|
terraform-docs
|
|
awscli2
|
|
|
|
# python
|
|
python3Full
|
|
pipenv
|
|
|
|
unstable.mdbook
|
|
|
|
nodePackages.prettier
|
|
shfmt
|
|
black
|
|
pre-commit
|
|
nixpkgs-fmt
|
|
treefmt
|
|
|
|
] ++ (map pandocScript (lib.cartesianProductOfSets {
|
|
inputFormat = [ "man" "markdown" "mediawiki" "asciidoc" ];
|
|
outputFormat = [ "mediawiki" "docbook5" "html5" "man" "jira" "markdown" ];
|
|
}));
|
|
|
|
}
|
|
];
|
|
}
|