summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEudyptula <eitan@mosenkis.net>2009-07-16 14:06:40 -0400
committerEudyptula <eitan@mosenkis.net>2009-07-16 14:06:40 -0400
commit96f81d7e198146a84dfcb3d9af8f51c3924173a6 (patch)
tree1fc8b8c12cbc1b0b8ebab900539621d6d3388aca /backend
parentDivided gentoo_portage backend into several parts; Added another config step ... (diff)
downloadingenue-96f81d7e198146a84dfcb3d9af8f51c3924173a6.tar.gz
ingenue-96f81d7e198146a84dfcb3d9af8f51c3924173a6.tar.bz2
ingenue-96f81d7e198146a84dfcb3d9af8f51c3924173a6.zip
Add dev-manager support to gentoo/portage modules
Diffstat (limited to 'backend')
-rw-r--r--backend/modules/gentoo_portage/build.php7
-rw-r--r--backend/modules/gentoo_portage/dev-manager.php9
-rw-r--r--backend/modules/gentoo_portage/packages.php4
3 files changed, 16 insertions, 4 deletions
diff --git a/backend/modules/gentoo_portage/build.php b/backend/modules/gentoo_portage/build.php
index fab11e2..599c9fe 100644
--- a/backend/modules/gentoo_portage/build.php
+++ b/backend/modules/gentoo_portage/build.php
@@ -14,13 +14,14 @@ function gentoo_portage_build(&$build, &$opts, &$W) {
if ($conf['debug'])
execute_command_with_env('Log portage setup', 'emerge --info', $prtg_cfgrt);
require(dirname(__FILE__).'/emerge-system.php'); // __DIR__ 5.3.0
- if (in_array('timezone', $extra)) {
+ if (in_array('timezone', $extra))
require(dirname(__FILE__).'/timezone.php'); // __DIR__ 5.3.0
- }
+ if (in_array('dev-manager', $extra))
+ require(dirname(__FILE__).'/dev-manager.php'); // __DIR__ 5.3.0
if ($opts['bundler'] == 'livecd')
execute_command_with_env('Install LiveCD utilities', 'emerge -1 livecd-tools', $prtg_cfgrt);
if (strlen($opts['install_packages'])) {
- $pkgs=explode(' ', $opts['install_packages']);
+ $pkgs=$opts['install_packages'];
require(dirname(__FILE__).'/packages.php'); // __DIR__ 5.3.0
}
return $I;
diff --git a/backend/modules/gentoo_portage/dev-manager.php b/backend/modules/gentoo_portage/dev-manager.php
new file mode 100644
index 0000000..47a95ac
--- /dev/null
+++ b/backend/modules/gentoo_portage/dev-manager.php
@@ -0,0 +1,9 @@
+<?php
+if ($opts['dev-manager'] == 'udev') {
+ $pkgs='sys-fs/udev';
+} else { // if ($opts['dev-manager'] == 'static-dev') {
+ execute_command_with_env('Uninstall udev', 'emerge -C sys-fs/udev', $prtg_cfgrt);
+ $pkgs='sys-fs/static-dev';
+}
+require(dirname(__FILE__).'/packages.php');
+?>
diff --git a/backend/modules/gentoo_portage/packages.php b/backend/modules/gentoo_portage/packages.php
index 345b425..fc76026 100644
--- a/backend/modules/gentoo_portage/packages.php
+++ b/backend/modules/gentoo_portage/packages.php
@@ -1,5 +1,7 @@
<?php
+if (!is_array($pkgs))
+ $pkgs=explode(' ', $pkgs);
foreach ($pkgs as $i => &$pkg)
$pkg=escapeshellarg($pkg);
-execute_command_with_env('Install packages', 'emerge '.implode(' ', $pkgs), $prtg_cfgrt);
+execute_command_with_env('Install '.(count($pkgs) > 1?'packages':$pkgs[0]), 'emerge '.implode(' ', $pkgs), $prtg_cfgrt);
?>