Initial commit
This commit is contained in:
57
build.sh
Normal file
57
build.sh
Normal file
@@ -0,0 +1,57 @@
|
||||
#!/bin/sh
|
||||
# Baut die Erweiterung zu einer .xpi-Datei.
|
||||
#
|
||||
# Eine .xpi ist ein ZIP. Wichtig: aus dem Wurzelverzeichnis heraus packen,
|
||||
# nicht das Verzeichnis selbst einpacken - sonst findet Thunderbird die
|
||||
# manifest.json nicht.
|
||||
set -eu
|
||||
cd "$(dirname "$0")"
|
||||
|
||||
NAME="paperless-thunderbird"
|
||||
VERSION="$(sed -n 's/.*"version"[[:space:]]*:[[:space:]]*"\([^"]*\)".*/\1/p' manifest.json | head -1)"
|
||||
OUT="${NAME}-${VERSION}.xpi"
|
||||
|
||||
# Vollständigkeit prüfen. zip überspringt fehlende Pfade stillschweigend -
|
||||
# ohne diese Prüfung entstünde ein Paket, das sich nicht laden lässt.
|
||||
FEHLT=""
|
||||
for f in manifest.json background.js \
|
||||
lib/client.js lib/settings.js \
|
||||
ui/store.html ui/store.js ui/classify.html ui/classify.js \
|
||||
ui/insert.html ui/insert.js ui/options.html ui/options.js \
|
||||
ui/gemeinsam.js ui/gemeinsam.css \
|
||||
_locales/de/messages.json _locales/en/messages.json \
|
||||
_locales/fr/messages.json \
|
||||
icons/paperless-logo_64.png
|
||||
do
|
||||
[ -e "$f" ] || FEHLT="$FEHLT $f\n"
|
||||
done
|
||||
if [ -n "$FEHLT" ]; then
|
||||
printf "ABBRUCH - diese Dateien fehlen:\n%b" "$FEHLT" >&2
|
||||
printf "\nWahrscheinlich wurden beim Kopieren die Unterverzeichnisse\n" >&2
|
||||
printf "ausgelassen. Benoetigt werden lib/, ui/, icons/ und _locales/.\n" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
rm -f "$OUT"
|
||||
|
||||
zip -r -q "$OUT" \
|
||||
manifest.json background.js \
|
||||
lib ui icons _locales \
|
||||
LICENSE \
|
||||
-x "*.oxt" "*.xpi" "build.sh" "README.md" "SICHERHEIT.md" \
|
||||
"make_icons.py" "*/.*"
|
||||
|
||||
if ! unzip -l "$OUT" | grep -q 'manifest.json'; then
|
||||
echo "ABBRUCH: manifest.json fehlt im erzeugten Paket." >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Erstellt: $OUT ($(wc -c < "$OUT") Bytes)"
|
||||
echo
|
||||
echo "Laden zum Ausprobieren:"
|
||||
echo " Extras -> Entwicklerwerkzeuge -> Debuggen von Add-ons"
|
||||
echo " -> Temporaeres Add-on laden -> manifest.json waehlen"
|
||||
echo
|
||||
echo "Dauerhaft installieren:"
|
||||
echo " Add-ons-Verwaltung -> Zahnrad -> Add-on aus Datei installieren"
|
||||
echo " -> $OUT"
|
||||
Reference in New Issue
Block a user