From 886d191a5a5fe5424bfce9a537eea1616f50d4fa Mon Sep 17 00:00:00 2001 From: "silver%warwickcompsoc.co.uk" Date: Sun, 24 Oct 2004 23:04:15 +0000 Subject: [PATCH] Bug 249462 - Put ChatZilla XPI building tools into CVS. ChatZilla only. r=rginda --- extensions/irc/xpi/.cvsignore | 3 + extensions/irc/xpi/makexpi.sh | 128 +++++++++++++++++ .../irc/xpi/resources/chatzilla-window.ico | Bin 0 -> 50534 bytes .../irc/xpi/resources/chatzilla-window.xpm | 98 +++++++++++++ .../irc/xpi/resources/chatzilla-window16.xpm | 80 +++++++++++ extensions/irc/xpi/resources/install.js | 132 ++++++++++++++++++ extensions/irc/xpi/resources/install.rdf | 48 +++++++ 7 files changed, 489 insertions(+) create mode 100644 extensions/irc/xpi/.cvsignore create mode 100644 extensions/irc/xpi/makexpi.sh create mode 100644 extensions/irc/xpi/resources/chatzilla-window.ico create mode 100644 extensions/irc/xpi/resources/chatzilla-window.xpm create mode 100644 extensions/irc/xpi/resources/chatzilla-window16.xpm create mode 100644 extensions/irc/xpi/resources/install.js create mode 100644 extensions/irc/xpi/resources/install.rdf diff --git a/extensions/irc/xpi/.cvsignore b/extensions/irc/xpi/.cvsignore new file mode 100644 index 00000000000..a2bd0a315bc --- /dev/null +++ b/extensions/irc/xpi/.cvsignore @@ -0,0 +1,3 @@ +jar-tree +xpi-tree +chatzilla-*.xpi diff --git a/extensions/irc/xpi/makexpi.sh b/extensions/irc/xpi/makexpi.sh new file mode 100644 index 00000000000..1c78f831ed7 --- /dev/null +++ b/extensions/irc/xpi/makexpi.sh @@ -0,0 +1,128 @@ +#! /bin/bash + +# Set up paths for finding files. +if [ -z "$FEDIR" ]; then FEDIR=$PWD/..; fi +if [ -z "$CONFIGDIR" ]; then CONFIGDIR=$FEDIR/../../config; fi +if [ -z "$XPIFILES" ]; then XPIFILES=$PWD/resources; fi +if [ -z "$XPIROOT" ]; then XPIROOT=$PWD/xpi-tree; fi +if [ -z "$JARROOT" ]; then JARROOT=$PWD/jar-tree; fi + + +if [ "$1" == "clean" ]; then + echo -n "Cleaning up files" + echo -n . + rm -rf "$XPIROOT" + echo -n . + rm -rf "$JARROOT" + echo ". done." + + exit +fi + + +# Check setup. +if ! [ -d "$FEDIR" ]; then + echo "ERROR: Base ChatZilla directory (FEDIR) not found." + exit 1 +fi +if ! [ -d "$CONFIGDIR" ]; then + echo "ERROR: mozilla/config directory (CONFIGDIR) not found." + exit 1 +fi + + +# Extract version number. +VERSION=`grep "const __cz_version" "$FEDIR/xul/content/static.js" | sed "s|.*\"\([^\"]\+\)\".*|\1|"` + +echo Begining build of ChatZilla $VERSION... + + +# Check for existing. +if [ -r "chatzilla-$VERSION.xpi" ]; then + echo " WARNING: output XPI will be overwritten." +fi + + +# Check for required directory layouts. +echo -n " Checking XPI structure" +echo -n . +if ! [ -d xpi-tree ]; then mkdir xpi-tree; fi +echo -n . +if ! [ -d xpi-tree/chrome ]; then mkdir xpi-tree/chrome; fi +echo -n . +if ! [ -d xpi-tree/components ]; then mkdir xpi-tree/components; fi +echo -n . +if ! [ -d xpi-tree/defaults ]; then mkdir xpi-tree/defaults; fi +echo ". done" + +echo -n " Checking JAR structure" +echo -n . +if ! [ -d jar-tree ]; then mkdir jar-tree; fi +echo ". done" + + +# Make Firefox updates. +echo -n " Updating Firefox Extension files" +echo -n . +sed "s|@REVISION@|$VERSION|g" < "$XPIFILES/install.rdf" > "$XPIROOT/install.rdf" +echo -n . +cp "$XPIFILES/chatzilla-window.ico" "$XPIROOT/defaults/chatzilla-window.ico" +echo -n . +cp "$XPIFILES/chatzilla-window.xpm" "$XPIROOT/defaults/chatzilla-window.xpm" +echo -n . +cp "$XPIFILES/chatzilla-window16.xpm" "$XPIROOT/defaults/chatzilla-window16.xpm" +echo ". done" + + +# Make Mozilla Suite updates. +echo -n " Updating Mozilla Extension files" +echo -n . +sed "s|@REVISION@|$VERSION|g" < "$XPIFILES/install.js" > "$XPIROOT/install.js" +echo -n . +mv "$FEDIR/xul/content/contents.rdf" "$FEDIR/xul/content/contents.rdf.in" +sed "s|@MOZILLA_VERSION@|cz-$VERSION|g;s|\(chrome:displayName=\)\"[^\"]\+\"|\1\"ChatZilla $VERSION\"|g" < "$FEDIR/xul/content/contents.rdf.in" > "$FEDIR/xul/content/contents.rdf" +rm "$FEDIR/xul/content/contents.rdf.in" +echo -n . +mv "$FEDIR/xul/locale/en-US/contents.rdf" "$FEDIR/xul/locale/en-US/contents.rdf.in" +sed "s|@MOZILLA_VERSION@|cz-$VERSION|g" < "$FEDIR/xul/locale/en-US/contents.rdf.in" > "$FEDIR/xul/locale/en-US/contents.rdf" +rm "$FEDIR/xul/locale/en-US/contents.rdf.in" +echo ". done" + + +# Create JAR. +echo -n " Constructing JAR package" +echo -n . +pushd "$CONFIGDIR" >/dev/null +echo -n . +OUT=`perl make-jars.pl -v -z zip -p preprocessor.pl -s "$FEDIR" -d "$JARROOT" < "$FEDIR/jar.mn" 2>&1` +if [ "$?" != "0" ]; then echo ERROR; echo $OUT; exit 1; fi +echo -n . +OUT=`perl make-jars.pl -v -z zip -p preprocessor.pl -s "$FEDIR/sm" -d "$JARROOT" < "$FEDIR/sm/jar.mn" 2>&1` +if [ "$?" != "0" ]; then echo ERROR; echo $OUT; exit 1; fi +echo -n . +OUT=`perl make-jars.pl -v -z zip -p preprocessor.pl -s "$FEDIR/ff" -d "$JARROOT" < "$FEDIR/ff/jar.mn" 2>&1` +if [ "$?" != "0" ]; then echo ERROR; echo $OUT; exit 1; fi +echo -n . +popd >/dev/null +echo ". done" + + +# Make XPI. +echo -n " Constructing XPI package" +echo -n . +OUT=`cp -v "$JARROOT/chatzilla.jar" "$XPIROOT/chrome/"` +if [ "$?" != "0" ]; then echo ERROR; echo $OUT; exit 1; fi +echo -n . +OUT=`cp -v "$FEDIR/js/lib/chatzilla-service.js" "$XPIROOT/components/"` +if [ "$?" != "0" ]; then echo ERROR; echo $OUT; exit 1; fi +echo -n . +chmod 664 "$XPIROOT/chrome/chatzilla.jar" +echo -n . +chmod 664 "$XPIROOT/components/chatzilla-service.js" +echo -n . +pushd "$XPIROOT" >/dev/null; OUT=`zip -vr ../chatzilla-$VERSION.xpi * 2>&1`; popd >/dev/null +if [ "$?" != "0" ]; then echo ERROR; echo $OUT; exit 1; fi +echo ". done" + + +echo "Build of ChatZilla $VERSION... ALL DONE" diff --git a/extensions/irc/xpi/resources/chatzilla-window.ico b/extensions/irc/xpi/resources/chatzilla-window.ico new file mode 100644 index 0000000000000000000000000000000000000000..c3beee23a57bf542b5bce221d999f68130265e7d GIT binary patch literal 50534 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 S-~ql#hxU~Nv%YTCnEwUb^;v)b literal 0 HcmV?d00001 diff --git a/extensions/irc/xpi/resources/chatzilla-window.xpm b/extensions/irc/xpi/resources/chatzilla-window.xpm new file mode 100644 index 00000000000..aab2ff9bfe3 --- /dev/null +++ b/extensions/irc/xpi/resources/chatzilla-window.xpm @@ -0,0 +1,98 @@ +/* XPM */ +static char *cz_logo_32[] = { +/* columns rows colors chars-per-pixel */ +"32 32 60 1", +" c #374552", +". c #384653", +"X c #3b4956", +"o c #3e4b58", +"O c #414e5b", +"+ c #43505d", +"@ c #4a5762", +"# c #4d5965", +"$ c #515d68", +"% c #55616c", +"& c #58646e", +"* c #5a6671", +"= c #5d6873", +"- c #616c77", +"; c #636e78", +": c #66707a", +"> c #6a747e", +", c #6c7780", +"< c #6e7881", +"1 c #717b84", +"2 c #767f88", +"3 c #7a838c", +"4 c #7e8790", +"5 c #828b93", +"6 c #8b939a", +"7 c #90979f", +"8 c #949ca3", +"9 c #9ca3aa", +"0 c #a0a7ad", +"q c #a2a8ae", +"w c #a5abb1", +"e c #a9afb4", +"r c #abb1b6", +"t c #adb2b8", +"y c #b0b5ba", +"u c #b3b8bd", +"i c #b7bcc1", +"p c #b8bdc2", +"a c #bbc0c4", +"s c #bfc4c8", +"d c #c2c6ca", +"f c #c5c9cc", +"g c #caced1", +"h c #cdd1d4", +"j c #d0d3d6", +"k c #d4d7da", +"l c #d6d9dc", +"z c #d9dcde", +"x c #dbdde0", +"c c #dde0e2", +"v c #e1e3e5", +"b c #e5e7e9", +"n c #e7e8ea", +"m c #eaebed", +"M c #eff0f1", +"N c #f4f5f5", +"B c #f6f7f8", +"V c #f7f8f8", +"C c #fefefe", +"Z c None", +/* pixels */ +"ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", +"ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", +"ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", +"ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", +"ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", +"ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ", +"ZZZZZZZZZZZZZZZZZZVVNBNBNNNNNVCZ", +"ZZZZZZZZZZZZZZZZMu<&&=**&==&==6v", +"ZZZZZZZZZZZZZZZC8O155555555553O>", +"ZZZZZZZZZZZZZZZc@9VCCCCCCCCCCC9o", +"ZZZZVca856ygmZV6@cCCVcxxcVCCCC9#", +"ZZCh<+o+&$Oo&ugO0CCN6OOO2MCCCg@3", +"ZCt@$9gvNmlp3O%&mCC8X2$$kCCCv&$k", +"ZpO5cCCCCCCCN3 9CCrO56+aCCCN3+fZ", +"m=*mCCCCCCVnCv;5k0+6u+9CCCC8oeCZ", +"eOfCCCCnfmCCCC9.++6f$3BCCCuO6VZZ", +"1;NCCB8$ ;vCCCk$&hu<6v", +"OyCCC5@bZk&. .6CCr+uCCCV5#yOrB6X", +">,VCCc%@>#>xCN2+@1NCCCf+55OrCC6#", +"8@zCCCv9&=hCCCpX&vCCCz%.#OrCCx#6", +"c#1NCCCCmMCCCC9@fCCCCu555uCCC8#c", +"CqowNCCCCCCCCg#9CCCCCCCCCCCCl#6C", +"ZN6O,smNCCVbi$X c #69747d", +", c #6c7780", +"< c #6e7881", +"1 c #717b84", +"2 c #757f88", +"3 c #7a838c", +"4 c #7f8890", +"5 c #838c94", +"6 c #8d959c", +"7 c #90979f", +"8 c #90989f", +"9 c #949ca3", +"0 c #9aa1a7", +"q c #9ca3a9", +"w c #a6acb2", +"e c #a9afb4", +"r c #abb1b6", +"t c #adb2b8", +"y c #b0b6bb", +"u c #b3b8bd", +"i c #b7bcc1", +"p c #b8bdc2", +"a c #bdc1c6", +"s c #c3c7cb", +"d c #c5c9cd", +"f c #caced1", +"g c #cdd0d4", +"h c #d0d3d6", +"j c #d3d6d9", +"k c #d5d8da", +"l c #d8dbdd", +"z c #dbdde0", +"x c #e1e3e5", +"c c #e4e6e8", +"v c #e6e8e9", +"b c #eaeced", +"n c #eff0f1", +"m c #f3f4f5", +"M c #f6f7f8", +"N c #f7f8f8", +"B c #fefefe", +"V c None", +/* pixels */ +"VVVVVVVVVVVVVVVV", +"VVVVVVVVVVVVVVVV", +"VVVVVVVVVNmmMmmB", +"VVVVVVVmw;=*=*=8", +"VVmfisx6#355553O", +"Ba>o+o#+iBmzbBm:", +"6@2tls9>mz>%jBeX", +"O8BBnBMqw%XeBd+>", +"+jBq-ij> .5Nx*.4", +"&mb$ .O .>bm1.=O", +"+lN0$5t:%lB6.1b1", +"+6BBvNN5aBc66cg+", +"8#2tgu6=tuuuuy:&", +"Na>OoX$#OOOOOO+r", +"VVmjugcvlzzzzzxN", +"VVVVVVVVVVVVVVVV" +}; diff --git a/extensions/irc/xpi/resources/install.js b/extensions/irc/xpi/resources/install.js new file mode 100644 index 00000000000..084b224ef2c --- /dev/null +++ b/extensions/irc/xpi/resources/install.js @@ -0,0 +1,132 @@ +// this function verifies disk space in kilobytes +function verifyDiskSpace(dirPath, spaceRequired) +{ + var spaceAvailable; + + // Get the available disk space on the given path + spaceAvailable = fileGetDiskSpaceAvailable(dirPath); + + // Convert the available disk space into kilobytes + spaceAvailable = parseInt(spaceAvailable / 1024); + + // do the verification + if(spaceAvailable < spaceRequired) + { + logComment("Insufficient disk space: " + dirPath); + logComment(" required : " + spaceRequired + " K"); + logComment(" available: " + spaceAvailable + " K"); + return(false); + } + + return(true); +} + +// this function deletes a file if it exists +function deleteThisFile(dirKey, file) +{ + var fFileToDelete; + + fFileToDelete = getFolder(dirKey, file); + logComment("File to delete: " + fFileToDelete); + if(File.isFile(fFileToDelete)) + { + File.remove(fFileToDelete); + return(true); + } + else + return(false); +} + +// this function deletes a folder if it exists +function deleteThisFolder(dirKey, folder, recursiveDelete) +{ + var fToDelete; + + if(typeof recursiveDelete == "undefined") + recursiveDelete = true; + + fToDelete = getFolder(dirKey, folder); + logComment("folder to delete: " + fToDelete); + if(File.isDirectory(fToDelete)) + { + File.dirRemove(fToDelete, recursiveDelete); + return(true); + } + else + return(false); +} + +// OS type detection +// which platform? +function getPlatform() +{ + var platformStr; + var platformNode; + + if('platform' in Install) + { + platformStr = new String(Install.platform); + + if (!platformStr.search(/^Macintosh/)) + platformNode = 'mac'; + else if (!platformStr.search(/^Win/)) + platformNode = 'win'; + else if (!platformStr.search(/^OS\/2/)) + platformNode = 'win'; + else + platformNode = 'unix'; + } + else + { + var fOSMac = getFolder("Mac System"); + var fOSWin = getFolder("Win System"); + + logComment("fOSMac: " + fOSMac); + logComment("fOSWin: " + fOSWin); + + if(fOSMac != null) + platformNode = 'mac'; + else if(fOSWin != null) + platformNode = 'win'; + else + platformNode = 'unix'; + } + + return platformNode; +} + +var srDest = 665; + +var err = initInstall("Chatzilla @REVISION@", "Chatzilla", "@REVISION@"); +logComment("initInstall: " + err); + +if (verifyDiskSpace(getFolder("Program"), srDest)) +{ + addFile("Chatzilla service", + "@REVISION@", + "components/chatzilla-service.js", + getFolder("Components"), + "chatzilla-service.js", + true); + + addFile("Chatzilla Chrome", + "chrome/chatzilla.jar", // jar source folder + getFolder("Chrome"), // target folder + ""); // target subdir + + addFile("ChatZilla Win32 icon", "defaults/chatzilla-window.ico", getFolder("Chrome"), "icons/default/chatzilla-window.ico"); + addFile("ChatZilla Unix 32 icon", "defaults/chatzilla-window.xpm", getFolder("Chrome"), "icons/default/chatzilla-window.xpm"); + addFile("ChatZilla Unix 16 icon", "defaults/chatzilla-window16.xpm", getFolder("Chrome"), "icons/default/chatzilla-window16.xpm"); + + registerChrome(PACKAGE | DELAYED_CHROME, getFolder("Chrome","chatzilla.jar"), "content/chatzilla/"); + registerChrome(PACKAGE | DELAYED_CHROME, getFolder("Chrome","chatzilla.jar"), "content/chatzilla/sm/"); + registerChrome(SKIN | DELAYED_CHROME, getFolder("Chrome","chatzilla.jar"), "skin/modern/chatzilla/"); + registerChrome(LOCALE | DELAYED_CHROME, getFolder("Chrome","chatzilla.jar"), "locale/en-US/chatzilla/"); + + if (err==SUCCESS) + performInstall(); + else + cancelInstall(err); +} +else + cancelInstall(INSUFFICIENT_DISK_SPACE); diff --git a/extensions/irc/xpi/resources/install.rdf b/extensions/irc/xpi/resources/install.rdf new file mode 100644 index 00000000000..69ca6bc3d89 --- /dev/null +++ b/extensions/irc/xpi/resources/install.rdf @@ -0,0 +1,48 @@ + + + + + {59c81df5-4b7a-477b-912d-4e0fdf64e5f2} + @REVISION@ + + + + + {86c18b42-e466-45a9-ae7a-9b95ba6f5640} + 1.0 + 1.8 + + + + + + + {ec8030f7-c20a-464f-9b0e-13a3a9e97384} + 0.9 + 1.0 + + + + + ChatZilla + A simple, straightforward Internet Relay Chat (IRC) client. + The ChatZilla Team + Robert Ginda + Samuel Sieb + James Ross + Lim Chee Aun (graphics) + chrome://chatzilla/skin/images/logo.png + http://www.hacksrus.com/~ginda/chatzilla/ + javascript:opener.openDialog('chrome://chatzilla/content/config.xul','','chrome,modal,resizable');window.close(); + + + + + content/chatzilla/ + content/chatzilla/ff/ + locale/en-US/chatzilla/ + skin/modern/chatzilla/ + + + +