Skip to content

Commit 7c1a886

Browse files
committed
Improve distrib script
1 parent 1885cdc commit 7c1a886

File tree

2 files changed

+103
-1
lines changed

2 files changed

+103
-1
lines changed

distrib.sh

Lines changed: 54 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
#!/bin/bash
22

3+
VERSION=`cd src/github.com/arduino-libraries/FirmwareUpdater/cli && git describe --tags`
4+
FILENAME="FirmwareUpdater"
5+
36
rm -rf distrib
47
mkdir -p distrib/linux64
58
mkdir -p distrib/linux32
@@ -20,7 +23,57 @@ GOOS=windows GOARCH=386 GO386=387 go build -o distrib/windows/updater.exe github
2023
# need osxcross in path
2124
GOOS=darwin GOARCH=amd64 go build -o distrib/osx/updater github.com/arduino-libraries/FirmwareUpdater/cli
2225

23-
cp -r $GOPATH/src/github.com/arduino-libraries/FirmwareUpdater/firmwares distrib/
26+
cp -r $GOPATH/src/github.com/arduino-libraries/FirmwareUpdater/firmwares distrib/linux64
27+
cp -r $GOPATH/src/github.com/arduino-libraries/FirmwareUpdater/firmwares distrib/linux32
28+
cp -r $GOPATH/src/github.com/arduino-libraries/FirmwareUpdater/firmwares distrib/linuxarm
29+
cp -r $GOPATH/src/github.com/arduino-libraries/FirmwareUpdater/firmwares distrib/linuxarm64
30+
cp -r $GOPATH/src/github.com/arduino-libraries/FirmwareUpdater/firmwares distrib/windows
31+
cp -r $GOPATH/src/github.com/arduino-libraries/FirmwareUpdater/firmwares distrib/osx
32+
33+
cd distrib/linux64 && tar cjf ../${FILENAME}-${VERSION}-linux64.tar.bz2 * && cd -
34+
LINUX64_SHA=`sha256sum distrib/${FILENAME}-${VERSION}-linux64.tar.bz2 | cut -f1 -d " "`
35+
LINUX64_SIZE=`ls -la distrib/${FILENAME}-${VERSION}-linux64.tar.bz2 | cut -f5 -d " "`
36+
37+
cd distrib/linux32 && tar cjf ../${FILENAME}-${VERSION}-linux32.tar.bz2 * && cd -
38+
LINUX32_SHA=`sha256sum distrib/${FILENAME}-${VERSION}-linux32.tar.bz2 | cut -f1 -d " "`
39+
LINUX32_SIZE=`ls -la distrib/${FILENAME}-${VERSION}-linux32.tar.bz2 | cut -f5 -d " "`
40+
41+
cd distrib/linuxarm && tar cjf ../${FILENAME}-${VERSION}-linuxarm.tar.bz2 * && cd -
42+
LINUXARM_SHA=`sha256sum distrib/${FILENAME}-${VERSION}-linuxarm.tar.bz2 | cut -f1 -d " "`
43+
LINUXARM_SIZE=`ls -la distrib/${FILENAME}-${VERSION}-linuxarm.tar.bz2 | cut -f5 -d " "`
44+
45+
cd distrib/linuxarm64 && tar cjf ../${FILENAME}-${VERSION}-linuxarm64.tar.bz2 * && cd -
46+
LINUXARM64_SHA=`sha256sum distrib/${FILENAME}-${VERSION}-linuxarm64.tar.bz2 | cut -f1 -d " "`
47+
LINUXARM64_SIZE=`ls -la distrib/${FILENAME}-${VERSION}-linuxarm64.tar.bz2 | cut -f5 -d " "`
48+
49+
cd distrib/osx && tar cjf ../${FILENAME}-${VERSION}-osx.tar.bz2 * && cd -
50+
OSX_SHA=`sha256sum distrib/${FILENAME}-${VERSION}-osx.tar.bz2 | cut -f1 -d " "`
51+
OSX_SIZE=`ls -la distrib/${FILENAME}-${VERSION}-osx.tar.bz2 | cut -f5 -d " "`
52+
53+
cd distrib/windows && zip -r ../${FILENAME}-${VERSION}-windows.zip * && cd -
54+
WINDOWS_SHA=`sha256sum distrib/${FILENAME}-${VERSION}-windows.zip | cut -f1 -d " "`
55+
WINDOWS_SIZE=`ls -la distrib/${FILENAME}-${VERSION}-windows.zip | cut -f5 -d " "`
56+
57+
58+
echo "=============================="
59+
echo "BOARD MANAGER SNIPPET"
60+
echo "=============================="
61+
62+
cat $GOPATH/src/github.com/arduino-libraries/FirmwareUpdater/extras/package_index.json.template |
63+
sed "s/%%VERSION%%/${VERSION}/" |
64+
sed "s/%%FILENAME%%/${FILENAME}/" |
65+
sed "s/%%LINUX64_SHA%%/${LINUX64_SHA}/" |
66+
sed "s/%%LINUX64_SIZE%%/${LINUX64_SIZE}/" |
67+
sed "s/%%LINUX32_SHA%%/${LINUX32_SHA}/" |
68+
sed "s/%%LINUX32_SIZE%%/${LINUX32_SIZE}/" |
69+
sed "s/%%LINUXARM_SHA%%/${LINUXARM_SHA}/" |
70+
sed "s/%%LINUXARM_SIZE%%/${LINUXARM_SIZE}/" |
71+
sed "s/%%LINUXARM64_SHA%%/${LINUXARM64_SHA}/" |
72+
sed "s/%%LINUXARM64_SIZE%%/${LINUXARM64_SIZE}/" |
73+
sed "s/%%OSX_SHA%%/${OSX_SHA}/" |
74+
sed "s/%%OSX_SIZE%%/${OSX_SIZE}/" |
75+
sed "s/%%WINDOWS_SHA%%/${WINDOWS_SHA}/" |
76+
sed "s/%%WINDOWS_SIZE%%/${WINDOWS_SIZE}/"
2477

2578
# call the tool with something like
2679
# ./linux64/updater -flasher firmwares/NINA/FirmwareUpdater.mkrwifi1010.ino.bin -firmware firmwares/NINA/1.2.1/NINA_W102.bin -port /dev/ttyACM0 -address arduino.cc:443 -restore_binary /tmp/arduino_build_619137/WiFiSSLClient.ino.bin -programmer {runtime.tools.bossac}/bossac

extras/package_index.json.template

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
{
2+
"name": "fwupdater",
3+
"version": ""%%VERSION%%",
4+
"systems": [
5+
{
6+
"host": "i686-linux-gnu",
7+
"url": "http://downloads.arduino.cc/tools/%%FILENAME%%-%%VERSION%%-linux32.tar.bz2",
8+
"archiveFileName": "%%FILENAME%%-%%VERSION%%-linux32.tar.bz2",
9+
"checksum": "SHA-256:%%LINUX32_SHA%%",
10+
"size": "%%LINUX32_SIZE%%"
11+
},
12+
{
13+
"host": "x86_64-pc-linux-gnu",
14+
"url": "http://downloads.arduino.cc/tools/%%FILENAME%%-%%VERSION%%-linux64.tar.bz2",
15+
"archiveFileName": "%%FILENAME%%-%%VERSION%%-linux64.tar.bz2",
16+
"checksum": "SHA-256:%%LINUX64_SHA%%",
17+
"size": "%%LINUX64_SIZE%%"
18+
},
19+
{
20+
"host": "i686-mingw32",
21+
"url": "http://downloads.arduino.cc/tools/%%FILENAME%%-%%VERSION%%-windows.zip",
22+
"archiveFileName": "%%FILENAME%%-%%VERSION%%-windows.zip",
23+
"checksum": "SHA-256:%%WINDOWS_SHA%%",
24+
"size": "%%WINDOWS_SIZE%%"
25+
},
26+
{
27+
"host": "i386-apple-darwin11",
28+
"url": "http://downloads.arduino.cc/tools/%%FILENAME%%-%%VERSION%%-osx.tar.bz2",
29+
"archiveFileName": "%%FILENAME%%-%%VERSION%%-osx.tar.bz2",
30+
"checksum": "SHA-256:%%OSX_SHA%%",
31+
"size": "%%OSX_SIZE%%"
32+
},
33+
{
34+
"host": "arm-linux-gnueabihf",
35+
"url": "http://downloads.arduino.cc/tools/%%FILENAME%%-%%VERSION%%-linuxarm.tar.bz2",
36+
"archiveFileName": "%%FILENAME%%-%%VERSION%%-linuxarm.tar.bz2",
37+
"checksum": "SHA-256:%%LINUXARM_SHA%%",
38+
"size": "%%LINUXARM_SIZE%%"
39+
},
40+
{
41+
"host": "aarch64-linux-gnu",
42+
"url": "http://downloads.arduino.cc/tools/%%FILENAME%%-%%VERSION%%-linuxarm64.tar.bz2",
43+
"archiveFileName": "%%FILENAME%%-%%VERSION%%-linuxarm64.tar.bz2",
44+
"checksum": "SHA-256:%%LINUXARM64_SHA%%",
45+
"size": "%%LINUXARM64_SIZE%%"
46+
}
47+
]
48+
},
49+

0 commit comments

Comments
 (0)