Re: [Oorexx-devel] Any progress on non-root perms an ooRexx 4.x?
Looking around a little bit on the Internet, I stumbled over: http://superuser.com/questions/454449/linux-alternative-places-where-to-store-pid-file-instead-of-var-run where one posting says: *In short*: you could store it anywhere (say, |/tmp| or |/var/tmp|), but |/var/run| is the preferred standard. |/var/run| is the Filesystem Hierarchy Standard http://www.pathname.com/fhs/2.2/fhs-5.13.html: This directory contains system information data describing the system since it was booted. Files under this directory must be cleared (removed or truncated as appropriate) at the beginning of the boot process. Programs may have a subdirectory of /var/run; this is encouraged for programs that use more than one run-time file.[footnote 37] And a desirable feature is that most distros clean it automatically http://stackoverflow.com/questions/5173636/must-my-pidfile-be-located-in-var-run (unlike |/tmp| which is not cleaned upon boot in some distros) - this avoid stale pid files: The normal location for pidfiles is /var/run. Most unices will clean this directory on boot; under Ubuntu this is achieved by /var/run an in-memory filesystem (tmpfs). It's your choice where to store it, but I would go with the standard. If you don't have access to |/var/run|, you should store the pid file in the user's home directory, e.g. |~/.my_app.pid|. So it seems, that it should be possible to differentiate between two use-cases, thereby possibly allowing ooRexx to run from a stick (without an installation with root permissions): * the ooRexx installer will need root privilegs and create whatever it needs (e.g. in /var/run) :), * if ooRexx is started up and there is no rxapi running and no directory in /var/run, then it would place the pid file in the user's home directory ~ as described above. This would allow ooRexx to be executable via a stick and without an explicit installation, which would ease tremendeously deployment of ooRexx in certain use (and show) cases! ---rony On 19.04.2013 22:05, CVBruce wrote: That's the issue. The user doesn't have root authority. Not to install or use ooRexx. Sent from an undisclosed location. On Apr 19, 2013, at 12:58 PM, Manfred Lotz manfred.l...@web.de wrote: On Fri, 19 Apr 2013 12:34:31 -0700 CVBruce cvbr...@gmail.com wrote: Well except you need root authority to create user lightdm and the directory in /var/run. Exactly. But this happens during installation of a package (running yum, apt-get or whatever installation program...) which always require root authority. -- Manfred -- Precog is a next-generation analytics platform capable of advanced analytics on semi-structured data. The platform includes APIs for building apps and a phenomenal toolset for data science. Developers can use our toolset for easy data analysis visualization. Get a free account! http://www2.precog.com/precogplatform/slashdotnewsletter___ Oorexx-devel mailing list Oorexx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/oorexx-devel
Re: [Oorexx-devel] Any progress on non-root perms an ooRexx 4.x?
Mark Miesfeld wrote: Change the code to this: *#undef* RUN_AS_DAEMON #ifdef RUN_AS_DAEMON #define OOREXX_PIDFILE /var/run/ooRexx.pid bool run_as_daemon = true; #else #define OOREXX_PIDFILE /*your_home_directory*/ooRexx.pid bool run_as_daemon = *true*; #endif Then rebuild and install to a directory you have write and execute privileges. Without testing, I believe that should work. Aaaahhh, so that is why for AIX there was the mkdir /var/run instruction. I think I will use the same directory that the prefix is configured to, and mkdir /var/run within that prefix structure. If you have problems, you're on your own. Oh but you are all coming up with such creative techniques... how could I not continue this thread to its successful completion! ;-) Thank you very much! You have certainly encouraged me. Oh... so if this does work... then could the configure with prefix command update this file on behalf of the person compiling and take care of making the directory? Sincerely, -- Michael Lueck Lueck Data Systems http://www.lueckdatasystems.com/ -- Precog is a next-generation analytics platform capable of advanced analytics on semi-structured data. The platform includes APIs for building apps and a phenomenal toolset for data science. Developers can use our toolset for easy data analysis visualization. Get a free account! http://www2.precog.com/precogplatform/slashdotnewsletter ___ Oorexx-devel mailing list Oorexx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/oorexx-devel
Re: [Oorexx-devel] Any progress on non-root perms an ooRexx 4.x?
Greetings, I started with a fresh unpack of the source code I made the suggested changes Oh, and I removed path references to oorexx, then logged in and insured that export | grep oorexx returned nothing make blows up here: mv -f .deps/librexx_la-CallbackDispatcher.Tpo .deps/librexx_la-CallbackDispatcher.Plo /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -DORX_VER=4 -DORX_REL=1 -DORX_MOD=2 -DORX_FIX=0 -DORX_SYS_STR=\LINUX\ -DORX_CATDIR=\/kunden/homepages/35/d157794216/htdocs/opt/oorexx/bin\ -DORX_SHARED_LIBRARY_EXT=\.so\ -I./lib -I./api -I./api/platform/unix -I./common -I./common/platform/unix -I./interpreter -I./interpreter/behaviour -I./interpreter/execution -I./interpreter/memory -I./interpreter/package -I./interpreter/concurrency -I./interpreter/expression -I./interpreter/instructions -I./interpreter/classes -I./interpreter/classes/support -I./interpreter/runtime -I./interpreter/parser -I./interpreter/messages -I./interpreter/streamLibrary -I./interpreter/platform/common -I./interpreter/platform/unix -g -O2 -g -O2 -Wall -funsigned-char -Wpointer-arith -Wcast-qual -Wcast-align -Wshadow -Wwrite-strings -D__cplusplus -Wredundant-decls -DNOOPT -DPTHREAD_KERNEL -D_POSIX_THREAD -D_REENTRANT -D_GNU_SOURCE -DLINUX -DOPSYS_LINUX -MT librexx_la-TrappingDispatcher.lo -MD -MP -MF .deps/librexx_la-TrappingDispatcher.Tpo -c -o librexx_la-TrappingDispatcher.lo `test -f './interpreter/concurrency/TrappingDispatcher.cpp' || echo './'`./interpreter/concurrency/TrappingDispatcher.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -DORX_VER=4 -DORX_REL=1 -DORX_MOD=2 -DORX_FIX=0 -DORX_SYS_STR=\LINUX\ -DORX_CATDIR=\/kunden/homepages/35/d157794216/htdocs/opt/oorexx/bin\ -DORX_SHARED_LIBRARY_EXT=\.so\ -I./lib -I./api -I./api/platform/unix -I./common -I./common/platform/unix -I./interpreter -I./interpreter/behaviour -I./interpreter/execution -I./interpreter/memory -I./interpreter/package -I./interpreter/concurrency -I./interpreter/expression -I./interpreter/instructions -I./interpreter/classes -I./interpreter/classes/support -I./interpreter/runtime -I./interpreter/parser -I./interpreter/messages -I./interpreter/streamLibrary -I./interpreter/platform/common -I./interpreter/platform/unix -g -O2 -g -O2 -Wall -funsigned-char -Wpointer-arith -Wcast-qual -Wcast-align -Wshadow -Wwrite-strings -D__cplusplus -Wredundant-decls -DNOOPT -DPTHREAD_KERNEL -D_POSIX_THREAD -D_REENTRANT -D_GNU_SOURCE -DLINUX -DOPSYS_LINUX -MT librexx_la-TrappingDispatcher.lo -MD -MP -MF .deps/librexx_la-TrappingDispatcher.Tpo -c ./interpreter/concurrency/TrappingDispatcher.cpp -fPIC -DPIC -o .libs/librexx_la-TrappingDispatcher.o ./libtool: line 1130: 29710 Killed g++ -DHAVE_CONFIG_H -I. -DORX_VER=4 -DORX_REL=1 -DORX_MOD=2 -DORX_FIX=0 -DORX_SYS_STR=\LINUX\ -DORX_CATDIR=\/kunden/homepages/35/d157794216/htdocs/opt/oorexx/bin\ -DORX_SHARED_LIBRARY_EXT=\.so\ -I./lib -I./api -I./api/platform/unix -I./common -I./common/platform/unix -I./interpreter -I./interpreter/behaviour -I./interpreter/execution -I./interpreter/memory -I./interpreter/package -I./interpreter/concurrency -I./interpreter/expression -I./interpreter/instructions -I./interpreter/classes -I./interpreter/classes/support -I./interpreter/runtime -I./interpreter/parser -I./interpreter/messages -I./interpreter/streamLibrary -I./interpreter/platform/common -I./interpreter/platform/unix -g -O2 -g -O2 -Wall -funsigned-char -Wpointer-arith -Wcast-qual -Wcast-align -Wshadow -Wwrite-strings -D__cplusplus -Wredundant-decls -DNOOPT -DPTHREAD_KERNEL -D_POSIX_THREAD -D_REENTRANT -D_GNU_SOURCE -DLINUX -DOPSYS_LINUX -MT librexx_la-TrappingDispatcher.lo -MD -MP -MF .deps/librexx_la-TrappingDispatcher.Tpo -c ./interpreter/concurrency/TrappingDispatcher.cpp -fPIC -DPIC -o .libs/librexx_la-TrappingDispatcher.o make: *** [librexx_la-TrappingDispatcher.lo] Error 1 Changes to the source code were as follows: // For testing purposes comment out the following line to force RXAPI to // run as a foreground process. #define RUN_AS_DAEMON #ifdef RUN_AS_DAEMON #define OOREXX_PIDFILE /var/run/ooRexx.pid bool run_as_daemon = true; #else #define OOREXX_PIDFILE /kunden/homepages/35/d157794216/htdocs/opt/oorexx/var/run/ooRexx.pid bool run_as_daemon = false; #endif APIServer apiServer; // the real server instance Configure command was: ./configure --disable-static --prefix=/kunden/homepages/35/d157794216/htdocs/opt/oorexx Suggestions? What exactly was having it select the logic path not to run as daemon? The usual way would be to run as daemon, correct? Obviously with the LOC I changed, since it now blows up I would think that is the logic path which was selected... I just do not understand why that path would be selected based on my running the standard build
Re: [Oorexx-devel] Any progress on non-root perms an ooRexx 4.x?
Michael Lueck wrote: Greetings, I started with a fresh unpack of the source code I made the suggested changes Oh, and I removed path references to oorexx, then logged in and insured that export | grep oorexx returned nothing make blows up here: Oh... I see there were a few more edits in that area other than just supplying the path. I will start over in that case. BRB... Sincerely, -- Michael Lueck Lueck Data Systems http://www.lueckdatasystems.com/ -- Precog is a next-generation analytics platform capable of advanced analytics on semi-structured data. The platform includes APIs for building apps and a phenomenal toolset for data science. Developers can use our toolset for easy data analysis visualization. Get a free account! http://www2.precog.com/precogplatform/slashdotnewsletter ___ Oorexx-devel mailing list Oorexx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/oorexx-devel
Re: [Oorexx-devel] Any progress on non-root perms an ooRexx 4.x?
Greetings ooRexx developers, I will allow ooRexx to speak for itself... (uiserver):u40009095:~ which rexx /kunden/homepages/35/d157794216/htdocs/opt/oorexx/bin/rexx (uiserver):u40009095:~ rexx -v Open Object Rexx Version 4.1.2 Build date: Apr 20 2013 Addressing Mode: 32 Copyright (c) IBM Corporation 1995, 2004. Copyright (c) RexxLA 2005-2012. All Rights Reserved. This program and the accompanying materials are made available under the terms of the Common Public License v1.0 which accompanies this distribution or at http://www.oorexx.org/license.html (uiserver):u40009095:~ rexxtry.rex REXX-ooRexx_4.1.2(MT) 6.03 20 Apr 2013 rexxtry.rex lets you interactively try REXX statements. Each string is executed when you hit Enter. Enter 'call tell' for a description of the features. Go on - try a few...Enter 'exit' to end. say 'Yes, it works! Thank you, Mark! :-)' Yes, it works! Thank you, Mark! :-) ... rexxtry.rex on LINUX exit Customized ooRexx source code: // For testing purposes comment out the following line to force RXAPI to // run as a foreground process. #undef RUN_AS_DAEMON #ifdef RUN_AS_DAEMON #define OOREXX_PIDFILE /var/run/ooRexx.pid bool run_as_daemon = true; #else #define OOREXX_PIDFILE /kunden/homepages/35/d157794216/htdocs/opt/oorexx/var/run/ooRexx.pid bool run_as_daemon = true; #endif Installation steps as follows: Version: ooRexx-4.1.2.source.tar.gz % ./configure --disable-static --prefix=/kunden/homepages/35/d157794216/htdocs/opt/oorexx % make % make install mkdir ~/opt/oorexx/var mkdir ~/opt/oorexx/var/run Symlinks for ooRexx 4.1.2 as follows: Add a symlink to support libraries compiled against the old ORexx 2.x from IBM ~/opt/oorexx/lib/ooRexx ln -s librexxapi.so.4.0.4 librexxapi.so.2 Add rexxtry.rex support from the command line ~/opt/oorexx/bin ln -s ../share/ooRexx/rexxtry.rex rexxtry.rex And put the proper shebang in that target file Thank you OOO much, Mark! The combined input from everyone is very appreciated. Sincerely, -- Michael Lueck Lueck Data Systems http://www.lueckdatasystems.com/ -- Precog is a next-generation analytics platform capable of advanced analytics on semi-structured data. The platform includes APIs for building apps and a phenomenal toolset for data science. Developers can use our toolset for easy data analysis visualization. Get a free account! http://www2.precog.com/precogplatform/slashdotnewsletter ___ Oorexx-devel mailing list Oorexx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/oorexx-devel
Re: [Oorexx-devel] Any progress on non-root perms an ooRexx 4.x?
On Fri, 19 Apr 2013 13:05:18 -0700 CVBruce cvbr...@gmail.com wrote: That's the issue. The user doesn't have root authority. Not to install or use ooRexx. I don't understand what you are after. On a Linux system a software will be installed by an administrator who surely does have root authority. This is the way it works on *nix systems in general. If you happen to install a software privately then you won't have any package (let it be rpm or deb or whatever) but you would build the software manually (configure --prefix=..., make, make install) specifying a directory during configure (you are the owner of) where you install the software into. Let us assume I would install oorexx in /home/manfred/oorexx. Then the installation procedure should create a directory say /home/manfred/oorexx/var/run/oorexx where the rxapi pid file should go to. So where is the problem? -- Manfred -- Precog is a next-generation analytics platform capable of advanced analytics on semi-structured data. The platform includes APIs for building apps and a phenomenal toolset for data science. Developers can use our toolset for easy data analysis visualization. Get a free account! http://www2.precog.com/precogplatform/slashdotnewsletter ___ Oorexx-devel mailing list Oorexx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/oorexx-devel
Re: [Oorexx-devel] Any progress on non-root perms an ooRexx 4.x?
Greetings Manfred, Manfred Lotz wrote: I don't understand what you are after. On a Linux system a software will be installed by an administrator who surely does have root authority. This is the way it works on *nix systems in general. The configure process supports the keyword prefix to target different root directory than the actual system root directory. This is helpful in being able to build without root perms software which will only work within the context of what user account on the shared Linux system. Sincerely, -- Michael Lueck Lueck Data Systems http://www.lueckdatasystems.com/ -- Precog is a next-generation analytics platform capable of advanced analytics on semi-structured data. The platform includes APIs for building apps and a phenomenal toolset for data science. Developers can use our toolset for easy data analysis visualization. Get a free account! http://www2.precog.com/precogplatform/slashdotnewsletter ___ Oorexx-devel mailing list Oorexx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/oorexx-devel
Re: [Oorexx-devel] Any progress on non-root perms an ooRexx 4.x?
On 20.04.2013 17:46, Manfred Lotz wrote: On Fri, 19 Apr 2013 13:05:18 -0700 CVBruce cvbr...@gmail.com wrote: That's the issue. The user doesn't have root authority. Not to install or use ooRexx. I don't understand what you are after. On a Linux system a software will be installed by an administrator who surely does have root authority. This is the way it works on *nix systems in general. If you happen to install a software privately then you won't have any package (let it be rpm or deb or whatever) but you would build the software manually (configure --prefix=..., make, make install) specifying a directory during configure (you are the owner of) where you install the software into. Let us assume I would install oorexx in /home/manfred/oorexx. Then the installation procedure should create a directory say /home/manfred/oorexx/var/run/oorexx where the rxapi pid file should go to. So where is the problem? There are different kinds. - One problem is assuming that you have total control (root permissions) on the Unix box you use. If you do not have those rights, but wish to run rexx under your user account, then currently this is not possible as ooRexx demands root permissions. - Another use case is to experiment/test rexx without installing it, on one of your own machines, but also on friend's/collegue's boxes, maybe ones where they do not have root privileges. - Another use case are portable apps on a stick, where you plug in the stick in a box, that is not yours and you wish to run a set of applications that are important for you (e.g. utilities written in rexx) right from the stick. Whatever the use case, if ooRexx supported both out of the box, installation needing root permissions and running rexx without any installations, then the entire universe of ooRexx users/programmers is served. It seems from this thread that this is very feasible. ---rony -- Precog is a next-generation analytics platform capable of advanced analytics on semi-structured data. The platform includes APIs for building apps and a phenomenal toolset for data science. Developers can use our toolset for easy data analysis visualization. Get a free account! http://www2.precog.com/precogplatform/slashdotnewsletter ___ Oorexx-devel mailing list Oorexx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/oorexx-devel
Re: [Oorexx-devel] Any progress on non-root perms an ooRexx 4.x?
On Sat, 20 Apr 2013 18:06:50 +0200 Rony G. Flatscher rony.flatsc...@wu.ac.at wrote: On 20.04.2013 17:46, Manfred Lotz wrote: On Fri, 19 Apr 2013 13:05:18 -0700 CVBruce cvbr...@gmail.com wrote: That's the issue. The user doesn't have root authority. Not to install or use ooRexx. I don't understand what you are after. On a Linux system a software will be installed by an administrator who surely does have root authority. This is the way it works on *nix systems in general. If you happen to install a software privately then you won't have any package (let it be rpm or deb or whatever) but you would build the software manually (configure --prefix=..., make, make install) specifying a directory during configure (you are the owner of) where you install the software into. Let us assume I would install oorexx in /home/manfred/oorexx. Then the installation procedure should create a directory say /home/manfred/oorexx/var/run/oorexx where the rxapi pid file should go to. So where is the problem? There are different kinds. - One problem is assuming that you have total control (root permissions) on the Unix box you use. If you do not have those rights, but wish to run rexx under your user account, then currently this is not possible as ooRexx demands root permissions. - Another use case is to experiment/test rexx without installing it, on one of your own machines, but also on friend's/collegue's boxes, maybe ones where they do not have root privileges. - Another use case are portable apps on a stick, where you plug in the stick in a box, that is not yours and you wish to run a set of applications that are important for you (e.g. utilities written in rexx) right from the stick. Whatever the use case, if ooRexx supported both out of the box, installation needing root permissions and running rexx without any installations, then the entire universe of ooRexx users/programmers is served. It seems from this thread that this is very feasible. Exactly. ooRexx has to be configured in order to support those different use cases and all is fine. -- Manfred -- Precog is a next-generation analytics platform capable of advanced analytics on semi-structured data. The platform includes APIs for building apps and a phenomenal toolset for data science. Developers can use our toolset for easy data analysis visualization. Get a free account! http://www2.precog.com/precogplatform/slashdotnewsletter ___ Oorexx-devel mailing list Oorexx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/oorexx-devel
Re: [Oorexx-devel] Any progress on non-root perms an ooRexx 4.x?
Hi Michael, On Sat, 20 Apr 2013 11:58:44 -0400 Michael Lueck mlu...@lueckdatasystems.com wrote: Greetings Manfred, Manfred Lotz wrote: I don't understand what you are after. On a Linux system a software will be installed by an administrator who surely does have root authority. This is the way it works on *nix systems in general. The configure process supports the keyword prefix to target different root directory than the actual system root directory. This is helpful in being able to build without root perms software which will only work within the context of what user account on the shared Linux system. You quote the part of my last post where I refer to system administration tasks requiring root authority but then you talk about configure process which is a different beast. When I install oorexx on my Fedora box using a package the command looks like this: sudo yum install oorexx You are right about configure, make, make install. But I described it in my previous post in order to show that for a private installation the pid file has to reside in the private directory tree. Basically my conclusion is that there is no problem with pid file if oorexx is configured properly. -- Manfred -- Precog is a next-generation analytics platform capable of advanced analytics on semi-structured data. The platform includes APIs for building apps and a phenomenal toolset for data science. Developers can use our toolset for easy data analysis visualization. Get a free account! http://www2.precog.com/precogplatform/slashdotnewsletter ___ Oorexx-devel mailing list Oorexx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/oorexx-devel
Re: [Oorexx-devel] Any progress on non-root perms an ooRexx 4.x?
For example, you are using a commercial web hosting company, which will not install any software that is not on their list of supported software, and you have some Rexx cgi scripts you want to use. On Apr 20, 2013, at 9:06 AM, Rony G. Flatscher wrote: - Another use case are portable apps on a stick, where you plug in the stick in a box, that is not yours and you wish to run a set of applications that are important for you (e.g. utilities written in rexx) right from the stick. -- Precog is a next-generation analytics platform capable of advanced analytics on semi-structured data. The platform includes APIs for building apps and a phenomenal toolset for data science. Developers can use our toolset for easy data analysis visualization. Get a free account! http://www2.precog.com/precogplatform/slashdotnewsletter___ Oorexx-devel mailing list Oorexx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/oorexx-devel
Re: [Oorexx-devel] Any progress on non-root perms an ooRexx 4.x?
Greetings Mandred, Manfred Lotz wrote: But I described it in my previous post in order to show that for a private installation the pid file has to reside in the private directory tree. Basically my conclusion is that there is no problem with pid file if oorexx is configured properly. Quite possibly what Mark suggested and I am now testing proves that there is no problem with locating the pid file relative to the prefix supplied. As-is, the source code (that one file) was hard coded to assume a specific directory. Performing a prefix'ed / individual user build/install, then that source file would be in error. Time will tell if that is the only sharp spot to successfully building ooRexx based on a user's home directory via the prefix parameter. For now I am very hopeful. Sincerely, -- Michael Lueck Lueck Data Systems http://www.lueckdatasystems.com/ -- Precog is a next-generation analytics platform capable of advanced analytics on semi-structured data. The platform includes APIs for building apps and a phenomenal toolset for data science. Developers can use our toolset for easy data analysis visualization. Get a free account! http://www2.precog.com/precogplatform/slashdotnewsletter ___ Oorexx-devel mailing list Oorexx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/oorexx-devel
Re: [Oorexx-devel] Any progress on non-root perms an ooRexx 4.x?
Greetings Bruce, CVBruce wrote: For example, you are using a commercial web hosting company, which will not install any software that is not on their list of supported software, and you have some Rexx cgi scripts you want to use. Yes, something like that. Only with our server, httpd runs on one node of the server cluster, and our ssh account lands in another node... running a completely different kernel version. (Kernel 2.4x on the httpd node, and Kernel 2.6x on the ssh node.) Thus we can not run ooRexx via CGI on our server. :-( Sincerely, -- Michael Lueck Lueck Data Systems http://www.lueckdatasystems.com/ -- Precog is a next-generation analytics platform capable of advanced analytics on semi-structured data. The platform includes APIs for building apps and a phenomenal toolset for data science. Developers can use our toolset for easy data analysis visualization. Get a free account! http://www2.precog.com/precogplatform/slashdotnewsletter ___ Oorexx-devel mailing list Oorexx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/oorexx-devel