/
build.sh
executable file
·52 lines (40 loc) · 1.66 KB
/
build.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#!/bin/bash -x
mkdir output > /dev/null 2>&1
source config.inc
if [ -z "$AUTH_ID" ]; then
echo "You need to specify your AUTH_ID in config.inc"
echo "Get this here: https://dashboard.snapcraft.io/dev/account/"
exit 1
fi
if [ -z "$BRAND_ID" ]; then
BRAND_ID="$AUTH_ID"
fi
if [ -z "$KEYNAME" ]; then
KEYNAME="default"
fi
cd snaps/tsimx6-kernel/
snapcraft clean kernel -s build
snapcraft --target-arch armhf
mv tsimx6-kernel_4.4.30_armhf.snap ../../output/tsimx6-kernel_4.4.30_armhf.snap
cd -
mkenvimage -r -s 8192 -o snaps/tsimx6-gadget/uboot.env snaps/tsimx6-gadget/uboot.env.in
mkimage -A arm -T script -C none -n 'TSIMX6 Ubuntu Core' -d snaps/tsimx6-gadget/boot-assets/boot/boot.scr snaps/tsimx6-gadget/boot-assets/boot/boot.ub
snapcraft --target-arch armhf snap snaps/tsimx6-gadget --output output/tsimx6-gadget_16.04-1_armhf.snap
cp models/tsimx6-model.json output/tsimx6-model.json
sed --in-place "s/YOURAUTHORITYIDHERE/${AUTH_ID}/" output/tsimx6-model.json
sed --in-place "s/YOURBRANDIDHERE/${BRAND_ID}/" output/tsimx6-model.json
TIMESTAMP=$(date --rfc-3339=seconds | sed 's/ /T/')
sed --in-place "s/TIMESTAMPHERE/${TIMESTAMP}/" output/tsimx6-model.json
cat output/tsimx6-model.json | snap sign -k $KEYNAME &> output/tsimx6.model
if [ ! -e output/tsimx6.model ]; then
echo "Failed to sign model. Make sure you have registered a \"default\" key with snap."
echo "https://docs.ubuntu.com/core/en/guides/build-device/image-building"
fi
ubuntu-image snap \
-c stable \
--image-size 1G \
--snap output/tsimx6-kernel_4.4.30_armhf.snap \
--snap output/tsimx6-gadget_16.04-1_armhf.snap \
-O output/ \
output/tsimx6.model
mv output/tsimx6.img output/ubuntu-core-16-$(date +%F).img