--- pal-0.3.5.orig/debian/rules +++ pal-0.3.5/debian/rules @@ -0,0 +1,64 @@ +#!/usr/bin/make -f +# -*- makefile -*- +# vim: set ft=make: + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +include /usr/share/quilt/quilt.make + +CFLAGS = -Wall -g + +ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + CFLAGS += -O0 +else + CFLAGS += -O2 +endif + +# we use dh_strip to strip executables ... +export DEBUG=1 + +build: build-stamp +build-stamp: $(QUILT_STAMPFN) + dh_testdir + $(MAKE) + touch $@ + +clean: unpatch + dh_testdir + dh_testroot + $(MAKE) -C src cleandeps + $(RM) -r contrib + dh_clean build-stamp + +install: build + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs + $(MAKE) DESTDIR=$(CURDIR)/debian/pal install-mo + $(MAKE) DESTDIR=$(CURDIR)/debian/pal install-man + $(MAKE) DESTDIR=$(CURDIR)/debian/pal install-bin + $(MAKE) DESTDIR=$(CURDIR)/debian/pal install-share + install -m 0755 -o root src/convert/vcard2pal debian/pal/usr/bin + +binary-indep: +binary-arch: build install + dh_testdir + dh_testroot + dh_installchangelogs ChangeLog + dh_installdocs + dh_installexamples + dh_installman vcard2pal.1 + dh_link + dh_strip + dh_compress + dh_fixperms + dh_installdeb + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch +.PHONY: build clean mostlyclean binary-indep binary-arch binary install --- pal-0.3.5.orig/debian/compat +++ pal-0.3.5/debian/compat @@ -0,0 +1 @@ +5 --- pal-0.3.5.orig/debian/changelog +++ pal-0.3.5/debian/changelog @@ -0,0 +1,68 @@ +pal (0.3.5-pre1+3) unstable; urgency=low + + * Removed version from NAME section in pal(1). + * Added manpage for vcard2pal. + * Simplified clean target in debian/rules. + + -- Carsten Hey Mon, 02 Jun 2008 19:04:13 +0000 + +pal (0.3.5-pre1+2) unstable; urgency=low + + * New Maintainer. Thanks Javier and Martijn! + * Rewrote debian/rules. We now use debhelper, added dependency. + * Use quilt as patch management, added dependency. + * Fixed debian/copyright, GPLv2+ is not GPL. Also added copyright + information for some new and existent scripts. + * Added Homepage field to debian/control and removed homepage and author + from description. + * Reformated description. + * Removed useless maintainer scripts. + * Added wrapper from pal 0.4.0_pre3 around src/Makefile. + * Applied updates to installation notes from pal 0.4.0_pre3. + * Check whether term is NULL in colorize.c. (Closes: #431352) + * Handle nostrip build option correctly. (Closes: #437732) + * Applied fixes and additions to existing pal files from CVS and pal + 0.4.0_pre3: birth-death.pal, history.pal and us.pal. (Closes: #415457) + * Added sysadminday to computer.pal. (Closes: #320420) + * Added austria.pal. (Closes: #476239) + * Updated convert/ical2pal.c, added convert/pal2ical.c and updated + convert/Makefile (backports from pal 0.4.0_pre3) and added these to + examples. Also mention pal2ical in README.Debian. + * Moved example.css to examples. + * Added pal_add_event.zsh and pal_edit_event.zsh from CVS as examples. + * Added vcard2pal. Thanks Uli! + + -- Carsten Hey Mon, 02 Jun 2008 08:56:32 +0000 + +pal (0.3.5-1pre1.1) unstable; urgency=low + + * Non-maintainer upload. + * Closes: #326311: Update libreadline dependency + + -- Martijn van Oosterhout Mon, 14 Nov 2005 16:03:34 +0100 + +pal (0.3.5-1pre1) unstable; urgency=low + + * New upstream release. + + -- Javier Linares Sat, 05 Jun 2004 15:38:08 +0200 + +pal (0.3.3-2.0.1) unstable; urgency=low + + * Only-binary upload to fix dependencies (closes: #247063). + + -- Teofilo Ruiz Suarez Mon, 03 May 2004 14:30:55 +0200 + +pal (0.3.3-2) unstable; urgency=low + + * Removed pointer to non-existant README file (closes: #241747). + * Makes file_hide work properly (closes: #243556). + + -- Javier Linares Fri, 23 Apr 2004 19:32:16 +0200 + +pal (0.3.3-1) unstable; urgency=low + + * Initial release (closes: #238134). + + -- Javier Linares Tue, 16 Mar 2004 14:34:17 +0100 + --- pal-0.3.5.orig/debian/pal.examples +++ pal-0.3.5/debian/pal.examples @@ -0,0 +1,6 @@ +doc/example.css +src/convert/ical2pal.c +src/convert/pal2ical.c +src/convert/Makefile +contrib/pal_add_event.zsh +contrib/pal_edit_event.zsh --- pal-0.3.5.orig/debian/README.Debian +++ pal-0.3.5/debian/README.Debian @@ -0,0 +1,51 @@ +pal for Debian +============== + +pal is a cal-like calendar with day highlight and support for events. For +more information about pal visit http://palcal.sourceforge.net/. Feedback +to palcal-devel@lists.sourceforge.net is also welcome and apreciated. + + + +ical2pal +-------- + +This version includes the source code of ical2pal and pal2ical, two utility to +import events from the ical format (described in RFC 2445 and others) to pal +format and vice versa. + +However, these are a beta versions, and it neither compiled nor installed. The +source code and a Makefile can be found in /usr/share/doc/pal/examples/. +Please, compile them at your own risk, and only if you know what you're doing. + +Also, notice that ical2pal and pal2ical depend on the libical library +(http://www.softwarestudio.org/libical/), currently not available as a debian +package. In particular, ical2pal is known to work with version 0.23. If you +don't want to add trash to your system, remember to build libical with +"./configure --prefix=/usr/local". + +Other calendars +--------------- + +System calendars can be found under /usr/share/pal/. In Debian systems you can +find more calendars under /usr/share/calendar/, provided by the package +bsdmainutils, however pal can't understand nor convert them. + + + +A few ways to use pal effectively (from the website) +---------------------------------------------------- + + * Create your own calendar files and be reminded of upcoming meetings, + deadlines, and events. + * Remind yourself daily of your "To Do" list by using the special TODO + event type. + * Run pal in your shell initialization file (such as ~/.bash_profile) + to see your calendar whenever you open a new terminal. + * Set up a cron job that emails you and/or others the output of pal + every morning. + * View the calendars of other pal users on the same system. + + + -- Javier Linares Sat, 05 Jun 2004 15:39:38 +0200 + -- Carsten Hey Mon, 02 Jun 2008 16:53:56 +0200 --- pal-0.3.5.orig/debian/control +++ pal-0.3.5/debian/control @@ -0,0 +1,24 @@ +Source: pal +Section: utils +Priority: optional +Maintainer: Carsten Hey +Build-Depends: debhelper (>= 5), libreadline5-dev | libreadline-dev, libncurses5-dev, libglib2.0-dev, gettext, quilt +Standards-Version: 3.7.3 +Homepage: http://palcal.sourceforge.net/ + +Package: pal +Architecture: any +Depends: ${shlibs:Depends} +Suggests: tetex-bin +Description: command-line calendar program that can keep track of events + pal is a cal-like calendar with day highlight and support for events. + . + Some of pal's main features are: + * Assign different colors to different types of events + * Search events with regular expressions + * Includes calendars for holiday (US, Christian, etc) and historical events + * One-time events and a variety of recurring events are supported + * Easy-to-use interface for interactively adding events to calendars + * Automated deletion of old events + * Generation of HTML calendars + * Generation of LaTeX calendar suitable for printing --- pal-0.3.5.orig/debian/copyright +++ pal-0.3.5/debian/copyright @@ -0,0 +1,92 @@ +This package was debianized by Javier Linares on +Tue, 16 Mar 2004 15:45:12 +0100. Since Sun, 01 Jun 2008 it is maintained by +Carsten Hey . + +----------------------------------------------------------------------------- + +pal: + +It was downloaded from http://palcal.sourceforge.net/. + +Copyright: 2004 Scott Kuhl + +License: + + 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. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA + 02110-1301, USA. + +On Debian systems, the complete text of the GNU General Public License, +version 2, can be found in /usr/share/common-licenses/GPL-2. Newer +versions of this license can be found in the same directory. + +----------------------------------------------------------------------------- + +pal_add_event.zsh and pal_edit_event.zsh: + +Copyright: 2006 Fernando Vezzosi + +License: + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License version 2 as + published by the Free Software Foundation. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA + 02110-1301, USA. + +On Debian systems, the complete text of the GNU General Public License, +version 2, can be found in /usr/share/common-licenses/GPL-2. + +----------------------------------------------------------------------------- + +vcard2pal: + +It was downloaded from http://youam.net/devel/vcard2pal/. + +Copyright: 2005, 2008 Uli Martens + All rights reserved. + +License: + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +3. The name of the author may not be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +----------------------------------------------------------------------------- --- pal-0.3.5.orig/debian/dirs +++ pal-0.3.5/debian/dirs @@ -0,0 +1 @@ +usr/bin --- pal-0.3.5.orig/debian/patches/series +++ pal-0.3.5/debian/patches/series @@ -0,0 +1,17 @@ +00_wrapper_around_src_makefile.patch +01_updated_installation_notes.patch +02_check_null_in_colorize.c.patch +03_pal.1.template.patch +04_birth-death.pal.patch +05_history.pal.patch +06_austria.pal.patch +07_us.pal.patch +08_sysadminday.patch +09_vcard2pal.patch +10_convert_ical2pal.patch +11_convert_pal2ical.patch +12_convert_makefile.patch +13_contrib_pal_add_event.zsh.patch +14_contrib_pal_edit_event.zsh.patch +15_fix_name_section_in_man_pal.patch +16_man_vcard2pal.patch --- pal-0.3.5.orig/debian/patches/06_austria.pal.patch +++ pal-0.3.5/debian/patches/06_austria.pal.patch @@ -0,0 +1,41 @@ +pal (0.3.5-pre1+2): Backport from cvs (2008-06-01) + Add austria.pal + +--- /dev/null ++++ pal-0.3.5/share/austria.pal +@@ -0,0 +1,35 @@ ++# Collection (c) 2005-2008 by Gerfried Fuchs ++# Feel free to use the data herein in whatever form you like, including ++# but not limited to use, modify, redistribute and sublicence in any way ++# you like to. ++ ++AT Austria ++00000101 Neujahr ++00000106 Heilige Dreikönige ++00000214 Valentinstag ++00000501 Tag der Arbeit ++00000815 Mariä Himmelfahrt ++00001026 Nationalfeiertag ++00001101 Allerheiligen ++00001208 Mariä Empfängnis ++00001224 Heilig Abend ++00001225 Christtag ++00001226 Stefanitag ++00001231 Silvester ++ ++Easter-047 Faschingsdienstag ++Easter-046 Aschermittwoch ++Easter-007 Palmsonntag ++Easter-003 Gründonnerstag ++Easter-002 Karfreitag ++Easter Ostersonntag ++Easter+001 Ostermontag ++Easter+039 Christi Himmelfahrt ++Easter+050 Pfingstmontag ++Easter+056 Heilige Dreifaltigkeit ++Easter+060 Fronleichnam ++ ++*03L1 Anfang Sommerzeit --- Uhren vorstellen ++*0521 Muttertag ++*0621 Vatertag ++*10L1 Ende Sommerzeit --- Uhren zurückstellen --- pal-0.3.5.orig/debian/patches/05_history.pal.patch +++ pal-0.3.5/debian/patches/05_history.pal.patch @@ -0,0 +1,48 @@ +pal (0.3.5-pre1+2): Backport from 0.4.0_pre3 + Fix and extend history.pal + +--- pal-0.3.5.orig/share/history.pal ++++ pal-0.3.5/share/history.pal +@@ -17,7 +17,7 @@ HH History + 00000105 -50 degrees F, Strawberry UT, 1913 + 00000105 The FCC hears the first demonstration of FM radio, 1940 + 00000105 Twelfth night +-00000108 Battle of New Orleans ++00000108 Battle of New Orleans, 1815 + 00000109 Plough Monday + 00000110 First meeting of United Nations General Assembly in London, 1946 + 00000110 Thomas Paine's Common Sense published, 1776 +@@ -51,7 +51,7 @@ HH History + 00000204 Patricia Hearst kidnaped by Symbionese Liberation Army, 1974 + 00000208 1963 Revolution Anniversary in Iraq + 00000209 -51 degrees F, Vanderbilt MI, 1934 +-00000212 US President Abraham Lincoln's real birthday ++00000212 US President Abraham Lincoln's real birthday (born 1809) + 00000212 Santa Barbara oil leak, 1969 + 00000214 Bombing of Dresden, 1945 + 00000215 Chicago Seven convicted, 1970 +@@ -263,6 +263,7 @@ HH History + 00000827 Krakatoa, Java explodes with a force of 1,300 megatons, 1883 + 00000828 Martin Luther King leads over 200K in civil rights rally in Washington, DC, 1963 + 00000829 Star in Cygnus goes nova and becomes 4th brightest in sky, 1975; Nova Cygni 1975. ++00000829 Hurricane Katrina hits Louisiana & Mississippi, 2005 + 00000830 75 cents a pound tariff set on opium, 1842 + 00000830 Japan Stationery Co. sells first felt-tipped pen, 1960 + 00000830 St. Rose of Lima in Peru +@@ -287,7 +288,7 @@ HH History + 00000909 California becomes the 31st state of the USA, 1850 + 00000909 United Colonies is renamed the United States, 1776 + 00000910 Mountain Meadows Massacre. Mormons kill Gentile wagon train, 1857 +-00000911 Terrorist attacks on World Trade Center (New York City) and Pentagon (Washington DC), 2001 ++00000911 Terrorist attacks on World Trade Center (New York City) and Pentagon (Virginia), 2001 + 00000912 German paratroopers rescue Mussolini from captivity in Rome, 1943 + 00000912 Germany annexes Sudentenland, 1938 + 00000913 58 C (136.4 F) measured at el Azizia, Libya, 1922 +@@ -440,6 +441,7 @@ HH History + 00001221 Women gain the right to hold political office in South Australia, 1894 + 00001224 KKK formed in Pulaski, Tenn, 1865 + 00001226 DPMA founded, 1951 ++00001226 Indian Ocean tsunami kills approximately 230,000 people, 2004 + 00001227 APT report published, 1956 + 00001227 Ether first used as anesthetic in childbirth, 1845 + 00001228 Comet Kohoutek at perihelion, 1973 --- pal-0.3.5.orig/debian/patches/02_check_null_in_colorize.c.patch +++ pal-0.3.5/debian/patches/02_check_null_in_colorize.c.patch @@ -0,0 +1,15 @@ +pal (0.3.5-pre1+2): Backport from 0.4.0_pre3 + Check whether term is NULL in colorize.c + +--- pal-0.3.5.orig/src/colorize.c ++++ pal-0.3.5/src/colorize.c +@@ -37,6 +37,9 @@ void color_term() + { + char *term = getenv("TERM"); + ++ if(term == NULL) ++ return; ++ + use_colors = 0; /* don't use colors by default */ + + /* use colors if TERM variable is one of the following */ --- pal-0.3.5.orig/debian/patches/12_convert_makefile.patch +++ pal-0.3.5/debian/patches/12_convert_makefile.patch @@ -0,0 +1,84 @@ +pal (0.3.5-pre1+2): Backport from 0.4.0_pre3 + Update Makefile for convert/ical2pal.c and convert/pal2ical.c + +--- pal-0.3.5.orig/src/convert/Makefile ++++ pal-0.3.5/src/convert/Makefile +@@ -1,18 +1,13 @@ + include ../Makefile.defs + +-INCLDIR = -I${prefix}/include ++INCLDIR = -I${prefix}/include `pkg-config --cflags glib-2.0` + LIBDIR = +-LIBS = -lical -lpthread + +-SRC = ical2pal.c ++ ++SRC = ical2pal.c pal2ical.c + + OBJ = $(SRC:.c=.o) + +-$(NAME): $(OBJ) +- $(CC) $(CFLAGS) $(OBJ) $(LDFLAGS) -o $(NAME) +-ifneq ($(DEBUG),1) +- strip $(NAME) +-endif + + help: + @echo "Please use one of the following targets:" +@@ -20,20 +15,23 @@ help: + @echo " ical-install Install ical <--> pal conversion utilities (requires libical)" + @echo "" + +-# make dependency files +-%.d: %.c +- @echo "Creating/recreating dependency file: $(@)" +- @set -e; $(CC) -MM $(CFLAGS) $< \ +- | sed 's/\($*\)\.o[ :]*/\1.o $@ : /g' > $@; \ +- [ -s $@ ] || rm -f $@ + + +-# Include dependency files here. +-# If the files don't exist, this will fail silently and remake the dep files. +--include $(SRC:.c=.d) ++ical: ical2pal pal2ical ++ ++ical2pal: ical2pal.o ++ $(CC) $(CFLAGS) ical2pal.o -lical -lpthread -o ical2pal ++ifneq ($(DEBUG),1) ++ strip ical2pal ++endif + + +-ical: ical2pal ++pal2ical: pal2ical.o ++ cd .. && make libpal.a ++ $(CC) $(CFLAGS) pal2ical.o -L.. -lpal `pkg-config --libs glib-2.0` -lreadline -lncurses -o pal2ical ++ifneq ($(DEBUG),1) ++ strip pal2ical ++endif + + + ical-debug: clean +@@ -45,6 +43,7 @@ ical-install: + @echo " --- Installing binary --- " + @mkdir -p ${DESTDIR}${prefix}/bin; + install -m 0755 -o root ical2pal ${DESTDIR}${prefix}/bin; ++ install -m 0755 -o root pal2ical ${DESTDIR}${prefix}/bin; + @echo + + +@@ -52,12 +51,13 @@ ical-install: + ical-uninstall: + @echo " --- Removing binary --- " + rm -f ${prefix}/bin/ical2pal; ++ rm -f ${prefix}/bin/pal2ical; + @echo + + + # Remove binay, object files and emacs backup files + clean: +- rm -f ical2pal $(OBJ) *~ ++ rm -f ical2pal pal2ical $(OBJ) *~ + + # Remove object files and dependency files + cleandeps: clean --- pal-0.3.5.orig/debian/patches/10_convert_ical2pal.patch +++ pal-0.3.5/debian/patches/10_convert_ical2pal.patch @@ -0,0 +1,173 @@ +pal (0.3.5-pre1+2): Backport from 0.4.0_pre3 + Update convert/ical2pal.c + +--- pal-0.3.5.orig/src/convert/ical2pal.c ++++ pal-0.3.5/src/convert/ical2pal.c +@@ -1,6 +1,25 @@ ++/* ical2pal ++ * ++ * Copyright (C) 2004, Scott Kuhl ++ * ++ * 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. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * You should have received a copy of the GNU General Public License ++ * along with this program; if not, write to the Free Software ++ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ++ * ++ */ ++ + #include + #include +-#include + #include + #include "ical.h" + +@@ -36,6 +55,9 @@ void output_pal_from_ical(icalcomponent* + char startstop[19]; + char time[15]; + ++ const char* summary_text = NULL; ++ ++ + startstop[0] = '\0'; + time[0] = '\0'; + +@@ -61,27 +83,29 @@ void output_pal_from_ical(icalcomponent* + recur.freq = ICAL_NO_RECURRENCE; + + +- if(summary == 0) +- error_flag = 1; ++ if(summary != NULL) ++ summary_text = icalproperty_get_summary(summary); ++ else ++ summary_text = "NO SUMMARY FIELD FOR EVENT"; + + + if(error_flag == 0 && recur.freq == ICAL_NO_RECURRENCE) + { + printf("%04i%02i%02i%s ", start_value.year, start_value.month, start_value.day, startstop); +- printf("%s %s\n", icalproperty_get_summary(summary), time); ++ printf("%s %s\n", summary_text, time); + good_event++; + } + else if(error_flag == 0 && recur.freq == ICAL_DAILY_RECURRENCE) + { + if(recur.interval == 1) +- printf("DAILY%s %s %s", startstop, icalproperty_get_summary(summary), time); ++ printf("DAILY%s %s %s", startstop, summary_text, time); + else + error_flag = 1; + } + else if(error_flag == 0 && recur.freq == ICAL_YEARLY_RECURRENCE) + { + printf("0000%02i%02i ", start_value.month, start_value.day); +- printf("%s %s\n", icalproperty_get_summary(summary), time); ++ printf("%s %s\n", summary_text, time); + good_event++; + } + +@@ -92,31 +116,31 @@ void output_pal_from_ical(icalcomponent* + switch(icalrecurrencetype_day_day_of_week(recur.by_day[0])) + { + case ICAL_SUNDAY_WEEKDAY: +- printf("SUN%s %s %s\n", startstop, icalproperty_get_summary(summary), time); ++ printf("SUN%s %s %s\n", startstop, summary_text, time); + good_event++; + break; + case ICAL_MONDAY_WEEKDAY: +- printf("MON%s %s %s\n", startstop, icalproperty_get_summary(summary), time); ++ printf("MON%s %s %s\n", startstop, summary_text, time); + good_event++; + break; + case ICAL_TUESDAY_WEEKDAY: +- printf("TUE%s %s %s\n", startstop, icalproperty_get_summary(summary), time); ++ printf("TUE%s %s %s\n", startstop, summary_text, time); + good_event++; + break; + case ICAL_WEDNESDAY_WEEKDAY: +- printf("WED%s %s %s\n", startstop, icalproperty_get_summary(summary), time); ++ printf("WED%s %s %s\n", startstop, summary_text, time); + good_event++; + break; + case ICAL_THURSDAY_WEEKDAY: +- printf("THU%s %s %s\n", startstop, icalproperty_get_summary(summary), time); ++ printf("THU%s %s %s\n", startstop, summary_text, time); + good_event++; + break; + case ICAL_FRIDAY_WEEKDAY: +- printf("FRI%s %s %s\n", startstop, icalproperty_get_summary(summary), time); ++ printf("FRI%s %s %s\n", startstop, summary_text, time); + good_event++; + break; + case ICAL_SATURDAY_WEEKDAY: +- printf("SAT%s %s %s\n", startstop, icalproperty_get_summary(summary), time); ++ printf("SAT%s %s %s\n", startstop, summary_text, time); + good_event++; + break; + default: +@@ -145,13 +169,13 @@ void output_pal_from_ical(icalcomponent* + if(n>0) + { + printf("*%02i%1i%i%s ", start_value.month, n, weekday, startstop); +- printf("%s %s\n", icalproperty_get_summary(summary), time); ++ printf("%s %s\n", summary_text, time); + good_event++; + } + else if(n==-1) + { + printf("*%02iL%i%s ", start_value.month, weekday, startstop); +- printf("%s %s\n", icalproperty_get_summary(summary), time); ++ printf("%s %s\n", summary_text, time); + good_event++; + } + else +@@ -167,7 +191,7 @@ void output_pal_from_ical(icalcomponent* + { + if(recur.by_day[0] == ICAL_RECURRENCE_ARRAY_MAX) + { +- printf("000000%02i%s %s %s\n", start_value.day, startstop, icalproperty_get_summary(summary), time); ++ printf("000000%02i%s %s %s\n", start_value.day, startstop, summary_text, time); + good_event++; + } + +@@ -193,13 +217,13 @@ void output_pal_from_ical(icalcomponent* + if(n>0) + { + printf("*00%1i%i%s ", n, weekday, startstop); +- printf("%s %s\n", icalproperty_get_summary(summary), time); ++ printf("%s %s\n", summary_text, time); + good_event++; + } + else if(n==-1) + { + printf("*00L%i%s ", weekday, startstop); +- printf("%s %s\n", icalproperty_get_summary(summary), time); ++ printf("%s %s\n", summary_text, time); + good_event++; + } + else +@@ -226,13 +250,13 @@ void output_pal_from_ical(icalcomponent* + if(n>0) + { + printf("*%02i%1i%i%s ", start_value.month, n, weekday, startstop); +- printf("%s %s\n", icalproperty_get_summary(summary), time); ++ printf("%s %s\n", summary_text, time); + good_event++; + } + else if(n==-1) + { + printf("*%02iL%i%s ", start_value.month, weekday, startstop); +- printf("%s %s\n", icalproperty_get_summary(summary), time); ++ printf("%s %s\n", summary_text, time); + good_event++; + } + else --- pal-0.3.5.orig/debian/patches/13_contrib_pal_add_event.zsh.patch +++ pal-0.3.5/debian/patches/13_contrib_pal_add_event.zsh.patch @@ -0,0 +1,98 @@ +pal (0.3.5-pre1+2): Backport from cvs (2008-06-01) + Add pal_add_event.zsh + +--- /dev/null ++++ pal-0.3.5/contrib/pal_add_event.zsh +@@ -0,0 +1,92 @@ ++#!/bin/zsh ++# ++# Add an event to the Pal calendar ++# This script is released under the GNU GPL version 2. ++# ++# -- Fernando Vezzosi Dec 2006 ++ ++# some variables ++filedir=~/.pal ++fileext=pal ++ ++# parse options ++t=$(getopt -o f:d:t: --long file:,date:,text: -n $0 -- "$@") ++if [ $? != 0 ]; then exit 1; fi ++ ++eval set -- "$t" ++ ++while : ; do ++ case "$1" in ++ -f|--file) ++ file_to_edit="$2" ++ shift 2 ++ ;; ++ -d|--date) ++ date="$2" ++ shift 2 ++ ;; ++ -t|--text) ++ text="$2" ++ shift 2 ++ ;; ++ --) ++ shift ++ break ++ ;; ++ *) ++ echo "this ain't happened [$1]" ++ exit 1 ++ esac ++done ++ ++[ ! -z "${debug}" ] && echo "f:[$file_to_edit] d:[$date] t:[$text]" ++ ++# start working ++file_to_edit="$filedir/${file_to_edit}.${fileext}" ++ ++# handle missing filename ++while ! [ -w "$file_to_edit" ]; do ++ echo -n "Choose event file [" $filedir/*.$fileext(:t:r) "]: " ++ read file_to_edit ++ file_to_edit="$filedir/${file_to_edit}.${fileext}" ++done ++ ++[ ! -z "${debug}" ] && echo "f:[$file_to_edit] d:[$date] t:[$text]" ++ ++# in case it's TOMORROW, we calculate the date ++[ "${(U)date}" = TOMORROW ] && ++ date="$(date -d tomorrow +%Y%m%d)" ++ ++# handle missing date ++while ! echo "$date" | egrep -qi '^TODO|[0-9]{8}$'; do ++ [ ! -z "${debug}" ] && echo "d:[$date] ain't match ........" ++ # read date in dd/mm format ++ while ! echo "$date" | egrep -qi '^TODO|TOMORROW|[0-9]+[/ ][0-9]+([/ ][0-9]+)?$' ; do ++ [ ! -z "${debug}" ] && echo "d:[$date] ain't match regex" ++ echo -n "Event date [ TODO TOMORROW dd/mm dd/mm/yyyy ]: " ++ read date ++ done ++ # in case it's a TODO, we don't have no more business here ++ [ "${(U)date}" = TODO ] && break ++ # if it's TOMORROW, convert it ++ [ "${(U)date}" = TOMORROW ] && date="$(date -d tomorrow +%d/%m/%Y)" ++ # translate to pal format ++ # - insert third field of dd/mm(/yyyy)? if there is any, else call date(1) ++ # - insert second field of dd/mm(/yyyy)? ++ # - insert first field of dd/mm(/yyyy)? ++ date="${${(s:/:)date}[3]:-$(date +%Y)}${${(s:/:)date}[2]}${${(s:/:)date}[1]}" ++done ++ ++[ ! -z "${debug}" ] && echo "f:[$file_to_edit] d:[$date] t:[$text]" ++ ++# handle missing text ++while [ -z "${text}" ]; do ++ echo -n "Event text: " ++ read text ++done ++# capitalize first character of $text string ++text="${(C)${(f)text}[1]}${${(f)text}[2,-1]}" ++ ++[ ! -z "${debug}" ] && echo "f:[$file_to_edit] d:[$date] t:[$text]" ++ ++[ ! -z "${debug}" ] || echo "${date} ${text}" >> "${file_to_edit}" --- pal-0.3.5.orig/debian/patches/07_us.pal.patch +++ pal-0.3.5/debian/patches/07_us.pal.patch @@ -0,0 +1,20 @@ +pal (0.3.5-pre1+2): Backport from cvs (2008-06-01) + Fix US Daylight Saving Time + +--- pal-0.3.5.orig/share/us.pal ++++ pal-0.3.5/share/us.pal +@@ -29,12 +29,12 @@ US USA + *0132 Martin Luther King's birthday + *0232 President's Day + *0232 Washington's birthday +-*0411 Daylight Saving Time begins --- move clocks forward ++*0321 Daylight Saving Time begins --- move clocks forward + *0521 Mother's Day + *0537 Armed Forces Day + *05L2 Memorial Day + *0631 Father's Day + *0912 Labor Day + *1022 Columbus Day +-*10L7 Daylight Saving Time ends --- move clocks back ++*1111 Daylight Saving Time ends --- move clocks back + *1145 Thanksgiving Day --- pal-0.3.5.orig/debian/patches/03_pal.1.template.patch +++ pal-0.3.5/debian/patches/03_pal.1.template.patch @@ -0,0 +1,14 @@ +pal (0.3.?): Patch from old Debian package + Fix path to example.css + +--- pal-0.3.5.orig/pal.1.template ++++ pal-0.3.5/pal.1.template +@@ -73,7 +73,7 @@ Do not use colors, regardless of termina + Generates output readable by sendmail by adding "From:" and "Subject:" fields and forcing \fB--nocolor\fR. For example, you could mail yourself a reminder of the upcoming events in the next week with \fBpal --mail -r 7 | sendmail username\fR. Note: For the calendar to appear correctly, make sure your email client is using a fixed width font. + .TP + .B \-\-html +-Generates a HTML calendar suitable for display on a web page. It does not generate a complete HTML document so that you can add your website's header and footer around the calendar. The number of months shown on the calendar can be adjusted with \fB-c\fR. You will need to use Cascading Style Sheets (CSS) to change how the calendar appears---if you do not use a style sheet, the calendar will not have any borders. See \fI/usr/share/doc/pal-#.#.#/example.css\fR for an example style. SECURITY NOTE: If you set up pal so it is being executed server-side, it is recommended that you do not allow web page visitors to directly change the parameters sent to pal. Allowing users to pass strange parameters (such as extremely long ones) can be a security risk. ++Generates a HTML calendar suitable for display on a web page. It does not generate a complete HTML document so that you can add your website's header and footer around the calendar. The number of months shown on the calendar can be adjusted with \fB-c\fR. You will need to use Cascading Style Sheets (CSS) to change how the calendar appears---if you do not use a style sheet, the calendar will not have any borders. See \fI/usr/share/doc/pal/example.css\fR for an example style. SECURITY NOTE: If you set up pal so it is being executed server-side, it is recommended that you do not allow web page visitors to directly change the parameters sent to pal. Allowing users to pass strange parameters (such as extremely long ones) can be a security risk. + .TP + .B \-\-latex + Generates a LaTeX source for a calendar that can be used to generate a printer-friendly DVI (run "pal --latex > file.tex; latex file.tex"), PostScript or PDF (run "pal --latex > file.tex; pdflatex file.tex"). The number of months shown on the calendar can be adjusted with \fB-c\fR. --- pal-0.3.5.orig/debian/patches/04_birth-death.pal.patch +++ pal-0.3.5/debian/patches/04_birth-death.pal.patch @@ -0,0 +1,26 @@ +pal (0.3.5-pre1+2): Backport from 0.4.0_pre3 + Fix birth-death.pal + +--- pal-0.3.5.orig/share/birth-death.pal ++++ pal-0.3.5/share/birth-death.pal +@@ -17,7 +17,7 @@ BD Birth/Death + 00000104 Wilhelm Beer born, 1797, first astronomer to map Mars + 00000105 DeWitt B. Brace born, 1859, inventor of spectrophotometer + 00000106 Millard Fillmore's birthday (let's party!) +-00000111 Alexander Hamilton born in Nevis, British West Indies, 175557? ++00000111 Alexander Hamilton born in Nevis, British West Indies, 1757? + 00000112 John Hancock born, 1737 + 00000112 "Long" John Baldry born in London, 1941 + 00000113 Horatio Alger born, 1832 +@@ -194,9 +194,9 @@ BD Birth/Death + 00000812 Thomas Mann's Death, 1955 + 00000813 Alfred Hitchcock born, 1899 + 00000813 Annie Oakley born, 1860 +-00000813 Fidel Castro born, 1926w7 ++00000813 Fidel Castro born, 1927 + 00000815 Louis Victor de Broglie born, 1892, physicist +-00000817 Mae West born, 189293 ++00000817 Mae West born, 1892 + 00000818 Meriwether Lewis born, 1774 + 00000820 Leon Trotsky assassinated, 1940 + 00000823 Gene Kelly born, 1912 --- pal-0.3.5.orig/debian/patches/16_man_vcard2pal.patch +++ pal-0.3.5/debian/patches/16_man_vcard2pal.patch @@ -0,0 +1,38 @@ +pal (0.3.5-pre1+3): + Added manpage for vcard2pal + +--- /dev/null ++++ pal-0.3.5/vcard2pal.1 +@@ -0,0 +1,32 @@ ++.TH VCARD2PAL 1 ++.SH "NAME" ++vcard2pal \- convert vcard contacts into a pal calendar file ++.SH "SYNOPSIS" ++\fBvcard2pal \fI[filenames ...]\fR ++.SH "DESCRIPTION" ++.PP ++\fBvcard2pal\fR is a small \fBawk\fR script to convert vcard contacts into a ++calendar file for the \fBpal\fR calendar program. ++.SH "USAGE" ++Using \fBvcard2pal\fR is really simple, as it doesn't have any options. ++.PP ++You feed it some vcard formatted contacts either on stdin or give it the ++filenames of files which it should read and put the output of the script into a ++file which you then give to \fBpal\fR. ++.PP ++As \fBvcard2pal\fR needs no interactive input, you can also call it from ++\fBcron\fR or a makefile to always have an uptodate \fBpal\fR file generated ++from your contacts. ++.SH "BUGS" ++Please report bugs or fixes to Uli Martens . ++.SH "COPYING" ++\fBvcard2pal\fR is released under the example BSD license given in ++\fIhttp://www.debian.org/misc/bsd.license\fR. The full legalese can be found ++in \fBvcard2pal\fR. ++.PP ++The author is not responsible for any missed birthdays and subsequent family ++feuds, nor anything else. ++.SH "AUTHOR" ++\fBvcard2pal\fR was written by Uli Martens. This manpage has been written by ++Uli Martens and Carsten Hey and is published under the same terms as ++\fBvcard2pal\fR itself. --- pal-0.3.5.orig/debian/patches/08_sysadminday.patch +++ pal-0.3.5/debian/patches/08_sysadminday.patch @@ -0,0 +1,13 @@ +pal (0.3.5-pre1+2): + Add Sysadminday + +--- pal-0.3.5.orig/share/computer.pal ++++ pal-0.3.5/share/computer.pal +@@ -55,6 +55,7 @@ CC Computers + 00000630 First advanced degree on computer related topic: to H. Karamanian, Temple Univ., Phila, 1948, for symbolic differentiation on the ENIAC + 00000708 Bell Telephone Co. formed (predecessor of AT&T), 1877 + 00000708 CDC incorporated, 1957 ++*07L6 Sysadminday + 00000814 First Unix-based mallet created, 1954 + 00000814 IBM PC announced, 1981 + 00000822 CDC 6600 introduced, 1963 --- pal-0.3.5.orig/debian/patches/15_fix_name_section_in_man_pal.patch +++ pal-0.3.5/debian/patches/15_fix_name_section_in_man_pal.patch @@ -0,0 +1,14 @@ +pal (0.3.5-pre1+3): + Removed version from NAME section in pal(1) + +--- pal-0.3.5.orig/pal.1.template ++++ pal-0.3.5/pal.1.template +@@ -21,7 +21,7 @@ + .\" USA. + .TH pal 1 + .SH NAME +-pal PAL_VERSION \- calendar with events ++pal \- calendar with events + .SH SYNOPSIS + .TP 3 + \fBpal \fI[options]\fR --- pal-0.3.5.orig/debian/patches/14_contrib_pal_edit_event.zsh.patch +++ pal-0.3.5/debian/patches/14_contrib_pal_edit_event.zsh.patch @@ -0,0 +1,26 @@ +pal (0.3.5-pre1+2): Backport from cvs (2008-06-01) + Add pal_edit_event.zsh + +--- /dev/null ++++ pal-0.3.5/contrib/pal_edit_event.zsh +@@ -0,0 +1,20 @@ ++#!/bin/zsh ++# ++# Edit entries in the Pal calendars ++# This script is released under the GNU GPL version 2. ++# ++# -- Fernando Vezzosi Dec 2006 ++ ++# set -x ++ ++paldir=~/.pal ++regex="${(L)*}" ++files_to_edit=( $(grep -li "${regex}" ${paldir}/*(.)) ) ++ ++print "${#files_to_edit} files to edit" ++if [ ${#files_to_edit} = 0 ]; then ++ print "You don't have no pal events that match /${regex}/" ++ exit 1 ++fi ++ ++vim -O "+se ic hls" "+/.*${regex}.*" ${files_to_edit} --- pal-0.3.5.orig/debian/patches/01_updated_installation_notes.patch +++ pal-0.3.5/debian/patches/01_updated_installation_notes.patch @@ -0,0 +1,94 @@ +pal (0.3.5-pre1+2): Backport from 0.4.0_pre3 + Update INSTALL instructions + +--- pal-0.3.5.orig/INSTALL ++++ pal-0.3.5/INSTALL +@@ -1,11 +1,18 @@ +----------------------------------- +---- COMPILATION & INSTALLATION --- +----------------------------------- ++CONTENTS: + +-If you wish to generate a rpm file for pal instead of installing the +-traditional way, see the RPM-BASED DISTRIBUTION section below. ++1: Compilation and installation of pal ++ 1.1: Directly from source ++ 1.2: RPM-based distributions ++2: Compilation and installation of ical2pal & pal2ical + +-=== DIRECTLY FROM SOURCE === ++----------------------------------------------------------- ++ ++ +++---------------------------------------------------------+ ++| 1: Compilation and installation of pal | +++---------------------------------------------------------+ ++ ++----- 1.1: Directly from source ----- + + 1) Untar/unzip the pal-x.x.x.tgz package: + tar -xzf pal-x.x.x.tgz +@@ -19,14 +26,20 @@ traditional way, see the RPM-BASED DISTR + 3) Compile pal + make + +-4) Install pal (must be root). This will install several files +- including the binary, global calendar files and man page. +- make install +- +- (Special note to developers: Use "make install-no-rm" if you don't +- want the install process to attempt to remove old pal files. This +- is useful for when creating a package file for package managers +- such as portage or rpm.) ++4) Install pal: ++ ++ WITH root access: Run "make install" as root. This will install ++ several files including the pal binary, global calendar files, and ++ the man page. (Special note to developers: Use "make ++ install-no-rm" if you don't want the install process to attempt to ++ remove old pal files. This is useful for when creating a package ++ file for package managers such as portage or rpm.) ++ ++ WITHOUT root access; single user: Run "mkdir ~/.pal" as the user ++ you want to run pal as. Copy the pal-x.x.x/pal.conf file and ++ whatever calendars you want from pal-x.x.x/share into ~/.pal. To ++ view the man page, run "man pal-x.x.x/pal.1.template". ++ + + 5) (Optional) Delete pal-x.x.x.tgz and the pal-x.x.x directory. + +@@ -43,7 +56,7 @@ traditional way, see the RPM-BASED DISTR + TO UNINSTALL, run "make uninstall" in src while root. + + +-=== RPM-BASED DISTRIBUTION (SUCH AS REDHAT) === ++----- 1.2: RPM-Based distributions ----- + (.tgz -> .src.rpm -> .rpm) + + 1) Generate the .src.rpm file. As root, run: +@@ -73,3 +86,25 @@ TO UNINSTALL, run "make uninstall" in sr + TO UNINSTALL, run the following command as root: + rpm -e pal + ++ ++ +++---------------------------------------------------------+ ++| 2: Compilation and installation of ical2pal & pal2ical | +++---------------------------------------------------------+ ++ ++ical2pal and pal2ical are conversion utilities that convert calendars ++between pal's calendar format and the ical format (RFC 2445). ++ ++You must have libical (http://www.softwarestudio.org/libical/) ++installed to compile and use the conversion utilities. You do not ++need to install the utilities to use pal. ++ ++NOTE: ical2pal and pal2ical are very new and likely contain bugs. ++ ++1) Untar/unzip the pal-x.x.x.tgz package: ++ tar -xzf pal-x.x.x.tgz ++ cd pal-x.x.x/src/convert ++ ++2) make ical ++ ++3) make ical-install --- pal-0.3.5.orig/debian/patches/00_wrapper_around_src_makefile.patch +++ pal-0.3.5/debian/patches/00_wrapper_around_src_makefile.patch @@ -0,0 +1,11 @@ +pal (0.3.5-pre1+2): Backport from 0.4.0_pre3 + Wrapper around src/Makefile + +--- /dev/null ++++ pal-0.3.5/Makefile +@@ -0,0 +1,5 @@ ++pal: ++ make -C src ++ ++%: ++ make -C src $@ --- pal-0.3.5.orig/debian/patches/11_convert_pal2ical.patch +++ pal-0.3.5/debian/patches/11_convert_pal2ical.patch @@ -0,0 +1,188 @@ +pal (0.3.5-pre1+2): Backport from 0.4.0_pre3 + Add convert/pal2ical.c + +--- /dev/null ++++ pal-0.3.5/src/convert/pal2ical.c +@@ -0,0 +1,182 @@ ++/* pal2ical ++ * ++ * Copyright (C) 2004, Scott Kuhl ++ * ++ * 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. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * You should have received a copy of the GNU General Public License ++ * along with this program; if not, write to the Free Software ++ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ++ * ++ */ ++ ++#include "../main.h" ++#include "../input.h" ++#include "../event.h" ++ ++#include ++#include ++#include ++ ++#include ++ ++int ical_uid = 0; ++ ++/* timezone information */ ++extern char *tzname[2]; ++ ++void begin_vevent(PalEvent* event) ++{ ++ g_print("BEGIN:VEVENT\n"); ++ g_print("UID:%d\n", ical_uid++); ++ g_print("SUMMARY:%s\n", event->text); ++} ++ ++void end_vevent() ++{ ++ g_print("END:VEVENT\n"); ++} ++ ++void print_dtstartend(gchar* start_date, PalTime* start_time, PalTime* end_time) ++{ ++ /* if start time is NULL, end_time must be NULL too */ ++ if(start_time == NULL) ++ { ++ int date_int; ++ g_print("DTSTART;VALUE=DATE:%s\n", start_date); ++ ++ /* assume the event is an all day event since there are no times for it */ ++ GDate* d = get_date(start_date); ++ g_date_add_days(d, 1); ++ ++ g_print("DTEND;VALUE=DATE:%s\n", get_key(d)); ++ } ++ ++ else ++ { ++ ++ g_print("DTSTART;TZID=%s:%sT%02d%02d00\n", tzname[0], start_date, start_time->hour, start_time->min); ++ ++ g_print("DTEND;TZID=%s:%sT", tzname[0], start_date); ++ if(end_time == NULL) ++ g_print("%02d%02d00\n", start_time->hour, start_time->min); ++ else ++ g_print("%02d%02d00\n", end_time->hour, end_time->min); ++ } ++} ++ ++void print_vtodo(PalEvent *event) ++{ ++ g_print("BEGIN:VTODO\n"); ++ g_print("UID:%d\n", ical_uid++); ++ g_print("SUMMARY:%s\n", event->text); ++ g_print("END:VTODO\n"); ++} ++ ++ ++int main(int argc, char* argv[]) ++{ ++ ++ char* line; ++ FILE* stream; ++ int error_count = 0; ++ ++ if(argc == 1) ++ { ++ g_printerr("pal2ical %s - Copyright (C) 2004, Scott Kuhl\n", PAL_VERSION); ++ g_printerr(" %s", "pal is licensed under the GNU General Public License and has NO WARRANTY.\n\n"); ++ ++ g_printerr("Usage: pal2ical pal-file.pal > ical-file.ics\n"); ++ ++ g_printerr("\n"); ++ ++ ++ exit(1); ++ } ++ ++ stream = fopen(argv[1],"r"); ++ ++ if(stream == 0) ++ { ++ g_printerr("Can't read input file.\n"); ++ exit(1); ++ } ++ ++ /* initialize the timezone information (tzname external variable) */ ++ tzset(); ++ ++ pal_input_skip_comments(stream, NULL); ++ PalEvent* head = pal_input_read_head(stream, NULL, argv[1]); ++ pal_input_skip_comments(stream, NULL); ++ ++ g_print("BEGIN:VCALENDAR\n"); ++ g_print("VERSION: 2.0\n"); ++ g_print("CALSCALE:GREGORIAN\n"); ++ g_print("PRODID:-//pal calendar/pal2ical %s//EN\n", PAL_VERSION); ++ g_print("X-WR-CALNAME;VALUE=TEXT:%s\n", head->type); ++ ++ PalEvent* empty_event = pal_event_init(); ++ PalEvent* event = pal_input_read_event(stream, NULL, argv[1], empty_event, NULL); ++ ++ while(event != NULL) ++ { ++ ++ /* convert one-time events of format yyyymmdd */ ++ if(is_valid_yyyymmdd(event->date_string, 0)) ++ { ++ begin_vevent(event); ++ print_dtstartend(event->date_string, event->start_time, event->end_time); ++ end_vevent(); ++ } ++ else if(is_valid_0000mmdd(event->date_string)) ++ { ++ begin_vevent(event); ++ ++ if(event->start_date != NULL) ++ print_dtstartend(event->start_date, event->start_time, event->end_time); ++ else ++ print_dtstartend(g_strconcat("1700", event->date_string+4, NULL), event->start_time, event->end_time); ++ ++ if(event->end_date != NULL) ++ g_print("RRULE:FREQ=YEARLY;UNTIL=%s\n", get_key(event->end_date)); ++ else ++ g_print("RRULE:FREQ=YEARLY\n"); ++ ++ end_vevent(); ++ } ++ ++ /* TODO event */ ++ else if(event->is_todo) { ++ ++ print_vtodo(event); ++ ++ } ++ ++ else ++ { ++ /* ADD MORE STUFF HERE */ ++ g_printerr("Can't convert this type event yet: %s %s\n", event->date_string, event->text); ++ error_count++; ++ } ++ ++ event = pal_input_read_event(stream, NULL, argv[1], empty_event, NULL); ++ pal_input_skip_comments(stream, NULL); ++ ++ } ++ ++ g_print("END:VCALENDAR\n"); ++ ++ ++ g_printerr("DONE!\n\n"); ++ g_printerr("Events converted: %d\n", ical_uid); ++ g_printerr("Events that could not be converted: %d\n", error_count); ++ return 0; ++} --- pal-0.3.5.orig/debian/patches/09_vcard2pal.patch +++ pal-0.3.5/debian/patches/09_vcard2pal.patch @@ -0,0 +1,68 @@ +pal (0.3.5-pre1+2): Downloaded from http://youam.net/devel/vcard2pal/ + Add vcard2pal + +--- /dev/null ++++ pal-0.3.5/src/convert/vcard2pal +@@ -0,0 +1,62 @@ ++#!/usr/bin/awk -f ++ ++# Copyright (c) 2005, 2008 Uli Martens ++# All rights reserved. ++# ++# Redistribution and use in source and binary forms, with or without ++# modification, are permitted provided that the following conditions ++# are met: ++# 1. Redistributions of source code must retain the above copyright ++# notice, this list of conditions and the following disclaimer. ++# 2. Redistributions in binary form must reproduce the above copyright ++# notice, this list of conditions and the following disclaimer in the ++# documentation and/or other materials provided with the distribution. ++# 3. The name of the author may not be used to endorse or promote products ++# derived from this software without specific prior written permission. ++# ++# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR ++# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES ++# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. ++# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, ++# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT ++# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, ++# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY ++# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ++# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF ++# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ++ ++# version 0.9 ++# 2008-03-18 0.9 rewrote carriage return logic ++ ++# The latest version can be found at http://youam.net/devel/vcard2pal/ ++ ++BEGIN { ++ FS=":"; ++ print "** Birthday"; ++ } ++/\r$/ { ++ # skip carriage return at the end of the line ++ $0=substr($0,0,length-1) ++ } ++ ++ ++/^BEGIN:VCARD/ { ++ fn = ""; ++ palday=""; ++ year=""; ++ } ++ ++/^FN/ { ++ fn=$2 ++ } ++/^BDAY/ { ++ split( $2, date, "-" ); ++ palday="0000" date[2] date[3]; ++ if ( date[1] != "1900" ) year=" (!" date[1] "!)" ++ } ++ ++/^END:VCARD/ { ++ if ( palday != "" ) print palday " " fn year ++ } ++ ++# vim: set tabstop=16: