diff --git a/MANIFEST.in b/MANIFEST.in index f01617f3c..a678d4b13 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -25,3 +25,7 @@ global-exclude *.py[co~] global-exclude *.py.orig global-exclude *.py.rej global-exclude .git + +# Maybe we should exclude the compiled locale files? see https://askubuntu.com/a/144139 +# We include both source (.po) and compiled (.mo) locale files atm (if present). +# exclude electrum/locale/*/LC_MESSAGES/electrum.mo diff --git a/contrib/build-linux/appimage/build.sh b/contrib/build-linux/appimage/build.sh index 7cf47fa5d..cf078bb90 100755 --- a/contrib/build-linux/appimage/build.sh +++ b/contrib/build-linux/appimage/build.sh @@ -109,6 +109,8 @@ info "preparing electrum-locale." if ! which msgfmt > /dev/null 2>&1; then fail "Please install gettext" fi + # we want the binary to have only compiled (.mo) locale files; not source (.po) files + rm -rf "$PROJECT_ROOT/electrum/locale/" for i in ./locale/*; do dir="$PROJECT_ROOT/electrum/$i/LC_MESSAGES" mkdir -p $dir diff --git a/contrib/build-linux/sdist/make_tgz b/contrib/build-linux/sdist/make_tgz index f9d556c49..81b672f91 100755 --- a/contrib/build-linux/sdist/make_tgz +++ b/contrib/build-linux/sdist/make_tgz @@ -16,17 +16,20 @@ fi git submodule update --init ( - rm -rf "$LOCALE" cd "$CONTRIB/deterministic-build/electrum-locale/" if ! which msgfmt > /dev/null 2>&1; then echo "Please install gettext" exit 1 fi + # We include both source (.po) and compiled (.mo) locale files in the source dist. + # Maybe we should exclude the compiled locale files? see https://askubuntu.com/a/144139 + # (also see MANIFEST.in) + rm -rf "$LOCALE" for i in ./locale/*; do - dir="$ROOT_FOLDER"/electrum/$i/LC_MESSAGES - mkdir -p $dir - msgfmt --output-file=$dir/electrum.mo $i/electrum.po || true - cp $i/electrum.po "$ROOT_FOLDER"/electrum/$i/electrum.po + dir="$ROOT_FOLDER/electrum/$i/LC_MESSAGES" + mkdir -p "$dir" + msgfmt --output-file="$dir/electrum.mo" "$i/electrum.po" || true + cp $i/electrum.po "$ROOT_FOLDER/electrum/$i/electrum.po" done ) diff --git a/contrib/build-wine/build-electrum-git.sh b/contrib/build-wine/build-electrum-git.sh index af12bd529..991f5fec1 100755 --- a/contrib/build-wine/build-electrum-git.sh +++ b/contrib/build-wine/build-electrum-git.sh @@ -22,10 +22,12 @@ pushd ./contrib/deterministic-build/electrum-locale if ! which msgfmt > /dev/null 2>&1; then fail "Please install gettext" fi +# we want the binary to have only compiled (.mo) locale files; not source (.po) files +rm -rf "$WINEPREFIX/drive_c/electrum/electrum/locale/" for i in ./locale/*; do - dir=$WINEPREFIX/drive_c/electrum/electrum/$i/LC_MESSAGES + dir="$WINEPREFIX/drive_c/electrum/electrum/$i/LC_MESSAGES" mkdir -p $dir - msgfmt --output-file=$dir/electrum.mo $i/electrum.po || true + msgfmt --output-file="$dir/electrum.mo" "$i/electrum.po" || true done popd diff --git a/contrib/osx/make_osx b/contrib/osx/make_osx index f46a0b0cd..19519b86c 100755 --- a/contrib/osx/make_osx +++ b/contrib/osx/make_osx @@ -105,10 +105,12 @@ info "generating locale" brew link --force gettext fi cd "$CONTRIB"/deterministic-build/electrum-locale + # we want the binary to have only compiled (.mo) locale files; not source (.po) files + rm -rf "$ROOT_FOLDER/electrum/locale/" for i in ./locale/*; do - dir="$ROOT_FOLDER"/electrum/$i/LC_MESSAGES + dir="$ROOT_FOLDER/electrum/$i/LC_MESSAGES" mkdir -p $dir - msgfmt --output-file=$dir/electrum.mo $i/electrum.po || true + msgfmt --output-file="$dir/electrum.mo" "$i/electrum.po" || true done ) || fail "failed generating locale"