&1 | grep "'.self::PACKAGE_STATUS.'")', $output); if (isset($output[0]) && $output[0] === self::PACKAGE_STATUS) { $result = true; } return $result; } /** * apt add a Warning for no good, * * * @return array */ public function filterAptMessages($output) { $results = []; foreach($output as $message) { if (!in_array($message, self::NOT_ALLOWED) && !empty($message)) { $results[] = $message; } } return $results; } /** * * * @return string */ public function getDistributionId() { return $this->getSystemInfo('DISTRIB_ID'); } /** * * @return string */ public function getDistributionRelease() { return $this->getSystemInfo('DISTRIB_RELEASE'); } /** * * * @return string */ public function getDistributionCodename() { return $this->getSystemInfo('DISTRIB_CODENAME'); } /** * getting information about system version * * @param string $key * @return string * */ public function getSystemInfo($key) { exec('cat /etc/*release 2>&1', $output); $result = NULL; foreach($output as $row) { $line = explode('=', $row); if (isset($line[0]) && $line[0] === $key) { $result = $line[1]; break; } } return $result; } }