System/home-manager/linux/programs/devel.nix

46 lines
983 B
Nix

{ config, lib, pkgs, inputs, ... }:
let
devel = config.nathan.programs.devel;
unstable = inputs.nixpkgs-unstable.legacyPackages."${pkgs.system}";
inherit (import ../../../modules/lib.nix {
inherit lib;
inherit pkgs;
})
nLib;
in with lib;
with nLib; {
config = mkMerge [
# Core development utilites
(mkIf devel.core {
home.packages = with pkgs;
# Linux specific packages
[
clang
unstable.mold
];
})
# Rust development
(mkIf devel.rust {
home.packages = with pkgs;
[
unstable.cargo-tarpaulin # Code coverage
];
})
# JVM Development
(mkIf devel.jvm {
home.packages = with unstable; [
jdk17
gradle
kotlin
kotlin-native
kotlin-language-server
jdt-language-server
ktlint
];
})
# RPi Pico Development
(mkIf devel.pico { home.packages = with unstable; [ pico-sdk ]; })
];
}