1. shroud 2.5a Linux

Rob,

Running "backendu shrouded.il" seems a little awkward in linux. Would it
be possible for shroud to identify and leave a first line path to
backendu unshrouded such as:

#!/home/rob/euphoria/backendu

so that "chmod +x shrouded_file.il" would make the file
executable?  And if that could be done,
couldn't the shroud program also call "chmod +x shrouded_file.il"?

Regards,
 
Ken Rhodes
100% Microsoft Free!

new topic     » topic index » view message » categorize

2. Re: shroud 2.5a Linux

Kenneth Rhodes wrote:
> Running "backendu shrouded.il" seems a little awkward in linux. Would it
> be possible for shroud to identify and leave a first line path to
> backendu unshrouded such as:
> 
> #!/home/rob/euphoria/backendu
> 
> so that "chmod +x shrouded_file.il" would make the file
> executable?  And if that could be done,
> couldn't the shroud program also call "chmod +x shrouded_file.il"?

Did you try shrouding a Euphoria file that has:
   #!/home/rob/euphoria/backendu
as the first line?
It should pass that first line through, as the first line
of the .il file.
View the .il file with an editor.
I guess it would also be nice on Linux/FreeBSD if it added 
execute permission. I'll look into that.

Regards,
   Rob Craig
   Rapid Deployment Software
   http://www.RapidEuphoria.com

new topic     » goto parent     » topic index » view message » categorize

3. Re: shroud 2.5a Linux

>Rob Craig said: 

> Did you try shrouding a Euphoria file that has:
>    #!/home/rob/euphoria/backendu
> as the first line?
> It should pass that first line through, as the first line
> of the .il file.
> View the .il file with an editor.

Your right of course.. sorry for the false assumption.


> I guess it would also be nice on Linux/FreeBSD if it added 
> execute permission. I'll look into that.

It would be a nice little touch, but what would really be the 
icing on the cake would be if the shroud program could automatically,
add the #!/EUDIR/bin/backendu/. I suppose that if you
did that the routine should check to see if the #! ~ line is already
there. (Is that line called a "shebang"?)  Anyway, A couple of lines of 
code and shroud could produce a compact stand alone executable file in 
one fell swoop.


Ken Rhodes
100% Microsoft Free!

new topic     » goto parent     » topic index » view message » categorize

4. Re: shroud 2.5a Linux

Kenneth Rhodes wrote:
> It would be a nice little touch, but what would really be the 
> icing on the cake would be if the shroud program could automatically,
> add the #!/EUDIR/bin/backendu/. I suppose that if you
> did that the routine should check to see if the #! ~ line is already
> there. (Is that line called a "shebang"?)  Anyway, A couple of lines of 
> code and shroud could produce a compact stand alone executable file in 
> one fell swoop.

Good idea.
I'll do that.

Regards,
   Rob Craig
   Rapid Deployment Software
   http://www.RapidEuphoria.com

new topic     » goto parent     » topic index » view message » categorize

5. Re: shroud 2.5a Linux

Robert Craig wrote:
> 
> Kenneth Rhodes wrote:
> > It would be a nice little touch, but what would really be the 
> > icing on the cake would be if the shroud program could automatically,
> > add the #!/EUDIR/bin/backendu/. I suppose that if you
...
> Good idea.
> I'll do that.

Supposing I'm on a Linux system. Somebody has {compiled, shrouded, etc} 
a program, and they want me to use it. If the "recognizing" line said
"/home/foobar/eric", then I probably would not be able to run the program.

(I SHOULD NOT have the right to run /home/foobar/eric/Eu-backend
if I am the /home/foobar/georg/---whatever.)

So, some knowledge about how to tackle this issue is mandatory.

Sorry to say, but at this hour (in my home town), I'll not be able
to present a workable solution. Still, this is a major issue.

Along the same line of thought, you might have exactly _two_ kinds
of people trying to install Euphoria. One: they are the "root" 
( equals the super user ) and once they install, Euphoria will be
accessible to anyone on the machine. Two: a single user (who does
not have access to "root" rights) tries to install Euphoria.

I assume, (perhaps incorrectly) that Rob is no Unix guru. (No
problem -- you don't have to be Guru at everything just because
you are the Guru at something.)

So, what we need are two things: First, a shell script / .bat file
that can decide whether the Installing User is Privileged or not,
and, Second, be able to see the difference on whether the 
installation is attempted on a Unix or Widows (or maybe a DOS-32)
machine.

This gives all-in-all 6 different situations. If Rob wants, I'll
be happy to help with this issue.

The main goal is to have a package (whether .zip, .gz, etc.) and
everybody can just download the same package. Writing Install on
the command line would cause the right script to be run, recog-
nizing the particular environment, and doing a "system-wide" 
install, or a "per user" install.

This package might contain a Readme that is aimed towards the
System Administrator. It would convince him of having Euphoria
as another "system language", just as Perl, Python, Lua, and 
others have become lately. This would not be such a surprise,
for the seasoned admin would already recognize sh, ash, csh, 
bash, perl, python, PostScirpt, lua, awk, tr, -- and some I've 
forgotten, as already established System Languages.

------------

So, what should be written on the "#!" line? 

This should contain two things: first, the possible place where
Euphoria would be installed if done by the Admin. Second, if 
Euphoria is not found there, then the $PATH environment variable
would be searched. In such an order that for every entry in it,
the Euphoria standard (relative) paths would be searched.

A few examples:

On a linux machine, read my interaction:

my_Unix: which perl
/usr/bin/perl
my_Unix: which cpp
/usr/bin/cpp
my_Unix: which Euphoria
/usr/bin/Euphoria
my_Unix: locate lib |grep perl | "your_favourite_pager_here"
...
/usr/lib/rpm/find-requires.perl
/usr/lib/rpm/perl.prov
/usr/lib/rpm/perl.req
/usr/lib/rpm/perldeps.pl
/usr/lib/perl5
/usr/lib/perl5/5.8.0
/usr/lib/perl5/5.8.0/CGI
/usr/lib/perl5/5.8.0/CGI/Cookie.pm.newcgi
...
my_Unix: 

And so on. So there is a "predermined" place for
all (even previously not-thought-of) libraries.
If a super user does the install, then the files
go there, and if a "loser" installs, then they 
go to his own directory hierarchy.

HAVING UNDERSTOOD THIS, it gets pretty easy to 
figure out, how and where to install all the 
necessary files on Windows -- depending on 
whether you are a (crap, now I forget the terms
Windows uses) Privileged or Just Another user.

SUMMARY: "/home/eric/cool/" is not the thing we
want on the first line of {regular|shrouded|
compiled} works.

-- Another Euphoric, since Nov. 18, 2004 --

new topic     » goto parent     » topic index » view message » categorize

6. Re: shroud 2.5a Linux

Georg Wrede wrote:
> 
> Robert Craig wrote:
> > 
> > Kenneth Rhodes wrote:
> > > It would be a nice little touch, but what would really be the 
> > > icing on the cake would be if the shroud program could automatically,
> > > add the #!/EUDIR/bin/backendu/. I suppose that if you
> ...
> > Good idea.
> > I'll do that.
> 
> Supposing I'm on a Linux system. Somebody has {compiled, shrouded, etc} 
> a program, and they want me to use it. If the "recognizing" line said
> "/home/foobar/eric", then I probably would not be able to run the program.
> 
  I the situation described above I think distributing a bound or 
  compiled version of the program would be in order - or a bundled
  copy of the interpreter. The top line is editable by the way. 



> (I SHOULD NOT have the right to run /home/foobar/eric/Eu-backend
> if I am the /home/foobar/georg/---whatever.)
> 
  What if the system administrator wanted you to run that file?  
  
> So, some knowledge about how to tackle this issue is mandatory.
> 
> Sorry to say, but at this hour (in my home town), I'll not be able
> to present a workable solution. Still, this is a major issue.
> 
> Along the same line of thought, you might have exactly _two_ kinds
> of people trying to install Euphoria. One: they are the "root" 
> ( equals the super user ) and once they install, Euphoria will be
> accessible to anyone on the machine. Two: a single user (who does
> not have access to "root" rights) tries to install Euphoria.
> 
> I assume, (perhaps incorrectly) that Rob is no Unix guru. (No
> problem -- you don't have to be Guru at everything just because
> you are the Guru at something.)
> 
> So, what we need are two things: First, a shell script / .bat file
> that can decide whether the Installing User is Privileged or not,
> and, Second, be able to see the difference on whether the 
> installation is attempted on a Unix or Widows (or maybe a DOS-32)
> machine.
> 
> This gives all-in-all 6 different situations. If Rob wants, I'll
> be happy to help with this issue.
> 
> The main goal is to have a package (whether .zip, .gz, etc.) and
> everybody can just download the same package. Writing Install on
> the command line would cause the right script to be run, recog-
> nizing the particular environment, and doing a "system-wide" 
> install, or a "per user" install.
> 
> This package might contain a Readme that is aimed towards the
> System Administrator. It would convince him of having Euphoria
> as another "system language", just as Perl, Python, Lua, and 
> others have become lately. This would not be such a surprise,
> for the seasoned admin would already recognize sh, ash, csh, 
> bash, perl, python, PostScirpt, lua, awk, tr, -- and some I've 
> forgotten, as already established System Languages.
> 
> ------------
> 
> So, what should be written on the "#!" line? 
> 
> This should contain two things: first, the possible place where
> Euphoria would be installed if done by the Admin. Second, if 
> Euphoria is not found there, then the $PATH environment variable
> would be searched. In such an order that for every entry in it,
> the Euphoria standard (relative) paths would be searched.
> 
> A few examples:
> 
> On a linux machine, read my interaction:
> 
> my_Unix: which perl
> /usr/bin/perl
> my_Unix: which cpp
> /usr/bin/cpp
> my_Unix: which Euphoria
> /usr/bin/Euphoria
> my_Unix: locate lib |grep perl | "your_favourite_pager_here"
> ...
> /usr/lib/rpm/find-requires.perl
> /usr/lib/rpm/perl.prov
> /usr/lib/rpm/perl.req
> /usr/lib/rpm/perldeps.pl
> /usr/lib/perl5
> /usr/lib/perl5/5.8.0
> /usr/lib/perl5/5.8.0/CGI
> /usr/lib/perl5/5.8.0/CGI/Cookie.pm.newcgi
> ...
> my_Unix: 
> 
> And so on. So there is a "predermined" place for
> all (even previously not-thought-of) libraries.
> If a super user does the install, then the files
> go there, and if a "loser" installs, then they 
> go to his own directory hierarchy.
> 
> HAVING UNDERSTOOD THIS, it gets pretty easy to 
> figure out, how and where to install all the 
> necessary files on Windows -- depending on 
> whether you are a (crap, now I forget the terms
> Windows uses) Privileged or Just Another user.
> 
  Windows?

> SUMMARY: "/home/eric/cool/" is not the thing we
> want on the first line of {regular|shrouded|
> compiled} works.

  Its not the thing you want. Its definitly the
  thing that I want.
> 

Georg, I think your approach is overkill.
Adding the "shebang" line and making a shrouded
file executable will suffice %95 of Linux Euphoria
users and it will not prevent the root user from
effecting proper security measures.

Ken Rhodes
100% Microsoft Free!

new topic     » goto parent     » topic index » view message » categorize

Search



Quick Links

User menu

Not signed in.

Misc Menu