Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > 2f2665d6bb4a90eb653b4d50b5708b4b > files > 60

clusterscripts-server-2.0-21mdv2010.0.noarch.rpm

package tmp::compssUsers;

use common;
use ugtk2 qw(:helpers :wrappers :create);

my $meta_class = $::o->{meta_class};
my $desktop = $meta_class eq 'desktop';
my $powerpack = $meta_class eq 'powerpack';
my $server = $meta_class eq 'server';

my $h = {

$desktop ? (
"Discovery" => 
[
  { label => ("Discovery"),
    descr => (""),
    flags => [ qw(OFFICE SPELLCHECK PUBLISHING PIM ARCHIVING PRINTER AUDIO VIDEO GRAPHICS NETWORKING_WWW NETWORKING_MAIL NETWORKING_NEWS COMMUNICATIONS NETWORKING_CHAT NETWORKING_FILE_TRANSFER NETWORKING_IRC NETWORKING_INSTANT_MESSAGING NETWORKING_DNS CONFIG TERMINALS TEXT_TOOLS SHELLS FILE_TOOLS KDE X BOOKS) ], 
    default_selected => 1,
  },
],
) : (
N_("Workstation") => 
[
  { label => N_("Internet station"),
    descr => N_("Set of tools to read and send mail and to browse the Web"),
    flags => [ qw(NETWORKING_WWW NETWORKING_MAIL NETWORKING_NEWS COMMUNICATIONS NETWORKING_CHAT NETWORKING_FILE_TRANSFER NETWORKING_IRC NETWORKING_INSTANT_MESSAGING NETWORKING_DNS) ],
    default_selected => 1,
  },
 { label => N_("Cluster Node"),
   descr => N_("Be an HPC client node with OAR"),
   flags => [ qw(NODE_SIDE NETWORKING_DUPLICATION_SERVER SCHEDULER NODE_SIDE_CLIC CLUSTER_INTERCONNECT) ],
 },
  { label => N_("Console Tools"),
    descr => N_("Editors, shells, file tools, terminals"),
    flags => [ qw(EDITORS TERMINALS TEXT_TOOLS SHELLS FILE_TOOLS) ],
    default_selected => 1,
  },
  { label => N_("Development"),
    descr => N_("C and C++ development libraries, programs and include files"),
    flags => [ qw(DEVELOPMENT CLUSTERDEVELOPMENT EDITORS) ],
  },
  { label => N_("Documentation"),
    descr => N_("Books and Howto's on Linux and Free Software"),
    flags => [ qw(BOOKS CLUSTER_DOC) ],
  },
  { label => N_("Parallel Build"),
    descr => N_("distcc, icecream, ccache"),
    flags => [ qw(CLUSTER_BUILD) ],
  },
  { label => N_("Monitoring Client"),
    descr => N_("Ganglia"),
    flags => [ qw(MONITORING_CLIENT) ],
  },
  { label => N_("Emulation"),
    descr => N_("Xen, qemu"),
    flags => [ qw(EMULATION) ],
    default_selected => 1,
  },
],

N_("Server") =>
[
  { label => N_("Cluster server"),
    descr => N_("clusterscripts-server, drakcluster..."),
    flags => [ qw(CLUSTER_SERVER MONITORING_SERVER NETWORKING_DNS_SERVER CLUSTER_ADMINISTRATION MONITORING_SERVER SCHEDULER_SERVER NETWORKING_AUTOINSTALL_SERVER NIS_SERVER SERVER_SIDE) ],
    default_selected => 1,
  },
  { label => N_("OAR Scheduler"),
    descr => N_("OAR Scheduler to admin/control/submit job"),
    flags => [ qw(SCHEDULER_SERVER SCHEDULER) ],
    default_selected => 1,
  },
  { label => N_("Monitoring Server"),
    descr => N_("Ganglia, monika"),
    flags => [ qw(MONITORING_SERVER) ],
    default_selected => 1,
  },
  { label => N_("Administration"),
    descr => N_("taktuk2, gexec, ka-tools, tentakel...."),
    flags => [ qw(CLUSTER_ADMINISTRATION NETWORKING_DUPLICATION_SERVER) ],
    default_selected => 1,
  },
  { label => N_("Duplication"),
    descr => N_("ka, dolly, dolly+, nettee...."),
    flags => [ qw(NETWORKING_DUPLICATION_SERVER NETWORKING_FILE_TRANSFER NETWORKING_FILE_TRANSFER) ],
    default_selected => 1,
  },
],

N_("Graphical Environment") => 
  [
   { label => N_("Icewm Graphical Desktop"),
     descr => N_("Icewm"),
     flags => [ qw(GRAPHICAL_DESKTOP X ACCESSIBILITY ICEWM) ],
     default_selected => 1,
   },
  ],
),
};

foreach my $path (keys %$h) {
    foreach (@{$h->{$path}}) {
	$_->{path} = $path;
	$_->{uid} = join('|', $path, $_->{label});
    }
}

my $compssUsers = [ map { @$_ } values %$h ];

my $gtk_display_compssUsers = sub {
    my ($entry) = @_;

    my $entries_in_path = sub {
	my ($path) = @_;
	translate($path), map { $entry->($_) } @{$h->{$path}};
    };

    gtkpack_(Gtk2::VBox->new(0, 0),
             1, gtkpack_(Gtk2::HBox->new(0, 0),
                         1, gtkpack(Gtk2::VBox->new(0, 0), 
                                    $entries_in_path->('Workstation'),
                                   ),
			 1, Gtk2::VSeparator->new,
                         1, gtkpack(Gtk2::VBox->new(0, 0),
				    $entries_in_path->('Server'),
				    , '',
				    Gtk2::HSeparator->new,
				    , '',
				    $entries_in_path->('Graphical Environment'),
                                   ),
			),
	     0, '',
	     0, Gtk2::HSeparator->new,
	    ),
	  };

$compssUsers, $gtk_display_compssUsers;