From 1c7f4a20f709a952cff1cad6b59952ee400c854f Mon Sep 17 00:00:00 2001 From: Ben Date: Wed, 22 Jul 2026 23:22:31 +0200 Subject: [PATCH 1/3] fix: run Satisfactory as steam user --- ct/satisfactory.sh | 30 ++++++++++++++++++++++++++++-- install/satisfactory-install.sh | 18 ++++++++++++++---- 2 files changed, 42 insertions(+), 6 deletions(-) diff --git a/ct/satisfactory.sh b/ct/satisfactory.sh index f46f2b8ddb..96b6a9cfd6 100644 --- a/ct/satisfactory.sh +++ b/ct/satisfactory.sh @@ -35,10 +35,35 @@ function update_script() { systemctl stop satisfactory msg_ok "Stopped ${APP}" - create_backup /root/.config/Epic/FactoryGame/Saved + msg_info "Configuring Steam Service User" + if ! id -u steam >/dev/null 2>&1; then + useradd --system \ + --create-home \ + --home-dir /home/steam \ + --shell /usr/sbin/nologin \ + steam + fi + install -d -o steam -g steam \ + /home/steam \ + /home/steam/.config/Epic/FactoryGame \ + /etc/systemd/system/satisfactory.service.d + if [[ -d /root/.config/Epic/FactoryGame/Saved && ! -e /home/steam/.config/Epic/FactoryGame/Saved ]]; then + mv /root/.config/Epic/FactoryGame/Saved /home/steam/.config/Epic/FactoryGame/Saved + fi + chown -R steam:steam /opt/satisfactory /opt/steamcmd /home/steam + cat </etc/systemd/system/satisfactory.service.d/user.conf +[Service] +User=steam +Group=steam +Environment=HOME=/home/steam +EOF + systemctl daemon-reload + msg_ok "Configured Steam Service User" + + create_backup /home/steam/.config/Epic/FactoryGame/Saved msg_info "Updating ${APP}" - if $STD /opt/steamcmd/steamcmd.sh \ + if $STD runuser -u steam -- /opt/steamcmd/steamcmd.sh \ +force_install_dir /opt/satisfactory/server \ +login anonymous \ +app_update 1690800 -beta public validate \ @@ -52,6 +77,7 @@ function update_script() { fi restore_backup + chown -R steam:steam /opt/satisfactory /opt/steamcmd /home/steam msg_info "Starting ${APP}" systemctl start satisfactory diff --git a/install/satisfactory-install.sh b/install/satisfactory-install.sh index 20e75246a3..830e9f3e72 100644 --- a/install/satisfactory-install.sh +++ b/install/satisfactory-install.sh @@ -19,16 +19,23 @@ $STD apt install -y \ lib32stdc++6 msg_ok "Installed Dependencies" -msg_info "Creating Application Directories" -mkdir -p /opt/satisfactory/server -msg_ok "Created Application Directories" +msg_info "Creating Steam User and Application Directories" +useradd --system \ + --create-home \ + --home-dir /home/steam \ + --shell /usr/sbin/nologin \ + steam +mkdir -p /opt/satisfactory/server /opt/steamcmd +chown -R steam:steam /opt/satisfactory /opt/steamcmd /home/steam +msg_ok "Created Steam User and Application Directories" fetch_and_deploy_from_url \ "https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz" \ "/opt/steamcmd" +chown -R steam:steam /opt/steamcmd msg_info "Installing Satisfactory Dedicated Server" -$STD /opt/steamcmd/steamcmd.sh \ +$STD runuser -u steam -- /opt/steamcmd/steamcmd.sh \ +force_install_dir /opt/satisfactory/server \ +login anonymous \ +app_update 1690800 -beta public validate \ @@ -44,8 +51,11 @@ After=network-online.target [Service] Type=simple +User=steam +Group=steam WorkingDirectory=/opt/satisfactory/server Environment=LANG=C.UTF-8 +Environment=HOME=/home/steam ExecStart=/opt/satisfactory/server/FactoryServer.sh -log Restart=on-failure RestartSec=10 From 0b86e72ecfa2bc82e4fef15b650e31b49301cab6 Mon Sep 17 00:00:00 2001 From: "CanbiZ (MickLesk)" <47820557+MickLesk@users.noreply.github.com> Date: Thu, 23 Jul 2026 14:24:15 +0200 Subject: [PATCH 2/3] Update ct/satisfactory.sh Co-authored-by: Sam Heinz --- ct/satisfactory.sh | 25 ------------------------- 1 file changed, 25 deletions(-) diff --git a/ct/satisfactory.sh b/ct/satisfactory.sh index 96b6a9cfd6..70703d20e6 100644 --- a/ct/satisfactory.sh +++ b/ct/satisfactory.sh @@ -35,31 +35,6 @@ function update_script() { systemctl stop satisfactory msg_ok "Stopped ${APP}" - msg_info "Configuring Steam Service User" - if ! id -u steam >/dev/null 2>&1; then - useradd --system \ - --create-home \ - --home-dir /home/steam \ - --shell /usr/sbin/nologin \ - steam - fi - install -d -o steam -g steam \ - /home/steam \ - /home/steam/.config/Epic/FactoryGame \ - /etc/systemd/system/satisfactory.service.d - if [[ -d /root/.config/Epic/FactoryGame/Saved && ! -e /home/steam/.config/Epic/FactoryGame/Saved ]]; then - mv /root/.config/Epic/FactoryGame/Saved /home/steam/.config/Epic/FactoryGame/Saved - fi - chown -R steam:steam /opt/satisfactory /opt/steamcmd /home/steam - cat </etc/systemd/system/satisfactory.service.d/user.conf -[Service] -User=steam -Group=steam -Environment=HOME=/home/steam -EOF - systemctl daemon-reload - msg_ok "Configured Steam Service User" - create_backup /home/steam/.config/Epic/FactoryGame/Saved msg_info "Updating ${APP}" From 999b738c49788b44376a9aeb6a033814084d8c11 Mon Sep 17 00:00:00 2001 From: Sam Heinz Date: Fri, 24 Jul 2026 13:55:01 +1000 Subject: [PATCH 3/3] Update ct/satisfactory.sh --- ct/satisfactory.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/ct/satisfactory.sh b/ct/satisfactory.sh index 70703d20e6..0c999c65bb 100644 --- a/ct/satisfactory.sh +++ b/ct/satisfactory.sh @@ -52,7 +52,6 @@ function update_script() { fi restore_backup - chown -R steam:steam /opt/satisfactory /opt/steamcmd /home/steam msg_info "Starting ${APP}" systemctl start satisfactory