summaryrefslogtreecommitdiffstats
path: root/installer/OpenSLX/OSSetup/MetaPackager/zypper.pm
diff options
context:
space:
mode:
authorOliver Tappe2008-02-27 23:56:28 +0100
committerOliver Tappe2008-02-27 23:56:28 +0100
commitd4fd61af70387019f788f736869a51308b3d7d72 (patch)
tree8ceb197c19ba9825515bc3fff5dbeddebfc16437 /installer/OpenSLX/OSSetup/MetaPackager/zypper.pm
parentWorking on CD preboot ... (diff)
downloadcore-d4fd61af70387019f788f736869a51308b3d7d72.tar.gz
core-d4fd61af70387019f788f736869a51308b3d7d72.tar.xz
core-d4fd61af70387019f788f736869a51308b3d7d72.zip
* 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
Diffstat (limited to 'installer/OpenSLX/OSSetup/MetaPackager/zypper.pm')
-rw-r--r--installer/OpenSLX/OSSetup/MetaPackager/zypper.pm28
1 files changed, 22 insertions, 6 deletions
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