|
|
Line 1: |
Line 1: |
| | {{Outdated}} |
| | <strike> |
| == HowTo repackage Lightning for Linux and Windows == | | == HowTo repackage Lightning for Linux and Windows == |
|
| |
|
Line 29: |
Line 31: |
| <em:targetPlatform>Linux_x86-gcc3</em:targetPlatform> | | <em:targetPlatform>Linux_x86-gcc3</em:targetPlatform> |
| * package all files in a new zip archive and rename it from .zip to .xpi | | * package all files in a new zip archive and rename it from .zip to .xpi |
| | | </strike> |
| == Scripted version ==
| |
| | |
| Put the Windows and Linux XPIs in one directory, place this script in that same directory, and run it, to get a "lightning-0.x-tb-dual-boot.xpi" install file!
| |
| | |
| <pre><nowiki>#/bin/bash
| |
| | |
| # This script performs the packaging necessary for creating a Lightning extension
| |
| # package compatible with both Windows and Linux. This is based off the
| |
| # instructions here: <https://wiki.mozilla.org/User:Ssitter/UnifiedLightning>
| |
| # - Edward Z. Yang <edwardzyang@thewritingpot.com>
| |
| | |
| VERSION="$1"
| |
| if [ "$VERSION" = "" ]
| |
| then
| |
| echo "Please pass version as first parameter"
| |
| exit 1
| |
| fi
| |
| | |
| NAME="lightning-$VERSION-tb"
| |
| LINUX="$NAME-linux"
| |
| WINDOWS="$NAME-win"
| |
| DUAL="$NAME-dual-boot"
| |
| | |
| if [ ! -f "$LINUX.xpi" ]
| |
| then
| |
| echo "Could not find Linux XPI"
| |
| exit 1
| |
| fi
| |
| | |
| if [ ! -f "$WINDOWS.xpi" ]
| |
| then
| |
| echo "Could not find Windows XPI"
| |
| exit 1
| |
| fi
| |
| | |
| if [ -f "$DUAL.xpi" ]
| |
| then
| |
| echo "Dual-boot XPI already exists"
| |
| exit 1
| |
| fi
| |
| | |
| if [ -d "$NAME" ]
| |
| then
| |
| echo "Output directory $NAME already exists"
| |
| exit 1
| |
| fi
| |
| | |
| mkdir "$NAME"
| |
| cp "$LINUX.xpi" "$NAME"
| |
| cp "$WINDOWS.xpi" "$NAME"
| |
| | |
| # extract XPIs to the same folder
| |
| cd "$NAME"
| |
| unzip "$LINUX.xpi"
| |
| unzip -o "$WINDOWS.xpi"
| |
| rm "$LINUX.xpi" "$WINDOWS.xpi"
| |
| | |
| # create new subfolders
| |
| mkdir platform
| |
| mkdir platform/Linux_x86-gcc3
| |
| mkdir platform/Linux_x86-gcc3/components
| |
| mkdir platform/WINNT_x86-msvc
| |
| mkdir platform/WINNT_x86-msvc/components
| |
| | |
| # move platform dependent files
| |
| mv -t platform/Linux_x86-gcc3/components components/*.so
| |
| mv -t platform/WINNT_x86-msvc/components components/*.dll
| |
| | |
| # replace <em:targetPlatform>
| |
| cp install.rdf old-install.rdf
| |
| sed 's#<em:targetPlatform>[^<]*</em:targetPlatform>#<em:targetPlatform>WINNT_x86-msvc</em:targetPlatform><em:targetPlatform>Linux_x86-gcc3</em:targetPlatform>#' \
| |
| < old-install.rdf > install.rdf
| |
| | |
| # zip it all up
| |
| zip -r "$DUAL.xpi" *
| |
| mv "$DUAL.xpi" ..
| |
| cd ..
| |
| rm -rf "$NAME"
| |
| </nowiki></pre>
| |