MSS Code Factory 2.11: Mark Stephen Sobkow's Code Factory
Configuring the Installation
Windows 10 Setup
Windows 10 Home or Pro both require a certain degree of customization
to provide a useful workstation. There are several tools I download
and configure, but I'm not going to provide the instructions for how to
configure those tools, only the order in which you should install and
configure them. They have quite adequate documentation available on
the internet for the configuration of each tool.
Windows 10 Core Tools
- Chrome Web Browser
- https://www.google.com/chrome/ Install to default location
- Thunderbird EMail
- https://www.mozilla.org/en-US/thunderbird/ Install to default location
- GIMP - GNU Image Manipulation Program
- https://www.gimp.org/ Install to default location
- PuTTY
- https://www.putty.org/ Install to default location, then use puttygen to produce your SSH keys
- Gpg4Win
- https://www.gpg4win.org/ Install to default location, then use Kleopatra to generate and default to your GPG signing key
- FileZilla
- https://filezilla-project.org/ Install to default location
- OpenJDK 13 64-bit Windows
- https://jdk.java.net/13/. You can use OpenJDK 13 if you don't intend to run JavaFX applications or clients, or want to install the optional openjfx.io add-on for Windows. You have GPL freedoms with classpath exceptions to run this JDK with any workload it can handle, under any license the product you are running chooses to specify. Download the .zip and extract it to C:/Progra~1/jdk.java.net/13, then set the environment variable for _JDK_HOME to the extracted directory. Set JDK_HOME and JAVA_HOME to %_JDK_HOME%, and add %_JDK_HOME%\bin to your PATH.
- OpenJFX 13 64-bit Windows
- https://openjfx.io/. OpenJFX provides a open source licensed version of JavaFX for JDK 13. You have GPL freedoms with classpath exceptions to run this version of JavaFX with any workload it can handle, under any license the product you are running chooses to specify. Download the .zip and extract it to C:/Progra~1/openjfx.io, then set the environment variable for PATH_TO_FX to the extracted directory (javafx-sdk-13.) You then need to specify %PATH_TO_FX% in your module paths invocations of javac.exe and java.exe.
- Apache Ant
- https://ant.apache.org/ Install to ~/msscf/bin/apache-ant-1.10.3
- Princeton University WordNet 3.0 with 3.1 dictionaries
- http://wordnet.princeton.edu Install to d:\msscf\bin\WordNet-3.0, then extract 3.1 dict entries over 3.0 installation
- MSys2
- http://www.msys2.org/ Mine is under ~/bin/msys2
- Eclipse JEE 2019-09 R
- http://www.eclipse.org/downloads/packages Install to ~/bin/eclipse-jee-2019-r
Microsoft Public Development Tools targetting 64-bit Windows 10
You'll want to install the Microsoft development tools "Visual Studio Community 2019",
"Visual Studio Code", ".NET Framework", "Build Tools for Visual Studio 2019", and
"Microsoft Visual C++ Redistributable for Visual Studio 2019", all for x64, as x86 is
not supported, from https://www.visualstudio.com/downloads/#build-tools-for-visual-studio-2019
Windows 10 System Environment Variables
Next we need to deal with the system environment variables that
need to be set on Windows. Note that I assume one installation
per machine; these can not be set as User variables:
- __MSSCFINSTDIR
- 'C:\PROGRA~1\msscf'
- _ANT_HOME
- C:\Users\YourUserNameHere\msscf\bin\apache-ant-1.10.5'
- _JAVA_HOME
- C:\PROGRA~1\OPENJD~1.NET\jdk-13
- _JDK_HOME
- C:\PROGRA~1\OPENJD~1.NET\jdk-13
- _JFX_HOME
- C:\PROGRA~1\OPENJD~1.NET\javafx-sdk-13
- _MSSCFHOME
- C:\Users\YourUserNameHere\msscf
- ANT_HOME
- %_ANT_HOME%
- CATALINA_HOME
- 'C:\Users\YourUserNameHere\msscf\bin\apache-tomcat-9.0.10'
- JAVA_HOME
- %_JAVA_HOME%
- JDK_HOME
- %_JDK_HOME%
- JFX_HOME
- %_JFX_HOME%
- LIBPATH
- %__MSSCFINSTDIR%\bin;%__MSSCFINSTDIR%\dll;%__MSSCFINSTDIR%\lib
- LOG4J2_CONF
- C:\Users\YourUserName\log4j2.properties
- MSSCFHOME
- %_MSSCFHOME%dd>
- PATH
- C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Progra~2\Vim\vim80;C:\Progra~2\NVIDIA~1\PhysX\Common;C:\Progra~1\NVIDIA~1\NVIDIA~2;C:\Progra~2\Steam;%_JDK_HOME%\bin;%_JFX_HOME%\bin;%_ANTHOME%\bin;%HOME%\bin\msys64\mingw64\bin;%HOME%\bin\msys64\mingw32\bin;C:\Progra~1\CMake\bin;C:\Progra~1\PuTTY\;C:\Progra~1\NVIDIA Corporation\NVIDIA NvDLISR;C:\Progra~1\dotnet\;C:\Progra~1\Microsoft SQL Server\130\Tools\Binn\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;%__MSSCFINSTDIR%\bin;%__MSSCFINSTDIR%\dll;%__MSSCFINSTDIR%\lib;C:\Progra~2\Microsoft SQL Server\140\Tools\Binn\;C:\Progra~1\Microsoft SQL Server\140\Tools\Binn\;C:\Progra~2\Microsoft SQL Server\140\DTS\Binn\;C:\Progra~1\Microsoft SQL Server\140\DTS\Binn\;C:\Progra~1\Microsoft SQL Server\Client SDK\ODBC\130\Tools\Binn\;C:\Progra~2\Microsoft SQL Server\Client SDK\ODBC\130\Tools\Binn\;C:\Progra~2\Microsoft SQL Server\140\Tools\Binn\ManagementStudio\;
- PATH_TO_FX
- 'C:\Progra~1\openjdk.java.net\javafx-sdk-13[.0[.fix]]\lib'
- VIM
- C:\Progra~2\Vim\vim81\vim.exe
- VIMRC
- %HOME%\.vimrc
- VIM_HOME
- C:\Progra~2\Vim\vim81
Windows 10 WSL Ubuntu Setup
Windows Services for Linux with Ubuntu 18.04 LTS is a very handy add-on
to the Windows environment stack, allowing me to continue to use my
Git Package, Archive, and Build scripts for the pieces that fall under
the Linux domain for my project. Open JDK 13 is currently used for both
WSL and Windows native environments.
Only the WSL version of git is used to maintain the code. The Windows
version of git was inadequate, save for the implementation provided by
MSys2/MinGW64.
I have a collection of environment scripts in the
home-template subdirectory
of the documentation archive for MSS Code Factory 2.11, which you can
download and extract easily.
There are initialization files for the WSL, Windows 10, and MSys2/MinGW
environments there. Don't forget to replace the "dot-" part of the
file names with ".". You'll find the patterns "Your Name" and
"your@email.address" throughout the files; edit them appropriately.
You'll also need to provide your SSL and GPG key ids.
Now you'll want to install the MSS Code Factory source tree to your
MSSCFHOME directory:
cd $MSSCFHOME
git clone https://github.com/msobkow/msscf_2_11
Copy and rename the shell template files from
msscf_2_11/java/documentation-2.11/home-template/wsl-ubuntu-env
to your home directory in your WSL session. Note that dot-vim is a directory of files,
not just one file. You'll want to remove the .htaccess after you make your recursive
copy of the directory.
Edit the files. You'll find the pattern strings "Your Name" and
"your@email.address" littering the template files. Edit them
accordingly. You'll also need to edit the SSL and GPG key ids
according to your keys.
Close your WSL Ubuntu session windows, close your applications, and restart Windows
to propagate all of the environment variable and path settings we've made
to your system environment. Trying to use any of the command scripts without a valid
system environment is dangerous, as undefined variables can result in missing
directory information.
Once you're logged back in and have started another WSL Ubuntu session, you should
be able to finish checking out the source tree:
cd $MSSCFHOME
$HOME/bin/CloneAll.bash
This may take a fair bit of time to execute, even a few hours, depending on how
fast your download link is.
Ubuntu/Debian amd64 Linux
Download a copy of MSS Code Factory 2 from the SourceForge download servers,
and extract it. I recommend the following:
cd $HOME
mkdir msscf
cd msscf
mkdir runtime-2.11
cd runtime-2.11
unzip msscf_2_11-<version>-installer.zip
I'm going to assume you've extracted it this way as we work through the next
steps.
Make sure your JDK_HOME and JAVA_HOME variables point to a valid JDK 13 installation;
I use OpenJDK 13 under Debian Linux, with the optional OpenJFX package installed.
Add the extracted tool's bin directory to your PATH in your $HOME/.profile, and then
source your .profile or log out and back in again.
export PATH="${HOME}/msscf/runtime-2.11/bin:${PATH}"
Download a .msscfrc template file from the MSS Code Factory 2.11 documentation website,
and modify it accoring to your platform's configuration. It should look something like this:
msscf.cartridgedir=/home/msobkow/msscf/msscf_2_11/java/cartridge-2.11
msscf.modeldir=/home/msobkow/msscf/my-domain-IsAlive-1-1/model-2.11
msscf.modeldir1=/home/msobkow/msscf/msscf_2_11/java/model-2.11
msscf.rootgendir=/home/msobkow/msscf
You can specify additional model and cartridge paths as "cartridgedir1" or "modeldir1",
and they will be searched in the order specified. You'll probably want to create a
separate model directory for your projects, and make it the first model directory searched,
with the runtime-2.11/model-2.11 directory being the modeldir1 entry that is searched
second (that way when you're working with the editor it will save your models to your
model directory by default instead of the directories of the tool itself.)
Congratulations! Your installation is ready to use.
WSL Ubuntu 18.04 LTS Core Tools
- OpenJDK 13 64-bit linux
- https://jdk.java.net/13/. You can use OpenJDK 13 if you don't intend to run JavaFX applications or clients, or want to install the optional openjfx.io add-on for Windows. You have GPL freedoms with classpath exceptions to run this JDK with any workload it can handle, under any license the product you are running chooses to specify. Download the .zip and extract it to C:/Progra~1/jdk.java.net/13, then set the environment variable for _JDK_HOME to the extracted directory. Set JDK_HOME and JAVA_HOME to %_JDK_HOME%, and add %_JDK_HOME%\bin to your PATH.
- OpenJFX 13 64-bit linux
- https://openjfx.io/. OpenJFX provides a open source licensed version of JavaFX for JDK 13. You have GPL freedoms with classpath exceptions to run this version of JavaFX with any workload it can handle, under any license the product you are running chooses to specify. Download the .zip and extract it to C:/Progra~1/openjfx.io, then set the environment variable for PATH_TO_FX to the extracted directory (javafx-sdk-13.) You then need to specify %PATH_TO_FX% in your module paths invocations of javac.exe and java.exe.
- Princeton University WordNet 3.0 with 3.1 dictionaries
- http://wordnet.princeton.edu Install to ~/bin/WordNet-3.0, then extract 3.1 dict entries over 3.0 installation
- Eclipse JEE 2019-09 R
- http://www.eclipse.org/downloads/packages Install to ~/bin/eclipse-jee-2019-r
- Eclipse CPP 2019-09 R
- http://www.eclipse.org/downloads/packages Install to ~/bin/eclipse-cpp-2019-r