commit 6414b13e4687b35c91982955e95fb2a480d2aa4e
parent 1f8579ae318308371ddc8b85ec954625c25e91ad
Author: Jaromil <jaromil@dyne.org>
Date: Fri, 13 Dec 2013 14:24:07 +0100
packaging and install fixes, default configs in doc/
Diffstat:
8 files changed, 192 insertions(+), 157 deletions(-)
diff --git a/build/release-osx.sh b/build/release-osx.sh
@@ -11,6 +11,33 @@ dir=JaroMail
ver="$1"
+# first argument the binary
+# second argument the app name
+copydeps() {
+ libs=(`otool -L $1 | awk '
+ /^\// {next} /\/local/ {print $1}'`)
+
+ exe=`basename $1`
+ dst=$2
+ bin=$dst/Contents/Resources/jaro/bin
+ lib=$dst/Contents/Frameworks
+ cp -v $1 $bin/$exe
+ { test $? = 0 } || { print "Error copying $1" }
+ chmod +w $bin/$exe
+ strip $dst/$exe
+ for d in ${libs}; do
+ dylib=`basename $d`
+ print " $dylib"
+ # make sure destination is writable
+ dylibdest=$lib/`basename $d`
+ { test -r $dylibdest } || { cp -v "$d" "$dylibdest" }
+ install_name_tool -change $d \
+ "/Applications/$dst/Contents/Frameworks/`basename $d`" $bin/$exe
+ done
+}
+
+
+
out="`basename ${dir}`-${ver}.dmg"
echo "Making ${dir} release v$ver"
@@ -21,9 +48,11 @@ echo "Making ${dir} release v$ver"
echo "error: version not specified"
return 0 }
-WORKDIR=JaroMail.app/Contents/Resources/jaro
+appdst=JaroMail.app
+WORKDIR=${appdst}/Contents/Resources/jaro
+bindst=${WORKDIR}/bin
+
# copying inside the fresh scripts
-cp ../src/jaro $WORKDIR/bin/
print "Compiling Jaro Mail ZLibs"
{ test -d ${WORKDIR}/zlibs } && { rm -f $WORKDIR/zlibs/* }
mkdir -p $WORKDIR/zlibs
@@ -32,7 +61,23 @@ for z in `find $WORKDIR/zlibs -type f`; do
zcompile -R ${z}
done
-appdst=JaroMail.app
+
+cp -r ../src/mutt $WORKDIR/.mutt
+cp -r ../src/procmail $WORKDIR/.procmail
+cp -r ../src/stats $WORKDIR/.stats
+cp ../doc/Applications.txt $WORKDIR/
+cp ../doc/Filters.txt $WORKDIR/
+cp ../doc/Mutt.txt $WORKDIR/
+cp -r ../doc/Accounts $WORKDIR/
+
+
+print "Copying binaries and adjusting relocations"
+mkdir -p $bindst
+cp ../src/jaro $bindst
+cp -v osx/* $bindst
+cp -v osx/dylib/* $appdst/Contents/Frameworks/
+
+
# setting up the OSX app wrappers
mkdir -p $appdst/Contents/MacOS
cat <<EOF > $appdst/Contents/MacOS/jaroshell.sh
diff --git a/doc/Accounts/README.txt b/doc/Accounts/README.txt
@@ -0,0 +1,8 @@
+Directory containing account information
+
+Each file contains a different account: imap, pop or gmail
+each account contains all information needed to connect it
+
+Examples are: imap.default.txt and smtp.default.txt
+
+One can have multiple accounts named otherwise than default
diff --git a/doc/Accounts/imap.default.txt b/doc/Accounts/imap.default.txt
@@ -0,0 +1,49 @@
+# Name and values are separated by spaces or tabs
+# comments start the line with a hash
+
+# Name appearing in From: field
+name To Be Configured
+
+# Email address (default is same as login)
+email unknown@gmail.com
+
+# Aliases also received on this mail
+# alias mimesis@gmail.com
+# alias nemesis@gmail.com
+
+# Internet address
+host imap.gmail.com
+
+# Username
+login USERNAME@gmail.com
+
+# Authentication type
+auth plain # or kerberos, etc
+
+# Identity certificate: check or ignore
+cert ignore
+
+# Transport protocol
+transport ssl
+
+# Service port
+port 993
+
+# Options when fetching
+# to empty your mailbox you can use: fetchall flush
+# by default this is 'keep': don't delete mails from server
+options keep
+
+# Imap folders
+# uncomment to provide a list of folders to be fetched
+# folders INBOX, known, priv, lists, ml.unsorted, unsorted
+
+# Remote sieve
+# command to upload a sieve filter to the server
+# %% will be filled in automatically with our file
+# remote_sieve_cmd scp %% assata.dyne.org:/var/mail/sieve-scripts/email
+
+
+#
+# The password field will be filled in automatically
+#
diff --git a/doc/Accounts/smtp.default.txt b/doc/Accounts/smtp.default.txt
@@ -0,0 +1,18 @@
+# Name and values are separated by spaces or tabs
+# comments start the line with a hash
+
+# Name for this account
+name To Be Configured
+
+# Internet address
+host smtp.gmail.com
+
+# Username
+login USERNAME@gmail.com
+
+# Transport protocol
+transport ssl # or "tls" or "plain"
+
+# Service port
+# port 465
+port 25
diff --git a/doc/Applications.txt b/doc/Applications.txt
@@ -0,0 +1,7 @@
+# Example configuration to match mime/type to applications
+# each line should start with a mime/type and then indicate an executable
+# this file format is basically that of mailcap
+
+# Example:
+# application/rtf oowriter
+
diff --git a/doc/Filters.txt b/doc/Filters.txt
@@ -0,0 +1,29 @@
+# Example filter configuration for Jaro Mail
+
+# mailinglist filters are in order of importance
+# syntax: to <list email> save <folder>
+# below some commented out examples, note the use of a prefix,
+# which makes it handy when browsing with file completion.
+
+# to crypto@lists.dyne save dyne.crypto
+# to dynebolic save dyne.dynebolic
+# to freej save dyne.freej
+# to frei0r-devel save dyne.frei0r
+# to taccuino save ml.freaknet
+# to deadpoets save ml.freaknet
+# to linux-libre save gnu.linux-libre
+# to foundations@lists save gnu.foundations
+# to debian-mentors save debian.mentors
+# to debian-blends save debian.blends
+# to freedombox-discuss save debian.freedombox
+
+# Other filters for web 2.0 using folder names with a prefix:
+# they can facilitate folder maintainance.
+
+# from identi.ca save web.identica
+# from Twitter save web.twitter
+# from linkedin save web.linkedin
+# from googlealerts save web.google
+# from facebook save web.facebook
+# from FriendFeed save web.friendfeed
+# from academia.edu save web.academia
diff --git a/doc/Mutt.txt b/doc/Mutt.txt
@@ -0,0 +1,29 @@
+# Mutt specific customizations
+# uncomment and fill in with your settings
+
+## dark background (uncomment to switch)
+# source \$HOME/Mail/jaro/.mutt/colors-solarized-dark-256
+# source \$HOME/Mail/jaro/.mutt/colors-solarized-dark-16
+
+## light background (uncomment to switch)
+# source \$HOME/Mail/jaro/.mutt/colors-solarized-light-256
+# source \$HOME/Mail/jaro/.mutt/colors-solarized-light-16
+
+# set locale="" # system default locale ("C")
+# set signature='~/.signature' # signature file
+# set pgp_sign_as="0xC2B68E39" # UserID/KeyID for signing
+
+# Customized headers example
+# unmy_hdr * # remove all extra headers first.
+
+# my_hdr From: Jaromil <jaromil@dyne.org>;
+# my_hdr Organization: Dyne.org Foundation
+# my_hdr X-GPG-Keyserver: pgp.mit.edu
+# my_hdr X-GPG-Id: C2B68E39 [expires: 2013-09-25]
+# my_hdr X-GPG-Fingerprint: B2D9 9376 BFB2 60B7 601F 5B62 F6D3 FBD9 C2B6 8E39
+# my_hdr X-Face: %H:nE)m:Rl>Z?(C7EvRtuUJp4^f@d\#~4pB48~:1:EC)^&9EDcZaKL/*+10(P?g*N0>n8n3&\n kVzfAD\`+RofVAx~ew>FGQmmT7NqlSQx+M8LN5\`,h^aPF[Njx+A~%f!&VJu9!y:~ma/\'^@mvOr@}DyG\n @\"g\`kfy(vyRC
+
+#############
+
+# set attribution='On %{%a, %d %b %Y}, %n wrote:\n'
+# set status_format="-%r-Mutt: %f [Msgs:%?M?%M/?%m%?n? New:%n?%?o? Old:%o?%?d? Del:%d?%?F? Flag:%F?%?t? Tag:%t?%?p? Post:%p?%?b? Inc:%b? %?l? %l?]---(%s/%S)-default-%>-(%P)---"
diff --git a/install.sh b/install.sh
@@ -52,52 +52,14 @@ cp -f src/jaro ${WORKDIR}/bin
${=mkdir} $MAILDIRS/tmp $MAILDIRS/cache
if ! [ -r $MAILDIRS/Filters.txt ]; then
- cat <<EOF > $MAILDIRS/Filters.txt
-# Example filter configuration for Jaro Mail
-
-# mailinglist filters are in order of importance
-# syntax: to <list email> save <folder>
-# below some commented out examples, note the use of a prefix,
-# which makes it handy when browsing with file completion.
-
-# to crypto@lists.dyne save dyne.crypto
-# to dynebolic save dyne.dynebolic
-# to freej save dyne.freej
-# to frei0r-devel save dyne.frei0r
-# to taccuino save ml.freaknet
-# to deadpoets save ml.freaknet
-# to linux-libre save gnu.linux-libre
-# to foundations@lists save gnu.foundations
-# to debian-mentors save debian.mentors
-# to debian-blends save debian.blends
-# to freedombox-discuss save debian.freedombox
-
-# Other filters for web 2.0 using folder names with a prefix:
-# they can facilitate folder maintainance.
-
-# from identi.ca save web.identica
-# from Twitter save web.twitter
-# from linkedin save web.linkedin
-# from googlealerts save web.google
-# from facebook save web.facebook
-# from FriendFeed save web.friendfeed
-# from academia.edu save web.academia
-
-EOF
+ cp -v doc/Filters.txt $MAILDIRS/Filters.txt
act "Default filters created"
else
error "Existing configuration $MAILDIRS/Filters.txt skipped"
fi
if ! [ -r $MAILDIRS/Applications.txt ]; then
- cat <<EOF > $MAILDIRS/Applications.txt
-# Example configuration to match mime/type to applications
-# each line should start with a mime/type and then indicate an executable
-
-# Example:
-# application/rtf oowriter
-
-EOF
+ cp -v doc/Applications.txt $MAILDIRS/Applications.txt
act "Default helper applications settings created"
else
error "Existing configuration $MAILDIRS/Applications.txt skipped"
@@ -105,126 +67,14 @@ fi
if ! [ -r $MAILDIRS/Mutt.txt ]; then
- cat <<EOF > $MAILDIRS/Mutt.txt
-# Mutt specific customizations
-# uncomment and fill in with your settings
-
-## dark background (uncomment to switch)
-# source \$HOME/Mail/jaro/.mutt/colors-solarized-dark-256
-# source \$HOME/Mail/jaro/.mutt/colors-solarized-dark-16
-
-## light background (uncomment to switch)
-# source \$HOME/Mail/jaro/.mutt/colors-solarized-light-256
-# source \$HOME/Mail/jaro/.mutt/colors-solarized-light-16
-
-# set locale="" # system default locale ("C")
-# set signature='~/.signature' # signature file
-# set pgp_sign_as="0xC2B68E39" # UserID/KeyID for signing
-
-# Customized headers example
-# unmy_hdr * # remove all extra headers first.
-
-# my_hdr From: Jaromil <jaromil@dyne.org>;
-# my_hdr Organization: Dyne.org Foundation
-# my_hdr X-GPG-Keyserver: pgp.mit.edu
-# my_hdr X-GPG-Id: C2B68E39 [expires: 2013-09-25]
-# my_hdr X-GPG-Fingerprint: B2D9 9376 BFB2 60B7 601F 5B62 F6D3 FBD9 C2B6 8E39
-# my_hdr X-Face: %H:nE)m:Rl>Z?(C7EvRtuUJp4^f@d\#~4pB48~:1:EC)^&9EDcZaKL/*+10(P?g*N0>n8n3&\n kVzfAD\`+RofVAx~ew>FGQmmT7NqlSQx+M8LN5\`,h^aPF[Njx+A~%f!&VJu9!y:~ma/\'^@mvOr@}DyG\n @\"g\`kfy(vyRC
-
-#############
-
-# set attribution='On %{%a, %d %b %Y}, %n wrote:\n'
-# set status_format="-%r-Mutt: %f [Msgs:%?M?%M/?%m%?n? New:%n?%?o? Old:%o?%?d? Del:%d?%?F? Flag:%F?%?t? Tag:%t?%?p? Post:%p?%?b? Inc:%b? %?l? %l?]---(%s/%S)-default-%>-(%P)---"
-
-EOF
+ cp -v doc/Mutt.txt $MAILDIRS/Mutt.txt
act "Default Mutt configuration template created"
else
error "Existing configuration $MAILDIRS/Mutt.txt skipped"
fi
if ! [ -r $MAILDIRS/Accounts ]; then
- ${=mkdir} $MAILDIRS/Accounts
- cat <<EOF > $MAILDIRS/Accounts/README.txt
-Directory containing account information
-
-Each file contains a different account: imap, pop or gmail
-each account contains all information needed to connect it
-
-Examples are: imap.default.txt and smtp.default.txt
-
-One can have multiple accounts named otherwise than default
-EOF
- cat <<EOF > $MAILDIRS/Accounts/imap.default.txt
-# Name and values are separated by spaces or tabs
-# comments start the line with a hash
-
-# Name appearing in From: field
-name To Be Configured
-
-# Email address (default is same as login)
-email unknown@gmail.com
-
-# Aliases also received on this mail
-# alias mimesis@gmail.com
-# alias nemesis@gmail.com
-
-# Internet address
-host imap.gmail.com
-
-# Username
-login USERNAME@gmail.com
-
-# Authentication type
-auth plain # or kerberos, etc
-
-# Identity certificate: check or ignore
-cert ignore
-
-# Transport protocol
-transport ssl
-
-# Service port
-port 993
-
-# Options when fetching
-# to empty your mailbox you can use: fetchall flush
-# by default this is 'keep': don't delete mails from server
-options keep
-
-# Imap folders
-# uncomment to provide a list of folders to be fetched
-# folders INBOX, known, priv, lists, ml.unsorted, unsorted
-
-# Remote sieve
-# command to upload a sieve filter to the server
-# %% will be filled in automatically with our file
-# remote_sieve_cmd scp %% assata.dyne.org:/var/mail/sieve-scripts/email
-
-
-#
-# The password field will be filled in automatically
-#
-EOF
- cat <<EOF > $MAILDIRS/Accounts/smtp.default.txt
-# Name and values are separated by spaces or tabs
-# comments start the line with a hash
-
-# Name for this account
-name To Be Configured
-
-# Internet address
-host smtp.gmail.com
-
-# Username
-login USERNAME@gmail.com
-
-# Transport protocol
-transport ssl # or "tls" or "plain"
-
-# Service port
-# port 465
-port 25
-EOF
+ cp -v -r doc/Accounts $MAILDIRS/Accounts
act "Default accounts directory created"
else
error "Existing configuration $MAILDIRS/Accounts skipped"