NAME
urpm::main_loop - The install/remove main loop for urpm based programs (urpmi, gurpmi, rpmdrake, drakx)
SYNOPSIS
DESCRIPTION
- run($urpm, $state, $something_was_to_be_done, $ask_unselect, $callbacks)
-
Run the main urpm loop:
mount removable media if needed
split the work in smaller transactions
for each transaction:
prepare the transaction
download packages needed for this small transaction
verify packages
split package that should be installed instead of upgraded,
install source package only (whatever the user is root or not, but use rpm for that)
install/remove other packages
migrate the chrooted rpmdb if needed
display the final success/error message(s)
Warning: locking is left to callers...
Parameters:
- $urpm: the urpm object
- $state: the state object (see URPM)
- $something_was_to_be_done
- $ask_unselect: an array ref of packages that could not be selected
- $callbacks: a hash ref of callbacks :
-
- packages download:
- interaction with user:
- signature management:
- removable media management:
- packages installation callbacks (passed to urpm::install::install(), see URPM for parameters)
- finish callbacks (mainly GUI callbacks for rpmdrake/gurpmi/drakx)
COPYRIGHT
Copyright (C) 1999-2005 MandrakeSoft SA
Copyright (C) 2005-2010 Mandriva SA
Copyright (C) 2011-2020 Mageia