<div id="table-of-contents">
<h2>Table of Contents</h2>
<div id="text-table-of-contents">
<ul>
<li><a href="#orgheadline11">1. Setup lxd cluster for megatest</a>
<ul>
<li><a href="#orgheadline1">1.1. I setup 3 container  "boxes" - pablo, ruby,
<li><a href="#orgheadline2">1.2. install lxd - loosely followed
<li><a href="#orgheadline3">1.3. put containers on home LAN- followed this
<li><a href="#orgheadline4">1.4. setup shared space across containers, mounted from host
<li><a href="#orgheadline5">1.5. Setup
<li><a href="#orgheadline6">1.6. setup ssh host keys across
<li><a href="#orgheadline7">1.7. pick a container and setup X /
<li><a href="#orgheadline8">1.8. fix consternating issue breaking tab completion working in any
<li><a href="#orgheadline9">1.9. start a vnc session (so iup
<li><a href="#orgheadline10">1.10. from home network, use vnc client to connect to
</ul>
</li>
</ul>
</div>
</div>

# Setup lxd cluster for megatest<a id="orgheadline11"></a>

## I setup 3 container  "boxes" - pablo, ruby, ash<a id="orgheadline1"></a>

-   shared disk space at /lxd-shared
-   picked pablo to serve vnc
-   put containers on home network to make things easy

## install lxd - loosely followed id="orgheadline2"></a>

## put containers on home LAN- followed procedure<a id="orgheadline3"></a>

    host# mkdir /lxd-shared
    host# chown 100000:100000 /lxd-shared
    host# chmod 777 /lxd-shared
    host# xc remote add images
    host# lxc launch ruby
    host# lxc launch pablo
    host# lxc launch ash

## setup shared space across containers, mounted from host fs<a id="orgheadline4"></a>

    mkdir /lxd-shared

-   my root disk is bigly

    chmod 777 /lxd-shared

    host# lxc config device add ruby sharedtmp disk path=/lxd-shared source=/lxd-shared
    host# lxc config device add ash sharedtmp disk path=/lxd-shared source=/lxd-shared
    host# lxc config device add pablo sharedtmp disk path=/lxd-shared source=/lxd-shared

## Setup containers<a id="orgheadline5"></a>

-   Foreach container {container}:

    host# lxc exec {container}

    container# apt update
    container# apt upgrade
    container# apt-get install -y openssh-server htop ncurses-term fossil make
    container# service ssh start

    container# addgroup megatest
    container# adduser --ingroup megatest mtuser

    container# apt-get install -y libreadline-dev
    container# apt-get install -y libwebkitgtk-dev libfreetype6-dev libx11-dev libxpm-dev libxmu-dev libxft-dev libgtk2.0-dev \
    container# libgl1-mesa-dev libglu1-mesa-dev libpangox-1.0-dev \
    container# bison libwebkitgtk-3.0-dev
    container# apt-get install -y libmotif-common
    container# apt-get install -y uuid-dev

## setup ssh host keys across mtuser<a id="orgheadline6"></a>

    host# lxc exec container1
    container1# su - mtuser
    % ssh-keygen

-   leave password blank, take all defaults

    % cat .ssh/id_rsa.pub > .ssh/authorized_keys
    % chmod go= .ssh/authorized_keys
    % tar czvf .ssh
    % ssh container2 tar xzvf
    % ssh container3 tar xzvf

-   ssh between all pairs to initialize host keys.  should be passwordless now.

## pick a container and setup X / vnc<a id="orgheadline7"></a>

    container# apt-install vnc4server xfce4
    container# su -c mtuser
    % vncpasswd
    put following in .vnc/xstartup


     # Uncomment the following two lines for normal desktop:
     # unset SESSION_MANAGER
     # exec

     #[ -x ] && exec
     #[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
     #xsetroot -solid grey
     #vncconfig -iconic &
     #x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
     #x-window-manager &


     unset SESSION_MANAGER
     unset DBUS_SESSION_BUS_ADDRESS
     startxfce4 &

     [ -x ] && exec
     [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
     xsetroot -solid grey
     vncconfig -iconic &

mtuser% vncserver -geometry 1366x746 -depth 24

## fix consternating issue breaking tab completion working in any term:<a id="orgheadline8"></a>

-   edit
-   find the line

        <property name="&lt;Super&gt;Tab" type="string" value="switch_window_key"/>
-   and change it to

        <property name="&lt;Super&gt;Tab" type="empty"/>
-   restart vnc (vncserver -stop :1 ;

## start a vnc session (so iup works)<a id="orgheadline9"></a>

## from home network, use vnc client to connect to container:1<a id="orgheadline10"></a>

-   setup shop in /lxd-share, eg:

    % cd /lxd-share
    % fossil clone megatest.fossil
    .....