yarn: add session for steam
This commit is contained in:
parent
6d3736c6db
commit
916adf37ee
@ -49,13 +49,44 @@
|
|||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
default_session = {
|
default_session = {
|
||||||
command = "${lib.getExe pkgs.tuigreet} --sessions --time";
|
command = "${lib.getExe pkgs.tuigreet} --sessions /etc/xdg/wayland-sessions/ --time";
|
||||||
user = username;
|
user = username;
|
||||||
};
|
};
|
||||||
terminal.vt = lib.mkForce 2;
|
terminal.vt = lib.mkForce 2;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# Create steam session script
|
||||||
|
environment.etc."steam-session-greetd".source = pkgs.writeShellScript "steam-session-greetd" ''
|
||||||
|
export STEAM_RUNTIME=1
|
||||||
|
export SDL_VIDEODRIVER=wayland
|
||||||
|
export QT_QPA_PLATFORM=wayland
|
||||||
|
export GDK_BACKEND=wayland
|
||||||
|
export XDG_CURRENT_DESKTOP=Steam
|
||||||
|
export XDG_SESSION_TYPE=wayland
|
||||||
|
export MANGOHUD=1
|
||||||
|
exec ${pkgs.gamescope}/bin/gamescope --adaptive-sync --hdr-enabled --mangoapp --rt --steam -- ${pkgs.steam}/bin/steam -pipewire-dmabuf -tenfoot
|
||||||
|
'';
|
||||||
|
|
||||||
|
# Create system-wide session files
|
||||||
|
environment.etc."xdg/wayland-sessions/steam-session.desktop".text = ''
|
||||||
|
[Desktop Entry]
|
||||||
|
Name=Steam Session
|
||||||
|
Comment=Steam Deck-like gaming session with gamescope
|
||||||
|
Exec=/etc/steam-session-greetd
|
||||||
|
Type=Application
|
||||||
|
DesktopNames=steam
|
||||||
|
'';
|
||||||
|
|
||||||
|
environment.etc."xdg/wayland-sessions/niri-session.desktop".text = ''
|
||||||
|
[Desktop Entry]
|
||||||
|
Name=Niri Session
|
||||||
|
Comment=Niri Wayland compositor
|
||||||
|
Exec=${pkgs.niri}/bin/niri-session
|
||||||
|
Type=Application
|
||||||
|
DesktopNames=niri
|
||||||
|
'';
|
||||||
|
|
||||||
system.activationScripts = {
|
system.activationScripts = {
|
||||||
# FIX: https://github.com/NixOS/nix/issues/2982
|
# FIX: https://github.com/NixOS/nix/issues/2982
|
||||||
"profile-channel-dummy".text = ''
|
"profile-channel-dummy".text = ''
|
||||||
|
|||||||
@ -21,5 +21,8 @@
|
|||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
steamtinkerlaunch
|
steamtinkerlaunch
|
||||||
|
mangohud
|
||||||
|
goverlay
|
||||||
|
yad
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
@ -71,26 +71,6 @@
|
|||||||
'')
|
'')
|
||||||
];
|
];
|
||||||
|
|
||||||
# Create desktop entry for Steam session
|
|
||||||
xdg.dataFile."wayland-sessions/steam-session.desktop".text = ''
|
|
||||||
[Desktop Entry]
|
|
||||||
Name=Steam Session
|
|
||||||
Comment=Steam Deck-like gaming session with gamescope
|
|
||||||
Exec=${config.home.homeDirectory}/.nix-profile/bin/steam-session-greetd
|
|
||||||
Type=Application
|
|
||||||
DesktopNames=steam
|
|
||||||
'';
|
|
||||||
|
|
||||||
# Create desktop entry for Niri session
|
|
||||||
xdg.dataFile."wayland-sessions/niri-session.desktop".text = ''
|
|
||||||
[Desktop Entry]
|
|
||||||
Name=Niri Session
|
|
||||||
Comment=Niri Wayland compositor
|
|
||||||
Exec=${config.programs.niri.package}/bin/niri-session
|
|
||||||
Type=Application
|
|
||||||
DesktopNames=niri
|
|
||||||
'';
|
|
||||||
|
|
||||||
programs.obs-studio = {
|
programs.obs-studio = {
|
||||||
enable = true;
|
enable = true;
|
||||||
plugins = with pkgs.obs-studio-plugins; [
|
plugins = with pkgs.obs-studio-plugins; [
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user