diff --git a/app/Actions/Site/UpdateDeploymentScript.php b/app/Actions/Site/UpdateDeploymentScript.php
index 47de15bd..f6c29c92 100755
--- a/app/Actions/Site/UpdateDeploymentScript.php
+++ b/app/Actions/Site/UpdateDeploymentScript.php
@@ -12,9 +12,9 @@ class UpdateDeploymentScript
      */
     public function update(Site $site, array $input): void
     {
-        $site->deploymentScript()->update([
-            'content' => $input['script'],
-        ]);
+        $script = $site->deploymentScript;
+        $script->content = $input['script'];
+        $script->save();
     }
 
     /**
diff --git a/app/Models/DeploymentScript.php b/app/Models/DeploymentScript.php
index 4dd0a026..d47b074d 100644
--- a/app/Models/DeploymentScript.php
+++ b/app/Models/DeploymentScript.php
@@ -15,6 +15,15 @@ class DeploymentScript extends AbstractModel
 {
     use HasFactory;
 
+    protected static function boot(): void
+    {
+        parent::boot();
+
+        static::saving(function ($deploymentScript) {
+            $deploymentScript->content = str_replace("\r\n", "\n", $deploymentScript->content);
+        });
+    }
+
     protected $fillable = [
         'site_id',
         'name',
diff --git a/app/SSH/OS/OS.php b/app/SSH/OS/OS.php
index fc65149b..3ce5fa0e 100644
--- a/app/SSH/OS/OS.php
+++ b/app/SSH/OS/OS.php
@@ -162,7 +162,7 @@ public function runScript(string $path, string $script, ?ServerLog $serverLog, ?
         }
         $command = '';
         foreach ($variables as $key => $variable) {
-            $command .= "$key=$variable".PHP_EOL;
+            $command .= "$key=$variable\n";
         }
         $command .= $this->getScript('run-script.sh', [
             'path' => $path,