1. shroud 2.5a Linux
- Posted by Kenneth Rhodes <wolf_man_jacques at excite.com> Nov 25, 2004
- 598 views
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!
2. Re: shroud 2.5a Linux
- Posted by Robert Craig <rds at RapidEuphoria.com> Nov 25, 2004
- 618 views
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
3. Re: shroud 2.5a Linux
- Posted by Kenneth Rhodes <wolf_man_jacques at excite.com> Nov 25, 2004
- 561 views
- Last edited Nov 26, 2004
>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!
4. Re: shroud 2.5a Linux
- Posted by Robert Craig <rds at RapidEuphoria.com> Nov 25, 2004
- 605 views
- Last edited Nov 26, 2004
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
5. Re: shroud 2.5a Linux
- Posted by Georg Wrede <georg at iki.fi> Nov 26, 2004
- 562 views
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 --
6. Re: shroud 2.5a Linux
- Posted by Kenneth Rhodes <wolf_man_jacques at excite.com> Nov 26, 2004
- 594 views
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!