update build tools

This commit is contained in:
Vinzenz Schroeter 2024-05-25 11:23:22 +02:00
parent 3b72d80fb7
commit 18ecc85b77
2 changed files with 37 additions and 37 deletions

View file

@ -5,7 +5,8 @@
... ...
}: let }: let
cfg = config.my.buildtools; cfg = config.my.buildtools;
dotnetPackage = with pkgs; (dotnetCorePackages.combinePackages [ isDesktop = config.my.desktop.enable;
dotnetPackage = with pkgs.unstable; (dotnetCorePackages.combinePackages [
dotnet-sdk_8 dotnet-sdk_8
]); ]);
in { in {
@ -16,11 +17,12 @@ in {
jetbrains-remote-server = lib.mkEnableOption "setup jetbrais IDE installs so -remote-dev-server can be started"; jetbrains-remote-server = lib.mkEnableOption "setup jetbrais IDE installs so -remote-dev-server can be started";
objective-c = lib.mkEnableOption "Objective-C with GNUStep"; objective-c = lib.mkEnableOption "Objective-C with GNUStep";
js = lib.mkEnableOption "node stuff"; js = lib.mkEnableOption "node stuff";
android = lib.mkEnableOption "android development";
python = lib.mkEnableOption "generic python 3";
}; };
config = lib.mkMerge [ config = lib.mkMerge [
(lib.mkIf cfg.native (lib.mkIf cfg.native {
{
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
cmake cmake
gnumake gnumake
@ -28,6 +30,7 @@ in {
gdb gdb
]; ];
}) })
(lib.mkIf cfg.dotnet { (lib.mkIf cfg.dotnet {
environment = { environment = {
systemPackages = with pkgs; [ systemPackages = with pkgs; [
@ -59,37 +62,28 @@ in {
dotnetPackage dotnetPackage
]; ];
}) })
(lib.mkIf (cfg.dotnet || config.my.desktop.enable) {
environment = { (lib.mkIf cfg.js {
systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
unstable.jetbrains.jdk nodejs
unstable.jetbrains.rider
]; ];
};
}) })
(lib.mkIf cfg.rust { (lib.mkIf cfg.rust {
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
cargo rustup
rustc musl
rustfmt
clippy
cargo-generate
]; ];
}) })
(lib.mkIf cfg.jetbrains-remote-server { (lib.mkIf cfg.jetbrains-remote-server {
environment.systemPackages = with pkgs.jetbrains; [ my.buildtools.dotnet = true;
jdk # required for all of them my.buildtools.native = true;
rider my.buildtools.python = true;
clion
pycharm-professional
];
my.allowUnfreePackages = [
"rider"
"clion"
"pycharm-professional"
];
}) })
(lib.mkIf cfg.objective-c { (lib.mkIf cfg.objective-c {
my.buildtools.native = true;
environment.systemPackages = environment.systemPackages =
(with pkgs.gnustep; [ (with pkgs.gnustep; [
gui gui
@ -105,13 +99,18 @@ in {
++ (with pkgs; [ ++ (with pkgs; [
clang-tools clang-tools
clang clang
gnumake
]); ]);
}) })
(lib.mkIf cfg.js {
(lib.mkIf cfg.android {
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
nodejs android-tools
android-udev-rules
]; ];
}) })
(lib.mkIf cfg.python {
environment.systemPackages = with pkgs; [python3 python3Packages.pip];
})
]; ];
} }

View file

@ -17,8 +17,9 @@
}; };
buildtools = { buildtools = {
dotnet = true; dotnet = true;
#objective-c = true;
js = true; js = true;
rust = true;
native = true;
}; };
allowUnfreePackages = [ allowUnfreePackages = [