Package: kaquarium Version: 1.0-beta-3 Severity: serious Justification: violation of Debian Policy 2.2.1
As noted on debian-legal on 20 August by Nathanael Nerode, kaquarium appears to contain non-DFSG-free images files (some of the same ones as shermans-aquarium). It is unclear to me whether these files are even distributable by Debian at all; that they come free-of-charge with a gratis screen saver for Windows operating systems implies no grant of permission to the Debian Project whatsoever. Moreover, no indication is given in the debian/copyright file that the work of anyone other than Ramiro Tasquer was involved in the upstream package. I have attached the debian/copyright file and the only file that credits Jim Toomey with the images, src/main.cpp. The copyright holder in the images, Jim Toomey, should be contacted as soon as possible for license negotiations. If those are unsuccessful and distributable replacement images are not used, this package should be withdrawn from the Debian archives. (Without a grant of license under copyright law, we cannot distribute these images even in non-free). -- System Information: Debian Release: 3.1 APT prefers unstable APT policy: (500, 'unstable'), (500, 'testing') Architecture: powerpc (ppc) Kernel: Linux 2.4.25-powerpc-smp Locale: LANG=C, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Versions of packages kaquarium depends on: ii kdelibs4 4:3.3.1-4 KDE core libraries ii libart-2.0-2 2.3.16-6 Library of functions for 2D graphi ii libc6 2.3.2.ds1-19 GNU C Library: Shared libraries an ii libgcc1 1:3.4.3-6 GCC support library ii libice6 4.3.0.dfsg.1-10 Inter-Client Exchange library ii libidn11 0.5.2-3 GNU libidn library, implementation ii libpng12-0 1.2.8rel-1 PNG library - runtime ii libqt3c102-mt 3:3.3.3-7 Qt GUI Library (Threaded runtime v ii libsm6 4.3.0.dfsg.1-10 X Window System Session Management ii libstdc++5 1:3.3.5-5 The GNU Standard C++ Library v3 ii libx11-6 4.3.0.dfsg.1-10 X Window System protocol client li ii libxext6 4.3.0.dfsg.1-10 X Window System miscellaneous exte ii libxrender1 0.8.3-7 X Rendering Extension client libra ii xlibs 4.3.0.dfsg.1-10 X Keyboard Extension (XKB) configu ii zlib1g 1:1.2.2-4 compression library - runtime
#include <stdlib.h> #include <time.h> #include <unistd.h> #include <qlayout.h> #include <qvbox.h> #include <qtooltip.h> #include <qpixmap.h> #include <qcolor.h> #include <qrect.h> #include <klocale.h> #include <kglobal.h> #include <kaboutdata.h> #include <kaboutapplication.h> #include <kconfig.h> #include <kdebug.h> #include <kstandarddirs.h> #include <kapplication.h> #include "misc.h" #include "fishes.h" #include "canvasview.h" #include "bubbles.h" #include "pref.h" #include "configdlg.h" #include "main.h" extern "C" { KPanelApplet* init( QWidget *parent, const QString& configFile ) { KGlobal::locale()->insertCatalogue( "kaquarium" ); return new kfish( configFile, KPanelApplet::Normal, KPanelApplet::About | KPanelApplet::Preferences, parent, "kaquarium" ); } } kfish *kfishApp = 0L; kfish::kfish( const QString& configFile, Type type, int actions, QWidget *parent, const char *name ) : KPanelApplet(configFile, type, actions, parent, name) , confDlg( 0 ) { kfishApp = this; // random srand( time(NULL) ); // Add layout QVBoxLayout *vbox; vbox = new QVBoxLayout(this); resize(200,200); connect( kfishPref::prefs() , SIGNAL( changePref() ), this, SIGNAL( signalSettingsChanged() ) ); connect( this, SIGNAL( signalSettingsChanged() ), this, SLOT( slotSettingsChanged() )); // start canvas, where i'll show the fish m_canvas = new QCanvas( 0, "Canvas" ); m_canvasview = new kfishCanvasView( m_canvas, this, "CanvasView" ); vbox->add(m_canvasview); m_canvasview -> setCanvas( m_canvas ); // set some canvas options m_canvas->setBackgroundColor( QColor(0,0,100) ); m_canvas->setAdvancePeriod( 30 ); m_canvas->resize( 1 ,1 ); m_canvas->setDoubleBuffering(true); // set the background setWall( locate("data", "kaquarium/pics/water.png"), m_canvas ); // start bubbles m_bubble = new kfishBubbleManager( m_canvas, this ); // put CanvasView inside the layout m_fish = new kfishManager( this ); // Mouse tracking, so i know if the mouse is over the widget (fishCanvasView) setMouseTracking ( true ); // set the default width space for future usage m_oldwidth = kfishPref::prefs() -> getWidth(); // set the orientation kfishPref::prefs() -> setOrientation( orientation() ); } kfish::~kfish(void) { delete m_canvasview; delete m_fish; delete m_bubble; delete m_canvas; } int kfish::widthForHeight( int h ) const { kfishPref::prefs() -> setOrientation(Horizontal); kfishPref::prefs() -> setPanelHeight(h); kfishPref::prefs() -> setPanelWidth(kfishPref::prefs() -> getWidth()); // TODO: Get ride of this, do a emit with the new size... or something like that m_canvas -> resize( kfishPref::prefs() -> getWidth(), int (h) ); m_canvas -> setChanged( QRect(0,0, int(kfishPref::prefs() -> getWidth()), int (h))); return kfishPref::prefs() -> getWidth(); } int kfish::heightForWidth( int w ) const { kfishPref::prefs() -> setOrientation(Vertical); kfishPref::prefs() -> setPanelWidth(w); kfishPref::prefs() -> setPanelHeight(int(w/1.5)); // i resize the canvas widget and this send a resized signal to all my classes and they do what they have to // TODO: Get ride of this, do a emit with the new size... or something like that m_canvas -> resize( int (w), int (w/1.5) ); m_canvas -> setChanged( QRect(0,0,int (w), int (w/1.5)) ); return (int) (w/1.5); } void kfish::orientationChange(Orientation orient) { kfishPref::prefs() -> setOrientation( orient ); } void kfish::slotAbout() { KAboutData about("kAquarium", I18N_NOOP("KDE Aquarium Applet"), "1.0 Beta", I18N_NOOP("KDE Aquarium"), KAboutData::License_GPL_V2, "(C) 2002-2004 Ramiro Tasquer", I18N_NOOP("An Aquarium Applet\nfor kicker"), "http://scofmb.sourceforge.net"); about. addAuthor("Ramiro Tasquer", I18N_NOOP("Developer"), "[EMAIL PROTECTED]"); about. addCredit("Jim Toomey", I18N_NOOP("All fish graphics"), "www.slagoon.com"); about. addCredit("Tarzeau", I18N_NOOP("Bubbles graphics"), "[EMAIL PROTECTED]"); KAboutApplication a(&about, this); a.exec(); } void kfish::slotPreferences(void) { if (confDlg) { confDlg -> raise(); return; } confDlg = new configDlg( this, 0, FALSE, Qt::WDestructiveClose ); connect(confDlg, SIGNAL( destroyed() ), SLOT( slotConfigDlgDestroy() )); confDlg -> show(); } void kfish::slotSettingsChanged() { if ( m_oldwidth != kfishPref::prefs() -> getWidth() ) { m_oldwidth = kfishPref::prefs() -> getWidth(); emit updateLayout(); } } void kfish::slotConfigDlgDestroy() { confDlg = 0; } void kfish::about() { slotAbout(); } void kfish::preferences() { slotPreferences(); }
This package was debianized by Helen Faulkner <[EMAIL PROTECTED]> on Tue, 3 Aug 2004 16:31:07 +0100. It was downloaded from http://scofmb.sourceforge.net/kaquarium.html Upstream Author: Ramiro Tasquer <[EMAIL PROTECTED]> Copyright: Copyright (C) 2002-2004 Ramiro Tasquer. This package 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; version 2 dated June, 1991. This package 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 package; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. On Debian GNU/Linux systems, the complete text of the GNU General Public License can be found in `/usr/share/common-licenses/GPL'.