Difference between revisions of "Installation How To VistA GT.M Linux"

From VistApedia
Jump to: navigation, search
(Kevin T's Introduction: Rickroll)
 
(8 intermediate revisions by 4 users not shown)
Line 1: Line 1:
 
__toc__
 
__toc__
  
[[VistA Trademark Issues]]
+
This page uses the [[historical~| Historical]] meaning of the term "OpenVistA" [[VistA Trademark Issues]]
 +
 
 +
=== rpm and deb installers for gtm now exist ===
 +
 
 +
rpm here:https://launchpad.net/openvista-gtm-integration, deb installer for now here: https://sourceforge.net/projects/worldvistadebin/
  
 
=== Kevin T's Introduction ===
 
=== Kevin T's Introduction ===
Line 13: Line 17:
 
A note of terminology:
 
A note of terminology:
 
1. Installation -- means getting the [[MUMPS Overview|MUMPS]] programming language implementation setup on the system and all the VistA files copied to their proper locations on the operating system level, etc.
 
1. Installation -- means getting the [[MUMPS Overview|MUMPS]] programming language implementation setup on the system and all the VistA files copied to their proper locations on the operating system level, etc.
2. Configuration -- this means getting settings INSIDE VistA set up -- i.e. adding users, setting up clinics, institutions, scheduling parameters etc. etc.
+
2. [[Configuration~|Configuration]] -- this means getting settings INSIDE VistA set up -- i.e. adding users, setting up clinics, institutions, scheduling parameters etc. etc.
  
 
***PLEASE CONTRIBUTE***
 
***PLEASE CONTRIBUTE***
Line 20: Line 24:
  
 
Here is a link to an older site I worked on when first working with VistA.  It has a compilation of several installation guides.
 
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
+
http://www.geocities.com/kdtop3 (Note to reader 7/28/2015: this link is obsolete and currently leads to a [https://en.wikipedia.org/wiki/Rickrolling Rickroll])
 +
 
  
 
Kevin Toppenberg, MD
 
Kevin Toppenberg, MD
Line 26: Line 31:
  
 
----
 
----
 
 
  
 
=== Notes from Bhaskar ===
 
=== Notes from Bhaskar ===
Line 108: Line 111:
 
  export gtmgbldir=$vista_source/g/mumps.gld
 
  export gtmgbldir=$vista_source/g/mumps.gld
 
   
 
   
  # Determine action.
+
  # Determine [[action~|Action]].
 
   
 
   
 
  case $1 in
 
  case $1 in
  --install) action="Install (and run)" ;;
+
  --install) [[action~|Action]]="Install (and run)" ;;
  --run) action="Run" ;;
+
  --run) [[action~|Action]]="Run" ;;
  --erase) action="Erase" ;;
+
  --erase) [[action~|Action]]="Erase" ;;
  --rundown) action="Rundown" ;;
+
  --rundown) [[action~|Action]]]="Rundown" ;;
 
   
 
   
  *) if dialog --title "  OpenVistA  Startup  Menu  " --radiolist "    Select Action" 0 0 5 \
+
  *) if dialog --title "  OpenVistA  Startup  Menu  " --radiolist "    Select [[Action~|Action]]" 0 0 5 \
 
  "Install (and run)" "<directory> [entryref]" "" \
 
  "Install (and run)" "<directory> [entryref]" "" \
 
  "Run" "<directory> [entryref]" "on" \
 
  "Run" "<directory> [entryref]" "on" \
 
  "Rundown" "" "" \
 
  "Rundown" "" "" \
 
  "Erase" "<directory>" "" 2>/tmp/OpenVistA$$.tmp ;
 
  "Erase" "<directory>" "" 2>/tmp/OpenVistA$$.tmp ;
  then action=`cat /tmp/OpenVistA$$.tmp` ; rm -f /tmp/OpenVistA$$.tmp ;  
+
  then [[action~|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
+
  else if [ -z "$action" ] ; then dialog --title "no [[action~|Action]] selected" --msgbox "Cancelled.  Exiting Script..." 0 0 ; exit 1 ; fi
 
  fi
 
  fi
 
  ;;
 
  ;;
 
  esac
 
  esac
 
   
 
   
  # Select a directory.  ( "$action" )
+
  # Select a directory.  ( "$[[action~|Action]]" )
 
   
 
   
 
  if [ -z "$2" ] ; then directory=~/ ; else directory=$2 ; fi
 
  if [ -z "$2" ] ; then directory=~/ ; else directory=$2 ; fi
 
   
 
   
  dialog --title "  Select directory { $action }  " --fselect $directory 0 0 2>/tmp/OpenVistA$$.tmp
+
  dialog --title "  Select directory { $[[action~|Action]] }  " --fselect $directory 0 0 2>/tmp/OpenVistA$$.tmp
 
  export vista_home=`sed 's/\/$//' /tmp/OpenVistA$$.tmp` ; rm /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
+
  if [ -z $vista_home ] ; then dialog --title "no directory selected" --msgbox "[[Action~|Action]] Cancelled. Exiting..." 0 0 ; exit 1 ; fi
 
   
 
   
 
  # For Run and Erase directory must exist; for Install OK to create if non existent.
 
  # For Run and Erase directory must exist; for Install OK to create if non existent.
 
   
 
   
  case $action in
+
  case $[[action~|Action]] in
 
  ("Run"|"Erase"|"Rundown")
 
  ("Run"|"Erase"|"Rundown")
 
  if ! [ -f "$vista_home/g/mumps.dat" ]
 
  if ! [ -f "$vista_home/g/mumps.dat" ]
Line 154: Line 157:
 
  esac
 
  esac
 
   
 
   
  # Ready to execute our action.
+
  # Ready to execute our [[action~|Action]].
 
   
 
   
  case $action in
+
  case $[[action~|Action]] in
 
  "Run") export gtmroutines="$vista_home/o($vista_home/r) $vista_source/o($vista_source/r) $gtm_dist"
 
  "Run") export gtmroutines="$vista_home/o($vista_home/r) $vista_source/o($vista_source/r) $gtm_dist"
 
  cd $vista_home ; clear
 
  cd $vista_home ; clear
 
  if [ -z "$3" ] ; then $gtm_dist/mumps -dir ; else $gtm_dist/mumps -run $3 ; fi
 
  if [ -z "$3" ] ; then $gtm_dist/mumps -dir ; else $gtm_dist/mumps -run $3 ; fi
  action="Rundown" # Offers rundown on the way out
+
  [[action~|Action]]="Rundown" # Offers rundown on the way out
 
  ;;
 
  ;;
 
  "Erase")
 
  "Erase")
Line 174: Line 177:
 
  export gtmroutines="$vista_home/o($vista_home/r) $vista_source/o($vista_source/r) $gtm_dist"
 
  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
 
  if [ -z "$3" ] ; then $gtm_dist/mumps -dir ; else $gtm_dist/mumps -run $3 ; fi
  action="Rundown"
+
  [[action~|Action]]="Rundown"
 
  ;;
 
  ;;
 
  esac
 
  esac
 
   
 
   
  case $action in
+
  case $[[action~|Action]] in
 
  "Rundown")
 
  "Rundown")
 
  if dialog --defaultno --yesno "Rundown the database now?" 0 0
 
  if dialog --defaultno --yesno "Rundown the database now?" 0 0
Line 191: Line 194:
 
----
 
----
  
 
=== Manual Installation of OpenVista SemiVivA FOIA Gold source on Linux. ===
 
'''Mark Street, RHCE - March 24, 2005'''
 
 
1. Create a vista user<br />
 
2. Edit vista users environment<br />
 
3. Obtain Vista FOIA GOLD source archive<br />
 
4. Place Vista archive contents onto filesystem<br />
 
5. Begin Configuration of Vista
 
 
It is assumed you have superuser (root) access on the system you are installing Vista.<br />
 
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.<br />
 
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.
 
 
<pre>## ---- 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 ----
 
</pre>
 
3.  Obtain and unpack the Vista FOIA GOLD archive from worldvista at sourceforge.
 
 
http://sourceforge.net/worldvista/<br />
 
OpenVista SemiVivA FOIA Gold gzipped tape archive<br />
 
[http://prdownloads.sourceforge.net/worldvista/OpenVistASemiVivAFOIAGold20050212.tgz?download OpenVistASemiVivAFOIAGold20050212.tgz]<br />
 
 
From the command prompt unarchive and uncompress the Vista file structure.
 
 
tar -xzvf OpenVistASemiVivAFOIAGold20050212.tgz
 
 
Two directories will be created, gtm and OpenVistA.<br />
 
The gtm directory contains the gtm binaries and mumps routines and object files.<br />
 
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<br />
 
OpenVistA = vista<br />
 
 
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]]
 
<br><br>
 
----
 
  
  
Line 344: Line 232:
  
 
[[Category:GT.M Specific]]
 
[[Category:GT.M Specific]]
 +
[[Category:Linux]]

Latest revision as of 21:05, 28 July 2015

This page uses the Historical meaning of the term "OpenVistA" VistA Trademark Issues

rpm and deb installers for gtm now exist

rpm here:https://launchpad.net/openvista-gtm-integration, deb installer for now here: https://sourceforge.net/projects/worldvistadebin/

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 ask lots of questions.

A note of terminology: 1. Installation -- means getting the MUMPS programming language implementation setup on the system and all the VistA files copied to their proper locations on the operating system level, 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 for 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 wiki! 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 (Note to reader 7/28/2015: this link is obsolete and currently leads to a Rickroll)


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 (Xdialog not required)

"zista", Modifications to Bhaskar's ../OpenVistA/vista install 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

--gra'pa Z 12:25, 13 May 2005 (CDT)
--Zeno 02:15, 28 Jul 2005 (CDT) Ok, I tested above script and whenever the "run database now" option comes, I can not select "yes"! Any hints? Please also refer to my questions here
--gra'pa Z 14:02, 5 Sep 2005 (CDT) I don't understand your problem, Zeno. Has anyone else had any further experience with this script? I've rechecked it, and it cut-and-paste from here works fine for me. It does require dialog. It's advantage is that it runs nicely in terminal mode.




Porting from Cache' to GT.M


Port VO 8-16-05 Release to GTM



Samuel Fontanez' Installation Guide


Anyone that is begining working with vista and want
documentation about installing vista,GT.M, adding
patients,users,wards,beds, and assign patients to beds
and to wards can contact us here in puerto rico. We
had created a documentation on how to do that with the
help of all people in the forum. It is not much but it
help us a lot and we want to share it with any user
that want it.
Thanks to all,
Samuel
samuel90210@yahoo.com

GTM installation



Related Concepts

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