Salta al contenuto principale

SGS closed issue #4: [reflector] garuda-update often fails with package not f...

I've had abysmal success rates using garuda-update since I've install this distro last year. This is due to the mirror list produced by reflector which is missing loads of packages all of the time causing the update to fail. After looking at the reflector script, how it's used in main-update, and trying to replicate its process manually to visualize the data, I've quickly understood what was happening. I propose that we add --delay 0.25 to the update script. As opposed to the --latest parameter which keeps the top X mirrors that finished their sync the most recently, --delay only keep mirrors that have initiated their last sync within the last X hours. This ensures mirrors which finished a sync in the last second but took 5 days to complete the sync (meaning it is still 5 days out of date), are kept out of the list. This is crucial for a continuously updated distribution like Garuda which depends on updates being released every day. From what I have seen, this adding this filter reduces the list of mirrors to 15-20 depending on the day, before applying the --latest and --fastest limiters. The --age parameter might not be useful anymore with this change. I've been using this fix for a few months now, patching the script manually every time it updates, and I have never seen a package not found error since then. The errors comes back instantly if I forget to patch the script again, indicating that this is really what fixes my issues.