Different MarvinSketch and msketch scripts ?

User 25d107bd42

22-05-2008 06:53:43

Hi,


while having problems with the Java memory (see http://www.chemaxon.com/forum/ftopic3538.html ) I would like to install the memory extension permanently. But there are two scripts to start f.e. MarvinSketch:


1) .../MarvinBeans/bin/msketch and


2) .../MarvinBeans/MarvinSketch





We are using both to start the GUI. On KDE-desktop I have installed the icons manuallly and used the msketch script to start the program.


When I use the automatic Linux installation then MarvinSketch is used automatically.





What is the difference of these scripts (content) ?


Why are there two scripts ?





How do I install higher Java memory permanently?





Regards, Hans-Ulrich

ChemAxon e08c317633

22-05-2008 09:15:35

I moved this topic to "Structure editing, viewing and file formats" forum.





Zsolt

ChemAxon 7c2d26e5cf

22-05-2008 12:41:55

Dear Hans-Ulrich,


The default script for launching MarvinSketch is "MarvinBeans/bin/msketch".


It is available in installer version of MarvinBeans package and also in the marvinbeans-VERSION.zip.


If you would like to launch MarvinSketch from command line, we recommend this.





The "MarvinBeans/MarvinSketch" is an additional launcher that the installer generates. It is designed for desktop launching (to start MarvinSketch without parameters from the desktop).





To update Xmx parameter for MarvinSketch (desktop application), edit the end of the "MarvinBeans/MarvinSketch" file.


Current:


Code:
"$app_java_home/bin/java" -Dinstall4j.jvmDir="$app_java_home" -Dexe4j.moduleName="$prg_dir/$progname" $INSTALL4J_ADD_VM_PARAMS -classpath "$local_classpath" com.install4j.runtime.Launcher launch chemaxon.marvin.Sketch true false "$prg_dir/error.log" "$prg_dir/output.log" true true false "" true true 0 0 "" 20 20 "Arial" "0,0,0" 8 500 "version 5.0.04" 20 40 "Arial" "0,0,0" 8 500 -1 --desktoplauncher "$@"








exit $?






Modified:


Code:
"$app_java_home/bin/java" -Dinstall4j.jvmDir="$app_java_home" -Dexe4j.moduleName="$prg_dir/$progname" -Xmx120m $INSTALL4J_ADD_VM_PARAMS -classpath "$local_classpath" com.install4j.runtime.Launcher launch chemaxon.marvin.Sketch true false "$prg_dir/error.log" "$prg_dir/output.log" true true false "" true true 0 0 "" 20 20 "Arial" "0,0,0" 8 500 "version 5.0.04" 20 40 "Arial" "0,0,0" 8 500 -1 --desktoplauncher "$@"








exit $?






Actually, only the -Xmx120m parameter has to be inserted into the statement at java calling.

User 25d107bd42

22-05-2008 16:50:14

Hi Tamas, thank you for your quick answer.





Now I have to consider how to manage this with my students. They use the install script "marvinbeans-5_0_03-linux.sh" and this combines the desktop launcher automatically with the script "MarvinSketch". (In earlier versions I always combined the desktop icons with the script "msketch". Remember my topic about desktop icons in February). So we must also edit the script "MarvinSketch". Where to insert -Xmx120m in this script ?





Second question: What is the memory limit, 640MB or more ?





And a comment: In the courses the students often say "Marvin... has stopped and does nothing" and only killing the program is possible. Perhaps this is also an effect of the limited memory.





Regards, Hans-Ulrich

User 25d107bd42

23-05-2008 14:17:17

Hi Tamas,


after the experience mentioned above, I evaluated the maximum Java memory limits for the three Marvin programs. Please see the attached list.





I think this list is rather confusing and very difficult to handle in an environment, where the students install the programs itself or the programs are installed in a computer pool.





I suggest to use only 3 start scripts for the 3 programs .





And to use the short scripts in the .../bin folder. So all methods of starting the programs, desktop or command line, lead to the same GUI, having the same memory and environment. "Normal" desktop users don't see the script, so it's name can be the short command version.





Regards, Hans-Ulrich

ChemAxon 7c2d26e5cf

27-05-2008 22:00:06

We will consider your request.

User 25d107bd42

09-06-2008 09:26:09

Hi Tamas,


my desktop now has both versions to start the Marvin programs (see screenshot).





On the left there are the versions using msketch etc. installed manually by me,


and on the right side the versions using MarvinSketch etc. installed automatically by the install script.





I have installed both versions to evaluate possible differences.





But one question from above is still unanswered: Why are there two scripts ?





Regards, Hans-Ulrich

ChemAxon 7c2d26e5cf

09-06-2008 10:21:06

I have already answered this question it in my earlier comment. Sorry, if I was not clear.


So, I summarize it:


marvinbeans/bin/msketch - for command line usage (to be able to run with parameters, e.g. molecule file name)


marvinbeans/MarvinSketch - for desktop usage (without parameters)

User 25d107bd42

09-06-2008 19:44:24

Hi Tamas,


this does not answer my question. My question is why ?





As you see in my examples above, it is possible to launch f.e. MarvinSketch either by using msketch or by using MarvinSketch. So, why to have two scripts ?





I printed both scripts to analyse it (msketch 74 lines, MarvinSketch 267 lines).





msketch seems to be a normal UNIX script, but I don't understand the last line:


exec "$JVMPATH" $javaopts chemaxon.marvin.Sketch "$@"


In chemaxon.marvin.Sketch there is only a "help" folder ?





MarvinSketch has a lot of variables. It seems to me, it is trying to catch all possibilities there are. Is it an install script or a launch script ?





And one problem more: Some posts ago, I got from you the hint, how to start MarvinSketch with more JAVA-memory. Having the new version 5.0.4, I must repare the launch script once more (See some posts above).





So you see, there are problems to have two tools to do the same thing, only to launch the program with the right parameters.





Sorry, but these are real problems for us.





Regards, Hans-Ulrich

ChemAxon 7c2d26e5cf

12-06-2008 14:34:34

We use Install4j installer build suite to create platform specific installers for Marvin. The "big script" is generated by the installer suite for launching MarvinSketch application. Since it is automatically created, we have not got influence its final form.


The installer can create desktop shortcut for this launcher, not for the external script (msketch).


In the marvinbeans/bin directory, you can find launch script for each application in the Marvin Beans package.


The installer creates launchers are additional feature to make the access of MarvinSketch/View/Space more faster (through the desktop).





The "msketch" is a pure script that works without installer.





Answering your question ("Why?"):


We have two "launchers" (or scripts call them how you want) to provide options to the users to access MarvinSketch on different ways (with/without parameters, command line vs. desktop).





To understand well each statement in the scripts, you have to familiar with bash programming.


The JVMPATH variable is needed to be able to determine JRE for running MarvinSketch. In default, it points to the default Java but the installer can overwrite this variable to force another Java for running Marvin.

User 25d107bd42

13-06-2008 08:12:24

Hi Tamas,





thank you for your detailed answer.





So, I have to think over how to manage this in our greater student net-pool and the local installations, especially how to manage the JAVA memory.





Regards, Hans-Ulrich (UNIX-user since about 1975 ;-)

User 25d107bd42

08-07-2008 09:12:14

Hi Tamas,





I don't see the reason to have two "launchers". The "big script generated by the installer suite" is superfluous, particularly because "it is automatically created, and you have not got influence its final form".





I must insist on my suggestion: Use only the "small launchers" msketch, mview and mspace. When these are called from the Desktop they are without parameters, when these are called from the command line, you can use parameters.





The installer build suite can install for the Desktop the "small launchers" and all is OK.





Regards, Hans-Ulrich

ChemAxon 7c2d26e5cf

08-07-2008 20:40:36

We will consider this suggestion.

User 25d107bd42

09-07-2008 07:04:23

Hi, I have one argument more for using only the "small" msketch etc.





On Linux KDE I change the desktop launcher to use the "small" msketch, see the screenshot. This gives the possibility to set parameters without editing launch-files, see the parameter -Xmx128M to enlarge the JAVA memory.





This should be possible on other platforms also.





Regards, Hans-Ulrich

ChemAxon 7c2d26e5cf

11-07-2008 13:16:09

Thanks, I am sure that this info is useful also for other Linux users.

User 25d107bd42

14-07-2008 08:00:51

Hi Linux KDE users,


to get to the properties (Eigenschaften) menu, click with the right mouse button at the desktop icon, which the install script marvinbeans-5_0_06-linux.sh has produced. In this menu the icon can be changed, the name of the icon program call and the launching command. By default installation this is .../MarvinBeans/MarvinSketch. It can be changed to .../MarvinBeans/bin/msketch as can be seen above. And there you can add options, f.e. to use larger JAVA memory.





So you are using only one launching script, either from the desktop or from the command line and this is more savely to control.





The same can de done for mview and mspace.





And it is possible on other platforms also.





Regards, Hans-Ulrich

User 25d107bd42

10-09-2008 18:49:05

Hi Tamas,


today i downloaded Marvin 5.1.1 and installed it on my Desktop. And I found still the "desktop launchers Marvin..." besides the "command line launchers" msketch, mview and mspace. So the first thing to do was, to edit the program calls (as above Jul 09, 2008).





I hoped you will change it in the new versions, but there are still two launcher sets. Above you are writing:
Quote:



We have two "launchers" to provide options to the users to access MarvinSketch on different ways (with/without parameters, command line vs. desktop)
What is the difference using the "large" launcher vs. using the "small" launcher (without parameters), both for calling the programs from the desktop ?





Regards, Hans-Ulrich

ChemAxon 7c2d26e5cf

11-09-2008 11:34:24

The both launcher starts the same application (class). Actually, the large launcher is required for display application icon on the desktop. It is the only reason that's why we maintain it. Your request (use the shell script also for desktop shortcut) requires further improvement in our installer builder. There is a task about it in our feature request list with medium priority. In this moment, I can not estimate when we will implement it. Currently we are planning the schedule for next major release. But I will notify you when this task will be ready.

User 25d107bd42

11-09-2008 12:30:30

OK. So we will further use our workaround.





Thank you and regards, Hans-Ulrich

User 25d107bd42

14-10-2008 13:43:42

Hi Tamas,


these days we are waiting for over 80 desktop computers for teaching in our computer labs and we are evaluating which Linux distribution to use. While testing OpenSUSE 11.0 our system-administrator found an astonishing effect:





OpenSUSE comes with the JAVA Development Kit OpenJDK and not with Suns JDK. And starting MSketch with the "large" MarvinSketch-script the program did not work.


Knowing the problems with the two scripts, he immediatly used the "small" script msketch and MarvinSketch works with OpenJDK".





The same is true for MSpace: It works with OpenJDK only with the "small" script mspace.





So there must be more differences in these scripts.





This information may be useful for other users of JAVA Development Kits JDK. And also for users of other Linux distributions.





Regards, Hans-Ulrich

ChemAxon 7c2d26e5cf

14-10-2008 17:02:34

Thanks for sharing your experience. It is a good news that Marvin products run partially on OpenJDK. But currently we can not provide support for this platform.


Offically, we support only Sun distributed Java (and Apple's built-in Java under OS X systems).


You can see the details in the following document: System requirements





By the way, we have reviewed our tasks list. Currently, we cannot allocate developer capacity for non-critical Linux installer maintenance in the near future. But after upgrading our installer suite to a newer version, we hopefully review installer tasks priorities.

User 25d107bd42

15-10-2008 07:33:35

Hi,


my last post here was not concerned with OpenJDK and Linux but with problems having two different Marvin launchers. This is the title and the problem of this topic. And the experience with OpenJDK showed me, there are more differences in the two launchers as discussed above.





OpenJDK is the effort by Sun Microsystems to release a fully buildable Java Development Kit based completely on free and open source code.


http://en.wikipedia.org/wiki/OpenJDK





I plan to start a new topic "Using Marvin on UNIX/Linux" ASAP.





Kind regards, Hans-Ulrich

User 25d107bd42

12-01-2009 08:32:44

Hi,


having now Marvin 5.1.4 and still on Linux Ubuntu KDE the options to start the Marvin programs MarvinSketch, MarvinView and MarvinSpace with the short scripts "msketch etc." does not work anymore. I don't know why. Something has been changed in these scripts.


     





I cannot recommend anymore the workaround for Linux KDE users described in my earlier posts in this topic.


  


And we must change our implementation in our student pools before updating to Marvin 5.1.4





Regards, Hans-Ulrich