mirror of
https://gitlab.archlinux.org/archlinux/aurweb.git
synced 2025-02-03 10:43:03 +01:00
Replace web/lib/config.inc.php with an INI-style configuration file. This allows us to get rid of several globals and makes it easier to use the same configuration file in external scripts. Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
46 lines
1.1 KiB
PHP
Executable file
46 lines
1.1 KiB
PHP
Executable file
#!/usr/bin/php
|
|
<?php
|
|
# Run this script by providing it with the top path of AUR.
|
|
# In that path you should see a file lib/aur.inc
|
|
#
|
|
# This will remove files which belong to deleted packages
|
|
# in unsupported.
|
|
#
|
|
# ex: php cleanup dev/aur/web
|
|
#
|
|
$dir = $argv[1];
|
|
|
|
if (empty($dir)) {
|
|
echo "Please specify AUR directory.\n";
|
|
exit;
|
|
}
|
|
|
|
set_include_path(get_include_path() . PATH_SEPARATOR . "$dir/lib");
|
|
include("confparser.inc.php");
|
|
include("aur.inc.php");
|
|
include("pkgfuncs.inc.php");
|
|
|
|
$count = 0;
|
|
|
|
$incoming_dir = config_get('paths', 'storage');
|
|
$buckets = scandir($incoming_dir);
|
|
foreach ($buckets as $bucket) {
|
|
$bucketpath = $incoming_dir . $bucket;
|
|
if ($bucket == '.' || $bucket == '..' || !is_dir($bucketpath)) {
|
|
continue;
|
|
}
|
|
$files = scandir($incoming_dir . $bucket);
|
|
foreach ($files as $pkgname) {
|
|
if ($pkgname == '.' || $pkgname == '..') {
|
|
continue;
|
|
}
|
|
$fullpath = $incoming_dir . $bucket . "/" . $pkgname;
|
|
if (!pkg_from_name($pkgname) && is_dir($fullpath)) {
|
|
echo 'Removing ' . $fullpath . "\n";
|
|
rm_tree($fullpath);
|
|
$count++;
|
|
}
|
|
}
|
|
}
|
|
|
|
echo "\nRemoved $count directories.\n";
|