Linux - bcgov/healthgateway GitHub Wiki
Linux Workstation Setup
The Linux software setup is also performed on Windows to provide a near identical common development environment across the two platforms. On Windows, we will use the Windows System for Linux 2 (WSL2) environment.
Requirements
- Ubuntu 20.04
- i7 or higher processor and 16GB of RAM.
Software Install
The following software will be installed:
- .Net Core 6.0 and EF tooling
- Node Version Manager
- Docker
- VS Code
- PG Admin
- Optional software
.Net Core
Please open a bash shell and perform the following:
wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb;rm packages-microsoft-prod.deb
sudo apt-get update;sudo apt-get install -y apt-transport-https && sudo apt-get update && sudo apt-get install -y dotnet-sdk-6.0
dotnet tool install --global dotnet-ef
Node
Using the existing bash shell:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash
nvm install --lts
sudo apt update
sudo apt upgrade
Docker (skip if on Windows)
sudo apt-get update
sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common -y
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io -y
sudo curl -L "https://github.com/docker/compose/releases/download/1.26.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
Install VS Code (skip if on Windows)
sudo snap install --classic code
Install PGAdmin (skip if on Windows)
curl https://www.pgadmin.org/static/packages_pgadmin_org.pub | sudo apt-key add
sudo sh -c 'echo "deb https://ftp.postgresql.org/pub/pgadmin/pgadmin4/apt/$(lsb_release -cs) pgadmin4 main" > /etc/apt/sources.list.d/pgadmin4.list && apt update'
sudo apt install pgadmin4-desktop
Optional Software (skip if on Windows)
- Microsoft Cascadia Code fonts
- Go and Powerline Go
MS Cascadia Code fonts
wget https://github.com/microsoft/cascadia-code/releases/download/v2007.01/CascadiaCode-2007.01.zip
sudo unzip -j -d /usr/share/fonts/truetype/CascadiaCode CascadiaCode-2007.01.zip ttf/*
sudo fc-cache -f -v
rm CascadiaCode-2007.01.zip
Configure VS Code to use the Cascadia Code font and ligatures by
- Going to: File/Preferences/Settings
- Clicking on: Text Editor/Font
- Edit Font Family and Prepend: 'Cascadia Code' to the existing list of fonts
- Enable Ligatures by editing settings.json and setting "editor.fontLagatures": true
You should have a settings.json similar to
{
"editor.fontFamily": "'Cascadia Code', 'Droid Sans Mono', 'monospace', monospace, 'Droid Sans Fallback'",
"editor.fontLigatures": true
}
Save your settings.json file.
Go and Powerline Go
sudo apt install golang-go -y
go get -u github.com/justjanne/powerline-go
Add the following to your .bashrc
GOPATH=$HOME/go
function _update_ps1() {
PS1="$($GOPATH/bin/powerline-go -error $?)"
}
if [ "$TERM" != "linux" ] && [ -f "$GOPATH/bin/powerline-go" ]; then
PROMPT_COMMAND="_update_ps1; $PROMPT_COMMAND"
fi
Please proceed to the General Setup section to complete your Health Gateway development environment.