summaryrefslogtreecommitdiff
path: root/config/gaming.nix
blob: 76990855e849b7611430655d8a6927502803ad43 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
{ config, lib, pkgs, ... }:
let
  pkgs_unstable = import <nixpkgs_unstable> {};
  my_steam = self: super: {
    steam = super.steam.override {
      # nativeOnly = true;
      withJava = true;
      extraPkgs = p: with pkgs;
        let xorgdeps = with xorg; [
          libX11 libXrender libXrandr libxcb libXmu libpthreadstubs libXext libXdmcp
          libXxf86vm libXinerama libSM libXv libXaw libXi libXcursor libXcomposite
	];
	in [
	samba
	tdb
        glib-networking
        libxkbcommon
	fluidsynth hidapi mesa libdrm
        perl which p7zip gnused gnugrep psmisc opencl-headers
	cups lcms2 mpg123 cairo unixODBC samba4 sane-backends openldap ocl-icd utillinux
	fribidi
        libsndfile libtheora libogg libvorbis libopus libGLU libpcap libpulseaudio
        libao libusb libevdev udev libgcrypt libxml2 libusb libpng libmpeg2 libv4l
        libjpeg libxkbcommon libass libcdio libjack2 libsamplerate libzip libmad libaio
        libcap libtiff libva libgphoto2 libxslt libsndfile giflib zlib glib
        alsaLib zziplib bash dbus keyutils zip cabextract freetype unzip coreutils
        readline gcc SDL SDL2 curl graphite2 gtk2 gtk3 udev ncurses wayland libglvnd
        vulkan-loader xdg_utils sqlite gnutls libbsd
        openldap
        xorg.xrandr
        xorg.xinput
        gnome3.gtk
        zlib
        dbus
        freetype
        glib
        atk
        cairo
        gdk_pixbuf
        pango
        fontconfig
        xorg.libxcb
	libkrb5
	nss
	qt4
	pkgs_unstable.qt514.full
	] ++ xorgdeps;
    };
  };
in
{
  nixpkgs.overlays = [ my_steam ];
  nixpkgs.config.allowBroken = true;

  programs.steam.enable = true;
  hardware.opengl.extraPackages32 = with pkgs.pkgsi686Linux; [ libva ];

  environment.systemPackages = with pkgs; [
    wineWowPackages.staging
    steam
    steam.run
    obs-studio
  ];
}