2023-05-30 17:27:15 +02:00
|
|
|
{ config, pkgs, lib, materusPkgs, inputs, ... }:
|
2023-05-18 22:29:52 +02:00
|
|
|
let
|
|
|
|
|
2023-05-30 17:27:15 +02:00
|
|
|
pkgsGlbic = import
|
|
|
|
(pkgs.fetchzip {
|
|
|
|
url = "https://github.com/NixOS/nixpkgs/archive/22.11.tar.gz";
|
|
|
|
sha256 = "sha256-/HEZNyGbnQecrgJnfE8d0WC5c1xuPSD2LUpB6YXlg4c=";
|
|
|
|
})
|
|
|
|
{ system = pkgs.system; };
|
|
|
|
|
|
|
|
|
2023-05-18 22:29:52 +02:00
|
|
|
|
2023-05-30 17:27:15 +02:00
|
|
|
steamPkg = pkgs.steam.override {
|
2023-05-18 22:29:52 +02:00
|
|
|
extraPkgs = pkgs: [
|
2023-06-08 18:24:48 +02:00
|
|
|
config.materus.profile.packages.firefox
|
|
|
|
|
2023-05-18 22:29:52 +02:00
|
|
|
pkgs.nss_latest
|
|
|
|
pkgs.libstrangle
|
|
|
|
pkgs.libkrb5
|
|
|
|
pkgs.keyutils
|
|
|
|
pkgs.libGL
|
|
|
|
pkgs.libglvnd
|
|
|
|
pkgs.gamescope
|
|
|
|
pkgs.steamPackages.steam
|
|
|
|
pkgs.libxcrypt
|
|
|
|
pkgs.gnutls
|
|
|
|
pkgs.xorg.libXcursor
|
|
|
|
pkgs.xorg.libXi
|
|
|
|
pkgs.xorg.libXinerama
|
|
|
|
pkgs.xorg.libXScrnSaver
|
2023-05-30 17:27:15 +02:00
|
|
|
pkgs.xorg.xinput
|
|
|
|
pkgs.libinput
|
2023-05-18 22:29:52 +02:00
|
|
|
pkgs.openvdb
|
|
|
|
pkgs.tbb_2021_8
|
|
|
|
pkgs.gtk4
|
|
|
|
pkgs.gtk3
|
|
|
|
pkgs.glib
|
|
|
|
pkgs.gsettings-desktop-schemas
|
|
|
|
pkgs.fuse
|
2023-05-30 17:27:15 +02:00
|
|
|
pkgs.libsForQt5.breeze-qt5
|
|
|
|
pkgs.libsForQt5.breeze-gtk
|
2023-06-03 13:15:01 +02:00
|
|
|
pkgs.samba4Full
|
|
|
|
pkgs.tdb
|
2023-05-18 22:29:52 +02:00
|
|
|
|
|
|
|
];
|
|
|
|
|
|
|
|
extraLibraries = pkgs: [
|
|
|
|
pkgs.libkrb5
|
|
|
|
pkgs.keyutils
|
|
|
|
pkgs.ncurses6
|
2023-05-30 17:27:15 +02:00
|
|
|
pkgs.xorg.xinput
|
|
|
|
pkgs.libinput
|
2023-05-18 22:29:52 +02:00
|
|
|
pkgs.fontconfig
|
|
|
|
pkgs.libxcrypt
|
|
|
|
pkgs.gnutls
|
2023-06-03 13:15:01 +02:00
|
|
|
pkgs.samba
|
|
|
|
pkgs.tdb
|
2023-05-18 22:29:52 +02:00
|
|
|
] ++
|
|
|
|
(with config.hardware.opengl; if pkgs.hostPlatform.is64bit
|
|
|
|
then [ package ] ++ extraPackages
|
|
|
|
else [ package32 ] ++ extraPackages32);
|
|
|
|
|
2023-05-30 17:27:15 +02:00
|
|
|
extraEnv = {
|
2023-05-18 22:29:52 +02:00
|
|
|
XDG_DATA_DIRS = "/usr/share:\${XDG_DATA_DIRS}";
|
|
|
|
OBS_VKCAPTURE = "1";
|
2023-05-30 17:27:15 +02:00
|
|
|
};
|
2023-05-18 22:29:52 +02:00
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
cfg = config.materus.profile.steam;
|
|
|
|
in
|
|
|
|
{
|
|
|
|
options.materus.profile.steam.enable = materusPkgs.lib.mkBoolOpt false "Enable materus steam settings for OS";
|
|
|
|
options.materus.profile.steam.package = lib.mkOption {
|
|
|
|
type = lib.types.package;
|
|
|
|
default = steamPkg;
|
|
|
|
description = "Package used by steam";
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
config = lib.mkIf cfg.enable {
|
|
|
|
hardware.steam-hardware.enable = lib.mkDefault true;
|
|
|
|
programs.steam = {
|
|
|
|
enable = lib.mkDefault true;
|
|
|
|
dedicatedServer.openFirewall = lib.mkDefault true;
|
|
|
|
remotePlay.openFirewall = lib.mkDefault true;
|
|
|
|
};
|
|
|
|
environment.sessionVariables = rec {
|
|
|
|
STEAM_EXTRA_COMPAT_TOOLS_PATHS = lib.mkDefault "\${HOME}/.steam/root/compatibilitytools.d";
|
|
|
|
};
|
|
|
|
environment.systemPackages = [
|
|
|
|
steamPkg
|
|
|
|
steamPkg.run
|
|
|
|
|
|
|
|
];
|
|
|
|
};
|
|
|
|
}
|