61 lines
1.5 KiB
Nix
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; [
|
|
unstable.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
|
|
];
|
|
|
|
}
|
|
)
|
|
];
|
|
};
|
|
}
|