#------------------------------------------------------------------------------ # webmail/_ADMIN/binaries_howto/build_squirrelmail.txt # # Copyright (c) 2001-2007 The Eisfair Team, c/o Frank Meyer, # frank(at)eisfair(dot)org # # Creation: 2007-02-28 jed # Last Update: $Id$ # # Important: Some files need to be patched manually after updating # the base packages. # # !!! this is not a script but an step-by-step howto !!! # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version.. #------------------------------------------------------------------------------ exit 1 ### info ### The re-packaging is not only done for updating purposes, it is also done to make sure that the directory structure is properly include in the package. This allows to proper removal of all included files and directories. ### squirrelmail base package ### 1. Create a directory tree in the webmail directory for the new SM software including the version number. mkdir ./bin_squirrelmail_1_4_18 mkdir -p ./bin_squirrelmail_1_4_18/_ADMIN mkdir -p ./bin_squirrelmail_1_4_18/tmp mkdir -p ./bin_squirrelmail_1_4_18/var/webmail/.install/htdocs/excluded mkdir -p ./bin_squirrelmail_1_4_18/var/webmail/.install/htdocs/included mkdir -p ./bin_squirrelmail_1_4_18/var/webmail/.install/htdocs/webmail/config 2. Copy the following two scripts from a previous SM version directory to the ./bin_squirrelmail_1_4_18/var/webmail/.install directory: 1-repackage-wm-files.sh 2-repackage-lang-files.sh 3-update-mod-files.sh 4-create-wm-filelist.sh 3. Copy the Squirrelmail base archive to the directory './bin_squirrelmail_1_4_18/tmp' and execute the script '1-repackage-wm-files.sh' to create a repackaged base archive file. cp squirrelmail-1.4.18.tar.gz ./bin_squirrelmail_1_4_18/tmp/ cd ./bin_squirrelmail_1_4_18/tmp ../var/webmail/.install/1-repackage-wm-files.sh 4. Review the newly created file sm-new.tgz and replace the existing sm.tgz file in the directory './bin_squirrelmail_1_4_18/var/webmail': mv sm-new.tgz ../var/webmail/sm.tgz ### additional german language pack ### 1. Copy the Squirrelmail language archive to the directory './bin_squirrelmail_1_4_18/tmp' and execute the script '2-repackage-lang-files.sh' to create a repackaged language archive file. cp de_DE-1.4.13-20071220.tar.gz ./bin_squirrelmail_1_4_18/tmp/ cd ./bin_squirrelmail_1_4_18/tmp ../var/webmail/.install/2-repackage-lang-files.sh 2. Review the newly created file sm_de-new.tgz and move it to the directory './bin_squirrelmail_1_4_18/var/webmail': mv sm_de-new.tgz ../var/webmail/sm_de.tgz ### additional plugin pack ### 1. Copy the webmail modification package to the directory './bin_squirrelmail_1_4_18/tmp' and execute the script '3-update-mod-files.sh extract' to extract the files to a temporary folder. cp sm_mod.tgz ./bin_squirrelmail_1_4_18/tmp/ cd ./bin_squirrelmail_1_4_18/tmp ../var/webmail/.install/3-update-mod-files.sh extract 2. Make sure that all SM plugin files are properly updated in the folder 'sm_mod' and not only replaced ;-) This means all patches and modifications needs to be applied manually!! plugins to add: --------------- add_address v1.0.3 (add_address-1.0.3-1.4.0.tar.gz) compatibility v2.0.16 (compatibility-2.0.16-1.0.tar.gz) show_user_and_ip v3.3 (show_user_and_ip-2.2.3.tar.gz) squirrel_logger v2.3 (squirrel_logger-2.3-1.2.7.tar.gz) timeout_user v1.1.1 (timeout_user-1.1.1-0.5.tar.gz) tnef_decoder v1.0 (tnef_decoder-1.0-1.4.0.tar.gz) [ uw_folders v0.9.3 (uw_folders.tar.gz (not public, ask JED;-)) ] wetteronline v0.1 (wetteronline-0.1.tar.gz) 3. Make sure that files which are also in the original SM base package are updated properly. patch file: functions/imap_general.php -> squirrel_logger [ patch file: functions/imap_mailbox.php -> uw_folders ] 4. Remove unrequired files: rm functions/install rm plugins/compatibility/getpot rm plugins/compatibility/make_release.sh rm preview_pane/getpod rm plugins/squirrel_logger/getpot rm plugins/squirrel_logger/make_release.sh 5. Repackage the webmail modifications by executing the following script: cd ./bin_squirrelmail_1_4_18/tmp ../var/webmail/.install/3-update-mod-files.sh package 6. Review the newly created file sm_mod-new.tgz and move it to the directory './bin_squirrelmail_1_4_18/var/webmail': mv sm_mod-new.tgz ../var/webmail/sm_mod.tgz 7. Remove source webmail modifications archive: rm ./bin_squirrelmail_1_4_18/tmp/sm_mod.tgz ### create new wm-filelist.txt ### 1. Change to the './bin_squirrelmail_1_4_18/var/webmail' and execute the script '4-create-wm-filelist.sh' to create a new 'wm-filelist.txt': ./.install/4-create-wm-filelist.sh ### take over files from previous version and apply additional changes ### 1. Copy files from previous version to new directory structure and apply necessary changes: cp de_DE-filelist-1.txt ./bin_squirrelmail_1_4_18/var/webmail/ cp en_US-filelist-1.txt ./bin_squirrelmail_1_4_18/var/webmail/ cp htdocs/* var/webmail/.install/htdocs/ 2. Update the following files: - usr/share/doc/webmail/changes.txt - add information about new version. - var/install/config.d/webmail.sh - update version information. - var/install/packages/webmail - update version information, date stamp etc. - var/webmail/.install/htdocs/webmail/config/conf.pl - update file from archive file. - var/webmail/.install/htdocs/webmail/sm_version.txt - update version information. ### update the svn ### 1. Remember to commit all changes to the SVN ;-)