reformatting
This commit is contained in:
parent
47f0cd1be2
commit
7f59c589a7
5 changed files with 226 additions and 215 deletions
|
@ -111,83 +111,87 @@ in
|
|||
)
|
||||
];
|
||||
|
||||
systemd.user.services.sunshine = {
|
||||
Unit = {
|
||||
Description = "Host for Moonlight Streaming Client";
|
||||
Requires = [ "dbus.service" ];
|
||||
After = [ "graphical-session-pre.target" "network.target" ];
|
||||
PartOf = [ "graphical-session.target" ];
|
||||
};
|
||||
|
||||
Install = {
|
||||
WantedBy = [ "graphical-session.target" ];
|
||||
};
|
||||
|
||||
Service = {
|
||||
WorkingDirectory = "${config.xdg.configHome}/sunshine";
|
||||
Restart = "on-failure";
|
||||
RestartSec = 3;
|
||||
ExecStart = "${sunshine}/bin/sunshine";
|
||||
ExecStartPre =
|
||||
let
|
||||
script = pkgs.writeShellScript "sunshine-pre-start" ''
|
||||
${pkgs.coreutils}/bin/mkdir -p $HOME/.config/sunshine/assets
|
||||
|
||||
${pkgs.coreutils}/bin/rm -rf $HOME/.config/sunshine/assets/shaders
|
||||
${pkgs.coreutils}/bin/rm -rf $HOME/.config/sunshine/assets/web
|
||||
${pkgs.coreutils}/bin/rm -rf $HOME/.config/sunshine/assets/box.png
|
||||
|
||||
${pkgs.coreutils}/bin/cp --no-preserve=all -r ${sunshineAssets}/shaders $HOME/.config/sunshine/assets
|
||||
${pkgs.coreutils}/bin/cp --no-preserve=all -r ${sunshineAssets}/web $HOME/.config/sunshine/assets
|
||||
${pkgs.coreutils}/bin/cp --no-preserve=all ${sunshineAssets}/box.png $HOME/.config/sunshine/assets
|
||||
'';
|
||||
in
|
||||
"${script}";
|
||||
};
|
||||
systemd.user.services.sunshine = {
|
||||
Unit = {
|
||||
Description = "Host for Moonlight Streaming Client";
|
||||
Requires = [ "dbus.service" ];
|
||||
After = [ "graphical-session-pre.target" "network.target" ];
|
||||
PartOf = [ "graphical-session.target" ];
|
||||
};
|
||||
|
||||
systemd.user.services.scc = {
|
||||
Unit = {
|
||||
Description = "User-mode driver and GTK3 based GUI for Steam Controller";
|
||||
After = [ "graphical-session-pre.target" ];
|
||||
PartOf = [ "graphical-session.target" ];
|
||||
};
|
||||
|
||||
Service = {
|
||||
Type = "simple";
|
||||
ExecStart = "${pkgs.sc-controller}/bin/scc-daemon debug";
|
||||
Restart = "always";
|
||||
RestartSec = 5;
|
||||
};
|
||||
|
||||
Install = { WantedBy = [ "graphical-session.target" ]; };
|
||||
Install = {
|
||||
WantedBy = [ "graphical-session.target" ];
|
||||
};
|
||||
|
||||
systemd.user.services.steam = {
|
||||
Unit = {
|
||||
Description = "Start Steam gaming platform";
|
||||
After = [ "graphical-session-pre.target" ];
|
||||
PartOf = [ "graphical-session.target" ];
|
||||
};
|
||||
Service = {
|
||||
WorkingDirectory = "${config.xdg.configHome}/sunshine";
|
||||
Restart = "on-failure";
|
||||
RestartSec = 3;
|
||||
ExecStart = "${sunshine}/bin/sunshine";
|
||||
ExecStartPre =
|
||||
let
|
||||
script = pkgs.writeShellScript "sunshine-pre-start" ''
|
||||
${pkgs.coreutils}/bin/mkdir -p $HOME/.config/sunshine/assets
|
||||
|
||||
Service = {
|
||||
Type = "simple";
|
||||
ExecStart = let
|
||||
${pkgs.coreutils}/bin/rm -rf $HOME/.config/sunshine/assets/shaders
|
||||
${pkgs.coreutils}/bin/rm -rf $HOME/.config/sunshine/assets/web
|
||||
${pkgs.coreutils}/bin/rm -rf $HOME/.config/sunshine/assets/box.png
|
||||
|
||||
${pkgs.coreutils}/bin/cp --no-preserve=all -r ${sunshineAssets}/shaders $HOME/.config/sunshine/assets
|
||||
${pkgs.coreutils}/bin/cp --no-preserve=all -r ${sunshineAssets}/web $HOME/.config/sunshine/assets
|
||||
${pkgs.coreutils}/bin/cp --no-preserve=all ${sunshineAssets}/box.png $HOME/.config/sunshine/assets
|
||||
'';
|
||||
in
|
||||
"${script}";
|
||||
};
|
||||
};
|
||||
|
||||
systemd.user.services.scc = {
|
||||
Unit = {
|
||||
Description = "User-mode driver and GTK3 based GUI for Steam Controller";
|
||||
After = [ "graphical-session-pre.target" ];
|
||||
PartOf = [ "graphical-session.target" ];
|
||||
};
|
||||
|
||||
Service = {
|
||||
Type = "simple";
|
||||
ExecStart = "${pkgs.sc-controller}/bin/scc-daemon debug";
|
||||
Restart = "always";
|
||||
RestartSec = 5;
|
||||
};
|
||||
|
||||
Install = { WantedBy = [ "graphical-session.target" ]; };
|
||||
};
|
||||
|
||||
systemd.user.services.steam = {
|
||||
Unit = {
|
||||
Description = "Start Steam gaming platform";
|
||||
After = [ "graphical-session-pre.target" ];
|
||||
PartOf = [ "graphical-session.target" ];
|
||||
};
|
||||
|
||||
Service = {
|
||||
Type = "simple";
|
||||
ExecStart =
|
||||
let
|
||||
steamStart = pkgs.writeShellScript "steam-start" ''
|
||||
${pkgs.systemd}/bin/systemctl --user stop scc
|
||||
# no sleep is needed here because steam is slow as fuck lol
|
||||
/run/current-system/sw/bin/steam
|
||||
'';
|
||||
in "${steamStart}";
|
||||
ExecStop = let
|
||||
in
|
||||
"${steamStart}";
|
||||
ExecStop =
|
||||
let
|
||||
steamStop = pkgs.writeShellScript "steam-stop" ''
|
||||
${pkgs.coreutils}/bin/sleep 5 # give time for controller to reset
|
||||
${pkgs.systemd}/bin/systemctl --user start scc
|
||||
'';
|
||||
in "${steamStop}";
|
||||
};
|
||||
|
||||
Install = { WantedBy = [ "graphical-session.target" ]; };
|
||||
in
|
||||
"${steamStop}";
|
||||
};
|
||||
|
||||
Install = { WantedBy = [ "graphical-session.target" ]; };
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue