71 lines
1.3 KiB
Nix
71 lines
1.3 KiB
Nix
{
|
|
lib,
|
|
config,
|
|
pkgs,
|
|
...
|
|
}: let
|
|
inherit (lib) mkEnableOption mkIf;
|
|
cfg = config.horseman.apps.dev;
|
|
in {
|
|
options = {
|
|
horseman.apps.dev = {
|
|
enable = mkEnableOption "Apps used for programming";
|
|
};
|
|
};
|
|
|
|
config = mkIf cfg.enable {
|
|
environment.systemPackages = with pkgs; [
|
|
dotnet-sdk_10
|
|
gcc
|
|
ghex
|
|
godot
|
|
hyperfine
|
|
jdk
|
|
# jetbrains.clion
|
|
jetbrains.idea
|
|
jetbrains.rider
|
|
# jetbrains.rust-rover
|
|
# jetbrains.webstorm
|
|
libqalculate
|
|
mermaid-cli
|
|
mono
|
|
nodejs_22
|
|
platformio-core
|
|
python313
|
|
quickemu
|
|
sqlite
|
|
sqlitebrowser
|
|
tinymist
|
|
typst
|
|
xclip
|
|
unityhub
|
|
uv
|
|
zed-editor
|
|
|
|
haskellPackages.ghc
|
|
haskellPackages.cabal-install
|
|
tree-sitter-grammars.tree-sitter-haskell
|
|
haskell-language-server
|
|
|
|
kotlin
|
|
tree-sitter-grammars.tree-sitter-kotlin
|
|
kotlin-language-server
|
|
|
|
tree-sitter-grammars.tree-sitter-nix
|
|
nixd
|
|
|
|
cargo
|
|
rustc
|
|
rust-analyzer
|
|
tree-sitter-grammars.tree-sitter-rust
|
|
];
|
|
|
|
# QuickEMU USB Support
|
|
virtualisation.spiceUSBRedirection.enable = true;
|
|
|
|
programs.nix-ld.enable = true;
|
|
programs.nix-ld.libraries = with pkgs; [
|
|
dotnetCorePackages.sdk_9_0
|
|
];
|
|
};
|
|
}
|