From 887d32c55163331432444ec55905419c8bdbfb84 Mon Sep 17 00:00:00 2001 From: "Dr. Yves Kreis" Date: Fri, 1 Sep 2023 01:59:55 +0300 Subject: [PATCH] UnattendedUpgrades --- lib/os/class.ISPConfigDebianOS.inc.php | 38 +++++++++++++++++++++----- 1 file changed, 31 insertions(+), 7 deletions(-) diff --git a/lib/os/class.ISPConfigDebianOS.inc.php b/lib/os/class.ISPConfigDebianOS.inc.php index 309971d..85c6ea8 100644 --- a/lib/os/class.ISPConfigDebianOS.inc.php +++ b/lib/os/class.ISPConfigDebianOS.inc.php @@ -1043,7 +1043,7 @@ X11Forwarding no'; ); $this->installPackages($packages); - // Enable UnattendUpgrades to run every day + // Enable UnattendedUpgrades to run every day $unattendedupgrades = 'APT::Periodic::Update-Package-Lists "1";' . "\n" . 'APT::Periodic::Unattended-Upgrade "1";'; file_put_contents('/etc/apt/apt.conf.d/20auto-upgrades', $unattendedupgrades); @@ -1060,14 +1060,38 @@ X11Forwarding no'; } } - // Enable sury repo for unattended upgrades if sury repo is used + // Enable repositories + $unattendedupgrades = ''; + + // rspam repository + if(ISPConfig::shallInstall('mail') && !ISPConfig::wantsAmavis()) { + $unattendedupgrades .= ' "origin=Rspamd";' . "\n"; + } + + // sury php repository if(ISPConfig::wantsPHP() !== 'system') { - $replacements = array( - 'Unattended-Upgrade::Origins-Pattern {' => 'Unattended-Upgrade::Origins-Pattern { - "site=packages.sury.org";' - ); - $result = $this->replaceContents('/etc/apt/apt.conf.d/50unattended-upgrades', $replacements); + $unattendedupgrades .= ' "origin=deb.sury.org";' . "\n"; } + + // GoAccess repository + if(ISPConfig::shallInstall('web')) { + $unattendedupgrades .= ' "origin=GoAccess Repository";' . "\n"; + } + + // Enable repositories if used + if(!empty($unattendedupgrades)) { + $unattendedupgrades = 'Unattended-Upgrade::Origins-Pattern {' . "\n" . $unattendedupgrades; + + // Enable {distro_codename}-updates + $unattendedupgrades .= ' "origin=Debian,codename=${distro_codename}-updates";' . "\n"; + + $unattendedupgrades .= '}' . "\n"; + } + + // Enable mail to root + $unattendedupgrades .= 'Unattended-Upgrade::Mail "root";'; + + file_put_contents('/etc/apt/apt.conf.d/51unattended-upgrades', $unattendedupgrades); } protected function shallCompileJailkit() { -- GitLab