Put AppImage instructions inside a README

This commit is contained in:
miruka 2020-03-26 18:51:30 -04:00
parent 914d1e6c2d
commit 93eff8e487
2 changed files with 33 additions and 34 deletions

View File

@ -0,0 +1,32 @@
# AppImage building
The image must be built on Ubuntu 16.04 Xenial, to ensure compatibility with
older systems.
LXD can be used to setup a suitable container from any distro.
If not done already (all default settings are usually fine):
lxd init
Initialize a new container named `ubuntu`:
lxc launch images:ubuntu/xenial/amd64 ubuntu
Now, you can either clone the repo from inside the container...:
lxc exec ubuntu -- apt install -y git
lxc exec ubuntu -- git pull https://github.com/mirukana/mirage
...or directly copy a repository from your local filesystem inside:
lxc exec ubuntu -- /bin/mkdir -p /root/mirage
lxc file push -vr <path to repo root>/* ubuntu/root/mirage
Run the build script inside the container:
lxc exec ubuntu -- /root/mirage/packaging/appimage/build.sh
You can also start a shell inside (e.g. if something goes wrong):
lxc exec ubuntu -- /bin/bash

View File

@ -1,37 +1,4 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# The image must be built on Ubuntu 16.04 Xenial, to ensure compatibility with
# older systems.
#
# LXD/LXC can be used to setup a suitable container from any distro.
#
# If using LXD and not done already (all default settings are fine):
#
# lxd init
#
# To restart from scratch if you already had a container:
#
# lxc stop ubuntu; lxc delete ubuntu
#
# Initialize the container:
#
# lxc launch images:ubuntu/xenial/amd64 ubuntu
#
# If you want to build an image for something else than the official unmodified
# repo, either change the MIRAGE_REPO_URL variable or directly copy your
# repository inside the container. Example:
#
# lxc exec ubuntu -- /bin/mkdir -p /root/mirage
# lxc file push -vr <path to repo root>/* ubuntu/root/mirage
#
# Run this script inside the container:
#
# lxc exec ubuntu -- /root/mirage/packaging/appimage/build.sh
#
# You can also start a shell inside (e.g. if something goes wrong):
#
# lxc exec ubuntu -- /bin/bash
set -eo pipefail set -eo pipefail
MIRAGE_REPO_URL='https://github.com/mirukana/mirage' MIRAGE_REPO_URL='https://github.com/mirukana/mirage'
@ -41,7 +8,7 @@ check_distro() {
if grep -q '^\s*Ubuntu\s*16.04' /etc/issue; then return; fi if grep -q '^\s*Ubuntu\s*16.04' /etc/issue; then return; fi
echo "Not running on expected distribution or version, aborting!" >&2 echo "Not running on expected distribution or version, aborting!" >&2
echo "Read the instructions inside this script for more info." >&2 echo "See <repo root>/packaging/appimage/README.md for more info." >&2
exit 99 exit 99
} }