File conky.spec of Package conky
# vim: set sw=4 ts=4 et:
%if 0%{?suse_version} >= 1100
%define with_lua_extra 1
%else
%define with_lua_extra 0
%endif
Name: conky
Version: 1.8.1
Release: 0
Summary: Lightweight System Monitor
Source: http://prdownloads.sourceforge.net/conky/conky-%{version}.tar.bz2
Source1: conky.desktop
# PATCH-FIX-UPSTREAM - conky-fix-curl-FTBFS.patch - remove deprecated curl/types.h to fix FTBFS in newer versions of curl, http://tinyurl.com/4x76bbx
%if 0%{?suse_version} >= 1210
Patch0: %{name}-fix-curl-FTBFS.patch
%endif
# PATCH-FIX - add -lm when linking against -liw
Patch1: conky-libiw_with_libm.patch
Source99: conky-rpmlintrc
URL: http://conky.sourceforge.net
Group: System/Monitoring
License: BSD license (revised)
BuildRoot: %{_tmppath}/build-%{name}-%{version}
BuildRequires: make gcc fontconfig-devel freetype2-devel
BuildRequires: xorg-x11-devel
%if 0%{?suse_version} >= 1120
BuildRequires: libiw-devel
%else
BuildRequires: wireless-tools
%endif
BuildRequires: libpng-devel zlib-devel glib2-devel
BuildRequires: xorg-x11-devel
BuildRequires: cairo-devel
BuildRequires: update-desktop-files
BuildRequires: autoconf automake libtool
BuildRequires: docbook2x
BuildRequires: alsa-devel
%if %with_lua_extra
BuildRequires: tolua++
%endif
%if 0%{?sles_version} == 0 || 0%{?sles_version} >= 11
%define with_imlib2 1
BuildRequires: imlib2-devel
%endif
BuildRequires: libxml2-devel
BuildRequires: ncurses-devel
%if 0%{?suse_version} >= 1020
%define with_lua 1
BuildRequires: lua-devel
%endif
%if 0%{?suse_version} >= 1020 || 0%{?fedora_version} > 0
%if 0%{?sles_version} < 11
BuildRequires: vim-enhanced
%else
BuildRequires: vim
%endif
%else
BuildRequires: vim
%endif
%if %suse_version >= 1030
BuildRequires: libcurl-devel
%else
BuildRequires: curl-devel
%endif
%if 0%{?packman_bs}
BuildRequires: audacious-devel
BuildRequires: libXNVCtrl
%endif
%description
Conky is an advanced, highly configurable system monitor for X.
%if 0%{?packman_bs}
This package is built with support for audacious and nVidia GPUs.
%endif
%if %with_lua_extra
%package cairo
Summary: Cairo Rendering Backend for %{name}
Group: System/Monitoring
Requires: %{name} = %{version}
%description cairo
Conky is an advanced, highly configurable system monitor for X.
This package contains the Cairo rendering backend plugin
for %{name}.
%package imlib2
Summary: Imlib2 Rendering Backend for %{name}
Group: System/Monitoring
Requires: %{name} = %{version}
%description imlib2
Conky is an advanced, highly configurable system monitor for X.
This package contains the Imlib2 rendering backend plugin
for %{name}.
%endif
%package doc
Summary: Documentation for conky
Group: System/Monitoring
%description doc
Conky is an advanced, highly configurable system monitor for X.
This package provides additional documentation about conky in
the following directory:
%{_docdir}/%{name}/
%package vim
Summary: Conky Configuration File Support for Vim
Requires: vim-base
Group: Productivity/Editors/Vi
%description vim
Conky is an advanced, highly configurable system monitor for X.
This package provides syntax highlighting support for conky
configuration files in vim.
%package nano
Summary: Conky Configuration File Support for nano
Requires: nano
Group: Productivity/Editors/Other
%description nano
Conky is an advanced, highly configurable system monitor for X.
This package provides syntax highlighting support for conky
configuration files in nano.
%if 0%{?packman_bs}
%package feature-audacious
Summary: Pseudo Package for %{name} with Audacious Support
Group: System/Monitoring
Requires: %{name} = %{version}-%{release}
%description feature-audacious
This is a pseudo-package that doesn't contain any files but
requires the Packman build of %{name}, which includes support
for the Audacious player.
%package feature-nvidia
Summary: Pseudo Package for %{name} with nVidia Support
Group: System/Monitoring
Requires: %{name} = %{version}-%{release}
%description feature-nvidia
This is a pseudo-package that doesn't contain any files but
requires the Packman build of %{name}, which includes support
for nVidia GPU statistics.
%endif
%prep
%setup -q
%if 0%{?suse_version} >= 1210
%patch0 -p1
%endif
%patch1
for i in AUTHORS ChangeLog; do
%__mv "${i}" "${i}.orig" && \
iconv -f iso8859-1 -t utf8 -o "${i}" "${i}.orig" && \
%__rm "${i}.orig"
done
%build
test -e ./configure || ./autogen.sh
LIBS="-lm"
export LIBS
# to link X11 libs on SLE < 11:
LIBS="$LIBS -L/usr/X11R6/%{_lib}"
LDFLAGS="-lm" \
%configure \
--enable-xft \
--enable-own-window \
--enable-double-buffer \
--enable-x11 \
--enable-xdamage \
--enable-portmon \
--enable-rss \
--enable-eve \
--%{?with_imlib2:enable}%{!?with_imlib2:disable}-imlib2 \
%if 0%{?with_lua}
--enable-lua \
%if %with_lua_extra
--enable-lua-imlib2 \
--enable-lua-cairo \
%endif #with_lua_extra
%else
--disable-lua \
--disable-lua-imlib2 \
--disable-lua-cairo \
%endif #with_lua
--enable-alsa \
--enable-wlan \
%if 0%{?packman_bs}
--enable-audacious=yes \
--enable-nvidia=yes
%else
--enable-audacious=no \
--enable-nvidia=no
%endif #packman_bs
# inotify on SLE < 11 is too old
%if 0%{?sles_version} > 0 && 0%{?sles_version} < 11
%__sed -i '/^#define HAVE_SYS_INOTIFY_H/d' src/config.h
echo '#undef HAVE_SYS_INOTIFY_H' >> src/config.h
%endif
%__make %{?jobs:-j%{jobs}}
%install
%makeinstall
%__install -D -m 0644 "%{SOURCE1}" "%{buildroot}%{_datadir}/applications/%{name}.desktop"
%suse_update_desktop_file -r "%{name}" System Monitor
for feature in audacious nvidia; do
cat<<EOF >README.feature-"$feature"
This package acts as a placeholder for %{name} with
support for ${feature}, to avoid accidential removal
of that functionality through upgrading to a package
from a different repository.
EOF
done
%__install -D -m0644 extras/vim/ftdetect/conkyrc.vim "%{buildroot}%{_datadir}/vim/site/ftdetect/conkyrc.vim"
%__install -D -m0644 extras/vim/syntax/conkyrc.vim "%{buildroot}%{_datadir}/vim/site/syntax/conkyrc.vim"
%__install -D -m0644 extras/nano/conky.nanorc "%{buildroot}%{_datadir}/nano/conky.nanorc"
%__install -d "%{buildroot}%{_docdir}/%{name}"
MAINDOCFILES="$PWD/doc.main.lst"
echo -n >"$MAINDOCFILES"
for f in AUTHORS ChangeLog COPYING NEWS README TODO data/conky.conf; do
ff=$(basename "$f")
%__install -D -m0644 "$f" "%{buildroot}%{_docdir}/%{name}/$ff"
echo "%doc %{_docdir}/%{name}/$ff" >>"$MAINDOCFILES"
done
DOCDOCFILES="$PWD/doc.doc.lst"
echo -n >"$DOCDOCFILES"
for f in doc/*.html; do
ff=$(basename "$f")
%__install -D -m0644 "$f" "%{buildroot}%{_docdir}/%{name}/$ff"
echo "%doc %{_docdir}/%{name}/$ff" >>"$DOCDOCFILES"
done
%if %with_lua_extra
%__rm -rf "%{buildroot}%{_libdir}/conky"/*.{a,la}
%else
%__install -d "%{buildroot}%{_libdir}/conky"
%endif
%clean
%{?buildroot:%__rm -rf "%{buildroot}"}
%files -f doc.main.lst
%defattr(-,root,root)
%doc %dir %{_docdir}/%{name}
%dir %{_sysconfdir}/conky
%config(noreplace) %{_sysconfdir}/conky/conky.conf
%config(noreplace) %{_sysconfdir}/conky/conky_no_x11.conf
%{_bindir}/conky
%doc %{_mandir}/man1/conky.1%{ext_man}
%{_datadir}/applications/%{name}.desktop
%dir %{_libdir}/conky
%if %with_lua_extra
%files cairo
%defattr(-,root,root)
%{_libdir}/conky/libcairo.so
%{_libdir}/conky/libcairo.so.*
%files imlib2
%defattr(-,root,root)
%{_libdir}/conky/libimlib2.so
%{_libdir}/conky/libimlib2.so.*
%endif #with_lua_extra
%files doc -f doc.doc.lst
%defattr(-,root,root)
%doc %dir %{_docdir}/%{name}
%files vim
%defattr(-,root,root)
%dir %{_datadir}/vim/site
%dir %{_datadir}/vim/site/ftdetect
%{_datadir}/vim/site/ftdetect/conkyrc.vim
%dir %{_datadir}/vim/site/syntax
%{_datadir}/vim/site/syntax/conkyrc.vim
%files nano
%defattr(-,root,root)
%dir %{_datadir}/nano
%{_datadir}/nano/conky.nanorc
%if 0%{?packman_bs}
%files feature-audacious
%defattr(-,root,root)
%doc README.feature-audacious
%files feature-nvidia
%defattr(-,root,root)
%doc README.feature-nvidia
%endif