zypperoni icon indicating copy to clipboard operation
zypperoni copied to clipboard

Utilize zypper's new preload feature to make downloads faster

Open pavinjosdev opened this issue 10 months ago • 2 comments

Zypper's new preload feature is awesome 💯

The preload feature is much faster for large number of small packages, for example texlive and its dependencies than zypperoni's cumbersome method, though the latter does perform slightly better with larger packages.

To improve zypperoni's performance:

  • Group together small packages (<4 MB: arbitrary figure needs more testing) and use preload to download them
  • Reserve the other async threads for larger packages

Issues:

  • zypper's preload feature currently does not support the zypper download command which zypperoni uses to download packages.
  • zypper install in download only mode has significant startup performance penalty compared to zypper download.
  • zypper install resolves dependencies itself and may pull larger packages along with it to download which would cause conflict with other async threads.

pavinjosdev avatar Mar 08 '25 12:03 pavinjosdev

There's one reason to not use this feature, though. If I'm using zypper and it's preloading / downloading the packages, if I start running qbittorrent and Session at the same time, then zypper will finish supposedly downloading 1.5 GB of data, only to say that some packages weren't downloaded correctly, and so I have to run the command again, and it starts downloading 1.5 GB all over again. I'm not sure if that's the case with zypperoni, but I am using zypperoni right now to do a distribution update just in case.

as-muncher avatar Apr 27 '25 22:04 as-muncher

@as-muncher Strange, it shouldn't happen with zypperoni. 🤖

pavinjosdev avatar May 04 '25 13:05 pavinjosdev