- to test if a package is installed or not, dpkg --status is not the best solution because it gives output in all cases and no output on errstd. It better to check the list of installed packages (dpkg -l).
From: [EMAIL PROTECTED] on behalf of Erich Focht
Sent: Mon 10/07/2006 02:23
To: [email protected]
Cc: Geoffroy VALLEE
Subject: Re: [Oscar-devel] [Oscar-checkins] r5114 - trunk
Geoffroy,
can you please explain why you replaced "dpkg
--status $pkg" by
"dpkg -l | grep $pkg" in all places?
Was --status
not working for you?
Are you aware that your method is risky because
"grep $pkg" can match more
than $pkg? For example "grep gtk" will match
gtk, gtk2, gtk2-devel, etc,
etc... That is why I consider --status the better
choice, it matches exactly
the package we want to know
about.
Regards,
Erich
On Monday 10 July 2006 05:52, Bernard
Li wrote:
> Hi Geoffroy:
>
> Seems to work, at least now
I can bring up the OSCAR Wizard on Fedora Core 5.
>
>
Thanks,
>
> Bernard
>
>
________________________________
>
> From: Geoffroy VALLEE [mailto:[EMAIL PROTECTED]]
>
Sent: Sun 09/07/2006 19:48
> To: Bernard Li;
[email protected]
> Subject: Re: [Oscar-devel]
[Oscar-checkins] r5114 - trunk
>
>
>
> Hi
Bernard,
>
> I implemented and checked it in. I also checked-in an
update version of
> script/install_prereq which fixes bugs for
Debian.
>
> Let me know if it brokes something (but it should
not).
>
> Thanks,
>
> Le dimanche 9 juillet 2006 16:12,
vous avez écrit :
> > Hi Geoffroy:
> >
> > This seems
like a chicken and egg problem - since OCA/OS_Detect needs
> >
$OSCAR_HOME to be set before it can be used. In that case perhaps
using
> > OS_Detect to determine whether we are on Debian is not the
best solution.
> > Perhaps you can simply check for the existence of
/etc/profile.d? As you
> > mentioned this is does not exist on
Debian, and I suppose if the directory
> > exists, then we can use
it. This case is not specific to Debian, and could
> > be used in
the future for Slackware, Ubuntu, Gentoo etc. (if they also
> > don't
have /etc/profile.d).
> >
> > Makes sense?
>
>
> > Cheers,
> >
> > Bernard
> >
>
> ________________________________
> >
> > From:
[EMAIL PROTECTED] on behalf of Geoffroy
> >
VALLEE Sent: Sun 09/07/2006 08:57
> > To:
[email protected]
> > Subject: Re: [Oscar-devel]
[Oscar-checkins] r5114 - trunk
> >
> >
> >
>
> Hi Bernard,
> >
> > The reason i did that is explain in
the code (comments) and you can find a
> > high-level summary in the
check-in log: to setup OSCAR_HOME you call
> > oscar_home_env() which
is based on /etc/profile.d, but for Debian-like
> > distros you do not
have this folder (and do not have to have one!). In
> > order to put a
case for Debian in the oscar_home_env() function, and do
> > what we
need to do, i need to know the current distro, therefore use
> >
OS_Detect.
> >
> > My mistake was to not unset OSCAR_HOME
during my tests. What is the
> > solution then since even the first
lines of install_cluster are so
> > dependent to policies from RPM
based distros?
> >
> > Le samedi 8 juillet 2006 21:25, Bernard
Li a écrit :
> > > Hi Geoffroy:
> > >
> > >
The call to OSCAR::OCA:OS_Detect::open() needs to come after
> > >
"&oscar_home_env()" since OCA requires $OSCAR_HOME to be defined.
Is
> > > there any particular reason why you moved the call?
>
> >
> > > To work around the issue, I just reverted that
particular change (moved
> > > the call back to the original
location).
> > >
> > > Thanks,
> > >
>
> > Bernard
> > >
> > >
________________________________
> > >
> > > From:
[EMAIL PROTECTED] on behalf of
> > >
[EMAIL PROTECTED] Sent: Sat 08/07/2006 10:24
> > > To:
[EMAIL PROTECTED]
> > > Subject: [Oscar-checkins]
r5114 - trunk
> > >
> > >
> > >
> >
> Author: valleegr
> > > Date: 2006-07-08 13:24:10 -0400 (Sat, 08
Jul 2006)
> > > New Revision: 5114
> > >
> >
> Modified:
> > > trunk/install_cluster
>
> > Log:
> > > [Debian Port] Management of the OSCAR_HOME
environment variable.
> > >
> > > Modified:
trunk/install_cluster
> > >
===================================================================
> >
> --- trunk/install_cluster 2006-07-08
05:32:07 UTC (rev 5113)
> > > +++
trunk/install_cluster 2006-07-08 17:24:10
UTC (rev 5114)
> > > @@ -72,6 +72,8 @@
> > > #
First of all, enforce that the user running this script is 'root'
> >
> croak "You must be 'root' to run this script. Aborting" if
($< != 0 ||
> > > $ENV{'USER'} ne 'root');
> >
>
> > > +my $os = OSCAR::OCA::OS_Detect::open();
> >
> +
> > > # Validate OSCAR_HOME environment variable and
write /etc/profile.d
> > > files &oscar_home_env();
> >
>
> > > @@ -162,7 +164,6 @@
> > > # Check to
see if this is a supported platform
> > >
> > >
oscar_log_subsection("Checking if this is a supported platform");
> >
> -my $os = OSCAR::OCA::OS_Detect::open();
> > > if (!$os)
{
> > > print("ERROR: This is an
unsupported system. Specifically, no
> > > module in
OSCAR/OCA/OS_Detect positively identified this as a supported
> > >
system.\n"); die("Cannot continue");
> > > @@ -310,41 +311,59
@@
> > > if (dirname($0) ne ".")
{
> > > carp("You
MUST execute the program from within the OSCAR top
> > > level
directory!\n"); }
> > > - # do profile.d files
already exist?
> > > - my ($dir_csh, $dir_sh) =
&profiled_files_read();
> > > - if ($dir_csh
ne $dir_sh) {
> > > - print
"!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n";
> > >
- print "The
/etc/profile.d/oscar_home.{csh,sh} files point to\n";
> > >
- print "different \$OSCAR_HOME environment
variables!\n";
> > > - print
"Fix or delete them and rerun this program!\n";
> > >
- print
"!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n";
> > >
- exit 1;
> > > +
> >
> + # Two situations now: we are using an RPM based distro
therefore we
> > > need to update /etc/profile.d/, or we are using a
Debian-like distro and
> > > therefore, we do not have a
/etc/profile.d/ folder (see Debian policies
> > > for more
information), and we update /root/.bashrc + # First
case:
> > > Debian-like distro
> > > +
print "geof: $os->{distro}\n";
> > > + if
($os->{distro} eq "debian") {
> > >
+ print "Setup environment
variables\n";
> > > + my $ret =
`grep OSCAR /root/.bashrc`;
> > >
+ # We update /etc/.bashrc only if we did
not do it before
> > > + if
($ret eq "") {
> > >
+
my $cmd4deb = "echo \"OSCAR_HOME=/root/oscar\nexport
> > >
OSCAR_HOME\n\" >> /root/.bashrc";
+
system ($cmd4deb);
> > >
+
$cmd4deb = "source /root/.bashrc";
> > >
+
system ($cmd4deb);
> > > +
}
> > > }
> > >
- # is there another OSCAR installation around?
> >
> - if ($dir_sh && ($dir_sh ne $ohome)) {
>
> > - print
"!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n";
> > >
- print "The
/etc/profile.d/oscar_home.{csh,sh} files already
> > > exist\n";
- print "and point to a different OSCAR
installation!\n";
> > > - print
"If you want to DELETE the other OSCAR installation
> > > (!!!)\n";
- print "you should do:\n";
> >
> - print " cd
$dir_sh\n";
> > > - print
" scripts/start_over\n";
> > >
- print "Then rerun this script.\n";
>
> > - print "ATTENTION: The steps
described above will remove all
> > > OSCAR\n";
- print "packages and delete all defined
cluster
> > > nodes!\n"; -
print
> > >
"!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n";
- exit
> > > 1;
> >
> + # Second case RPM based distros
> > >
+ else {
> > >
+ # do profile.d files already
exist?
> > > + my
($dir_csh, $dir_sh) = &profiled_files_read();
> > >
+ if ($dir_csh ne $dir_sh) {
>
> > +
print
> > >
"!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n"; +
> > >
print "The /etc/profile.d/oscar_home.{csh,sh} files point to\n"; +
> >
> print "different \$OSCAR_HOME environment variables!\n";
+
> > > print "Fix
or delete them and rerun this program!\n";
> > >
+ print
> >
> "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n"; +
> >
> exit 1;
> > > + }
>
> > + # is there another OSCAR
installation around?
> > > + if
($dir_sh && ($dir_sh ne $ohome)) {
> > >
+ print
> >
> "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n"; +
> >
> print "The /etc/profile.d/oscar_home.{csh,sh} files already exist\n";
+
> > > print "and point to a
different OSCAR installation!\n"; +
> > > print "If you want to
DELETE the other OSCAR installation (!!!)\n"; +
> >
> print "you should do:\n";
> > >
+ print
" cd $dir_sh\n";
> > >
+ print
" scripts/start_over\n";
> > >
+ print "Then rerun
this script.\n";
> > >
+ print "ATTENTION:
The steps described above will remove all
> > > OSCAR\n";
+ print "packages
and delete all defined cluster
> > > nodes!\n";
+ print
> >
> "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n"; +
> >
> exit 1;
> > > + }
>
> > + # set environment variable
OSCAR_HOME
> > > + if
($ENV{OSCAR_HOME} ne $ohome) {
> > >
+
oscar_log_subsection("Setting env variable OSCAR_HOME to
> > >
$ohome"); +
$ENV{OSCAR_HOME} = $ohome;
> > >
+ }
> > >
+ # write profile.d files
> > >
+ if (!$dir_sh || !$dir_csh) {
> >
> +
oscar_log_subsection("Generating
> > >
/etc/profile.d/oscar_home.{sh,csh} files."); +
> > >
&profiled_files_write($ohome);
> > >
+ }
> >
> }
> > > - # set
environment variable OSCAR_HOME
> > > - if
($ENV{OSCAR_HOME} ne $ohome) {
> > >
- oscar_log_subsection("Setting env variable
OSCAR_HOME to
> > > $ohome"); -
$ENV{OSCAR_HOME} = $ohome;
> > > - }
> >
> - # write profile.d files
> > >
- if (!$dir_sh || !$dir_csh) {
> > >
- oscar_log_subsection("Generating
>
> > /etc/profile.d/oscar_home.{sh,csh} files.");
-
> > >
&profiled_files_write($ohome);
> > > -
}
> > > }
> > >
> > > sub
profiled_files_read {
> > >
> > >
> > >
Using Tomcat but need to do more? Need to support web services,
security?
> > > Get stuff done quickly with pre-integrated
technology to make your job
> > > easier Download IBM WebSphere
Application Server v.1.0.1 based on Apache
> > > Geronimo
>
> > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
>
> > _______________________________________________
> > >
Oscar-checkins mailing list
> > >
[EMAIL PROTECTED]
> > > https://lists.sourceforge.net/lists/listinfo/oscar-checkins
>
>
> > --
> > Geoffroy R. Vallee, Ph.D.
> > Oak
Ridge National Laboratory Voice:
865-574-3152
> > P.O. Box 2008, Bldg.
5600
Fax: 865-576-5491
> > Oak Ridge, TN 37831
> >
> >
--
> > Geoff
> >
> >
> >
-------------------------------------------------------------------------
>
> Using Tomcat but need to do more? Need to support web services,
security?
> > Get stuff done quickly with pre-integrated technology to
make your job
> > easier Download IBM WebSphere Application Server
v.1.0.1 based on Apache
> > Geronimo
> > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
>
> _______________________________________________
> > Oscar-devel
mailing list
> > [email protected]
> > https://lists.sourceforge.net/lists/listinfo/oscar-devel
>
>
--
>
Geoff
>
>
>
-------------------------------------------------------------------------
Using
Tomcat but need to do more? Need to support web services, security?
Get stuff
done quickly with pre-integrated technology to make your job easier
Download
IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Oscar-devel
mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/oscar-devel
------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________ Oscar-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/oscar-devel
