summaryrefslogtreecommitdiffstats
path: root/redhat/applications/tde-guidance/tde-guidance.spec
diff options
context:
space:
mode:
Diffstat (limited to 'redhat/applications/tde-guidance/tde-guidance.spec')
-rw-r--r--redhat/applications/tde-guidance/tde-guidance.spec460
1 files changed, 460 insertions, 0 deletions
diff --git a/redhat/applications/tde-guidance/tde-guidance.spec b/redhat/applications/tde-guidance/tde-guidance.spec
new file mode 100644
index 000000000..e2c865bbd
--- /dev/null
+++ b/redhat/applications/tde-guidance/tde-guidance.spec
@@ -0,0 +1,460 @@
+#
+# spec file for package tde-guidance (version R14)
+#
+# Copyright (c) 2014 Trinity Desktop Environment
+#
+# All modifications and additions to the file contributed by third parties
+# remain the property of their copyright owners, unless otherwise agreed
+# upon. The license for this file, and modifications and additions to the
+# file, is the same license as for the pristine package itself (unless the
+# license for the pristine package is not an Open Source License, in which
+# case the license is the MIT License). An "Open Source License" is a
+# license that conforms to the Open Source Definition (Version 1.9)
+# published by the Open Source Initiative.
+#
+# Please submit bugfixes or comments via http://www.trinitydesktop.org/
+#
+
+# TDE variables
+%define tde_epoch 2
+%if "%{?tde_version}" == ""
+%define tde_version 14.1.0
+%endif
+%define tde_pkg tde-guidance
+%define tde_prefix /opt/trinity
+%define tde_bindir %{tde_prefix}/bin
+%define tde_datadir %{tde_prefix}/share
+%define tde_docdir %{tde_datadir}/doc
+%define tde_includedir %{tde_prefix}/include
+%define tde_libdir %{tde_prefix}/%{_lib}
+%define tde_mandir %{tde_datadir}/man
+%define tde_tdeappdir %{tde_datadir}/applications/tde
+%define tde_tdedocdir %{tde_docdir}/tde
+%define tde_tdeincludedir %{tde_includedir}/tde
+%define tde_tdelibdir %{tde_libdir}/trinity
+
+%define __arch_install_post %{nil}
+
+
+Name: trinity-%{tde_pkg}
+Epoch: %{tde_epoch}
+Version: 0.8.0svn20080103
+Release: %{?tde_version}_%{?!preversion:1}%{?preversion:0_%{preversion}}%{?dist}
+Summary: A collection of system administration tools for Trinity
+Group: Applications/Utilities
+URL: http://www.simonzone.com/software/guidance
+
+%if 0%{?suse_version}
+License: GPL-2.0+
+%else
+License: GPLv2+
+%endif
+
+#Vendor: Trinity Desktop
+#Packager: Francois Andriot <francois.andriot@free.fr>
+
+Prefix: %{tde_prefix}
+BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
+
+Source0: %{name}-%{tde_version}%{?preversion:~%{preversion}}.tar.gz
+Source1: trinity-%{tde_pkg}-rpmlintrc
+
+BuildRequires: trinity-tdelibs-devel >= %{tde_version}
+BuildRequires: trinity-tdebase-devel >= %{tde_version}
+BuildRequires: desktop-file-utils
+
+BuildRequires: trinity-pytdeextensions
+BuildRequires: trinity-libpythonize0-devel
+BuildRequires: trinity-python-trinity
+BuildRequires: chrpath
+
+BuildRequires: autoconf automake libtool m4
+BuildRequires: gcc-c++
+BuildRequires: pkgconfig
+BuildRequires: fdupes
+
+# SUSE desktop files utility
+%if 0%{?suse_version}
+BuildRequires: update-desktop-files
+%endif
+
+%if 0%{?opensuse_bs} && 0%{?suse_version}
+# for xdg-menu script
+BuildRequires: brp-check-trinity
+%endif
+
+# SIP support
+BuildRequires: sip4-tqt-devel >= 4.10.5
+Requires: sip4-tqt >= 4.10.5
+
+# PYTHON-QT support
+BuildRequires: python-tqt-devel
+BuildRequires: trinity-python-trinity-devel
+BuildRequires: trinity-pytqt-tools
+
+# LIBXXF86VM support
+%if 0%{?mgaversion} || 0%{?mdkversion}
+BuildRequires: %{_lib}xxf86vm-devel
+%endif
+%if 0%{?rhel} || 0%{?fedora} || 0%{?suse_version} >= 1210
+BuildRequires: libXxf86vm-devel
+%endif
+
+# XSCREENSAVER support
+# RHEL 4: disabled
+# RHEL 6: available in EPEL
+# RHEL 7: available in NUX
+%if 0%{?fedora} || 0%{?mgaversion} || 0%{?mdkversion} || 0%{?rhel} == 5 || 0%{?rhel} == 6 || 0%{?rhel} == 7 || 0%{?suse_version}
+%define with_xscreensaver 1
+
+%if 0%{?fedora} || 0%{?rhel} >= 5
+BuildRequires: libXScrnSaver-devel
+BuildRequires: xscreensaver
+BuildRequires: xscreensaver-base
+BuildRequires: xscreensaver-extras
+%if 0%{?fedora}
+BuildRequires: xscreensaver-extras-base
+%endif
+BuildRequires: xscreensaver-gl-base
+BuildRequires: xscreensaver-gl-extras
+%endif
+
+%if 0%{?suse_version}
+BuildRequires: libXScrnSaver-devel
+BuildRequires: xscreensaver
+BuildRequires: xscreensaver-data
+BuildRequires: xscreensaver-data-extra
+%endif
+
+%if 0%{?mgaversion} || 0%{?mdkversion}
+%if 0%{?mgaversion} >= 4
+BuildRequires: %{_lib}xscrnsaver-devel
+%else
+BuildRequires: %{_lib}xscrnsaver%{?mgaversion:1}-devel
+%endif
+BuildRequires: xscreensaver
+BuildRequires: xscreensaver-base
+BuildRequires: xscreensaver-extrusion
+BuildRequires: xscreensaver-gl
+%endif
+%endif
+
+# PYTHON support
+%if 0%{?rhel} >= 8 || 0%{?fedora} >= 31 || 0%{?suse_version} >= 1550
+%global python python2
+%global __python %__python2
+%global python_sitearch %{python2_sitearch}
+%else
+%global python python
+%endif
+%{!?python_sitearch:%global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")}
+BuildRequires: %{python}
+BuildRequires: %{python}-devel
+
+Requires: python-tqt
+Requires: trinity-python-trinity
+Requires: trinity-pytdeextensions
+%if 0%{?rhel} || 0%{?fedora} || 0%{?mgaversion} || 0%{?mdkversion}
+Requires: hwdata
+%endif
+
+Requires: %{name}-backends = %{?epoch:%{epoch}:}%{version}-%{release}
+
+# POWERMANAGER support (requires HAL)
+#define with_powermanager 1
+Obsoletes: trinity-tde-guidance-powermanager
+
+Obsoletes: trinity-guidance < %{?epoch:%{epoch}:}%{version}-%{release}
+Provides: trinity-guidance = %{?epoch:%{epoch}:}%{version}-%{release}
+
+%description
+Guidance currently consists of four programs designed to help you
+look after your system:
+ o userconfig - User and Group administration
+ o serviceconfig - Service/daemon administration
+ o mountconfig - Disk and filesystem administration
+ o wineconfig - Wine configuration
+
+These tools are available in Trinity Control Center, System Settings
+or can be run as standalone applications.
+
+%files
+%defattr(-,root,root,-)
+%doc ChangeLog COPYING README TODO
+%{tde_bindir}/grubconfig
+%{tde_bindir}/mountconfig
+%{tde_bindir}/serviceconfig
+%{tde_bindir}/userconfig
+%{tde_bindir}/wineconfig
+%attr(0644,root,root) %{tde_tdelibdir}/*.so
+%attr(0644,root,root) %{tde_tdelibdir}/*.la
+%{tde_datadir}/apps/guidance/
+%{tde_tdeappdir}/*.desktop
+%{tde_datadir}/icons/crystalsvg/*/*/*.png
+%{tde_datadir}/icons/crystalsvg/*/*/*.svg
+%{python_sitearch}/%{name}/SMBShareSelectDialog.py*
+%{python_sitearch}/%{name}/SimpleCommandRunner.py*
+%{python_sitearch}/%{name}/fuser.py*
+%{python_sitearch}/%{name}/fuser_ui.py*
+%{python_sitearch}/%{name}/grubconfig.py*
+%{python_sitearch}/%{name}/mountconfig.py*
+%{python_sitearch}/%{name}/serviceconfig.py*
+%{python_sitearch}/%{name}/sizeview.py*
+%{python_sitearch}/%{name}/unixauthdb.py*
+%{python_sitearch}/%{name}/userconfig.py*
+%{python_sitearch}/%{name}/wineconfig.py*
+%{tde_tdedocdir}/HTML/en/guidance/
+
+
+# Files from powermanager
+%if 0%{?with_powermanager}
+%exclude %{tde_datadir}/icons/hicolor/22x22/apps/power-manager.png
+%exclude %{tde_datadir}/apps/guidance/pics/ac-adapter.png
+%exclude %{tde_datadir}/apps/guidance/pics/battery*.png
+%exclude %{tde_datadir}/apps/guidance/pics/processor.png
+%endif
+
+##########
+
+%package backends
+Group: Applications/Utilities
+Summary: collection of system administration tools for GNU/Linux [Trinity]
+%if 0%{?rhel} || 0%{?fedora} || 0%{?mgaversion} || 0%{?mdkversion}
+Requires: hwdata
+%endif
+Requires: %{python}
+
+Obsoletes: trinity-guidance-backends < %{?epoch:%{epoch}:}%{version}-%{release}
+Provides: trinity-guidance-backends = %{?epoch:%{epoch}:}%{version}-%{release}
+
+%description backends
+This package contains the platform neutral backends used in the
+Guidance configuration tools.
+
+%files backends
+%defattr(-,root,root,-)
+%dir %{python_sitearch}/%{name}
+%{python_sitearch}/%{name}/MicroHAL.py*
+%{python_sitearch}/%{name}/drivedetect.py*
+%{python_sitearch}/%{name}/wineread.py*
+%{python_sitearch}/%{name}/winewrite.py*
+%{python_sitearch}/%{name}/xf86misc.py*
+%{python_sitearch}/ixf86misc.so
+
+##########
+
+%if 0%{?with_powermanager}
+
+%package powermanager
+Group: Applications/Utilities
+Summary: HAL based power manager applet [Trinity]
+Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release}
+Requires: hal
+
+Obsoletes: trinity-guidance-powermanager < %{?epoch:%{epoch}:}%{version}-%{release}
+Provides: trinity-guidance-powermanager = %{?epoch:%{epoch}:}%{version}-%{release}
+
+%if "%{tde_prefix}" == "/usr"
+Conflicts: guidance-power-manager
+Conflicts: kde-guidance-powermanager
+%endif
+
+%description powermanager
+A power management applet to indicate battery levels and perform hibernate or
+suspend using HAL.
+
+%files powermanager
+%defattr(-,root,root,-)
+%{tde_bindir}/guidance-power-manager
+%{python_sitearch}/%{name}/MicroHAL.py*
+%{python_sitearch}/%{name}/guidance-power-manager.py*
+%{python_sitearch}/%{name}/powermanage.py*
+%{python_sitearch}/%{name}/gpmhelper.py*
+%{python_sitearch}/%{name}/powermanager_ui.py*
+%{python_sitearch}/%{name}/guidance_power_manager_ui.py*
+%{python_sitearch}/%{name}/notify.py*
+%{python_sitearch}/%{name}/tooltip.py*
+%{tde_datadir}/icons/hicolor/22x22/apps/power-manager.png
+%{tde_datadir}/apps/guidance/pics/ac-adapter.png
+%{tde_datadir}/apps/guidance/pics/battery*.png
+%{tde_datadir}/apps/guidance/pics/processor.png
+%{tde_datadir}/autostart/guidance-power-manager.desktop
+
+%endif
+
+##########
+
+%if 0%{?pclinuxos} || 0%{?suse_version} && 0%{?opensuse_bs} == 0
+%debug_package
+%endif
+
+##########
+
+%prep
+%setup -q -n %{name}-%{tde_version}%{?preversion:~%{preversion}}
+
+%if 0%{?rhel} || 0%{?mgaversion} || 0%{?mdkversion}
+%__sed -i "userconfig/unixauthdb.py" \
+ -e "s|self.first_uid = .*|self.first_uid = 500|" \
+ -e "s|self.first_gid = .*|self.first_gid = 500|"
+%endif
+
+
+%build
+unset QTDIR QTINC QTLIB
+export PATH="%{tde_bindir}:${PATH}"
+#export PYTHONPATH=%{python_sitearch}/python-tqt
+
+# Avoids 'error: byte-compiling is disabled.' on Mandriva/Mageia
+export PYTHONDONTWRITEBYTECODE=
+
+# FTBFS on PCLOS ...
+export RPM_OPT_FLAGS="${RPM_OPT_FLAGS} -I%{tde_tdeincludedir} -I%{tde_includedir}"
+
+# Specific path for RHEL4
+if [ -d /usr/X11R6 ]; then
+ export RPM_OPT_FLAGS="${RPM_OPT_FLAGS} -I/usr/X11R6/include -L/usr/X11R6/%{_lib}"
+ %__sed -i "setup.py" -e "s|/usr/X11R6/lib|/usr/X11R6/%{_lib}|g"
+fi
+
+%__python ./setup.py build
+
+
+%install
+unset QTDIR QTINC QTLIB
+export PATH="%{tde_bindir}:${PATH}"
+export EXTRA_MODULE_DIR="%{python_sitearch}/%{name}"
+export SIPTQT_DIR="%{python_sitearch}/sip4_tqt"
+export PYTHONPATH="%{python_sitearch}/python-tqt"
+
+# Support for 'sip4-tqt'
+export PYTHONPATH="%{python_sitearch}/sip4_tqt:${PYTHONPATH}"
+
+# For Mageia/Mandriva: Avoids 'error: byte-compiling must be disabled.
+export PYTHONDONTWRITEBYTECODE=
+
+%__rm -rf %{buildroot}
+%__python ./setup.py install \
+ --prefix=%{tde_prefix} \
+ --root=%{buildroot}
+
+# Fix temporary build directories remaining inside .py files
+for f in %{buildroot}%{tde_datadir}/apps/guidance/*.py; do
+ %__sed -i "${f}" -e "s|%{buildroot}||g"
+done
+
+##### MAIN PACKAGE INSTALLATION (based on Debian/Ubuntu packaging rules)
+# install icons to right place
+%__mkdir_p %{buildroot}%{tde_datadir}/icons/crystalsvg/32x32/apps
+%__cp -f %{buildroot}%{tde_datadir}/apps/guidance/pics/hi32-app-daemons.png \
+ %{buildroot}%{tde_datadir}/icons/crystalsvg/32x32/apps/daemons.png
+%__cp -f %{buildroot}%{tde_datadir}/apps/guidance/pics/kcmpartitions.png \
+ %{buildroot}%{tde_datadir}/icons/crystalsvg/32x32/apps/disksfilesystems.png
+%__cp -f %{buildroot}%{tde_datadir}/apps/guidance/pics/hi32-user.png \
+ %{buildroot}%{tde_datadir}/icons/crystalsvg/32x32/apps/userconfig.png
+%__cp -f %{buildroot}%{tde_datadir}/apps/guidance/pics/32-wine.png \
+ %{buildroot}%{tde_datadir}/icons/crystalsvg/32x32/apps/wineconfig.png
+%__install -D -p -m0644 kde/wineconfig/pics/16x16/wineconfig.png \
+ %{buildroot}%{tde_datadir}/icons/crystalsvg/16x16/apps/wineconfig.png
+
+# fix binary-or-shlib-defines-rpath
+chrpath -r %{tde_libdir} %{buildroot}%{tde_tdelibdir}/kcm_*.so
+
+# fix executable-not-elf-or-script
+%__chmod 0644 %{buildroot}%{tde_datadir}/apps/guidance/pics/kdewinewizard.png
+
+# move python modules in %{python_sitearch} (/usr/lib/pythonXX/site-packages)
+%__mkdir_p %{buildroot}%{python_sitearch}/%{name}
+%__mv -f %{buildroot}%{tde_datadir}/apps/guidance/*.py* %{buildroot}%{python_sitearch}/%{name}
+
+# Generates the startup scripts
+%__rm -f %{buildroot}%{tde_bindir}/*
+%__ln_s -f %{python_sitearch}/%{name}/mountconfig.py %{buildroot}%{tde_bindir}/mountconfig
+%__ln_s -f %{python_sitearch}/%{name}/serviceconfig.py %{buildroot}%{tde_bindir}/serviceconfig
+%__ln_s -f %{python_sitearch}/%{name}/userconfig.py %{buildroot}%{tde_bindir}/userconfig
+%__ln_s -f %{python_sitearch}/%{name}/wineconfig.py %{buildroot}%{tde_bindir}/wineconfig
+%__ln_s -f %{python_sitearch}/%{name}/grubconfig.py %{buildroot}%{tde_bindir}/grubconfig
+
+# fix script-not-executable
+%__chmod 0755 %{buildroot}%{python_sitearch}/%{name}/fuser.py
+%__chmod 0755 %{buildroot}%{python_sitearch}/%{name}/grubconfig.py
+
+##### BACKENDS INSTALLATION
+
+# The xf86misc stuff should not go under /opt/trinity bur under /usr !!!
+%__mv -f %{buildroot}%{tde_libdir}/python*/site-packages/ixf86misc.so %{buildroot}%{python_sitearch}
+%__mv -f %{buildroot}%{tde_libdir}/python*/site-packages/xf86misc.py* %{buildroot}%{python_sitearch}/%{name}
+
+%if 0%{?rhel} || 0%{?fedora} || 0%{?mgaversion} || 0%{?mdkversion}
+%__rm -f %{buildroot}%{tde_datadir}/apps/guidance/MonitorsDB
+%__ln_s -f /usr/share/hwdata/MonitorsDB %{buildroot}%{tde_datadir}/apps/guidance/MonitorsDB
+%endif
+
+%if 0%{?with_powermanager}
+##### POWERMANAGER INSTALLATION
+# install icon to right place
+%__install -D -p -m0644 kde/powermanager/pics/battery-charging-100.png \
+ %{buildroot}%{tde_datadir}/icons/hicolor/22x22/apps/power-manager.png
+%__install -D -p -m0644 kde/powermanager/pics/*.png \
+ %{buildroot}%{tde_datadir}/apps/guidance/pics/
+
+# install desktop file
+%__install -D -p -m0644 powermanager/guidance-power-manager.desktop \
+ %{buildroot}%{tde_datadir}/autostart/guidance-power-manager.desktop
+
+# copy python modules in PYSUPPORT_PATH
+%__cp powermanager/guidance_power_manager_ui.py %{buildroot}%{python_sitearch}/%{name}
+%__cp powermanager/notify.py %{buildroot}%{python_sitearch}/%{name}
+%__cp powermanager/tooltip.py %{buildroot}%{python_sitearch}/%{name}
+
+# generate guidance-power-manager script
+cat <<EOF >%{?buildroot}%{tde_bindir}/guidance-power-manager
+#!/bin/sh
+export PYTHONPATH=%{python_sitearch}/%{name}:%{python_sitearch}/sip4-tqt
+%{python_sitearch}/%{name}/guidance-power-manager.py &
+EOF
+chmod +x %{buildroot}%{tde_bindir}/guidance-power-manager
+
+# fix script-not-executable
+chmod 0755 %{buildroot}%{python_sitearch}/%{name}/powermanage.py
+chmod 0755 %{buildroot}%{python_sitearch}/%{name}/gpmhelper.py
+
+%else
+%__rm -f %{buildroot}%{python_sitearch}/%{name}/gpmhelper.py*
+%__rm -f %{buildroot}%{python_sitearch}/%{name}/guidance-power-manager.py*
+%__rm -f %{buildroot}%{python_sitearch}/%{name}/guidance_power_manager_ui.py*
+%__rm -f %{buildroot}%{python_sitearch}/%{name}/powermanage.py*
+%__rm -f %{buildroot}%{python_sitearch}/%{name}/powermanager_ui.py*
+%__rm -f %{buildroot}%{tde_datadir}/apps/guidance/powermanager_ui.ui
+
+%endif
+
+# Replace all '#!' calls to python with /usr/bin/python
+# and make them executable
+%if 0%{?fedora} >= 30 || 0%{?rhel} >= 8
+%define python /usr/bin/python2
+%else
+%define python /usr/bin/python
+%endif
+for i in `find %{buildroot} -type f`; do
+ sed '1s,#!.*python[^ ]*\(.*\),#! %python\1,' \
+ $i > $i.temp;
+ if cmp --quiet $i $i.temp; then
+ rm -f $i.temp;
+ else
+ mv -f $i.temp $i;
+ chmod 755 $i;
+ echo "fixed interpreter: $i";
+ fi;
+done
+
+# Removes useless files
+find %{buildroot} -name "*.egg-info" -exec rm -f {} \;
+find %{buildroot}%{tde_libdir} -name "*.a" -exec rm -f {} \;
+
+
+%clean
+%__rm -rf %{buildroot}
+
+
+%changelog