Opt-in `nomarchy.system.gaming.enable` (default false). Wires
`programs.steam` (with `remotePlay` and `localNetworkGameTransfers`
firewall holes opened via `mkDefault`), `programs.gamemode` (the
launching user must be in the `gamemode` group), and
`services.flatpak`.
Two pieces of the original roadmap entry split into separate
Next-column rows so the system-side preset ships now:
1. Hyprland fullscreen-on-Steam-launch window rule (home-side).
2. Declarative flathub remote (nixpkgs has no API for this; needs
either an overlay or a one-shot systemd unit).
The flatpak service is enabled but the user must add flathub
manually after first boot — documented in OPTIONS.md.
21 lines
501 B
Nix
21 lines
501 B
Nix
{ config, lib, ... }:
|
|
|
|
let
|
|
cfg = config.nomarchy.system.gaming;
|
|
in
|
|
{
|
|
config = lib.mkIf cfg.enable {
|
|
programs.steam = {
|
|
enable = true;
|
|
remotePlay.openFirewall = lib.mkDefault true;
|
|
localNetworkGameTransfers.openFirewall = lib.mkDefault true;
|
|
};
|
|
|
|
# gamemode adjusts CPU governor and reschedules processes when a
|
|
# game requests it. The launching user must be in the `gamemode` group.
|
|
programs.gamemode.enable = true;
|
|
|
|
services.flatpak.enable = true;
|
|
};
|
|
}
|