From d4fd61af70387019f788f736869a51308b3d7d72 Mon Sep 17 00:00:00 2001 From: Oliver Tappe Date: Wed, 27 Feb 2008 22:56:28 +0000 Subject: * OSPlugin::Engine now provides a real support interface for plugins, which can be used to get info about the vendor-OS and distro, install/uninstall packages, download files (and more stuff to come). * Adjusted OSSetup::Engine and OSSetup::MetaPackager to the demands of the new support interface. git-svn-id: http://svn.openslx.org/svn/openslx/trunk@1580 95ad53e4-c205-0410-b2fa-d234c58c8868 --- installer/OpenSLX/OSSetup/MetaPackager/zypper.pm | 28 +++++++++++++++++++----- 1 file changed, 22 insertions(+), 6 deletions(-) (limited to 'installer/OpenSLX/OSSetup/MetaPackager/zypper.pm') diff --git a/installer/OpenSLX/OSSetup/MetaPackager/zypper.pm b/installer/OpenSLX/OSSetup/MetaPackager/zypper.pm index bb50ad4c..04554e70 100644 --- a/installer/OpenSLX/OSSetup/MetaPackager/zypper.pm +++ b/installer/OpenSLX/OSSetup/MetaPackager/zypper.pm @@ -41,7 +41,8 @@ sub initPackageSources # remove any existing channels slxsystem("rm -f /etc/zypp/repos.d/*"); - return; + + return 1; } sub setupPackageSource @@ -61,21 +62,35 @@ sub setupPackageSource die _tr("unable to add repo '%s' (%s)\n", $repoName, $!); } - return; + return 1; } sub installSelection { - my $self = shift; + my $self = shift; my $pkgSelection = shift; + my $doRefresh = shift || 0; - if (slxsystem("zypper --non-interactive refresh")) { + if ($doRefresh && slxsystem("zypper --non-interactive refresh")) { die _tr("unable to update repo info (%s)\n", $!); } if (slxsystem("zypper --non-interactive install $pkgSelection")) { die _tr("unable to install selection (%s)\n", $!); } - return; + + return 1; +} + +sub removeSelection +{ + my $self = shift; + my $pkgSelection = shift; + + if (slxsystem("zypper --non-interactive remove $pkgSelection")) { + die _tr("unable to remove selection (%s)\n", $!); + } + + return 1; } sub updateBasicVendorOS @@ -89,7 +104,8 @@ sub updateBasicVendorOS } die _tr("unable to update this vendor-os (%s)\n", $!); } - return; + + return 1; } 1; \ No newline at end of file -- cgit v1.2.3-55-g7522