This commit is contained in:
parent
a735eb4764
commit
82a6d37421
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:be1701721b410421e8cc69c9f21f2e234e8dc8a782fb6e0e317fe8caa064f842
|
|
||||||
size 134906
|
|
@ -1,50 +0,0 @@
|
|||||||
This is a patch from upstream which is likely included in the next
|
|
||||||
version (likely to be named 1.0):
|
|
||||||
|
|
||||||
From: Steve Hubert <hubert@washington.edu>
|
|
||||||
To: Alpine Alpha List
|
|
||||||
Date: Thu, 6 Sep 2007 09:58:58 -0700 (PDT)
|
|
||||||
Subject: Re: Content-Type different after postponing
|
|
||||||
|
|
||||||
I believe the attached patch should fix this. Thanks.
|
|
||||||
|
|
||||||
From: Andreas Schamanek
|
|
||||||
Date: Thu, 6 Sep 2007 20:13:47 +0200 (CEST)
|
|
||||||
I have just tested it, and it works perfectly.
|
|
||||||
|
|
||||||
From: Gerald Pfeifer
|
|
||||||
|
|
||||||
Sorry, it doesn't. Also with this patch I am still getting
|
|
||||||
|
|
||||||
Content-Type: TEXT/PLAIN; charset=ISO-8859-15
|
|
||||||
|
|
||||||
when sending mail directly that contains an Umlaut, and
|
|
||||||
|
|
||||||
Content-Type: TEXT/PLAIN; CHARSET=UTF-8
|
|
||||||
|
|
||||||
after posting and resuming the same message.
|
|
||||||
|
|
||||||
From: Steve Hubert <hubert@washington.edu>
|
|
||||||
|
|
||||||
The first patch only worked if Downgrade Multipart to Text was turned on.
|
|
||||||
This should fix the other case.
|
|
||||||
|
|
||||||
Index: pith/send.c
|
|
||||||
===================================================================
|
|
||||||
--- pith/send.c (revision 709)
|
|
||||||
+++ pith/send.c (working copy)
|
|
||||||
@@ -843,6 +843,14 @@
|
|
||||||
return(redraft_cleanup(streamp, TRUE, flags));
|
|
||||||
}
|
|
||||||
|
|
||||||
+ if((charset = rfc2231_get_param(part->body.parameter,"charset",NULL,NULL)) != NULL){
|
|
||||||
+ /* let outgoing routines decide on charset */
|
|
||||||
+ if(!strucmp(charset, "US-ASCII") || !strucmp(charset, "UTF-8"))
|
|
||||||
+ set_parameter(&part->body.parameter, "charset", NULL);
|
|
||||||
+
|
|
||||||
+ fs_give((void **) &charset);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
ps_global->postpone_no_flow = 1;
|
|
||||||
get_body_part_text(stream, &b->nested.part->body,
|
|
||||||
cont_msg, "1", 0L, pc, NULL, NULL, GBPT_NONE);
|
|
@ -1,3 +1,8 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Sep 25 13:05:20 CEST 2007 - bk@suse.de
|
||||||
|
|
||||||
|
- Use only select patches from Eduardo (fixes crash in mail reader)
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Wed Sep 19 14:32:24 CEST 2007 - bk@suse.de
|
Wed Sep 19 14:32:24 CEST 2007 - bk@suse.de
|
||||||
|
|
||||||
|
76
alpine.spec
76
alpine.spec
@ -10,7 +10,6 @@
|
|||||||
|
|
||||||
|
|
||||||
Name: alpine
|
Name: alpine
|
||||||
|
|
||||||
#
|
#
|
||||||
# Package configuration:
|
# Package configuration:
|
||||||
#
|
#
|
||||||
@ -20,7 +19,7 @@ Name: alpine
|
|||||||
# For debugging only:
|
# For debugging only:
|
||||||
%define use_mudflap 0
|
%define use_mudflap 0
|
||||||
%define build_vanilla 0
|
%define build_vanilla 0
|
||||||
%define apply_all_in_one_patch 1
|
%define apply_all_in_one_patch 0
|
||||||
#
|
#
|
||||||
Summary: Alpine mail user agent
|
Summary: Alpine mail user agent
|
||||||
BuildRequires: imap-devel krb5-devel libgssapi ncurses-devel openldap2-devel openssl-devel pam-devel update-desktop-files
|
BuildRequires: imap-devel krb5-devel libgssapi ncurses-devel openldap2-devel openssl-devel pam-devel update-desktop-files
|
||||||
@ -32,14 +31,16 @@ BuildRequires: libmudflap
|
|||||||
%endif
|
%endif
|
||||||
# pgp4pine requires pine:
|
# pgp4pine requires pine:
|
||||||
Provides: pine
|
Provides: pine
|
||||||
|
#
|
||||||
%if %obsolete_pine
|
%if %obsolete_pine
|
||||||
Obsoletes: pine4
|
Obsoletes: pine4
|
||||||
Provides: pine4
|
Provides: pine4
|
||||||
%else
|
%else
|
||||||
Conflicts: pine4
|
Conflicts: pine4
|
||||||
%endif
|
%endif
|
||||||
|
#
|
||||||
Version: 0.9999
|
Version: 0.9999
|
||||||
Release: 6
|
Release: 10
|
||||||
License: The Apache Software License
|
License: The Apache Software License
|
||||||
Group: Productivity/Networking/Email/Clients
|
Group: Productivity/Networking/Email/Clients
|
||||||
AutoReqProv: on
|
AutoReqProv: on
|
||||||
@ -57,17 +58,18 @@ Source: ftp://ftp.cac.washington.edu/alpine/%{name}-%{version}.tar.bz2
|
|||||||
cd %{_sourcedir};cp %{name}-%{version}{,-build}.tar.bz2
|
cd %{_sourcedir};cp %{name}-%{version}{,-build}.tar.bz2
|
||||||
bunzip2 %{name}-%{version}-build.tar.bz2
|
bunzip2 %{name}-%{version}-build.tar.bz2
|
||||||
tar --delete --file=%{name}-%{version}-build.tar \
|
tar --delete --file=%{name}-%{version}-build.tar \
|
||||||
./alpine-0.9999/pico/msmem.c ./alpine-0.9999/imap/docs
|
./%{name}-%{version}/pico/msmem.c ./alpine-0.9999/imap/docs
|
||||||
echo >%{name}-%{version}.README.SUSE <<END
|
echo >%{name}-%{version}.README.SUSE <<END
|
||||||
Some files which are not needed for compilation have been removed from
|
Some files which are not needed for compilation have been removed from
|
||||||
this tarball. You can get the full tarball from %{URL}.
|
this tarball. You can get the full tarball from %{URL}.
|
||||||
END
|
END
|
||||||
tar --append --file=%{name}-%{version}-build.tar \
|
tar --append ./%{name}-%{version}.README.SUSE \
|
||||||
./alpine-0.9999.README.SUSE
|
--file=%{name}-%{version}-build.tar
|
||||||
bzip2 %{name}-%{version}-build.tar
|
bzip2 %{name}-%{version}-build.tar
|
||||||
)
|
)
|
||||||
Source: ftp://ftp.cac.washington.edu/alpine/%{name}-%{version}-build.tar.bz2
|
Source: ftp://ftp.cac.washington.edu/alpine/%{name}-%{version}-build.tar.bz2
|
||||||
%endif
|
%endif
|
||||||
|
#
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||||
Source1: %name.png
|
Source1: %name.png
|
||||||
Source2: %name.desktop
|
Source2: %name.desktop
|
||||||
@ -87,15 +89,13 @@ Patch60: signal-and-panic-improvements.diff
|
|||||||
Patch90: configure-gssapi-detection.diff
|
Patch90: configure-gssapi-detection.diff
|
||||||
Patch103: support-long-version.diff
|
Patch103: support-long-version.diff
|
||||||
#
|
#
|
||||||
# Patches from upstream (will be removed with the next version):
|
|
||||||
#
|
|
||||||
Patch200: alpine-upstream-postponed-sendcharset.diff
|
|
||||||
#
|
|
||||||
# Eduardo Chappa's patches. Currently, We only use the 'all_in_one' version:
|
# Eduardo Chappa's patches. Currently, We only use the 'all_in_one' version:
|
||||||
#
|
#
|
||||||
%if %{apply_all_in_one_patch}
|
%if !%{apply_all_in_one_patch}
|
||||||
Patch500: staff.washington.edu/chappa/alpine/patches/alpine-0.999/all.patch.bz2
|
Source600: chappa-cherrypick.sh
|
||||||
Patch501: patches.diff
|
Source601: chappa-patches.tar.bz2
|
||||||
|
%else
|
||||||
|
Patch500: staff.washington.edu/chappa/alpine/patches/alpine-%{version}/all.patch.gz
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%description
|
%description
|
||||||
@ -136,9 +136,6 @@ the bottom of the screen, and context-sensitive help is provided.
|
|||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q
|
%setup -q
|
||||||
#
|
|
||||||
# Begin of non-vanilla-patch section
|
|
||||||
#
|
|
||||||
%if !%{build_vanilla}
|
%if !%{build_vanilla}
|
||||||
#
|
#
|
||||||
# This is here to support checking if any patches add new warnings:
|
# This is here to support checking if any patches add new warnings:
|
||||||
@ -147,30 +144,24 @@ if [ ! -s %{_sourcedir}/compile-warnings-%{suse_version}-%{_arch}.log ]; then
|
|||||||
echo "No warnings check possible, set build_vanilla to 1 and"
|
echo "No warnings check possible, set build_vanilla to 1 and"
|
||||||
echo "add compile-warnings-%{suse_version}-%{_arch}.log from"
|
echo "add compile-warnings-%{suse_version}-%{_arch}.log from"
|
||||||
echo "that build to the rpm build process so that it's found here".
|
echo "that build to the rpm build process so that it's found here".
|
||||||
#exit 5
|
|
||||||
else
|
else
|
||||||
sed 's/:[0-9]*//' %{_sourcedir}/compile-warnings-%{suse_version}-%{_arch}.log \
|
sed 's/:[0-9]*//' %{_sourcedir}/compile-warnings-%{suse_version}-%{_arch}.log \
|
||||||
>compile-warnings-allowed.log
|
>compile-warnings-allowed.log
|
||||||
fi
|
fi
|
||||||
# Upstream patches:
|
|
||||||
%patch200
|
|
||||||
#
|
#
|
||||||
# Show that this is the openSUSE build of alpine and which version:
|
# needs patch103 to support it, sets version to e.g. to "0.9999-openSUSE-7":
|
||||||
#
|
#
|
||||||
%patch103 -p1
|
%patch103 -p1
|
||||||
echo %{version}-openSUSE-%{release} >VERSION
|
echo %{version}-openSUSE-%{release} >VERSION
|
||||||
#
|
#
|
||||||
# Apply Eduardo Chappa's patch set as one patch (501 documents his patch):
|
# People which want, can use the full all.patch.gz with apply_all_in_one_patch:
|
||||||
#
|
#
|
||||||
%if %{apply_all_in_one_patch}
|
%if %{apply_all_in_one_patch}
|
||||||
%patch500 -p1
|
%patch500 -p1
|
||||||
%patch501 -p1
|
%else
|
||||||
|
sh %{SOURCE600} --apply %{SOURCE601}
|
||||||
%endif
|
%endif
|
||||||
#
|
#patch501 -p1
|
||||||
# This simply adds a colon if it's missing in the all.patch:
|
|
||||||
#
|
|
||||||
[ $(grep -c "including creation date of the patch is$" pith/pine.hlp) = 1 ] &&
|
|
||||||
sed -i 's/including creation date of the patch is$/&:/' pith/pine.hlp
|
|
||||||
#
|
#
|
||||||
# SuSE patches - warning fixes, etc:
|
# SuSE patches - warning fixes, etc:
|
||||||
#
|
#
|
||||||
@ -182,18 +173,15 @@ sed -i 's/including creation date of the patch is$/&:/' pith/pine.hlp
|
|||||||
%patch40 -p1
|
%patch40 -p1
|
||||||
%patch60 -p1
|
%patch60 -p1
|
||||||
%patch90 -p1
|
%patch90 -p1
|
||||||
%endif
|
%endif # End of "if !{build_vanilla}"
|
||||||
#
|
|
||||||
# End of non-vanilla-patch section
|
|
||||||
#
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
|
# Workaround for older distros which slashed the gnu:
|
||||||
%if %{suse_version} <= 1010
|
%if %{suse_version} <= 1010
|
||||||
%define _host_os %{_os}%{?_gnu}
|
%define _host_os %{_os}%{?_gnu}
|
||||||
%define _host %{_host_cpu}-%{_host_vendor}-%{_host_os}
|
%define _host %{_host_cpu}-%{_host_vendor}-%{_host_os}
|
||||||
%endif
|
%endif
|
||||||
autoreconf -fi
|
autoreconf -fi
|
||||||
export CFLAGS="${RPM_OPT_FLAGS/-O2/-Os}"
|
|
||||||
#
|
#
|
||||||
# Comments on disabled warnings: The disabled warnings are rather harmless
|
# Comments on disabled warnings: The disabled warnings are rather harmless
|
||||||
# (If they were not, alpine would not work at all, they are trigged in mass,
|
# (If they were not, alpine would not work at all, they are trigged in mass,
|
||||||
@ -201,15 +189,15 @@ export CFLAGS="${RPM_OPT_FLAGS/-O2/-Os}"
|
|||||||
# and disabling them allows one to focus on the warnings which could indicate
|
# and disabling them allows one to focus on the warnings which could indicate
|
||||||
# real bugs. By alpine-0.9999, several warnings have been eliminated however:
|
# real bugs. By alpine-0.9999, several warnings have been eliminated however:
|
||||||
#
|
#
|
||||||
export CFLAGS="$CFLAGS \
|
export CFLAGS="${RPM_OPT_FLAGS/-O2/-Os} \
|
||||||
%if %{suse_version} >= 1010
|
%if %{suse_version} >= 1010
|
||||||
-Wno-strict-aliasing -Wno-pointer-sign -Wno-unused \
|
-Wno-strict-aliasing -Wno-pointer-sign -Wno-unused \
|
||||||
%endif
|
%endif
|
||||||
%if %{suse_version} == 1030
|
%if %{suse_version} == 1030
|
||||||
-Wno-address \
|
-Wno-address \
|
||||||
%endif
|
%endif
|
||||||
%if %{use_mudflap}
|
%if %{use_mudflap}
|
||||||
-fmudflap -fmudflapir \
|
-fmudflap \
|
||||||
%endif
|
%endif
|
||||||
"
|
"
|
||||||
#
|
#
|
||||||
@ -223,10 +211,12 @@ export CFLAGS="$CFLAGS \
|
|||||||
# -Waddress generates >100 warnings in alpine and we disabled them to
|
# -Waddress generates >100 warnings in alpine and we disabled them to
|
||||||
# concentrate on the really important warnings which could be real bugs better.
|
# concentrate on the really important warnings which could be real bugs better.
|
||||||
#
|
#
|
||||||
|
:
|
||||||
#
|
#
|
||||||
# Used in conjunction with signal-and-panic-improvements.diff:
|
# Used in conjunction with signal-and-panic-improvements.diff:
|
||||||
#
|
#
|
||||||
export LDFLAGS="-rdynamic" # -rdynamic is used for backtrace_symbols:
|
export LDFLAGS="-rdynamic" # -rdynamic is used for backtrace_symbols:
|
||||||
|
:
|
||||||
#
|
#
|
||||||
# In case one wants to compile alpine with libmudflap to instrument all risky
|
# In case one wants to compile alpine with libmudflap to instrument all risky
|
||||||
# pointer/array dereferencing operations, some standard library string/heap
|
# pointer/array dereferencing operations, some standard library string/heap
|
||||||
@ -234,13 +224,17 @@ export LDFLAGS="-rdynamic" # -rdynamic is used for backtrace_symbols:
|
|||||||
# Modules so instrumented should be immune to buffer overflows, invalid heap
|
# Modules so instrumented should be immune to buffer overflows, invalid heap
|
||||||
# use, and some other classes of C/C++ programming errors. Disabled by default,
|
# use, and some other classes of C/C++ programming errors. Disabled by default,
|
||||||
# but may be used for debugging issues which are otherwise hard to catch:
|
# but may be used for debugging issues which are otherwise hard to catch:
|
||||||
#
|
#-fmudflap -fmudflapir \
|
||||||
%if %{use_mudflap}
|
%if %{use_mudflap}
|
||||||
export EXTRALDFLAGS="-lmudflap"
|
export EXTRALDFLAGS="-lmudflap"
|
||||||
|
# Silences warnings at startup (faster, could be used for production builds):
|
||||||
|
#export EXTRALDFLAGS="-lmudflapir"
|
||||||
LDFLAGS="$LDFLAGS $EXTRALDFLAGS"
|
LDFLAGS="$LDFLAGS $EXTRALDFLAGS"
|
||||||
%endif
|
%endif
|
||||||
|
:
|
||||||
%configure --with-tcl-lib=tcl8.4 \
|
%configure --with-tcl-lib=tcl8.4 \
|
||||||
%if %{use_mudflap}
|
%if %{use_mudflap}
|
||||||
|
%( : 'mudflap(th) does not work with with threads:' )\
|
||||||
--without-pthread \
|
--without-pthread \
|
||||||
%endif
|
%endif
|
||||||
--with-smtp-msa=/usr/sbin/sendmail \
|
--with-smtp-msa=/usr/sbin/sendmail \
|
||||||
@ -258,7 +252,7 @@ LDFLAGS="$LDFLAGS $EXTRALDFLAGS"
|
|||||||
exit 5
|
exit 5
|
||||||
}
|
}
|
||||||
#
|
#
|
||||||
# imap does not use CFLAGS from configure, needs EXTRAFCLAGS:
|
# imap does not use CFLAGS from configure, needs EXTRACFLAGS/EXTRALDFLAGS:
|
||||||
#
|
#
|
||||||
make EXTRACFLAGS="$CFLAGS" EXTRALDFLAGS="$EXTRALDFLAGS" 2>&1 | tee make.log |
|
make EXTRACFLAGS="$CFLAGS" EXTRALDFLAGS="$EXTRALDFLAGS" 2>&1 | tee make.log |
|
||||||
grep -v -e '^mv ' -e '/usr/bin/[a-z]*' -e '^echo ' -e ' -l' |
|
grep -v -e '^mv ' -e '/usr/bin/[a-z]*' -e '^echo ' -e ' -l' |
|
||||||
@ -266,10 +260,12 @@ make EXTRACFLAGS="$CFLAGS" EXTRALDFLAGS="$EXTRALDFLAGS" 2>&1 | tee make.log |
|
|||||||
|
|
||||||
%install
|
%install
|
||||||
install -D -m755 alpine/alpine $RPM_BUILD_ROOT%{_bindir}/alpine
|
install -D -m755 alpine/alpine $RPM_BUILD_ROOT%{_bindir}/alpine
|
||||||
|
:
|
||||||
#
|
#
|
||||||
# When called as alpinef, alpine uses function keys instead of Control keys:
|
# When called as alpinef, alpine uses function keys instead of Control keys:
|
||||||
#
|
#
|
||||||
ln $RPM_BUILD_ROOT%{_bindir}/alpine $RPM_BUILD_ROOT%{_bindir}/alpinef
|
ln $RPM_BUILD_ROOT%{_bindir}/alpine $RPM_BUILD_ROOT%{_bindir}/alpinef
|
||||||
|
:
|
||||||
install -m755 alpine/{rpload,rpdump} $RPM_BUILD_ROOT%{_bindir}
|
install -m755 alpine/{rpload,rpdump} $RPM_BUILD_ROOT%{_bindir}
|
||||||
install -m755 imap/mailutil/mailutil $RPM_BUILD_ROOT%{_bindir}
|
install -m755 imap/mailutil/mailutil $RPM_BUILD_ROOT%{_bindir}
|
||||||
mkdir -p $RPM_BUILD_ROOT/%{_mandir}/man1
|
mkdir -p $RPM_BUILD_ROOT/%{_mandir}/man1
|
||||||
@ -278,9 +274,11 @@ install -m644 imap/src/mailutil/mailutil.1 $RPM_BUILD_ROOT%{_mandir}/man1/
|
|||||||
install -D -m644 %{SOURCE1} $RPM_BUILD_ROOT/usr/share/pixmaps/%name.png
|
install -D -m644 %{SOURCE1} $RPM_BUILD_ROOT/usr/share/pixmaps/%name.png
|
||||||
install -D -m644 %{SOURCE2} $RPM_BUILD_ROOT/usr/share/applications/%name.desktop
|
install -D -m644 %{SOURCE2} $RPM_BUILD_ROOT/usr/share/applications/%name.desktop
|
||||||
%suse_update_desktop_file %name
|
%suse_update_desktop_file %name
|
||||||
|
:
|
||||||
%if %obsolete_pine
|
%if %obsolete_pine
|
||||||
ln -sf alpine $RPM_BUILD_ROOT%{_bindir}/pine
|
ln -sf alpine $RPM_BUILD_ROOT%{_bindir}/pine
|
||||||
%endif
|
%endif
|
||||||
|
:
|
||||||
%if %provide_pico_and_pilot
|
%if %provide_pico_and_pilot
|
||||||
install -m755 pico/{pico,pilot} $RPM_BUILD_ROOT%{_bindir}
|
install -m755 pico/{pico,pilot} $RPM_BUILD_ROOT%{_bindir}
|
||||||
install -m644 doc/{pico.1,pilot.1} $RPM_BUILD_ROOT%{_mandir}/man1/
|
install -m644 doc/{pico.1,pilot.1} $RPM_BUILD_ROOT%{_mandir}/man1/
|
||||||
@ -372,6 +370,8 @@ fi
|
|||||||
%doc %{_mandir}/man1/pilot.1.gz
|
%doc %{_mandir}/man1/pilot.1.gz
|
||||||
%endif
|
%endif
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Sep 25 2007 - bk@suse.de
|
||||||
|
- Use only select patches from Eduardo (fixes crash in mail reader)
|
||||||
* Wed Sep 19 2007 - bk@suse.de
|
* Wed Sep 19 2007 - bk@suse.de
|
||||||
- Remove files with unclear license from packaged sources (#308533)
|
- Remove files with unclear license from packaged sources (#308533)
|
||||||
- Add small bug fix: Postponed messages which were labelled as UTF-8
|
- Add small bug fix: Postponed messages which were labelled as UTF-8
|
||||||
|
358
chappa-cherrypick.sh
Normal file
358
chappa-cherrypick.sh
Normal file
@ -0,0 +1,358 @@
|
|||||||
|
# abort on any error:
|
||||||
|
set -e
|
||||||
|
# Used by --update and --apply:
|
||||||
|
chappa_patchdir=chappa-patches
|
||||||
|
echo_others() {
|
||||||
|
# Note: This function is updated by the function update_OTHERS_section, it's
|
||||||
|
# very sensitive to change, the part below must stay as it is or
|
||||||
|
# you will loose this script in the update process if you say "y":
|
||||||
|
cat<<OTHERS
|
||||||
|
alt_addresses_domain Add support for the syntax *@mydomain.com to the alt-addresses configuration option.
|
||||||
|
stevepicobug Fix a bug that makes pico miss the alignment of text in the editor.
|
||||||
|
jasonbsdbug Fix a bug that makes Alpine crash in Freebsd, when it is built with thread support.
|
||||||
|
steveencodingbug Fix a bug that makes Alpine corrupt an array used to save known encodings (like 7BIT, 8BIT, etc.)
|
||||||
|
stevemacosbug Fix a bug that makes Alpine be very slow on a Mac.
|
||||||
|
pawelthreadchar Change the default last reply in a thread from '|' to '\'.
|
||||||
|
pawelclocksize Change the default index format to include size in Kilobytes and date in 24 hours format.
|
||||||
|
stevepostponedcharset Fix a bug that makes Alpine change the charset of a message from the default to UTF-8 when you postpone a message.
|
||||||
|
stevecountbug Fix a bug that makes Alpine give the incorrect information about the number of messages in a folder.
|
||||||
|
stevecolorbug Fix a bug that makes Alpine fail to color an index line when a flag has changed in a message.
|
||||||
|
steveeditingbug Fix a bug that makes editing long configuration lines confusing.
|
||||||
|
OTHERS
|
||||||
|
}
|
||||||
|
echo_patch_help() {
|
||||||
|
cat <<END
|
||||||
|
fancy Enhanced fancy thread interface. <A HREF="h_config_enhanced_thread">(more...)</A>
|
||||||
|
maildir Maildir Patch. <A HREF="h_config_maildir">(more...)</A>
|
||||||
|
fillpara Pine justifies paragraphs with more than one level of indentation. <A HREF="h_compose_justify">(more...)</A>
|
||||||
|
rules Rules patch, to make Pine flexible. <A HREF="h_config_new_rules">(more...)</A>
|
||||||
|
compose Send mail from the command line.
|
||||||
|
WrtAcc Write accents like á, é, ñ etc.
|
||||||
|
circtab Tab check folders on cycles. <A HREF="h_config_circular_tab">(more...)</A>
|
||||||
|
count Get the number of new messages when opening a folder.
|
||||||
|
insertpat Reinsert the pattern you searched for last.
|
||||||
|
reply New Reply command menu.<A HREF="h_config_alt_reply_menu">(more...)</A>
|
||||||
|
fromheader Change your From header without any effort!
|
||||||
|
composeurl Choose a role when composing a message from a mailto: link.
|
||||||
|
colortext Paint special text in the body of the message in any custom color. <A HREF="h_config_special_text_to_color">(more...)</A>
|
||||||
|
searchheader Select messages by the content of an arbitrary header.
|
||||||
|
DelText Delete until the the end of a file, or message (press ^W^X).
|
||||||
|
quota Get the QUOTA information from an IMAP server (if such server supports e QUOTA command).
|
||||||
|
help Get the internal name of a help topic to use it with a x-pine-help URL scheme.
|
||||||
|
ignoresize Decide if you want to ignore errors in size changes of a message when saving a message from an IMAP server.
|
||||||
|
status Fix the update of the status line information in pico
|
||||||
|
unverified Fix a bug that makes Alpine not to give a warning if the Newsgroup header is present
|
||||||
|
utf8bug Fix a bug that makes Alpine filter incorrectly in the UTF-8 filter.
|
||||||
|
END
|
||||||
|
echo_others
|
||||||
|
}
|
||||||
|
#==================================================================================
|
||||||
|
# The following functions are only used for --update:
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# This function decided which patches are downloaded, and packaged:
|
||||||
|
# Every patch which shall be, is echoed, every patch which shall be not is not.
|
||||||
|
# If it encounters a new patch, it is printed on stderror
|
||||||
|
#
|
||||||
|
print_which_shall_be_packaged() {
|
||||||
|
grep '"info/' index.html | sed 's/.LI.\(.*\)<.*NAME="\([^"]*\)".*/\2 \1/'|
|
||||||
|
while read name text
|
||||||
|
do
|
||||||
|
case "$name" in
|
||||||
|
cygwin|all|windows) : 'always ignored';;
|
||||||
|
WrtAcc|fancy|maildir|colortext|insertpat)
|
||||||
|
: 'really wanted'
|
||||||
|
echo "$name";;
|
||||||
|
utf8bug|ignoresize|searchheader)
|
||||||
|
: 'also wanted'
|
||||||
|
echo "$name";;
|
||||||
|
unverified)
|
||||||
|
: 'also wanted'
|
||||||
|
echo "$name";;
|
||||||
|
rules) : 'conflicts with others and would need extra work';;
|
||||||
|
help|status|reply|DelText|outgoing|count)
|
||||||
|
: 'not important enough';;
|
||||||
|
quota|composeurl|fromheader|circtab)
|
||||||
|
: 'rather not';;
|
||||||
|
fillpara)
|
||||||
|
: 'rather dangerous';;
|
||||||
|
*) echo NEW: $name >&2;exit;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
echo_others
|
||||||
|
}
|
||||||
|
get_patch_path() {
|
||||||
|
echo staff.washington.edu/chappa/alpine/patches/alpine-0.9999/$1.patch.gz
|
||||||
|
}
|
||||||
|
list_packaged_patches_urls() {
|
||||||
|
print_which_shall_be_packaged | while read name rest; do
|
||||||
|
get_patch_path $name
|
||||||
|
done
|
||||||
|
}
|
||||||
|
update_OTHERS_section() {
|
||||||
|
wget --timestamping http://staff.washington.edu/chappa/alpine/patches/others.html
|
||||||
|
grep alpine-0.9999 others.html |
|
||||||
|
sed 's/.*alpine-0.9999\///;s/.patch.gz//;s/".*A>,//;s/ Posted.*//;s/which fixes/Fix/;s/which changes/Change/;s/which adds/Add/' \
|
||||||
|
>others
|
||||||
|
sed '/^cat..OTHERS$/,/^OTHERS$/{/^cat..OTHERS$/b ins;/^OTHERS/p;d};p;d;:ins;r others' ../$0 >change
|
||||||
|
diff ../$0 change || {
|
||||||
|
echo -n "DANGEROUS may loose script work: Apply these changes to $0 (y/*)?"
|
||||||
|
read answer
|
||||||
|
if [ "$answer" = y ]; then
|
||||||
|
cat change >../$0
|
||||||
|
rm change
|
||||||
|
echo "OTHERS_section updated, restarting from scratch!"
|
||||||
|
cd ..
|
||||||
|
exec bash $0 --update
|
||||||
|
else
|
||||||
|
echo "OTHERS_section updated, please check and do it."
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
rm change
|
||||||
|
}
|
||||||
|
check_patch_list() {
|
||||||
|
for name in `ls $chappa_patchdir`
|
||||||
|
do
|
||||||
|
helpentry=`echo_patch_help | sed -n "s/^$name //p"`
|
||||||
|
printf "%-22s %s\n" $name "'$helpentry'"
|
||||||
|
if [ -z "$helpentry" ]; then
|
||||||
|
missing="$missing $name"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
if [ "$missing" ]; then
|
||||||
|
echo "=======> help entries for $missing are missing, existing - please fix!"
|
||||||
|
exit 4
|
||||||
|
else
|
||||||
|
echo "---> No help entries are missing" >&2
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
update_packaged_patches() {
|
||||||
|
mkdir -p test;cd test
|
||||||
|
do_update=true
|
||||||
|
#do_update=false
|
||||||
|
if $do_update;then
|
||||||
|
update_OTHERS_section
|
||||||
|
rm -f index.html
|
||||||
|
wget http://staff.washington.edu/chappa/alpine/
|
||||||
|
wget -m $(list_packaged_patches_urls)
|
||||||
|
fi
|
||||||
|
#print_which_shall_be_packaged | sed 's/.*/^& /' >shall-be-packaged.patterns
|
||||||
|
#grep '"info/' index.html | sed 's/.LI.\(.*\)<.*NAME="\([^"]*\)".*/\2 \1/'|
|
||||||
|
# grep -f shall-be-packaged.patterns | sed 's/[^ ]* //' >patch-summaries.txt
|
||||||
|
|
||||||
|
rm -rf $chappa_patchdir
|
||||||
|
mkdir $chappa_patchdir
|
||||||
|
print_which_shall_be_packaged | while read name rest; do
|
||||||
|
zcat `get_patch_path $name` >$chappa_patchdir/$name
|
||||||
|
touch -r `get_patch_path $name` $chappa_patchdir/$name
|
||||||
|
done
|
||||||
|
check_patch_list
|
||||||
|
print_which_shall_be_packaged | while read name rest; do
|
||||||
|
if echo_patch_help | sed -n "s/^$name //p"| grep HREF; then
|
||||||
|
:
|
||||||
|
else
|
||||||
|
wget --timestamping -x http://staff.washington.edu/chappa/alpine/info/$name.html || :
|
||||||
|
if [ -s staff.washington.edu/chappa/alpine/info/$name.html ]; then
|
||||||
|
sed '0,/is available for version/d;/\/'$name'.patch/d;/<.[tT][dD]><.[tT][rR]><.[tT][aA][bB][lL][eE]>/,$d' \
|
||||||
|
staff.washington.edu/chappa/alpine/info/$name.html |
|
||||||
|
iconv -f latin1 -t UTF-8 >$chappa_patchdir/$name.hlp
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
zcat `get_patch_path $name` >$chappa_patchdir/$name
|
||||||
|
done
|
||||||
|
find $chappa_patchdir -name '*.hlp' -size 0|xargs --no-run-if-empty rm
|
||||||
|
cd -
|
||||||
|
tar xvfj $chappa_patchdir.tar.bz2
|
||||||
|
diff -r $chappa_patchdir test/$chappa_patchdir | less
|
||||||
|
echo -n 'Changes OK, update $chappa_patchdir.tar.bz2 (y/*)? '
|
||||||
|
read answer
|
||||||
|
if [ "$answer" = y ]; then
|
||||||
|
cd test
|
||||||
|
tar cfj ../$chappa_patchdir.tar.bz2 $chappa_patchdir
|
||||||
|
cd -
|
||||||
|
tar tfvj $chappa_patchdir.tar.bz2 | sort +5
|
||||||
|
else
|
||||||
|
echo "$chappa_patchdir.tar.bz2 NO updated!"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
if [ "$1" = "--update" ]; then
|
||||||
|
update_packaged_patches
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
if [ "$1" = "--cleanup" ]; then
|
||||||
|
rm -rf test
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
# Everything above is only for update and cleanup
|
||||||
|
if [ "$1" != "--apply" ]; then
|
||||||
|
echo "cherrypick.sh can either update $chappa_patchdir.tar.bz2, cleanup or apply the patches"
|
||||||
|
echo "usage: cherrypick [ --update | --cleanup | --apply ]"
|
||||||
|
exit 5
|
||||||
|
fi
|
||||||
|
if [ "$0" -nt "$2" ]; then
|
||||||
|
echo "Attention:
|
||||||
|
$0 is newer than
|
||||||
|
$2
|
||||||
|
|
||||||
|
If the update of ${0##*/} needs to change $chappa_patchdir.tar.bz2, you should run:
|
||||||
|
|
||||||
|
sh ${0##*/} --update
|
||||||
|
|
||||||
|
otherwise run:
|
||||||
|
|
||||||
|
touch -r chappa-cherrypick.sh chappa-patches.tar.bz2
|
||||||
|
"
|
||||||
|
exit 4
|
||||||
|
fi
|
||||||
|
# Everything below is only for apply, it applies all patches in $2
|
||||||
|
# and generates a patch to pine.hlp which describes the applied patches.
|
||||||
|
|
||||||
|
print_hlp_pages() {
|
||||||
|
ls $chappa_patchdir | while read name; do
|
||||||
|
if [ -f $chappa_patchdir/$name.hlp ]; then
|
||||||
|
title=`echo_patch_help | sed -n "s/^$name //p"`
|
||||||
|
cat <<END
|
||||||
|
====== h_chappa_patch_$name ======
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<TITLE>$title</TITLE>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<H1>$title</H1>
|
||||||
|
<P>
|
||||||
|
END
|
||||||
|
# Unlike pure html, alpine's hlp viewer needs
|
||||||
|
# backslashes escaped:
|
||||||
|
sed 's/\\/\\\\/g;s/\\\\"/\\\\\"/g' $chappa_patchdir/$name.hlp
|
||||||
|
echo '</body></html>'
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
echo_patch_list() {
|
||||||
|
ls $chappa_patchdir | while read name; do
|
||||||
|
case "$name" in *.hlp) continue;; esac
|
||||||
|
helpentry=`echo_patch_help | sed -n "s/^$name //p"`
|
||||||
|
echo "<LI> $helpentry"
|
||||||
|
if [ -f $chappa_patchdir/$name.hlp ]; then
|
||||||
|
echo " <A HREF=\"h_chappa_patch_$name\">(more...)</A>"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
generate_patch_help() {
|
||||||
|
(
|
||||||
|
print_hlp_pages
|
||||||
|
cat <<END
|
||||||
|
====== h_opensuse_issues ======
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<TITLE>Information on checking for known issues and reporting new issues</TITLE>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<H1>Information on checking for known issues and reporting new issues</H1>
|
||||||
|
<P>If you have any issues while using this release of Alpine, please search
|
||||||
|
the Novell bugzilla using the advanced search form at
|
||||||
|
<A HREF="http://bugzilla.novell.com/query.cgi">
|
||||||
|
http://bugzilla.novell.com/query.cgi</A> and enter "alpine"
|
||||||
|
into the search field for "Summary".
|
||||||
|
|
||||||
|
In order to see all issues which have been reported so far,
|
||||||
|
unselect all preselections in the Status list of the Impact Section,
|
||||||
|
by holding the Control key while clicking on NEW, ASSIGNED, NEEDINFO
|
||||||
|
an REOPENED before clicking on "Search".
|
||||||
|
|
||||||
|
<P>If your issue is not found in the Novell Bugzilla, please sign in
|
||||||
|
to the Novell Bugzilla and report the issue.
|
||||||
|
|
||||||
|
You can also visit the
|
||||||
|
<A HREF="http://www.washington.edu/alpine/">Alpine Information Center</A>,
|
||||||
|
and the
|
||||||
|
<A HREF="https://mailman1.u.washington.edu/mailman/private/alpine-alpha/">
|
||||||
|
Alpine-alpha mailing list archive</A>. On the
|
||||||
|
<A HREF="https://mailman1.u.washington.edu/mailman/listinfo/alpine-alpha">
|
||||||
|
Alpine-alpha mailing list</A>, you can also report and discuss issues.<P>
|
||||||
|
Be sure to include the full openSUSE version
|
||||||
|
of alpine (found at the top of this release notes page) in all reports
|
||||||
|
which you make.</body></html>
|
||||||
|
====== h_opensuse_patches ======
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<TITLE>Information on patches added to this release</TITLE>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<H1>Information on patches added to this release</H1>
|
||||||
|
<P>
|
||||||
|
This version of Alpine has been modified by including patches from
|
||||||
|
<A HREF="http://staff.washington.edu/chappa/alpine/">
|
||||||
|
http://staff.washington.edu/chappa/alpine/</A>. These patches include
|
||||||
|
new features and bug fixes. More complete information on each patch
|
||||||
|
included in this version can be found in the web.
|
||||||
|
|
||||||
|
<P>If you have any problems with this release of Pine, please
|
||||||
|
follow the suggestions <A HREF="h_opensuse_issues">here</A>
|
||||||
|
|
||||||
|
<P>The list of patches included in this release are:<UL>
|
||||||
|
END
|
||||||
|
echo_patch_list
|
||||||
|
echo "</UL></body></html>"
|
||||||
|
)
|
||||||
|
}
|
||||||
|
generate_help_patch() {
|
||||||
|
cat <<END
|
||||||
|
--- alpine-0.9999/pith/pine.hlp
|
||||||
|
+++ alpine-0.9999/pith/pine.hlp
|
||||||
|
@@ -163,6 +163,9 @@
|
||||||
|
is available as is a world wide web based version designed to run under the
|
||||||
|
Apache web server.
|
||||||
|
|
||||||
|
+<P>Note: <A HREF="h_opensuse_patches">This version of Alpine has been built for openSUSE with
|
||||||
|
+patches of Eduardo Chappa for latest bugfixes and enhanced functionality</A>.
|
||||||
|
+Press the ENTER key while the link above is hightlighted for more information.
|
||||||
|
<H2>New in Alpine <!--#echo var="ALPINE_VERSION"--></H2>
|
||||||
|
|
||||||
|
Version <!--#echo var="ALPINE_VERSION"-->
|
||||||
|
@@ -652,6 +652,7 @@
|
||||||
|
<P>
|
||||||
|
Some topics of current interest include:
|
||||||
|
<UL>
|
||||||
|
+<P><LI> Information on <A HREF="h_opensuse_patches">patches for this release</A>
|
||||||
|
<P><LI> <A HREF="h_maildrop">Mail Drops</A>
|
||||||
|
<P><LI> Information on <A HREF="h_info_on_locking">Folder Locking</A>
|
||||||
|
<P><LI> Information on <A HREF="h_info_on_mbox">Missing mail and the mbox driver</A>
|
||||||
|
END
|
||||||
|
lines=$(generate_patch_help |wc -l)
|
||||||
|
start=1171
|
||||||
|
echo "@@ -$start,6 +`expr $start + 1`,`expr $lines + 6` @@"
|
||||||
|
cat <<END
|
||||||
|
<End of Configuration Notes>
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
|
END
|
||||||
|
generate_patch_help | sed 's/^/+/'
|
||||||
|
cat <<END
|
||||||
|
====== h_news_legal ======
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
END
|
||||||
|
}
|
||||||
|
tar xvfj $2
|
||||||
|
if generate_help_patch | patch -p1; then
|
||||||
|
echo "generated patch applied"
|
||||||
|
else
|
||||||
|
echo "generated patch failed to apply"
|
||||||
|
exit 5
|
||||||
|
fi
|
||||||
|
rm $chappa_patchdir/*.hlp
|
||||||
|
for patch in $chappa_patchdir/*;do
|
||||||
|
echo
|
||||||
|
echo "Applying $patch"
|
||||||
|
if patch -p1 -i$patch; then
|
||||||
|
echo "$patch applied"
|
||||||
|
else
|
||||||
|
echo "$patch failed to apply"
|
||||||
|
exit 5
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
exit
|
3
chappa-patches.tar.bz2
Normal file
3
chappa-patches.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:44910703913be3094f2af243b9916f23e82c66bf1bb50d0c26202dd5f2a72178
|
||||||
|
size 70794
|
36
patches.diff
36
patches.diff
@ -1,36 +0,0 @@
|
|||||||
--- alpine-0.999/pith/pine.hlp
|
|
||||||
+++ alpine-0.999/pith/pine.hlp
|
|
||||||
@@ -163,6 +163,33 @@
|
|
||||||
is available as is a world wide web based version designed to run under the
|
|
||||||
Apache web server.
|
|
||||||
|
|
||||||
+<P>Note: <A HREF="h_patches">This version of Alpine has been built for openSUSE with
|
|
||||||
+patches of Eduardo Chappa for latest bugfixes and enhanced functionality</A>.
|
|
||||||
+Press the ENTER key while the link above is hightlighted for more information.
|
|
||||||
+
|
|
||||||
+<P>If you have any problems with this release of Pine, please search
|
|
||||||
+the Novell bugzilla using the advanced search form at
|
|
||||||
+<A HREF="http://bugzilla.novell.com/query.cgi">
|
|
||||||
+http://bugzilla.novell.com/query.cgi</A> and enter "alpine"
|
|
||||||
+into the search field for "Summary" and in the Impact Section, unselect
|
|
||||||
+all preselections in the Status list by holding the Control key
|
|
||||||
+while clicking on NEW, ASSIGNED, NEEDINFO an REOPENED. Click one
|
|
||||||
+of the Search buttons in the form then. You should get a list of all
|
|
||||||
+bugs ever reported for alpine, including their their status and get
|
|
||||||
+full information on them.
|
|
||||||
+
|
|
||||||
+<P>If your issue is not found in the Novell Bugzilla, please sign in
|
|
||||||
+to the Novell Bugzilla and report the issue.
|
|
||||||
+
|
|
||||||
+Please also have a look at the
|
|
||||||
+<A HREF="http://www.washington.edu/alpine/>Alpine Information Center</A>,
|
|
||||||
+the <A HREF="https://mailman1.u.washington.edu/mailman/private/alpine-alpha/">
|
|
||||||
+Alpine-alpha mailing list archive</A>and you can also report and discuss
|
|
||||||
+the issue directly on the
|
|
||||||
+<A HREF="https://mailman1.u.washington.edu/mailman/listinfo/alpine-alpha">
|
|
||||||
+Alpine-alpha mailing list</A>. Be sure to include the full openSUSE version
|
|
||||||
+of alpine (found at the top of this release notes page) in your first mail.
|
|
||||||
+
|
|
||||||
<H2>New in Alpine <!--#echo var="ALPINE_VERSION"--></H2>
|
|
||||||
|
|
||||||
Version <!--#echo var="ALPINE_VERSION"-->
|
|
Loading…
Reference in New Issue
Block a user