View Full Version : shutter-0.87 missing perl Gtk2-Unique

10th February 2011, 02:04 PM

i tried to compile the new version of shutter-0.87, this compiles fine,
but when i installing the rpm package, there is a dependency of a perl package,
that i can't find on fedora.

rpm -ivh /usr/src/redhat/RPMS/noarch/shutter-0.87-1.fc14.noarch.rpm
Fehler: Fehlgeschlagende Abhängigkeiten:
perl(Gtk2::Unique) wird benötigt von shutter-0.87-1.fc14.noarch

Anyone here have a this missing package ?

---------- Post added at 02:04 PM ---------- Previous post was at 12:38 PM ----------

I tried it with the following spec file perl-Gtk2-Unique.spec and it works:

Name: perl-Gtk2-Unique
Version: 0.05
Release: 1%{?dist}
Summary: Perl bindings for the C library "libunique"
License: LGPLv2+
Group: Development/Libraries
URL: http://search.cpan.org/dist/Gtk2-Notify/
Source0: Source0: http://mirrors.ibiblio.org/CPAN/modules/by-module/Gtk2/Gtk2-Unique-%{version}.tar.gz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)

# non-perl
BuildRequires: libnotify-devel, perl-Glib-devel
# core
BuildRequires: perl(ExtUtils::MakeMaker)
BuildRequires: perl(Test::More)
# cpan
BuildRequires: perl(Glib) >= 1.093, perl(Gtk2), perl(Glib::MakeHelper)
BuildRequires: perl(ExtUtils::Depends), perl(ExtUtils::PkgConfig)

# for tests...
%{?_with_display_tests:BuildRequires: perl(Test::Pod::Coverage) >= 1.04, perl(Test::Pod) >= 1.14}

# libnotify-devel seems to be missing this. see BZ#216946
BuildRequires: gtk2-devel

Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))

# don't "provide" private Perl libs
%global _use_internal_dependency_generator 0
%global provfind /bin/sh -c "grep -v '%perl_vendorarch.*\\.so$' | %__find_provides"
%global __find_provides %provfind

Perl bindings for the C library "libunique" that provides a mechanism for
writing single instance applications. If you launch a single instance
application twice, the second instance will either just quit or will send a
message to the running instance.

%setup -q -n Gtk2-Unique-%{version}

find t/ -type f -exec perl -pi -e 's|^#!perl|#!/usr/bin/perl|' {} +

%{__perl} Makefile.PL INSTALLDIRS=vendor OPTIMIZE="%{optflags}"
make %{?_smp_mflags}

rm -rf %{buildroot}

make pure_install PERL_INSTALL_ROOT=%{buildroot}

find %{buildroot} -type f -name .packlist -exec rm -f {} \;
find %{buildroot} -type f -name '*.bs' -size 0 -exec rm -f {} \;
find %{buildroot} -depth -type d -exec rmdir {} 2>/dev/null \;

%{_fixperms} %{buildroot}/*

# tests all bomb under mock, unfortunately
%{?_with_display_tests: make test}

rm -rf %{buildroot}

%doc Changes README examples/ t/


sake of completeness, I still send the file shutter-0.87-1.fc14.spec

#%define ppa_version ppa6
Name: shutter
Version: 0.87
Release: 1%{?dist}
Summary: GTK+ 2.0 screenshot application written in perl
Group: Applications/Multimedia
License: GPL+ or Artistic
URL: http://shutter-project.org
Source0: http://shutter-project.org/wp-content/uploads/releases/tars/%{name}-%{version}.tar.gz
BuildArch: noarch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: desktop-file-utils
Requires: gnome-web-photo
Requires: perl(Gtk2::ImageView)
Requires: perl(X11::Protocol)
Requires: perl(Proc::ProcessTable)
Requires: perl(Gtk2::Unique)
Requires: perl(Image::ExifTool)
Requires: perl(Net::DBus::GLib)
Requires: nautilus-sendto
Requires: hicolor-icon-theme
Requires: unique-devel

Shutter is a GTK+ 2.0 screenshot application written in perl.
Shutter covers all features of common command line tools like
scrot or import and adds reasonable new features combined
with a comfortable GUI using the GTK+ 2.0 framework

%setup -q -n %{name}-%{version}
rm -rf share/app-install/
rm -rf share/shutter/resources/po/
rm -rf share/shutter/resources/modules/{File,Net,Proc,Sort,X11}
rm -rf share/doc


# executable and data
install -d -m 0755 -p $RPM_BUILD_ROOT%{_bindir}
install -d -m 0755 -p $RPM_BUILD_ROOT%{_datadir}
cp -pfr bin/* $RPM_BUILD_ROOT%{_bindir}/
cp -pfr share/* $RPM_BUILD_ROOT%{_datadir}/

desktop-file-install --delete-original \
--dir ${RPM_BUILD_ROOT}/%{_datadir}/applications \

%find_lang %{name}
%find_lang %{name}-plugins
cat %{name}-plugins.lang >> %{name}.lang

update-desktop-database %{_datadir}/applications &>/dev/null || :

update-desktop-database %{_datadir}/applications &>/dev/null || :


%files -f %{name}.lang