Using latest version of Morph
Normally users should use the version of Morph which is installed in the with their chosen baserock devel system.
However, Morph is under active development and you are welcome to try the latest version from git. Make sure you are running the latest release of the Baserock 'build' reference system, so that all the necessary dependencies are present.
You don't need to install the git version onto the main filesystem, you can just run it from its source tree.
cd /src
If you have an account at gerrit.baserock.org, and have registered your public key with gerrit, clone from there
git clone ssh://<gerrit Username>@gerrit.baserock.org:29418/baserock/baserock/morph --origin=gerrit
If you don't then use anonymous authentication:
git clone https://gerrit.baserock.org/baserock/baserock/morph --origin=gerrit
If you want to be sure you don't accidentally run the version of Morph provided
in the disk image then you can replace /usr/bin/morph
:
cd /usr/bin
mv morph morph.dist
cat >morph <<'EOF'
#!/bin/sh
morphpath=/src/morph
PYTHONPATH="$morphpath" "$morphpath/morph" "$@"
EOF
chmod +x morph
Here we've set the
morphpath
variable to/src/morph
because we've cloned morph into/src/morph
. You can clone morph to any location of course, but make suremorphpath
is set to the directory that you cloned morph into.
Aditional steps for baserock systems older than 15.10
You need to manually download the pylru package and add it to your PYTHONPATH:
cd /src
git clone git://git.baserock.org/delta/python-packages/pylru
Now edit your /usr/bin/morph script so it looks like this:
#!/bin/sh
morphpath=/src/morph
pylrupath=/src/pylru
PYTHONPATH="$morphpath:$pylrupath" "$morphpath/morph" "$@"
distbuild
If you are doing this as a hacky way to update the version of Morph on a distbuild worker, you'll need to repeat the procedure for the 'distbuild-helper' program that also lives in morph.git.
You'll also need to update /etc/morph-controller.conf to set morph-instance=/src/morph/morph
(or whatever path you want to run Morph from)