An online instance of LIMS*Nucleus is
available for evaluation. You are limited to creating 10 plates per
plate set. Data is refreshed nightly.
username: demo password: demo
Install on AWS EC2
Install your own personal instance on Amazon following directions
provided here. This method installs Guix,
sets up a guix channel, and pulls the LIMS*Nucleus software. Requires a
t2.medium instance on AWS.
Install using a Guix Pack
For users not interested in the Guix package manager, LIMS*Nucleus
and all its dependencies have been collected in a Guix
Pack. You can use this install
script to install the LIMS*Nucleus client and optionally the
database. Suitable for use with the t2.micro free tier instance of
Debian on AWS or local installation. This will be the best option for
most users. Follow the video here. Detailed step by step
manual installation instructions with troubleshooting tips here.
A sample database, not suitable for personal data, is provided on
ElephantSQL. For personal use, the vendors below provide support for
PostgreSQL for a fee.
Once the license key is available, navigate to Utilities/Register
menu item in the software and enter customer ID, license key and your
email. These will be registered in a local database. This is a one time
process.
Click ‘Register’ to update the local database and confirm validity of
the license key.
Problems?: info@labsolns.com
Note that internet access is required for the licensing mechanism to
work. If Blockchain.info is down, please try again at a later time.
From the tools icon under import select “Assay Data”
A file import form will
appear. Select the import file and submit. Fill in required data, making
sure that the imported layout matches the defined
layout of the plate set. Hit
identification can be performed during import or deferred to a later
time.
Once imported, the data can be viewed using a scatter plot, which is
visible when viewing assay runs, i.e. click on the assay run
hyperlink.
Browser cookie management can sometimes go awry. Clear the cookies
associated with the LIMS*Nucleus (LN) URL and go back to the login page
to reset the session id cookie.
Firefox: web/developer/web console while the LN URL is in the address
bar. Select the storage tab. On the left under cookes right click on the
LN URL and choose delete all. Login to LN. You should see a new cookie
‘sid’ appear.
Chrome: more tools/ developer tools select the LN URL and right click
‘clear’. Login to LN. You should see a new cookie ‘sid’ appear.
ERROR: In procedure setlocale: In procedure setlocale: Invalid
argument
1
$ export LC_ALL="C"
ERROR: In procedure open-file: In procedure open-file: No such file
or directory: “/tmp/limsn/tmp/cache/route.cache”
LIMS*Nucleus does not yet use secure network transfer protocol. If
your browser tries to redirect you to an ‘https://’ URL, manually remove
the s to change back to ‘http://’
Tutorial 1 covers in detail steps that
are glossed over in this tutorial.
Looking at available layouts there are 2 that offer replication -
2S4T and 4S2T:
2S4T: Entire plate coated with the same target, samples in duplicate.
Note that sample replicates are in the same row.
4S2T: Each sample tested in duplicate on 2 targets. Note that target
replicates are in the same column. (see tutorial 3 )
Following tutorial 1 I will rearray the
10 plates of PS-6 into a new plate set applying the 2S4T layout. 10 96
well plates in duplicate will requires 5 384 well plates:
Submit and confirm on the next screen. Note that selections made in
the sample replication dropdown limit the options available under target
layout - in this case only the default is available. View the target layout for a discussion on
optional target layouts, which are only used for data annotation.
Click submit to create the new plate set PS-10. Select and assaociate
data with the plate set. Use the data file plates384x5_2S4T.txt
which contains demonstration data for 5 384 well plates. The data has
been generated such that replicates are side by side in the same row and
are +/-10% of each other. In the graph below replicates for one plate
are color coded and appear at the same X value:
Looking at the response trellised by plate and colored by sample
type:
Associate the data with the plate set:
Select the file:
Fill in the required information. Note that I am auto-selecting hits
(all samples with a response greater than 3 standard deviations fromt
the mean of the negative controls) which activates the hit list name and
description text boxes. I did not choose to select the Top N hits so the
box where I would enter N remains disabled.
Click import and after a few seconds you are taken to the ‘Plates for
PS-10’ page where you can scroll down and see the new assay run and hit
list:
Click on the AR-7 link to see a plot of the data. Note that the
associated hit list HL-8 has 155 hits.
Responses are plotted in decreasing order with controls color coded.
Not that if you select normalized response with a hit threshold set to
mean(background)+/-3SD, 155 hits will be identified. The hit list could
have been created here, but was already auto-generated on import.
Looking at the hit list view you can see that PS-6, 96 well plates
contain all 155 hits that can be rearrayed into two 96 well plates.
Once rearrying is complete, creating PS-11, that plate set is
annotated with a worklist indicating that it was generated by a rearray
activity. The worklist can be used to physically rearray the samples
into the new plate set PS-11.
Tutorial 3 prepares a target layout for
the Tutorial 4 discussion on target
replication.
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:
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:
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:
Accession IDs are imported by plate number/well number. The files page provides details on the
file format, with a 2 plate sample file
available. Navigate into the project of interest and select the plate
set of interest. From the tool icon select Accessions under import:
A standard file import form
will open - find the file and click submit. The number of lines expected
will be calculated by querying the sample id count for the plate set.
For example a plate set of two 96 well plates with 4 control wells per
plate (no sample ids for controls) will require 2x(96-4)=184 accession
ids. The control wells should not be included in the import file. For
example a portion of the accession import file looks like:
Calculate the average of all wells labeled “blank” to obtain
plate specific backgound signal
Subract backgound from all signals to obtain background
subtracted values (bkgrnd_sub below) which are used in all further
calculations
Set all background subtracted values that are less than zero to
zero
(4.5 For layouts utilizing duplicates (2S4T, 4S2T), average the duplicates)
Calculate norm, norm_pos, p_enhance as described below
Background subtraction,
normalization
Upon data import, raw values are stored and processed as described
above, then the calculations below are performed to yield additional
columns of stored data.
column
Description
raw
imported raw data
bkgrnd_sub
mean of all wells annotated “blank” subtracted from each raw
value;
norm
all values normalized to the maximum of the background subtracted
values annotated as “unknown”;
norm_pos
all values normalized to the mean of the background subtracted
values annotated as “positive”;
p_enhance
Percent enhancement over the positive control; 100*(
Hit identification
Algorithm
Label
Hit threshold
mean(neg) + 3SD
mean(neg) + 2SD
>0% enhanced
Top N
Highest N responses from unknowns
### References
Sittampalam GS, Coussens NP, Brimacombe K, et al., editors. Assay
Guidance Manual Internet.
Bethesda (MD): Eli Lilly & Company and the National Center for
Advancing Translational Sciences; 2004-.
Brian P. Kelley, 1 Mitchell R. Lunn, 1 David E. Root, Stephen P.
Flaherty, Allison M. Martino, and Brent R. Stockwell; A Flexible Data
Analysis Tool for Chemical Genetic Screens, Chemistry & Biology
11:1495–1503, November, 2004