nixfiles/home-manager/modules/gaming.nix
2021-10-08 22:20:59 -07:00

43 lines
1.1 KiB
Nix

{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.gaming;
in
{
options.gaming = {
enable = mkEnableOption "Enable gaming stuff";
newWine = mkOption {
type = types.bool;
default = false;
description = "If you want to include wine-staging as new-wine";
};
};
config = mkIf cfg.enable {
home.packages =
let
newwine = (pkgs.wineFull.override { wineBuild = "wineWow"; wineRelease = "staging"; });
newwinetricks = pkgs.winetricks.override { wine = newwine; };
oldwine = pkgs.wineWowPackages.full;
oldwinetricks = pkgs.winetricks.override { wine = oldwine; };
in
with pkgs; [
oldwine
oldwinetricks
sc-controller
] ++ lib.optionals cfg.newWine [
(
pkgs.runCommand "new-wine-stuff"
{ } ''
mkdir -p $out/bin
ln -s ${newwine}/bin/wine $out/bin/new-wine
ln -s ${newwine}/bin/winecfg $out/bin/new-winecfg
ln -s ${newwinetricks}/bin/winetricks $out/bin/new-winetricks
''
)
];
};
}