summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorErich Eckner <git@eckner.net>2019-03-07 13:58:16 +0100
committerErich Eckner <git@eckner.net>2019-03-07 13:58:16 +0100
commit229df61eba717104bbaa34b6112e0b4fd5503598 (patch)
tree237f1c4b0f8e650e17f232bbb103d4d901ab194c /lib
parent96d39b398eb9b57fe808e34b40e7123204eef1db (diff)
downloadwebsite-229df61eba717104bbaa34b6112e0b4fd5503598.tar.xz
table `upstream_packages` makes available_upstream_packages() obsolete
Diffstat (limited to 'lib')
-rw-r--r--lib/helper.php86
1 files changed, 0 insertions, 86 deletions
diff --git a/lib/helper.php b/lib/helper.php
index 0d7c5e5..43bd8a8 100644
--- a/lib/helper.php
+++ b/lib/helper.php
@@ -187,89 +187,3 @@ function add_fancy_unit($value, $unit) {
$exponent = max(0,min(count($suffixes)-1,round(log(abs($value))/log(1024)-1)));
return sprintf("%.2f %s%s", $value / pow(1024,$exponent), $suffixes[8 + $exponent], $unit);
}
-
-function parse_package_filename($filename, $repo = NULL) {
- if (! preg_match(
- '/^(\S+)-(([^-:]+):)?([^-:]+)-([^-]+)-([^-]+)\.pkg\.tar\.xz$/',
- $filename,
- $matches
- ))
- return;
- $result = array(
- 'pkgname' => $matches[1],
- 'pkgver' => $matches[4],
- 'pkgrel' => $matches[5],
- 'arch' => $matches[6]
- );
- if (!empty($repo))
- $result['repo'] = $repo;
- if (empty($matches[3]))
- $result['epoch'] = '0';
- else
- $result['epoch'] = $matches[3];
-
- return $result;
-}
-
-function find_upstream_packages_in($repo) {
- $parse_package_filename_in_repo = function($filename) use ($repo) {
- return parse_package_filename($filename, $repo);
- };
- if (!file_exists("/var/lib/pacman/sync/" . $repo . ".db"))
- return NULL;
- return
- array_map(
- $parse_package_filename_in_repo,
- explode(
- "\n",
- shell_exec(
- "tar -Oxzf /var/lib/pacman/sync/" . $repo . ".db" .
- " | grep -xFA1 '%FILENAME%'" .
- " | grep -vxF '%FILENAME%\n--'"
- )
- )
- );
-}
-
-function available_upstream_packages($columns = NULL) {
- $available_upstream_packages = apcu_fetch('available_upstream_packages', $apcu_success);
- if ($apcu_success == false) {
- $available_upstream_packages_repowise = array_map(
- 'find_upstream_packages_in',
- array(
- 'core', 'extra', 'community'
- )
- );
- $available_upstream_packages = array();
- foreach ($available_upstream_packages_repowise as $sub_array)
- $available_upstream_packages =
- array_merge(
- $available_upstream_packages,
- $sub_array
- );
- apcu_store('available_upstream_packages', $available_upstream_packages, 1800);
- }
-
- if (!isset($columns))
- return $available_upstream_packages;
- if (!is_array($columns))
- return array_column($available_upstream_packages, $columns);
- $select_columns_of_interest = function($row) use ($columns) {
- $select = function($column) use ($row) {
- return $row[$column];
- };
- return
- array_combine(
- $columns,
- array_map(
- $select,
- $columns
- )
- );
- };
- return
- array_map(
- $select_columns_of_interest,
- $available_upstream_packages
- );
-}