f24ab68f04
Previously, packages were installed one at a time in a loop. This caused a couple of problems. First, it was a performance issue - pacman would have to perform all of its checks once per package. This is unnecessarily costly, especially when you're trying to install several related packages at the same time. Second, if a package you're trying to install depends on a virtual package that is provided by several different packages (such as the "libgl" package on Arch) and you aren't also installing something that provides that virtual package at the same time, pacman will produce an interactive prompt to allow the user to select a relevant package. This is obviously incompatible with how ansible operates. Yes, this problem could be avoided by installing packages in a different order, but the order of installation shouldn't matter, and there may be situations where it is not possible to control the order of installation. With this refactoring, all of the above problems are avoided. The code will now work out all of the packages that need to be installed from any configured repositories and any packages that need to be installed from local files, and then install all the repository packages in one go and then all of the local file packages in one go. |
||
---|---|---|
.. | ||
ansible |