diff options
Diffstat (limited to 'packages')
-rw-r--r-- | packages/README | 81 | ||||
-rw-r--r-- | packages/alpine.spec | 70 | ||||
-rw-r--r-- | packages/debian/changelog | 5 | ||||
-rw-r--r-- | packages/debian/control | 22 | ||||
-rw-r--r-- | packages/debian/menu | 2 | ||||
-rw-r--r-- | packages/debian/postinst | 5 | ||||
-rw-r--r-- | packages/debian/postrm | 13 | ||||
-rw-r--r-- | packages/debian/preinst | 9 | ||||
-rwxr-xr-x | packages/debian/rules | 79 | ||||
-rwxr-xr-x | packages/windows/alpine.iss | 60 | ||||
-rw-r--r-- | packages/windows/binstaller.bat | 45 |
11 files changed, 391 insertions, 0 deletions
diff --git a/packages/README b/packages/README new file mode 100644 index 00000000..501c7cf7 --- /dev/null +++ b/packages/README @@ -0,0 +1,81 @@ +Last changed: 06 Apr 2007 + +Building packages for Alpine + +Files in this directory: + alpine.spec - spec file for building RPMs on RedHat and Fedora. + It should also work with Mandrake. + debian/* - files containing instructions for building .deb files + for use with dpkg + windows/* - files used to build the Windows Alpine installer. Upon + release, we set up directory dist.wnt.d with all of the + files to be installed, and we then run the command + binstaller wnt 0.98 (or whatever the current version is). + These scripts are used with Inno Setup 5. + README - this file. + + +Most Linux distributions include a package management system to +simplify the installing and uninstalling of programs. There are two +types of these systems commonly used; RPM is the system used by +default on RedHat, Fedora, Ubuntu, Mandrake, and SuSE, and dpkg +is a system used by default on Debian and Mac OS X's fink. + + +Why build your own packages? + +An RPM and a .deb file are already provided on the Alpine Information +Center (http://www.washington.edu/alpine). Additionally, many +distributions roll their own alpine packages. The files provided here +will allow people to build their own versions of the same package in +the event that the provided packages fail to install due to +compatibility issues, or in the case where one would want to have a +modified alpine package. Unlike the alpine packages provided by the +various distributions, the packages built with these scripts are built +directly from source, and will be released concurrently with every +alpine release. It may be preferable to use the distributions' alpine +packages, as they do tend to add value which is intended to enhance +their users' experience. + + +Building RPMs: + +For building RPMs, first find the directory where RPMs are built on +your system. On Redhat 9, this directory is /usr/src/redhat. You can +change this directory by editing your .rpmmacros file. Also, you need +not be root to build an rpm. To build the RPM, place the +alpine-{version}.tar.gz file in the SOURCES directory, and place the +alpine.spec file contained here in the SPECS directory. Then, you need +only issue the command: + +rpmbuild -ba alpine.spec + +The RPM file will be placed in the RPMS directory, and a source RPM +will be placed in the SRPMS directory. Installing an RPM is done with +the command: + +rpm -ivh alpine-{version}-1.i386.rpm + + +Building .deb files: + +For building .deb files, dpkg, the program that builds them, looks in +the "debian" directory for various control files and build scripts. This +directory should reside in the top level of the alpine directory, in the +same directory as the "build" file. This requires copying the +debian directory contained here to the next level up, which can be +done via the command: + +cp -pr debian ../ + +Then, from alpine's root directory, you would issue the command: + +dpkg-buildpackage + +Note that you must be root in order to build .deb packages. After +running the above command, the .deb will have been built in the +directory above the alpine root directory, and it would be of the form +alpine_{version}_i386.deb. You can then install this package by +running the command: + +dpkg -i alpine_{version}_i386.deb diff --git a/packages/alpine.spec b/packages/alpine.spec new file mode 100644 index 00000000..152cc820 --- /dev/null +++ b/packages/alpine.spec @@ -0,0 +1,70 @@ +Summary: University of Washington Alpine mail user agent +Name: alpine +Version: 2.10 +Release: 1 +License: Apache License +Group: Applications/Mail +Source: http://patches.freeiz.com/alpine/patches/%{name}-%{version}/%{name}-%{version}.clean.tar.lzma +URL: http://patches.freeiz.com/alpine/ +Vendor: Patches for Pine and Alpine +Packager: Eduardo Chappa <chappa@gmx.com> +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot + +%description +Alpine -- an Alternatively Licensed Program for Internet +News & Email -- is a tool for reading, sending, and managing +electronic messages. Alpine is the successor to Pine and was +developed until 2008 by Computing & Communications at the +University of Washington. + Though originally designed for inexperienced email users, +Alpine supports many advanced features, and an ever-growing number of +configuration and personal-preference options. + +%prep +%setup -q -n %{name}-%{version} + +%build +touch imap/ip6 +./configure --without-krb5 --with-spellcheck-prog=aspell +make + +%install +[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT +install -D -m755 alpine/alpine $RPM_BUILD_ROOT%{_bindir}/alpine +install -D -m755 pico/pico $RPM_BUILD_ROOT%{_bindir}/pico +install -D -m755 pico/pilot $RPM_BUILD_ROOT%{_bindir}/pilot +install -D -m755 alpine/rpload $RPM_BUILD_ROOT%{_bindir}/rpload +install -D -m755 alpine/rpdump $RPM_BUILD_ROOT%{_bindir}/rpdump +install -D -m755 imap/mailutil/mailutil $RPM_BUILD_ROOT%{_bindir}/mailutil +if ! install -D -m2755 -gmail imap/mlock/mlock $RPM_BUILD_ROOT%{_sbindir}/mlock; then +install -D -m755 imap/mlock/mlock $RPM_BUILD_ROOT%{_sbindir}/mlock +echo "*** DO NOT FORGET TO DO THE FOLLOWING BY HAND while root: +*** chgrp mail $RPM_BUILD_ROOT%{_sysconfdir}/mlock +*** echo chmod 2755 $RPM_BUILD_ROOT%{_sysconfdir}/mlock" +fi +install -D -m644 doc/alpine.1 $RPM_BUILD_ROOT%{_mandir}/man1/alpine.1 +install -D -m644 doc/pico.1 $RPM_BUILD_ROOT%{_mandir}/man1/pico.1 +install -D -m644 doc/pilot.1 $RPM_BUILD_ROOT%{_mandir}/man1/pilot.1 +install -D -m644 doc/rpload.1 $RPM_BUILD_ROOT%{_mandir}/man1/rpload.1 +install -D -m644 doc/rpdump.1 $RPM_BUILD_ROOT%{_mandir}/man1/rpdump.1 +install -D -m644 imap/src/mailutil/mailutil.1 $RPM_BUILD_ROOT%{_mandir}/man1/mailutil.1 + +%clean +[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT + +%files +%defattr(-,root,root) +%doc README LICENSE doc/tech-notes.txt +%{_bindir}/alpine +%{_bindir}/pico +%{_bindir}/pilot +%{_bindir}/rpload +%{_bindir}/rpdump +%{_bindir}/mailutil +%attr(2755, root, mail) %{_sbindir}/mlock +%{_mandir}/man1/alpine.1* +%{_mandir}/man1/pico.1* +%{_mandir}/man1/pilot.1* +%{_mandir}/man1/rpload.1* +%{_mandir}/man1/rpdump.1* +%{_mandir}/man1/mailutil.1* diff --git a/packages/debian/changelog b/packages/debian/changelog new file mode 100644 index 00000000..07849e93 --- /dev/null +++ b/packages/debian/changelog @@ -0,0 +1,5 @@ +alpine (2.01) unstable; urgency=low + + * University of Washington unmodified Alpine release 2.01 package + + -- Alpine Contact <alpine-contact@u.washington.edu> Tue, 27 January 2009 20:20:02 -0800 diff --git a/packages/debian/control b/packages/debian/control new file mode 100644 index 00000000..7e94e885 --- /dev/null +++ b/packages/debian/control @@ -0,0 +1,22 @@ +Source: alpine +Section: non-free/mail +Priority: optional +Maintainer: Alpine Contact <alpine-contact@u.washington.edu> +Standards-Version: 3.6.1.0 +Build-Depends: libncurses-dev | libncurses5-dev, libldap-dev | libldap2-dev, libssl-dev, libpam-dev | libpam0g-dev + +Package: alpine +Architecture: any +Depends: ${shlibs:Depends}, mime-support +Suggests: exim | mail-transport-agent, spell +Provides: mail-reader +Description: Alpine -- an Alternatively Licensed Program for Internet + News & Email -- is a tool for reading, sending, and managing + electronic messages. Alpine is the successor to Pine and was + developed by Computing & Communications at the University of + Washington. + Though originally designed for inexperienced email users, + Alpine supports many advanced features, and an ever-growing number of + configuration and personal-preference options. + . + Homepage: http://www.washington.edu/pine diff --git a/packages/debian/menu b/packages/debian/menu new file mode 100644 index 00000000..77ed3fe1 --- /dev/null +++ b/packages/debian/menu @@ -0,0 +1,2 @@ +?package(alpine):needs="text" section="Apps/Net" title="Alpine" command="/usr/bin/alpine" +?package(alpine):needs="text" section="Apps/Editors" title="Pico" command="/usr/bin/pico"
\ No newline at end of file diff --git a/packages/debian/postinst b/packages/debian/postinst new file mode 100644 index 00000000..6c138e60 --- /dev/null +++ b/packages/debian/postinst @@ -0,0 +1,5 @@ +#!/bin/sh +set -e +if [ -x /usr/bin/update-menus ]; then + update-menus +fi diff --git a/packages/debian/postrm b/packages/debian/postrm new file mode 100644 index 00000000..028ea70e --- /dev/null +++ b/packages/debian/postrm @@ -0,0 +1,13 @@ +#!/bin/sh +set -e +if [ -x /usr/bin/update-menus ]; then + update-menus +fi + +if [ remove = "$1" ]; then + dpkg-divert --quiet --package alpine --remove --rename \ + --divert /usr/bin/clone-editor-moved /usr/bin/pico + dpkg-divert --quiet --package alpine --remove --rename \ + --divert /usr/share/man/man1/clone-editor-moved.1.gz \ + /usr/share/man/man1/pico.1.gz +fi diff --git a/packages/debian/preinst b/packages/debian/preinst new file mode 100644 index 00000000..0cb00df1 --- /dev/null +++ b/packages/debian/preinst @@ -0,0 +1,9 @@ +#!/bin/sh +set -e +if [ install = "$1" ]; then + dpkg-divert --quiet --package alpine --add --rename \ + --divert /usr/bin/clone-editor-moved /usr/bin/pico + dpkg-divert --quiet --package alpine --add --rename \ + --divert /usr/share/man/man1/clone-editor-moved.1.gz \ + /usr/share/man/man1/pico.1.gz +fi diff --git a/packages/debian/rules b/packages/debian/rules new file mode 100755 index 00000000..d539e4b8 --- /dev/null +++ b/packages/debian/rules @@ -0,0 +1,79 @@ +#!/usr/bin/make -f + +DEBUG = +INSTALL_PROGRAM = install + +ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS))) + DEBUG = -DDEBUG -g +endif + +ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) + INSTALL_PROGRAM += -s +endif + +build: build-all + +build-all: + $(checkdir) + touch imap/ip6 + ./configure + make + touch build-all + +clean: checkroot + $(checkdir) + -rm -f build-all + -rm -rf debian/tmp debian/files* core debian/substvars + +binary-indep: checkroot build-all + +binary-arch: checkroot build-all + $(checkdir) + -rm -rf debian/tmp + install -D -m755 debian/preinst debian/tmp/DEBIAN/preinst + install -D -m755 debian/postinst debian/tmp/DEBIAN/postinst + install -D -m755 debian/postrm debian/tmp/DEBIAN/postrm + install -D -m644 debian/menu debian/tmp/usr/lib/menu/alpine + + $(INSTALL_PROGRAM) -D -m755 alpine/alpine debian/tmp/usr/bin/alpine + $(INSTALL_PROGRAM) -D -m755 imap/mlock/mlock debian/tmp/usr/sbin/mlock + $(INSTALL_PROGRAM) -D -m755 alpine/rpload debian/tmp/usr/bin/rpload + $(INSTALL_PROGRAM) -D -m755 alpine/rpdump debian/tmp/usr/bin/rpdump + $(INSTALL_PROGRAM) -D -m755 pico/pico debian/tmp/usr/bin/pico + $(INSTALL_PROGRAM) -D -m755 pico/pilot debian/tmp/usr/bin/pilot + $(INSTALL_PROGRAM) -D -m755 imap/mailutil/mailutil debian/tmp/usr/bin/mailutil + + install -D -m644 doc/alpine.1 debian/tmp/usr/share/man/man1/alpine.1 + install -D -m644 doc/rpload.1 debian/tmp/usr/share/man/man1/rpload.1 + install -D -m644 doc/rpdump.1 debian/tmp/usr/share/man/man1/rpdump.1 + install -D -m644 doc/pico.1 debian/tmp/usr/share/man/man1/pico.1 + install -D -m644 doc/pilot.1 debian/tmp/usr/share/man/man1/pilot.1 + install -D -m644 imap/src/mailutil/mailutil.1 debian/tmp/usr/share/man/man1/mailutil.1 + install -D -m644 doc/tech-notes.txt debian/tmp/usr/share/doc/alpine/tech-notes.txt + install -D -m644 LICENSE debian/tmp/usr/share/doc/alpine/license + install -D -m644 README debian/tmp/usr/share/doc/alpine/README + install -D -m644 debian/changelog debian/tmp/usr/share/doc/alpine/changelog + + gzip -r9 debian/tmp/usr/share/man + gzip -9 debian/tmp/usr/share/doc/alpine/changelog + dpkg-shlibdeps alpine/alpine pico/pico pico/pilot imap/mlock/mlock alpine/rpload alpine/rpdump + cd debian/tmp && md5sum `find * -type f ! -regex "DEBIAN/.*"` > DEBIAN/md5sums + dpkg-gencontrol -isp -palpine + chown -R root.root debian/tmp + chmod -R go=rX debian/tmp + chown root.mail debian/tmp/usr/sbin/mlock + chmod 2755 debian/tmp/usr/sbin/mlock + dpkg --build debian/tmp .. + +define checkdir + test -f alpine/alpine.c -a -f debian/rules +endef + +binary: binary-indep binary-arch + +checkroot: + $(checkdir) + test root = "`whoami`" + +.PHONY: binary binary-arch binary-indep clean checkroot + diff --git a/packages/windows/alpine.iss b/packages/windows/alpine.iss new file mode 100755 index 00000000..5a00af72 --- /dev/null +++ b/packages/windows/alpine.iss @@ -0,0 +1,60 @@ +[Setup]
+AppName=Alpine
+#include "iss.SetupVars.tmp"
+;AppVerName=Alpine 0.98
+AppPublisher=University of Washington
+AppPublisherURL=http://www.washington.edu/alpine/
+AppSupportURL=http://www.washington.edu/alpine/faq/
+AppUpdatesURL=http://www.washington.edu/alpine/getalpine/
+DefaultDirName={pf}\Alpine
+DefaultGroupName=Alpine
+AllowNoIcons=yes
+;SourceDir=E:\CreateInstall
+OutputDir=..\
+;OutputBaseFilename=setup_alpine_0.98
+LicenseFile=legal.txt
+;InfoBeforeFile=install.txt
+UninstallDisplayIcon={app}\alpine.exe
+;UninstallDisplayName=Alpine 0.98
+UninstallFilesDir={app}\uninst_alpine
+Compression=bzip/9
+
+[Tasks]
+Name: "desktopicon"; Description: "Create a &desktop icon"; GroupDescription: "Additional icons:"
+Name: "quicklaunchicon"; Description: "Create a &Quick Launch icon"; GroupDescription: "Additional icons:"; Flags: unchecked
+
+[Files]
+Source: "alpine.exe"; DestDir: "{app}"; Flags: ignoreversion
+Source: "install.txt"; DestDir: "{app}"; Flags: ignoreversion
+Source: "legal.txt"; DestDir: "{app}"; Flags: ignoreversion
+Source: "ldap32.dll"; DestDir: "{app}"; Flags: ignoreversion
+Source: "mailcap.sam"; DestDir: "{app}"; Flags: ignoreversion
+Source: "mimetype.sam"; DestDir: "{app}"; Flags: ignoreversion
+Source: "pico.exe"; DestDir: "{app}"; Flags: ignoreversion
+Source: "pinerc.adv"; DestDir: "{app}"; Flags: ignoreversion
+; NOTE: Don't use "Flags: ignoreversion" on any shared system files
+
+[INI]
+Filename: "{app}\alpine.url"; Section: "InternetShortcut"; Key: "URL"; String: "http://www.washington.edu/alpine/"
+
+[Icons]
+Name: "{group}\Alpine"; Filename: "{app}\alpine.exe"
+Name: "{group}\Pico"; Filename: "{app}\pico.exe"
+Name: "{group}\Alpine on the Web"; Filename: "{app}\alpine.url"
+Name: "{group}\Uninstall Alpine"; Filename: "{uninstallexe}"
+Name: "{userdesktop}\Alpine"; Filename: "{app}\alpine.exe"; Tasks: desktopicon
+Name: "{userdesktop}\Pico"; Filename: "{app}\pico.exe"; Tasks: desktopicon
+Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\Alpine"; Filename: "{app}\alpine.exe"; Tasks: quicklaunchicon
+Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\Pico"; Filename: "{app}\pico.exe"; Tasks: quicklaunchicon
+
+[Run]
+Filename: "{app}\alpine.exe"; Parameters: "-nosplash -install" ; Flags: skipifsilent
+Filename: "{app}\alpine.exe"; Description: "Launch Alpine"; Flags: nowait postinstall skipifsilent
+Filename: "{app}\pico.exe"; Description: "Launch Pico"; Flags: nowait postinstall skipifsilent unchecked
+Filename: "{app}\install.txt"; Description: "View Alpine README"; Flags: postinstall shellexec skipifsilent
+
+[UninstallDelete]
+Type: files; Name: "{app}\alpine.url"
+
+[UninstallRun]
+Filename: "{app}\alpine.exe"; Parameters: "-nosplash -uninstall"
diff --git a/packages/windows/binstaller.bat b/packages/windows/binstaller.bat new file mode 100644 index 00000000..8f5700a9 --- /dev/null +++ b/packages/windows/binstaller.bat @@ -0,0 +1,45 @@ +@echo OFF +if "%1"=="" goto blankplat +if "%2"=="" goto blankver +if "%1"=="wnt" goto goodbuild +if "%1"=="w2k" goto goodbuild +echo Unknown build platform: %1 %2 +goto usage +:blankplat +echo Must specify build platform (wnt, w2k)! +goto usage +:blankver +echo Must specify build version (eg. 0.98) +:usage +echo usage: BINSTALLER plat ver +echo where plat is wnt or w2k +echo and ver is version (eg 0.98) +goto fini + + +:goodbuild +set plat=%1 +set ver=%2 +set tmpfile=iss.SetupVars.tmp +echo Building installer for platform %plat% for version %ver% +echo Assuming existence of dist.%plat%.d! +echo SourceDir=dist.%plat%.d > %tmpfile% +goto %plat% + +:wnt +echo AppVerName=Alpine %ver% >> %tmpfile% +echo OutputBaseFilename=setup_alpine_%ver% >> %tmpfile% +echo UninstallDisplayName=Alpine %ver% >> %tmpfile% +goto goodbuildcont +:w2k +echo AppVerName=Alpine %ver% (with Windows Kerberos) >> %tmpfile% +echo OutputBaseFilename=setup_alpine_%ver%_w2k >> %tmpfile% +echo UninstallDisplayName=Alpine %ver% (with Windows Kerberos) >> %tmpfile% +goto goodbuildcont + +:goodbuildcont +iscc alpine.iss +del %tmpfile% +echo Done. + +:fini |