--- xsnow-1.42.orig/xsnow.man +++ xsnow-1.42/xsnow.man @@ -1,4 +1,4 @@ -.TH XSNOW 1 "Release 6" "X Version 11" +.TH XSNOW 6 "Release 6" "X Version 11" .SH NAME xsnow \- let it snow on your desktop and windows .SH SYNOPSIS --- xsnow-1.42.orig/Imakefile +++ xsnow-1.42/Imakefile @@ -1,4 +1,4 @@ -SYS_LIBRARIES = -lm -lXpm +SYS_LIBRARIES = -lXpm LOCAL_LIBRARIES = $(XLIB) DEPLIBS = $(DEPXLIB) SRCS = xsnow.c toon_root.c xsnow.h vroot.h --- xsnow-1.42.orig/debian/README.Debian +++ xsnow-1.42/debian/README.Debian @@ -0,0 +1,15 @@ +Note on xsnow in KDE + +If there is no snow in your KDE, please follow the intructions below. + +Right-click on your desktop and select Configure Desktop from the popup +menu. When the dialog box appears, click on the Behavior icon in the left hand +side bar. A three tabbed window will appear on the right hand side. Look near +the top on the General tab and you'll see check box with the words "Allow +programs in desktop window" (see the image below). Click that check box, then +click the OK button. + +Xsnow will wash away your icons in KDE. That is the normal behaviour. Please +see manpage for further information. + + -- Cai Qian Thu, 08 Dec 2005 18:01:00 +0000 --- xsnow-1.42.orig/debian/compat +++ xsnow-1.42/debian/compat @@ -0,0 +1 @@ +7 --- xsnow-1.42.orig/debian/copyright +++ xsnow-1.42/debian/copyright @@ -0,0 +1,25 @@ +This is a Debian prepackaged version of xsnow. + +This package was put together by Joey Hess and later +maintained by Martin Schulze , Adrian Bunk +and Randall Donald . Current maintained by Cai Qian + + +It was downloaded from http://dropmix.xs4all.nl/rick/Xsnow/ + +This package is not part of Debian main because its license only allows +modifications for the purpose of packaging but not arbitrary modifications. + +Copyright: + + Copyright 1984, 1988, 1990, 1993-1995, 2000-2001 by Rick Jansen, all rights + reserved. + + This means Xsnow is available freely and you may give it to other + people as is, but I retain all rights. Therefore it does not classify + as 'Public Domain' software. It *is* allowed to package Xsnow for + Unix/Linux distributions, CD-Roms etc, and to make the necessary + changes to makefiles etc. to facilitate this. + + Permission to use and distribute Robin Hogan's toon_root.c under the terms + of the xsnow license when used as part of xsnow has been obtained. --- xsnow-1.42.orig/debian/xsnow.lintian-overrides +++ xsnow-1.42/debian/xsnow.lintian-overrides @@ -0,0 +1,4 @@ +# we depend on procps +xsnow: menu-command-not-in-package /usr/share/menu/xsnow:4 skill +# not sure if that is an allowed modification, so don't bother +xsnow: hyphen-used-as-minus-sign --- xsnow-1.42.orig/debian/docs +++ xsnow-1.42/debian/docs @@ -0,0 +1 @@ +README --- xsnow-1.42.orig/debian/rules +++ xsnow-1.42/debian/rules @@ -0,0 +1,105 @@ +#!/usr/bin/make -f +# -*- makefile -*- +# Sample debian/rules that uses debhelper. +# This file was originally written by Joey Hess and Craig Small. +# As a special exception, when this file is copied by dh-make into a +# dh-make output file, you may use that output file without restriction. +# This special exception was added by Craig Small in version 0.37 of dh-make. +# +# Copyright (C) 2005 Cai Qian (caiqian@debian.org) + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + + +DESTDIR=$(CURDIR)/debian/xsnow +BINDIR=/usr/games +MANPATH=/usr/share/man + + +CFLAGS = -Wall -g + +ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + CFLAGS += -O0 +else + CFLAGS += -O2 +endif + +configure: configure-stamp +configure-stamp: + dh_testdir + # Add here commands to configure the package. + xmkmf + + touch configure-stamp + + +build: patch build-stamp + +build-stamp: configure-stamp + dh_testdir + + # Add here commands to compile the package. + $(MAKE) depend + $(MAKE) CDEBUGFLAGS="$(CFLAGS)" + + touch build-stamp + +clean: clean-patched unpatch +clean-patched: + dh_testdir + dh_testroot + dh_clean + + # Add here commands to clean up after the build process. + $(MAKE) clean + +patch: patch-stamp +patch-stamp: + dpatch apply-all + install -Dpm 600 vroot.h debian/patched/vroot.h.old + cp -f debian/patches/vroot.h vroot.h + + touch patch-stamp + +unpatch: + dpatch deapply-all + -mv -f debian/patched/vroot.h.old vroot.h + rm -rf patch-stamp debian/patched + +install: build + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs + + # Add here commands to install the package into debian/xsnow. + $(MAKE) BINDIR=$(BINDIR) MANPATH=$(MANPATH) DESTDIR=$(DESTDIR) install + + +# Build architecture-independent files here. +binary-indep: build install +# We have nothing to do by default. + +# Build architecture-dependent files here. +binary-arch: build install + dh_testdir + dh_testroot + dh_installchangelogs + dh_installdocs + dh_installmenu + dh_installman xsnow.man + dh_lintian + dh_link + dh_strip + dh_compress + dh_fixperms + dh_makeshlibs + dh_installdeb + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install configure --- xsnow-1.42.orig/debian/control +++ xsnow-1.42/debian/control @@ -0,0 +1,14 @@ +Source: xsnow +Section: non-free/games +Priority: optional +Maintainer: Ubuntu MOTU Developers +XSBC-Original-Maintainer: Debian QA Group +Build-Depends: debhelper (>= 7), dpatch (>= 2), libx11-dev, libxext-dev, libxpm-dev, libxt-dev, xutils-dev, makedepend +Standards-Version: 3.8.0 + +Package: xsnow +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends}, procps +Description: Brings Christmas to your desktop + Xsnow is a X Window application that will snow on the desktop background. + Santa and his reindeer will complete your festive-season feeling. --- xsnow-1.42.orig/debian/watch +++ xsnow-1.42/debian/watch @@ -0,0 +1,2 @@ +version=3 +http://dropmix.xs4all.nl/rick/Xsnow/xsnow-(.*)\.tar\.gz --- xsnow-1.42.orig/debian/changelog +++ xsnow-1.42/debian/changelog @@ -0,0 +1,178 @@ +xsnow (1:1.42-7ubuntu1) intrepid; urgency=low + + * Merge from debian unstable, remaining changes: + + debian/control: + - Add makedepend to Build-Depends. + - update standards-version. + + -- Emanuele Gentili Fri, 08 Aug 2008 02:59:11 +0200 + +xsnow (1:1.42-7) unstable; urgency=low + + * QA upload. + + Set maintainer to QA group. + * Replace xutils with xutils-dev in Build-Depends. + * Explain in debian/copyright that and why this package is + in non-free. + * Add lintian override for menu-command-not-in-package + and for hyphen-used-as-minus-sign. Use dh_lintian + to install it. + * Bump debhelper compat level to 7. + * Fix handling of CFLAGS and remove unused -lm. + + -- Frank Lichtenheld Wed, 06 Aug 2008 15:51:01 -0300 + +xsnow (1:1.42-6ubuntu2) intrepid; urgency=low + + * Modify Maintainer value to match the DebianMaintainerField + specification. (LP: #230350) + + -- Andrea Colangelo Sun, 18 May 2008 01:39:53 +0200 + +xsnow (1:1.42-6ubuntu1) dapper; urgency=low + + * Add makedepend to Build-Depends. + + -- Steve Kowalik Wed, 8 Feb 2006 23:45:22 +1100 + +xsnow (1:1.42-6) unstable; urgency=low + + * Add {misc:Depends} + * Patch broken -nokeepsnowonwindows and -nokeepsnow options + * Improve menu + * Change subsection to x11/games + + -- Cai Qian Sat, 29 Dec 2005 22:33:08 +0000 + +xsnow (1:1.42-5xmas) unstable; urgency=low + + * Xmas version. + * Adjust debian/rules to make package cleaner and simpler. + + -- Cai Qian Sat, 24 Dec 2005 13:55:08 +0000 + +xsnow (1:1.42-4) unstable; urgency=low + + * Fix typos in README.Debian and debian/control. + * Rewrite debian/rules to use debhelper (>= 5). + * Remove hard coding postrm, prerm and postinst scripts. + + -- Cai Qian Thu, 22 Dec 2005 17:37:08 +0000 + +xsnow (1:1.42-3) unstable; urgency=low + + * Wrote README.Debian including some FAQs related to xsnow on KDE. + + -- Cai Qian Thu, 08 Dec 2005 18:01:00 +0000 + +xsnow (1:1.42-2) unstable; urgency=low + + * Used vroot.h from xscreensaver 4.23. + + -- Cai Qian Sun, 06 Nov 2005 11:03:00 +0000 + +xsnow (1:1.42-1) unstable; urgency=low + + * New maintainer. (Closes: #329485) + * New upstream release. (Closes: #224077, #283390) + * Used jwz's vroot.h that uses env XSCREENSAVER_WINDOW. + * Menu file goes to /usr/share/menu + * xsnow.man - belongs to section 6. + * Depended on psmisc, as menu file uses "killall". + * debian/copyright - fixed GPLed toon_root.c issue. + * debian/rules - fixed FSF address. + * debian/watch - Added watch file. + + -- Cai Qian Sat, 05 Nov 2005 14:56:00 +0000 + +xsnow (1:1.41-2) unstable; urgency=high + + * Re-upload of 1.41 due to GPL violation in 1.42. The code to find the + correct root window in 1.42 is taken from xpenguin and licenced under the + GPL. Sorry KDE and GNOME users. Hopefully this is temporary. (closes: #250689) + * Fix menu. + * Change Build-deps to reflect Xfree86 4.3 packaging. + + -- Randall Donald Mon, 24 May 2004 12:24:55 -0700 + +xsnow (1.42-4) unstable; urgency=low + + * Use jwz's vroot.h that uses env XSCREENSAVER_WINDOW (closes: #217700) + + -- Randall Donald Tue, 4 Nov 2003 18:42:14 -0800 + +xsnow (1.42-3) unstable; urgency=low + + * New maintainer. (closes #130848) + + -- Randall Donald Fri, 25 Jan 2002 18:52:16 -0800 + +xsnow (1.42-2) unstable; urgency=low + + * Orphaned this package. + + -- Adrian Bunk Fri, 25 Jan 2002 14:00:24 +0100 + +xsnow (1.42-1) unstable; urgency=high + + * New upstream release. + - xsnow does now work better with transparent windows. + (closes: #51180) + + -- Adrian Bunk Wed, 9 Jan 2002 08:59:54 +0100 + +xsnow (1.41-1) unstable; urgency=low + + * New maintainer. + * New upstream release. This release fixes the following bugs: + - The "-nokeepsnowonscreen" option is now working. (closes: #6896) + - xsnow clears snow pileup but doesn't reset "streaking" level + (closes: #13269) + * Added "-isp" to dpkg-gencontrol in debian/rules. + * /usr/doc -> /usr/share/doc (closes: #91731) + * /usr/X11R6/man -> /usr/share/man + * /usr/X11R6/bin -> /usr/bin + * Added build dependencies. + * Standards-Version: 3.1.1 + + -- Adrian Bunk Sat, 14 Apr 2001 20:15:43 +0200 + +xsnow (1.40-6) unstable; urgency=low + + * Improved description, "stolen" from Anselm Lingnau + + -- Martin Schulze Wed, 9 Dec 1998 23:39:10 +0100 + +xsnow (1.40-5) frozen unstable; urgency=low + + * Added Section: non-free/x11 (closes: Bug#14946, Bug#15347) + * New authors address in copyright file + + -- Martin Schulze Wed, 25 Mar 1998 01:16:18 +0100 + +xsnow (1.40-4) frozen unstable; urgency=low + + * New maintainer + * Pristine source + * Converted to my own packaging rules + + -- Martin Schulze Tue, 24 Mar 1998 01:06:20 +0100 + +xsnow (1.40-3) unstable; urgency=low + + * Non-maintainer release to fix broken man page permissions. + + -- Joey Hess Wed, 10 Sep 1997 18:59:49 -0400 + +xsnow (1.40-2) unstable; urgency=low + + * Non-maintainer release. (Ignore previous upload of this same version, + it was made in error.) + * New source format and general package reworking. Fixes #4281, #6076, + #9546 + * Moved man page to section 6. + * Added a menu file. + * Libc6. + + -- Joey Hess Wed, 10 Sep 1997 00:36:40 -0400 + --- xsnow-1.42.orig/debian/menu +++ xsnow-1.42/debian/menu @@ -0,0 +1,4 @@ +?package(xsnow): needs="X11" section="Games/Toys" \ + title="Xsnow - Start" command="xsnow" +?package(xsnow): needs="X11" section="Games/Toys" \ + title="Xsnow - Stop" command="skill -c xsnow" --- xsnow-1.42.orig/debian/patches/vroot.h +++ xsnow-1.42/debian/patches/vroot.h @@ -0,0 +1,156 @@ +/* -*- Mode: C; tab-width: 2 -*- */ +/*****************************************************************************/ +/** Copyright 1991 by Andreas Stolcke **/ +/** Copyright 1990 by Solbourne Computer Inc. **/ +/** Longmont, Colorado **/ +/** **/ +/** All Rights Reserved **/ +/** **/ +/** Permission to use, copy, modify, and distribute this software and **/ +/** its documentation for any purpose and without fee is hereby **/ +/** granted, provided that the above copyright notice appear in all **/ +/** copies and that both that copyright notice and this permis- **/ +/** sion notice appear in supporting documentation, and that the **/ +/** name of Solbourne not be used in advertising **/ +/** in publicity pertaining to distribution of the software without **/ +/** specific, written prior permission. **/ +/** **/ +/** ANDREAS STOLCKE AND SOLBOURNE COMPUTER INC. DISCLAIMS ALL WARRANTIES **/ +/** WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF **/ +/** MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL ANDREAS STOLCKE **/ +/** OR SOLBOURNE BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL **/ +/** DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA **/ +/** OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER **/ +/** TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE **/ +/** OR PERFORMANCE OF THIS SOFTWARE. **/ +/*****************************************************************************/ +/* + * vroot.h -- Virtual Root Window handling header file + * + * This header file redefines the X11 macros RootWindow and DefaultRootWindow, + * making them look for a virtual root window as provided by certain `virtual' + * window managers like swm and tvtwm. If none is found, the ordinary root + * window is returned, thus retaining backward compatibility with standard + * window managers. + * The function implementing the virtual root lookup remembers the result of + * its last invocation to avoid overhead in the case of repeated calls + * on the same display and screen arguments. + * The lookup code itself is taken from Tom LaStrange's ssetroot program. + * + * Most simple root window changing X programs can be converted to using + * virtual roots by just including + * + * #include + * + * after all the X11 header files. It has been tested on such popular + * X clients as xphoon, xfroot, xloadimage, and xaqua. + * It also works with the core clients xprop, xwininfo, xwd, and editres + * (and is necessary to get those clients working under tvtwm). + * It does NOT work with xsetroot; get the xsetroot replacement included in + * the tvtwm distribution instead. + * + * Andreas Stolcke , 9/7/90 + * - replaced all NULL's with properly cast 0's, 5/6/91 + * - free children list (suggested by Mark Martin ), 5/16/91 + * - include X11/Xlib.h and support RootWindowOfScreen, too 9/17/91 + * + * Jamie Zawinski , 28-Apr-1997 + * - use ANSI C + * + * Jamie Zawinski , 3-Sep-2003 + * - if the environment variable "XSCREENSAVER_WINDOW" is set, use that + * as the root window instead of searching for __SWM_VROOT. + * + * Jamie Zawinski , 14-Aug-2004 + * - changes to get gcc to stop whining about "type punning". + * + * Jamie Zawinski , 16-Dec-2004 + * - fixed that last fix. + */ + +#ifndef _VROOT_H_ +#define _VROOT_H_ +#define _XSCREENSAVER_VROOT_H_ + +#if !defined(lint) && !defined(SABER) +static const char vroot_rcsid[] = + "#Id: vroot.h,v 1.8 2004/12/16 05:33:54 jwz Exp #" "\n" + "#Id: vroot.h,v 1.4 1991/09/30 19:23:16 stolcke Exp stolcke #"; +#endif + +#include +#include +#include + +static Window +#ifdef __STDC__ /* ANSIfication added by jwz, to avoid superfluous warnings. */ +VirtualRootWindowOfScreen(Screen *screen) +#else /* !__STDC__ */ +VirtualRootWindowOfScreen(screen) Screen *screen; +#endif /* !__STDC__ */ +{ + static Screen *save_screen = (Screen *)0; + static Window root = (Window)0; + + if (screen != save_screen) { + Display *dpy = DisplayOfScreen(screen); + Atom __SWM_VROOT = None; + int i; + Window rootReturn, parentReturn, *children; + unsigned int numChildren; + + /* first check for a hex or decimal window ID in the environment */ + const char *xss_id = getenv("XSCREENSAVER_WINDOW"); + if (xss_id && *xss_id) { + unsigned long id = 0; + char c; + if (1 == sscanf (xss_id, " 0x%lx %c", &id, &c) || + 1 == sscanf (xss_id, " %lu %c", &id, &c)) { + root = (Window) id; + save_screen = screen; + return root; + } + } + + root = RootWindowOfScreen(screen); + + /* go look for a virtual root */ + __SWM_VROOT = XInternAtom(dpy, "__SWM_VROOT", False); + if (XQueryTree(dpy, root, &rootReturn, &parentReturn, + &children, &numChildren)) { + for (i = 0; i < numChildren; i++) { + Atom actual_type; + int actual_format; + unsigned long nitems, bytesafter; + unsigned char *newRoot = 0; + + if (XGetWindowProperty(dpy, children[i], + __SWM_VROOT, 0, 1, False, XA_WINDOW, + &actual_type, &actual_format, + &nitems, &bytesafter, + &newRoot) == Success + && newRoot) { + root = *((Window *) newRoot); + break; + } + } + if (children) + XFree((char *)children); + } + + save_screen = screen; + } + + return root; +} + +#undef RootWindowOfScreen +#define RootWindowOfScreen(s) VirtualRootWindowOfScreen(s) + +#undef RootWindow +#define RootWindow(dpy,screen) VirtualRootWindowOfScreen(ScreenOfDisplay(dpy,screen)) + +#undef DefaultRootWindow +#define DefaultRootWindow(dpy) VirtualRootWindowOfScreen(DefaultScreenOfDisplay(dpy)) + +#endif /* _VROOT_H_ */ --- xsnow-1.42.orig/debian/patches/01_fixoptions.dpatch +++ xsnow-1.42/debian/patches/01_fixoptions.dpatch @@ -0,0 +1,51 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 01_fixoptions.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: -nokeepsnow will not update screen if there are expose events. ie. after +## DP: start xsnow, move away a window, the snow will not show on the area of +## DP: previous window. +## DP: +## DP: -nokeepsnowonwindows will cause snow erased on the bottom of screen as +## DP: well. + +@DPATCH@ + +--- xsnow-1.42.orig/xsnow.c 2001-12-15 23:44:47.000000000 +0000 ++++ xsnow-1.42/xsnow.c 2005-12-27 16:18:47.923074008 +0000 +@@ -653,7 +653,7 @@ + if (stilltddr) { + stilltddr = !DDLT(); + } +- if (!NoKeepSnow) { ++ + switch (ev.type) { + case Expose: + #if debug +@@ -746,7 +746,7 @@ + } + } + +- } ++ + #if debug + #endif + uSsleep(snowDelay); +@@ -1362,8 +1362,6 @@ + XOffsetRegion(rscrr, 0,MaxYStep+MaxSnowFlakeHeight); + XSubtractRegion(Wr,rscrr, rscrr); + if (NoKeepSWin) { +- XDestroyRegion(snscr); +- snscr = XCreateRegion(); + return; + } + XUnionRegion(rscrr,snscr, snscr); +@@ -1378,7 +1376,7 @@ + XOffsetRegion(sar, 0,-MaxWinSnowDepth); + XSubtractRegion(sar,Wr, sar); + } +- if (!NoKeepSWin) { ++ if (!NoKeepSBot) { + AllowRect.x = 0; + AllowRect.y = display_height - MaxScrSnowDepth; + AllowRect.width = display_width - 1; --- xsnow-1.42.orig/debian/patches/00list +++ xsnow-1.42/debian/patches/00list @@ -0,0 +1 @@ +01_fixoptions.dpatch