nix-configs/modules/presets/development.nix
Lucy Hochkamp 7cb4b1be69
Some checks failed
ci/woodpecker/push/build-cache Pipeline failed
meow
2025-10-10 18:51:04 +02:00

61 lines
1.5 KiB
Nix

{
config,
lib,
pkgs,
...
}:
with lib;
let
cfg = config.xyno.presets.development;
in
{
options.xyno.presets.development.enable =
mkEnableOption "enables xynos configs for a development machine";
config = mkIf cfg.enable {
home-manager.users.${config.xyno.system.user.name} = mkIf config.xyno.presets.home-manager.enable (
{ ... }:
{
xyno.helix.withLargeLSPs = true;
xyno.git.enable = true;
}
);
xyno.presets.cli.enable = true;
xyno.presets.home-manager.enable = true;
xyno.system.user.enable = true;
virtualisation.podman.enable = true;
environment.systemPackages = with pkgs; [
jetbrains.rider
# android-studio
nixpkgs-manual
nixpkgs-manual.lib-docs
podman-compose
tio
(
let
helpScript = pkgs.writeShellScriptBin "nixpkgs-help" ''
exec xdg-open ${pkgs.nixpkgs-manual}/share/doc/nixpkgs/index.html
'';
desktopItem = pkgs.makeDesktopItem {
name = "nixpkgs-manual";
desktopName = "nixpkgs Manual";
genericName = "System Manual";
comment = "View nixpkgs documentation in a web browser";
icon = "nix-snowflake";
exec = "nixpkgs-help";
categories = [ "System" ];
};
in
pkgs.symlinkJoin {
name = "nixpkgs-help";
paths = [
helpScript
desktopItem
];
}
)
];
};
}