Re: shroud 2.5a Linux
- Posted by Kenneth Rhodes <wolf_man_jacques at excite.com> Nov 26, 2004
- 593 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!