File tinyca2.spec of Package tinyca2

%global snapshot 20070611

Summary: TinyCA graphical openssl based CA
Name: tinyca2
URL: http://tinyca.sm-zone.net/
Group: Applications/System
License: GPLv2+
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
Requires: perl-Gtk2
Requires: openssl >= 0.9.7e
BuildRequires: gettext
BuildRequires: desktop-file-utils
Version: 0.7.6
Release: 0.16.%{snapshot}%{?dist}
Source0: tinyca2-%{version}%{?snapshot:-%{snapshot}}.tar.bz2
Source1: tinyca2.1
Patch0: tinyca2-defaults.patch
Patch1: tinyca2-cleanup.patch
Patch2: tinyca2-english.patch
Patch3: tinyca2-sv.patch
Patch4: tinyca2-install-langs.patch
Patch5: tinyca2-exportformat.patch
Patch6: tinyca2-deprecated.patch
Patch7: tinyca2-use_io_select.patch
BuildArch: noarch
Provides: tinyca = %{version}-%{release}
Obsoletes: tinyca < 0.7.2-1
# excluding some nonsense provides that are found by rpm
%{?filter_setup:
%{?perl_default_filter}
%global tinyca2_internal_filter /^perl(CA)/d; /^perl(CERT)/d; /^perl(GUI/d; /^perl(HELPERS)/d; /^perl(KEY)/d; /^perl(OpenSSL)/d; /^perl(REQ)/d; /^perl(TCONFIG)/d;
%filter_from_requires %{tinyca2_internal_filter}
%filter_from_provides %{tinyca2_internal_filter}
%filter_setup
}
%global tinyca2_internal perl\\(CA\\)|perl\\(CERT\\)|perl\\(GUI|perl\\(HELPERS\\)|perl\\(KEY\\)|perl\\(OpenSSL\\)|perl\\(REQ\\)|perl\\(TCONFIG\\)
%global __requires_exclude %{tinyca2_internal}
%global __provides_exclude %{tinyca2_internal}

%description 
TinyCA2 is a graphical tool written in Perl/Gtk to manage a small
Certification Authority (CA) using openssl.

TinyCA supports
- creation and revocation of x509 - S/MIME certificates.
- PKCS#10 requests.
- exporting certificates as PEM, DER, TXT, and PKCS#12.
- server certificates for use in web servers, email servers, IPsec,
  and more.
- client certificates for use in web browsers, email clients, IPsec,
  and more.
- creation and management of SubCAs


%prep
%setup -q -n %{name}-%{version}%{?snapshot:-%{snapshot}}
# these patches are mostly to allow for newer perl versions
%patch0 -p1 -b .defaults
%patch1 -p1 -b .cleanup
%patch2 -p1 -b .english
%patch3 -p1 -b .sv
%patch4 -p1 -b .install-langs
%patch5 -p1 -b .export
%patch6 -p1 -b .deprecated
%patch7 -p1 -b .use_io_select

%build
sh install.sh

%install
install -d  %{buildroot}%{_bindir} %{buildroot}%{_datadir}/tinyca2/GUI \
    %{buildroot}%{_sysconfdir}/tinyca2 %{buildroot}%{_mandir}/man1
install -p -m 644 lib/*.pm %{buildroot}%{_datadir}/tinyca2/
install -p -m 644 lib/GUI/*.pm %{buildroot}%{_datadir}/tinyca2/GUI
install -p -m 644 templates/openssl.cnf %{buildroot}%{_sysconfdir}/tinyca2
install -p -m 755 tinyca2 %{buildroot}%{_bindir}
install -p -m 644 %{SOURCE1} %{buildroot}%{_mandir}/man1/

for lang in cs de es fr sv; do
    install -d %{buildroot}%{_datadir}/locale/${lang}/LC_MESSAGES/
    install -p -m 644 locale/${lang}/LC_MESSAGES/tinyca2.mo \
        %{buildroot}%{_datadir}/locale/${lang}/LC_MESSAGES/
done

cat << EOF > tinyca2.desktop
[Desktop Entry]
Encoding=UTF-8
Name=TinyCA
Type=Application
Comment=Tool to manage a Certification Authority
Terminal=false
X-Dekstop-File-Install-Version=0.9
Exec=%{_bindir}/tinyca2
Icon=lock
EOF

%{__mkdir} %{buildroot}%{_datadir}/applications
desktop-file-install --vendor "" --delete-original \
    --dir %{buildroot}%{_datadir}/applications \
    --add-category X-Red-Hat-Base \
    --add-category X-Fedora \
    --add-category System \
    --add-category Application \
    tinyca2.desktop

%find_lang %{name}

%files -f %{name}.lang
%doc CHANGES
%dir %{_sysconfdir}/tinyca2
%config(noreplace) %{_sysconfdir}/tinyca2/openssl.cnf
%{_bindir}/tinyca2
%{_datadir}/applications/*
%{_datadir}/tinyca2
%{_mandir}/*/*

%changelog
* Wed Aug 27 2014 Jitka Plesnikova <jplesnik@redhat.com> - 0.7.6-0.16.20070611
- Perl 5.20 rebuild

* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.7.6-0.15.20070611
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild

* Sun Oct 20 2013 Tuomo Soini <tis@foobar.fi> - 0.7.6-0.14.20070611
- filter out internal perl(CA) from provides
- remove perl(strict) from requires filter
- add perl(OpenSSL) to requires filter
- remove unused dependency on openssl-perl

* Sun Oct 13 2013 Paul Wouters <pwouters@redhat.com> - 0.7.6-0.10.20070611
- Filter out bogus Requires/Provides
- clean some EL5 leftover items

* Sat Oct 12 2013 Paul Wouters <pwouters@redhat.com> - 0.7.6-0.9.20070611
- cleanup macro style, remove el5 compat items, use global instead of define
- Clean vendor
- Fixup perl requires
- Fixup locale handling
- Preserve timestamps with install
- Fixup mixed tab/spaces

* Sun Jul 28 2013 Tuomo Soini <tis@foobar.fi> - 0.7.6-0.8.20070611
- port fixes from debian, recognize openssl-1.0.1, use IO::Select

* Sun Jul 28 2013 Tuomo Soini <tis@foobar.fi> - 0.7.6-0.7.20070611
- fix more deprecated use of qw() in GUI.pm

* Sat Jul 27 2013 Tuomo Soini <tis@foobar.fi> - 0.7.6-0.6.20070611
- fix functions deprecated by perl 5.16.0

* Fri Mar 18 2011 Tuomo Soini <tis@foobar.fi> - 0.7.6-0.5.20070611
- Update License tag
- port fixes from debian
- add man page

* Thu Oct  2 2008 Tuomo Soini <tis@foobar.fi> - 0.7.6-0.4.20070611
- fix crl extension further to DER format

* Mon Sep  8 2008 Tuomo Soini <tis@foobar.fi> - 0.7.6-0.3.20070611
- use .der as default crl extension

* Mon Sep  8 2008 Tuomo Soini <tis@foobar.fi> - 0.7.6-0.2.20070611
- Fix export filename to default to CN=, not E=
- fix crl to export to DER by default

* Mon Jun 11 2007 Tuomo Soini <tis@foobar.fi> - 0.7.6-0.1.20070611
- 0.7.6 snapshot from cvs
- add missing BR desktop-file-utils

* Thu Dec  7 2006 Tuomo Soini <tis@foobar.fi> - 0.7.5-1
- 0.7.5

* Mon May  8 2006 Tuomo Soini <tis@foobar.fi> - 0.7.2-3.1.20060427.4.foo
- rebuild

* Thu Apr 27 2006 Tuomo Soini <tis@foobar.fi> - 0.7.2-2.20060427.1.4.foo
- fixes from CVS
- fixed dekstop entry

* Thu Apr 27 2006 Tuomo Soini <tis@foobar.fi> - 0.7.2-2.4.foo
- minor fixes to spec

* Thu Apr 27 2006 Tuomo Soini <tis@foobar.fi> - 0.7.2-1.4.foo
- upgrade to tinyca2-0.7.2

* Thu Sep 29 2005 Tuomo Soini <tis@foobar.fi> - 0.6.8-1.foo
- upgrade to 0.6.8

* Thu Aug 26 2004 Tuomo Soini <tis@foobar.fi> - 0.6.6-1.foo
- upgrade to 0.6.6
- fixed package Group
- added new language files es and cs

* Sun Jul 25 2004 Tuomo Soini <tis@foobar.fi> - 0.6.4-1.foo
- upgrade to 0.6.4 for lots of bugfixes

* Tue May  4 2004 Tuomo Soini <tis@foobar.fi> - 0.5.4-3.foo
- added to desktop applications

* Wed Mar 24 2004 Tuomo Soini <tis@foobar.fi> - 0.5.4-2.foo
- fixed reqs

* Tue Mar 23 2004 Tuomo Soini <tis@foobar.fi> - 0.5.4-1.foo
- initial build for Foobar Linux
openSUSE Build Service is sponsored by