Add un-install option on Debian to remove dependencies too http://sourceforge.net/p/webadmin/bugs/4287/

This commit is contained in:
Jamie Cameron
2013-08-28 15:06:48 -07:00
parent f4bdcdecf6
commit f72a53e224
2 changed files with 18 additions and 2 deletions

View File

@@ -201,6 +201,11 @@ sub delete_options
{
print "<b>$text{'delete_purge'}</b>\n";
print &ui_yesno_radio("purge", 0),"<br>\n";
if ($update_system eq "apt") {
print "<b>$text{'delete_depstoo'}</b>\n";
print &ui_yesno_radio("depstoo", 0),"<br>\n";
}
}
# delete_package(package, [&options], version)
@@ -209,8 +214,17 @@ sub delete_package
{
local $qm = quotemeta($_[0]);
$ENV{'DEBIAN_FRONTEND'} = 'noninteractive';
local $flag = $_[1]->{'purge'} ? "--purge" : "--remove";
local $out = &backquote_logged("dpkg $flag $qm 2>&1 </dev/null");
local $out;
if ($_[1]->{'depstoo'}) {
# Use apt-get
local $flag = $_[1]->{'purge'} ? "--purge" : "";
$out = &backquote_logged("apt-get autoremove $flag $qm 2>&1 </dev/null");
}
else {
# Use dpkg command
local $flag = $_[1]->{'purge'} ? "--purge" : "--remove";
$out = &backquote_logged("dpkg $flag $qm 2>&1 </dev/null");
}
if ($? || $out =~ /which isn.t installed/i) {
return "<pre>$out</pre>";
}

View File

@@ -70,6 +70,8 @@ delete_ok=Delete
delete_nodeps=Ignore dependencies?
delete_noscripts=Skip uninstall scripts?
delete_efile=Invalid temp file to delete
delete_purge=Purge configuration files?
delete_depstoo=Removed unused dependencies as well?
file_title=File Information
file_notfound=No information about $1 is available