Windows 11

LIMS*Nucleus is a client/server application requiring a PostgreSQL database server and an Artanis web server. For use in production, installation on data center or cloud servers is most appropriate. However if you are a Windows user, you may wish to evaluate LIMS*Nucleus on your personal laptop. For that purpose installation on Windows Subsystem for Linux 2 directions are provided below. Note that the easiest way to evaluate LIMS*Nucleus is to work with the instance running on Amazon Web Services. A video is available that describes installation of the client on Windows.

Install WSL2

WSL2 on Windows 11 has been tested. Use the windows search tool to find cmd. Open a command prompt in administrative mode:

Install the Debian version of linux.

1
C:\Windows\System32> wsl --install -d Debian

You will need to reboot. Upon reboot you will set up your personal user. Use the name “admin” which is the user name hardcoded in the Postgresql installation scripts. If you wish to use a different name, the scripts will need to be modified. Once Linux is installed, install required Linux utilities:

1
2
$ sudo apt update
$ sudo apt install xz-utils wget

Install LIMS*Nucleus

Launch Linux:

Dowload and run the install script:

1
2
3
4
$ sudo wget https://labsolns.com/labsolns/evaluate/install-limsn-pack.sh
$ chmod 777 ./install-limsn-pack.sh
# export PATH="$HOME/bin${PATH:+:}$PATH"
$ sudo ./install-limsn-pack.sh

When prompted indicate IP: 127.0.0.1
Number of plates per plateset: 100 is reasonable
Do you want to set up a local database? “y”

Launch LIMS*Nucleus

1
$ start-limsn.sh

Troubleshooting

Can’t sudo apt update

1
$sudo nano /etc/resolv.conf

Resolve.conf should look like:

resolve.conf
1
2
3
4
# This file was automatically generated by WSL. To stop automatic generation of this file, add the following entry to />
# [network]
# generateResolvConf = false
nameserver 8.8.8.8

Can’t create directories

Sometimes Linux is started and you do not have permission to create directories. To take ownership of your home directory execute sudo chown -R $USER .

Test and make sure you can mkdir.

Error: “Do you have an /etc/artanis.conf” file?

Most likely the script did not have permission to create directories (see above) so the following must be executed manually:

1
2
3
$sudo mkdir -p ./.config/limsn
$sudo cp ./gnu/store/l67854c56rpv9k8z8kpipfs99h0yjg4a-limsn-0.1.0/share/guile/site/3.0/limsn/conf/artanis.conf ./.config/limsn
$sudo nano ./.config/limsn/artanis.conf ##edit connection parameters as needed

Can’t connect to database

Error: artanis/db.scm:162:6: Throw to key artanis-err' with args(500 #<procedure create-new-DB-conn ()> “Database connect failed:” “could not connect to server: Connection refusedthe server running on host "127.0.0.1" and accepting/IP connections on port 5432?”)’.

If you restart the terminal, you will need to restart the database server:

1
$ sudo pg_ctlcluster 13 main restart

Check that the database is available:

1
$ psql -U ln_admin -h 127.0.0.1 lndb

Configure the database manually:

1
2
3
$ sudo sed -i 's/host[ ]*all[ ]*all[ ]*127.0.0.1\/32[ ]*md5/host    all        all             127.0.0.1\/32        trust/' /etc/postgresql/13/main/pg_hba.conf
$ sudo sed -i 's/\#listen_addresses =/listen_addresses =/' /etc/postgresql/13/main/postgresql.conf
$ sudo pg_ctlcluster 13 main restart

Check environment variables

ERROR: no code for module (dbi dbi)

1
printenv | grep GUI

You should see GUILE related environment variables e.g. GUILE_LOAD_PATH; if not try:

1
$ sudo ./bin/init-limsn-pack.sh

or manually modify .bashrc loaded environment variables:

1
2
3
4
echo export LC_ALL=\"C\" >> $HOME/.bashrc
echo export PATH="$HOME/bin${PATH:+:}$PATH" >> $HOME/.bashrc
echo export GUILE_LOAD_PATH="$HOME/gnu/store/rj0pzbki1m5hpcshs614mhkrgs2b3i9d-artanis-0.5.2/share/guile/site/3.0:$HOME/gnu/store/780bll8lp0xvj7rnazb2qdnrnb329lbw-guile-json-3.5.0/share/guile/site/3.0:$HOME/gnu/store/jmn100gjcpqbfpxrhrna6gzab8hxkc86-guile-redis-2.1.1/share/guile/site/3.0:$HOME/gnu/store/3f0lv3m4vlzqc86750025arbskfrq05p-guile-dbi-2.1.8/share/guile/site/2.2${GUILE_LOAD_PATH:+:}$GUILE_LOAD_PATH" >> $HOME/.bashrc
echo export GUILE_DBD_PATH="$HOME/gnu/store/z5kilafxayw2kdvn3anw1shkqij17dqb-guile-dbd-postgresql-2.1.8/lib" >> $HOME/.bashrc

Terminal resart will be necessary.

Find artanis.conf in the store

1
find ./gnu/store -wholename '*artanis.conf'

Delete Linux

You can delete the Linux instance to recover space, clean up, or start over:

1
$sudo wsl --unregister Debian