gurpm::RPMProgressDialog is a widget for gurpmi, rpmdrake (drakx already has its own) that presents a global progress bar.
How to use:
my $w = gurpm::RPMProgressDialog->new: #$w->change_widget(Gtk3::Box->new); label(N("Preparing packages installation...")); ... # compute packages to install/remove... $w->init_progressbar; urpm::main_loop::run($urpm, $state, $nb, \@ask_unselect, { trans_log => \&gurpm::RPMProgressDialog::callback_download, pre_check_sig => \&gurpm::RPMProgressDialog::pre_check_sig, inst => \&gurpm::RPMProgressDialog::callback_inst, trans => \&gurpm::RPMProgressDialog::callback_inst, uninst => \&gurpm::RPMProgressDialog::callback_inst, ....
Creates a new Progress Dialog.
Arguments are an urpm object and a quit routine reference.
Replaces the contents of the main window with the specified box (avoids popup multiplication)
sets the window to a please-wait message
Put a progress bar in the dialog.
Update the progress label
Update the progress bar
Add a "Cancel" button, with $cancel_msg as label, calling $cancel_cb when clicked.
Disable the "Cancel" button if any.
Disable the "Cancel" button if any and make it insensitive so that it'll never be usable again.
tell Gtk+ to refresh the dialog content if needed.
Whether some package has been installed or removed
Whether downloading has been canceled or not.
This callback is called when checking packages before installing them.
Its purpose is to display installation progress in the dialog.
This callback is called when a new RPM DB transaction is created and when packages are installed.
This callback is called when packages are downloaded prior being installed in a RPM transaction.
Its purpose is to display download progress in the dialog.
This callback is to be called when canceling packages download.
Copyright (C) 2005 MandrakeSoft SA
Copyright (C) 2005-2010 Mandriva SA
Copyright (C) 2011-2020 Mageia
To install urpmi, copy and paste the appropriate command in to your terminal.
cpanm
cpanm urpmi
CPAN shell
perl -MCPAN -e shell install urpmi
For more information on module installation, please visit the detailed CPAN module installation guide.