Installation How To VistA GT.M Linux

From VistApedia
Revision as of 17:19, 13 May 2005 by JohnLeoZ (talk | contribs)
Jump to: navigation, search

Kevin T's Introduction

"O.K. Take a deep breath. Close your eyes and find that inner peace. Now exhale and let's get started."

VistA is a complex software system designed in a modular fashion to meet a wide range of needs: everything from complete hospital systems, to individual outpatient clinics, and probably much more. So expect to take a bit of time learning the system and how it all fits together.

Currently, there is no installation wizard. Users will have to follow step-by-step instructions, and asks lots of questions.

A note of terminolgy: 1. Installation -- means getting GT.M setup on the system and all the VistA files copied to their proper locations etc. 2. Configuration -- this means getting settings INSIDE VistA set up -- i.e. adding users, setting up clinics, institutions, scheduling parameters etc. etc.

      • PLEASE CONTRIBUTE***

Believe it or not, the 'experts' don't often bring systems online from the ground up. So its hard from them to remember all the steps needed to be successful. So if you can make the way easier for the next guy, please add to this wikki! Thanks

Here is a link to an older site I worked on when first working with VistA. It has a compilation of several installation guides. http://www.geocities.com/kdtop3

Kevin Toppenberg, MD 4-2-2005

Notes from Bhaskar

Setting up GT.M and the environment (vs. configuring VistA itself)

Depedencies:

You will need Xdialog on your PC for this approach.

Download an OpenVistA SemiVivA file from WorldVistA (either OpenVistA SemiVivA 0.4 or OpenVistA SemiVivA FOIA Gold 20050212), say to /Distrib/OpenVistA. The following will install GT.M and OpenVistA (replace the filename in the second line with appropriate name of downloaded file):

su -

tar zxvf /Distrib/OpenVistA/OpenVistASemiVivAFOIAGold20050212.tgz

Assuming your userid is "vista" as the normal user vista, execute:

/usr/local/OpenVistA/vista --install /home/vista/myVistA/OpenVistA

(or other desired location) and reply in the affirmative when you are prompted about creating directories. Subsequently, to run it, just execute:

/usr/local/OpenVistA/vista --run /home/vista/myVistA/OpenVistA


---K.S. Bhaskar


Script tweaks from Zimmer

Modifications of Bhaskar's vista install shell script

I have used this to "learn myself" a little more of the workings of Bash scripting.
The changes I have made 
  1. allow the script to run without X-Windows
  2. add a rundown function, for whatever that is worth,
  3. work with Xdialog's compatability mode,
          which lets the dialog calls look pretty in X-windows.

I hope that some of us will paste this into their OpenVistA directories and try it out.
Thanks in advance for any and all feedback.
#!/bin/bash
# Install and run OpenVistA for the OpenVistA Vivum live CD.
# GT.M[TM] is assumed to be on the CD at /usr/local/gtm.
# OpenVistA distribution is assumed to be on the CD at /usr/local/OpenVistA.
#
# This script is placed in the public domain by K.S. Bhaskar
# And my changes are the same, of course.
#
# For demonstration purposes only, and not for production use.
# The user assumes all responsibility for using this script.
#
# Revision history
# 20040103  0.1   K.S. Bhaskar    Initial Creation
# 20040119  0.11  K.S. Bhaskar    Make mount command sudoXdialog.wrapper
# 20040122  0.12  K.S. Bhaskar    Remove mount command and require directories be mounted in advance
# 20040605  0.2   K.S. Bhaskar    Put all source files in one directory
# 20040627  0.3   K.S. Bhaskar    Default gtm_source and vista_source based on package defaults
# 20050305  0.31  K.S. Bhaskar    Default base install directory to $PWD

# 20050512  0.31z J.L. Zimmer     Converted from Xdialog to dialog with addition of Rundown and cosmetic tweaks
#				   See Xdialog documentation for Compatability Mode and installation of Xdialog.wrapper
#                                                                           

# Default locations for GT.M and OpenVistA 
# Determine directory if none specifiedfor GT.M and OpenVistA

	if [ -z "$vista_source" ] ; then export vista_source=`dirname $0` ; fi
	if [ -z "$gtm_source" ] ; then export gtm_source=$vista_source/../gtm ; fi

# Set up GT.M environment & point to global directory.

. $gtm_source/gtmprofile
export gtmgbldir=$vista_source/g/mumps.gld

# Determine action.

case $1 in
	--install) action="Install (and run)" ;;
	--run) action="Run" ;;
	--erase) action="Erase" ;;
	--rundown) action="Rundown" ;;

	*)	if dialog --title "  OpenVistA   Startup   Menu  " --radiolist "    Select Action" 0 0 5 \
		"Install (and run)" "<directory> [entryref]" "" \
		"Run" "<directory> [entryref]" "on" \
		"Rundown" "" "" \
		"Erase" "<directory>" "" 2>/tmp/OpenVistA$$.tmp ;
		then action=`cat /tmp/OpenVistA$$.tmp` ; rm -f /tmp/OpenVistA$$.tmp ; 
		else if [ -z "$action" ] ; then dialog --title "no action selected" --msgbox "Cancelled.  Exiting Script..." 0 0 ; exit 1 ; fi
		fi
;;
esac

# Select a directory.  ( "$action" )

	if [ -z "$2" ] ; then directory=~/ ; else directory=$2 ; fi

	dialog --title "  Select directory { $action }  " --fselect $directory 0 0 2>/tmp/OpenVistA$$.tmp
	export vista_home=`sed 's/\/$//' /tmp/OpenVistA$$.tmp` ; rm /tmp/OpenVistA$$.tmp

	if [ -z $vista_home ] ; then dialog --title "no directory selected" --msgbox "Action Cancelled. Exiting..." 0 0 ; exit 1 ; fi

# For Run and Erase directory must exist; for Install OK to create if non existent.

case $action in
	("Run"|"Erase"|"Rundown")
		if ! [ -f "$vista_home/g/mumps.dat" ]
		then dialog --msgbox "$vista_home/g/mumps.dat does not exist.  Exiting..." 0 0 ; exit 1
		fi
;;
	*)	if ! [ -d "$vista_home && -d $vista_home/o && -d $vista_home/r" ]
		then	if dialog --yesno "$vista_home and/or subdirectories don't exist.  OK to create?" 0 0
			then mkdir -p $vista_home/g $vista_home/o $vista_home/r
			else dialog --title "no to new directory" --msgbox "Installation Cancelled.  Exiting..." 0 0 ; exit 1
			fi
		else dialog --msgbox "Unable to create $vista_home and/or subdirectories.  Exiting..." 0 0 ; exit 1
		fi
;;
esac

# Ready to execute our action.

case $action in
	"Run")	export gtmroutines="$vista_home/o($vista_home/r) $vista_source/o($vista_source/r) $gtm_dist"
		cd $vista_home ; clear
		if [ -z "$3" ] ; then $gtm_dist/mumps -dir ; else $gtm_dist/mumps -run $3 ; fi
			action="Rundown" 								# Offers rundown on the way out
;;
	"Erase")
		if dialog --title "ERASE" --yesno "about to delete $vista_home" 0 0
		then 	if ! `rm -rf $vista_home`
			then dialog --title "" --msgbox "Unable to delete $vista_home.  Exiting..." 0 0 ; exit 1
			fi
		fi
;;
	"Install (and run)") 
		dialog --msgbox "Copying the database.  May take several minutes." 0 0 &
		gzip -d <$vista_source/g/mumps.dat.gz >$vista_home/g/mumps.dat
		export gtmroutines="$vista_home/o($vista_home/r) $vista_source/o($vista_source/r) $gtm_dist"
		if [ -z "$3" ] ; then $gtm_dist/mumps -dir ; else $gtm_dist/mumps -run $3 ; fi
			action="Rundown"
;;
esac

case $action in
	"Rundown")
		if dialog --defaultno --yesno "Rundown the database now?" 0 0
		then `$gtm_dist/mupip rundown -r "*"`
		fi
;;
esac



Manual Installation of OpenVista SemiVivA FOIA Gold source on Linux.

Mark Street, RHCE - March 24, 2005

1. Create a vista user
2. Edit vista users environment
3. Obtain Vista FOIA GOLD source archive
4. Place Vista archive contents onto filesystem
5. Begin Configuration of Vista

It is assumed you have superuser (root) access on the system you are installing Vista.
Most of the commands and tasks below will be performed as the superuser.

1. Create a vista user

useradd vista
or
adduser vista

Make sure a home directory for the vista user is created.
Utilize the manual pages for useradd if you need to customize the location of the vista user's home directory.

2. Edit vista user's environment - Add the paths to Vista's routines and gtm. Below is an example of a .bash_profile file for the vista user. It assumes you are installing Vista into the user vista's home directory /home/vista and your are installing gtm into /usr/local/gtm.

Create a directory within the vista user's home directory for logging.

mkdir /home/vista/log
chown vista.vista /home/vista/log

You can add the vista specific portions to your vista user's existing .bash_profile or replace it with this example.

## ---- BEGIN ----
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin

unset USERNAME

## OpenVistA specific environment ##
export gtm_dist=/usr/local/gtm
export gtm_log=/home/vista/log

export gtmgbldir=/home/vista/g/mumps.gld
export gtm_vista=/home/vista/
export vista_home=/home/vista
export gtmroutines="$vista_home/o($vista_home/r) $gtm_dist"

alias GTM="$gtm_dist/mumps -direct"
alias gtm="$gtm_dist/mumps -direct"
alias mupip="$gtm_dist/mupip"
alias gde="$gtm_dist/mumps -r ^GDE"
alias lke="$gtm_dist/lke"
alias dse="$gtm_dist/dse"
alias rundown="$gtm_dist/mupip rundown -r \"*\""

export PATH=$PATH:$gtm_dist
# ---- END ----

3. Obtain and unpack the Vista FOIA GOLD archive from worldvista at sourceforge.

http://sourceforge.net/worldvista/
OpenVista SemiVivA FOIA Gold gzipped tape archive
OpenVistASemiVivAFOIAGold20050212.tgz

From the command prompt unarchive and uncompress the Vista file structure.

tar -xzvf OpenVistASemiVivAFOIAGold20050212.tgz

Two directories will be created, gtm and OpenVistA.
The gtm directory contains the gtm binaries and mumps routines and object files.
The OpenVistA directory contians the mumps database files and their associated filesystem structure.

4. Place Vista routines and gtm on the filesystem.

First make sure the ownership of all files and directories are owned by the proper users.

gtm = root
OpenVistA = vista

From the directory in which you UNarchived the files issue the following commands;

chown -R root.root gtm

Change the file and directory ownership on the Vista data files and file structure to the vista user.

chown -R vista.vista OpenVistA

Now move the files to their proper location on the filesytem;

mv gtm /usr/local/

Change your current working directory into the OpenVista directory and move all the Vista files to the vista user's home dir /home/vista.

cd OpenVistA

mv * /home/vista/

Now gunzip the mumps.dat.gz file in the 'g' directory in /home/vista

gunzip mumps.dat.gz

5. Begin Configuration of Vista


Related Concepts

Linux Command su ||Linux Command tar ||Linux Idea userid ||Linux Idea filesystem