true, 'version' => $version] : ['installed' => false]; } public static function upgrade() { return self::update(); } public static function install(string $prog) { exec(\neato::get_user_bin . 'snap install -y ' . safeCmdQuotes($prog) . stdErr(), $output, $exit_code); display($output); checkForError($exit_code, "Unable to install: {$prog}"); return $exit_code; } public static function purge(string $prog) { return self::uninstall($prog); } public static function uninstall(string $prog) { exec(\neato::get_user_bin . 'snap remove -y ' . safeCmdQuotes($prog) . stdErr(), $output, $exit_code); display($output); checkForError($exit_code, "Unable to uninstall: {$prog}"); return $exit_code; } /** * @todo fix me */ public static function add_repo(string $repo) { return false; } public static function update() { exec(\neato::get_user_bin . 'snap refresh' . stdErr(), $output, $exit_code); display($output); return $exit_code; } public static function full_update() { return false; } // Have a Backup!! public static function full_system_upgrade() { return false; } public static function list() { exec(\neato::get_user_bin . 'snap list --upgradeable' . stdErr(), $output, $exit_code); display($output); return $exit_code; } /* * shows only the packages installed on the system. */ public static function installed() { exec(\neato::get_user_bin . 'snap --installed' . stdErr(), $output, $exit_code); display($output); return $exit_code; } /* * View the list of mirrors by using the fetch command. */ public static function info() { exec(\neato::get_user_bin . 'snap info --verbose' . stdErr(), $output, $exit_code); display($output); return $exit_code; } /* * Revert a Snap package to a previous version: */ public static function revert() { exec(\neato::get_user_bin . 'snap revert' . stdErr(), $output, $exit_code); display($output); return $exit_code; } }