[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#287090: kaquarium: copyright file does not mention apparently unlicensed image files



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"), "tasquer@arnet.com.ar");
    about. addCredit("Jim Toomey", I18N_NOOP("All fish graphics"), "www.slagoon.com");
    about. addCredit("Tarzeau", I18N_NOOP("Bubbles graphics"), "tarzeau@space.ch");

    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 <helen_ml_faulkner@yahoo.co.uk> on
Tue,  3 Aug 2004 16:31:07 +0100.

It was downloaded from http://scofmb.sourceforge.net/kaquarium.html

Upstream Author: Ramiro Tasquer <tasquer@zuper.net>


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'.

Reply to: