diff --git a/lib/os/class.ISPConfigDebianOS.inc.php b/lib/os/class.ISPConfigDebianOS.inc.php index 85ce09dfcef97e5000758448c0aa5df6e77ce7af..4dddeb2f05e8f51371b19cf295f5ae242f753922 100644 --- a/lib/os/class.ISPConfigDebianOS.inc.php +++ b/lib/os/class.ISPConfigDebianOS.inc.php @@ -102,8 +102,13 @@ class ISPConfigDebianOS extends ISPConfigBaseOS { 'resolvconf', 'clamav', 'clamav-daemon', + 'clamav-docs', + 'zip', 'unzip', 'bzip2', + 'xz-utils', + 'lzip', + 'rar', 'arj', 'nomarch', 'lzop', @@ -111,15 +116,12 @@ class ISPConfigDebianOS extends ISPConfigBaseOS { 'apt-listchanges', 'libnet-ldap-perl', 'libauthen-sasl-perl', - 'clamav-docs', 'daemon', 'libio-string-perl', 'libio-socket-ssl-perl', 'libnet-ident-perl', - 'zip', 'libnet-dns-perl', - 'libdbd-mysql-perl', - 'dnsutils' + 'libdbd-mysql-perl' ); if(ISPConfig::shallInstall('local-dns')) { @@ -289,6 +291,15 @@ class ISPConfigDebianOS extends ISPConfigBaseOS { } } + protected function addGoAccessRepo() { + ISPConfigLog::info('Activating GoAccess repository.', true); + $cmd = 'echo "deb https://deb.goaccess.io/ $(lsb_release -cs) main" | sudo tee -a /etc/apt/sources.list.d/goaccess.list >/dev/null 2>&1 ; wget -O - https://deb.goaccess.io/gnugpg.key 2>&1 | sudo apt-key --keyring /etc/apt/trusted.gpg.d/goaccess.gpg add - 2>&1'; + $result = $this->exec($cmd); + if($result === false) { + throw new ISPConfigOSException('Command ' . $cmd . ' failed.'); + } + } + protected function shallCompileJailkit() { return true; } @@ -473,6 +484,10 @@ mailman-unsubscribe: "|/var/lib/mailman/mail/mailman unsubscribe mailman"'; $this->addSuryRepo(); } + if(ISPConfig::shallInstall('web')) { + $this->addGoAccessRepo(); + } + $this->updatePackageList(); ISPConfigLog::info('Updating packages (after enabling 3rd party repos).', true); @@ -1003,7 +1018,8 @@ mailman-unsubscribe: "|/var/lib/mailman/mail/mailman unsubscribe mailman"'; 'pure-ftpd-common', 'pure-ftpd-mysql', 'webalizer', - 'awstats' + 'awstats', + 'goaccess' ); $this->installPackages($packages);