summaryrefslogtreecommitdiffstats
path: root/ikiwiki.spec
blob: cff09e4c6045948ff402fd007fe798be568a9c25 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
Name:           ikiwiki
Version: 3.20170622
Release:        1%{?dist}
Summary:        A wiki compiler

Group:          Applications/Internet
License:        GPLv2+
URL:            http://ikiwiki.info/
Source0:	http://ftp.debian.org/debian/pool/main/i/%{name}/%{name}_%{version}.tar.gz
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildArch:      noarch

BuildRequires:  perl(Text::Markdown)
BuildRequires:  perl(Mail::Sendmail)
BuildRequires:  perl(HTML::Scrubber)
BuildRequires:  perl(XML::Simple)
BuildRequires:  perl(Date::Parse)
BuildRequires:  perl(Date::Format)
BuildRequires:  perl(HTML::Template)
BuildRequires:  perl(CGI::FormBuilder)
BuildRequires:  perl(CGI::Session)
BuildRequires:  perl(File::MimeInfo)
BuildRequires:  perl(YAML::XS)
BuildRequires:  gettext
BuildRequires:  po4a

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

Requires:       perl(Text::Markdown)
Requires:       perl(Mail::Sendmail)
Requires:       perl(HTML::Scrubber)
Requires:       perl(XML::Simple)
Requires:       perl(CGI::FormBuilder)
Requires:       perl(CGI::Session)

Requires:       python-docutils

%define cgi_bin %{_libexecdir}/w3m/cgi-bin


%description
Ikiwiki is a wiki compiler. It converts wiki pages into HTML pages
suitable for publishing on a website. Ikiwiki stores pages and history
in a revision control system such as Subversion or Git. There are many
other features, including support for blogging, as well as a large
array of plugins.


%prep
%setup0 -q -n %{name}

# Filter unwanted Provides:
%{__cat} << \EOF > %{name}-prov
#!/bin/sh
%{__perl_provides} $* |\
  %{__sed} -e '/perl(IkiWiki.*)/d'
EOF

%define __perl_provides %{_builddir}/%{name}/%{name}-prov
%{__chmod} +x %{__perl_provides}

# Filter Requires, all used by plugins
# - Monotone: see bz 450267
%{__cat} << \EOF > %{name}-req
#!/bin/sh
%{__perl_requires} $* |\
  %{__sed} -e '/perl(IkiWiki.*)/d' \
           -e '/perl(Monotone)/d'
EOF

%define __perl_requires %{_builddir}/%{name}/%{name}-req
%{__chmod} +x %{__perl_requires}

# goes into the -w3m subpackage
%{__cat} << \EOF > README.fedora
See http://ikiwiki.info/w3mmode/ for more information.
EOF


%build
%{__perl} Makefile.PL INSTALLDIRS=vendor PREFIX=%{_prefix}
# parallel builds currently don't work
%{__make} 


%install
%{__rm} -rf %{buildroot}
%{__make} pure_install DESTDIR=%{buildroot} W3M_CGI_BIN=%{cgi_bin}
%find_lang %{name}

%clean
%{__rm} -rf %{buildroot}


%files -f %{name}.lang
%defattr(-,root,root,-)
%{_bindir}/ikiwiki*
%{_sbindir}/ikiwiki*
%{_mandir}/man1/ikiwiki*
%{_mandir}/man8/ikiwiki*
%{_datadir}/ikiwiki
%dir %{_sysconfdir}/ikiwiki
%config(noreplace) %{_sysconfdir}/ikiwiki/*
# contains a packlist only
%exclude %{perl_vendorarch}
%{perl_vendorlib}/IkiWiki*
%exclude %{perl_vendorlib}/IkiWiki*/Plugin/skeleton.pm.example
%{_libdir}/ikiwiki
%doc README debian/changelog debian/NEWS html
%doc IkiWiki/Plugin/skeleton.pm.example


%package w3m
Summary:        Ikiwiki w3m cgi meta-wrapper
Group:          Applications/Internet
Requires:       w3m
Requires:       %{name} = %{version}-%{release}

%description w3m
Enable usage of all of ikiwiki's web features (page editing, etc) in
the w3m web browser without a web server. w3m supports local CGI
scripts, and ikiwiki can be set up to run that way using the
meta-wrapper in this package.


%files w3m
%defattr(-,root,root,-)
%doc README.fedora
%{cgi_bin}/ikiwiki-w3m.cgi