add gamer environment, fix sunshine
This commit is contained in:
parent
ea38b66b82
commit
81b226d1b3
@ -39,7 +39,7 @@
|
||||
flake = false;
|
||||
};
|
||||
sunshine = {
|
||||
url = "git+ssh://git@github.com/loki-47-6F-64/sunshine.git";
|
||||
url = "git+ssh://git@github.com/loki-47-6F-64/sunshine.git?submodules=true";
|
||||
flake = false;
|
||||
};
|
||||
};
|
||||
@ -60,6 +60,7 @@
|
||||
colors = import ./home-manager/modules/colors.nix inputs;
|
||||
fonts = import ./home-manager/modules/fonts.nix;
|
||||
gaming = import ./home-manager/modules/gaming.nix inputs;
|
||||
gamerenv = import ./home-manager/modules/gamerenv.nix;
|
||||
all = import ./home-manager/modules/default.nix inputs;
|
||||
};
|
||||
|
||||
|
@ -9,6 +9,7 @@ inputs:
|
||||
(import ./ezpcusr.nix inputs)
|
||||
(import ./colors.nix inputs)
|
||||
(import ./gaming.nix inputs)
|
||||
./gamerenv.nix
|
||||
./fonts.nix
|
||||
];
|
||||
}
|
||||
|
@ -208,7 +208,7 @@ in
|
||||
'';
|
||||
|
||||
config = {
|
||||
terminal = lib.mkDefault "kitty";
|
||||
terminal = lib.mkDefault "${pkgs.kitty}/bin/kitty";
|
||||
|
||||
modifier = lib.mkDefault "Mod4";
|
||||
|
||||
@ -691,7 +691,7 @@ in
|
||||
|
||||
programs.rofi = {
|
||||
enable = lib.mkDefault true;
|
||||
terminal = lib.mkDefault "kitty";
|
||||
terminal = lib.mkDefault "${pkgs.kitty}/bin/kitty";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
43
home-manager/modules/gamerenv.nix
Normal file
43
home-manager/modules/gamerenv.nix
Normal file
@ -0,0 +1,43 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.gamerenv;
|
||||
in
|
||||
{
|
||||
options.gamerenv = {
|
||||
enable = mkEnableOption "Enable gaming environment stuff";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
programs.rofi = {
|
||||
enable = lib.mkDefault true;
|
||||
terminal = lib.mkDefault "${pkgs.kitty}/bin/kitty";
|
||||
};
|
||||
|
||||
programs.kitty.enable = lib.mkDefault true;
|
||||
|
||||
programs.chromium.enable = lib.mkDefault true;
|
||||
|
||||
fonts.enable = lib.mkDefault true;
|
||||
|
||||
colors = {
|
||||
enable = lib.mkDefault true;
|
||||
};
|
||||
|
||||
xsession.enable = true;
|
||||
xsession.windowManager.i3 = {
|
||||
enable = true;
|
||||
package = pkgs.i3-gaps;
|
||||
config = {
|
||||
modifier = "Mod1";
|
||||
terminal = "${pkgs.kitty}/bin/kitty";
|
||||
floating.criteria = [{ class = "[.]*"; }];
|
||||
defaultWorkspace = "workspace number 1";
|
||||
keybindings = lib.mkOptionDefault {
|
||||
"Mod1+F4" = "kill";
|
||||
"${config.xsession.windowManager.i3.config.modifier}+q" = "kill";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
@ -10,7 +10,14 @@ let
|
||||
|
||||
sunshine = pkgs.stdenv.mkDerivation {
|
||||
name = "sunshine";
|
||||
src = inputs.sunshine;
|
||||
# src = inputs.sunshine;
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "loki-47-6F-64";
|
||||
repo = "sunshine";
|
||||
rev = "e4c9c292e57d39136df2d46d1e9b66eba53f3bd3";
|
||||
sha256 = "sha256-YrQHHpw7GOcdlnyJI28VShYFrTRq7kpILnkyCYf77NE=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
cmakeFlags = [ "-DSUNSHINE_ASSETS_DIR=assets" "-DSUNSHINE_DEFAULT_DIR=${sunshineAssets}" ];
|
||||
|
||||
@ -28,22 +35,25 @@ let
|
||||
'';
|
||||
|
||||
postFixup = ''
|
||||
addOpenGLRunpath $out/bin/sunshine
|
||||
wrapProgram $out/bin/sunshine --prefix LD_LIBRARY_PATH ":" "/run/opengl-driver/lib"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = with pkgs; [ cmake pkgconfig addOpenGLRunpath ];
|
||||
nativeBuildInputs = with pkgs; [ cmake pkgconfig makeWrapper ];
|
||||
hardeningDisable = [ "format" ];
|
||||
|
||||
buildInputs = with pkgs; [
|
||||
openssl
|
||||
(boost.override { enableShared = false; enableStatic = true; })
|
||||
ffmpeg-full
|
||||
wayland
|
||||
valgrind
|
||||
libffi
|
||||
ffmpeg
|
||||
libevdev
|
||||
libcap
|
||||
libdrm
|
||||
libpulseaudio
|
||||
libopus
|
||||
cudatoolkit_11
|
||||
cudatoolkit_11_4
|
||||
xorg.libXrandr
|
||||
xorg.libXfixes
|
||||
xorg.libXtst
|
||||
@ -136,13 +146,6 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
programs.rofi = {
|
||||
enable = lib.mkDefault true;
|
||||
terminal = lib.mkDefault "${pkgs.kitty}/bin/kitty";
|
||||
};
|
||||
|
||||
programs.kitty.enable = lib.mkDefault true;
|
||||
|
||||
systemd.user.services.scc = {
|
||||
Unit = {
|
||||
Description = "User-mode driver and GTK3 based GUI for Steam Controller";
|
||||
@ -186,13 +189,5 @@ in
|
||||
|
||||
Install = { WantedBy = [ "graphical-session.target" ]; };
|
||||
};
|
||||
|
||||
programs.chromium.enable = lib.mkDefault true;
|
||||
|
||||
fonts.enable = lib.mkDefault true;
|
||||
|
||||
colors = {
|
||||
enable = lib.mkDefault true;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
@ -92,7 +92,9 @@ in
|
||||
vaapiIntel
|
||||
vaapiVdpau
|
||||
libvdpau-va-gl
|
||||
libGL
|
||||
];
|
||||
setLdLibraryPath = true;
|
||||
};
|
||||
|
||||
# Support for steam hardware
|
||||
@ -170,11 +172,19 @@ in
|
||||
}
|
||||
];
|
||||
|
||||
networking.firewall.allowedTCPPorts = [
|
||||
# Steam remote play
|
||||
networking.firewall.allowedTCPPorts = [ 27036 ];
|
||||
27036
|
||||
# Sunshine/moonlight streaming
|
||||
47984 47989 48010
|
||||
];
|
||||
|
||||
networking.firewall.allowedUDPPorts = [
|
||||
# Used for upnp or something?
|
||||
networking.firewall.allowedUDPPorts = [ 1900 ];
|
||||
1900
|
||||
# Sunshine/moonlight streaming
|
||||
47998 47999 48000 48002 48010
|
||||
];
|
||||
|
||||
# Shit breaks without this lol
|
||||
programs.dconf.enable = lib.mkDefault true;
|
||||
|
Loading…
Reference in New Issue
Block a user