d930197
%global srcname       lumina
d930197
%global srcurl        https://github.com/trueos/%{srcname}
d930197
%global relsuffix     -p2
d930197
d930197
%global srcdirname    %{version}-Release%{?relsuffix}
d930197
d930197
# get latest translations with fixes from git
d930197
%global localecommit0 bc08e907119117ba4dbe79caa240a007ef0d3472
d930197
d930197
%global localehash    %(c=%{localecommit0}; echo ${c:0:7} )
d930197
%global localedir     %{srcname}-i18n-%{localecommit0}
d930197
d930197
Summary:              A lightweight, portable desktop environment
d930197
Name:                 %{srcname}-desktop
d930197
Version:              1.0.0
e0967a3
Release:              5%(r=%{?relsuffix}; echo $r |tr - . ).L%{localehash}%{?dist}
d930197
License:              BSD
d930197
URL:                  http://%{name}.org
d930197
d930197
# Main source
d930197
Source0:              %{srcurl}/archive/v%{srcdirname}/%{srcdirname}.tar.gz
d930197
# Translations
d930197
Source1:              %{srcurl}-i18n/archive/%{localecommit0}/%{localedir}.tar.gz
d930197
d930197
# Compiler requirements
d930197
BuildRequires:        gcc-c++
d930197
d930197
# Qt requirements
d930197
BuildRequires:        qt5-qttools-devel
d930197
BuildRequires:        qt5-qtbase-devel
d930197
BuildRequires:        qt5-qtmultimedia-devel
d930197
BuildRequires:        qt5-qtdeclarative-devel
d930197
BuildRequires:        qt5-qtsvg-devel
d930197
BuildRequires:        qt5-qtx11extras-devel
d930197
d930197
# X component requirements
d930197
BuildRequires:        xcb-util-image-devel
d930197
BuildRequires:        xcb-util-wm-devel
d930197
BuildRequires:        libxcb-devel
d930197
BuildRequires:        xcb-util-devel
d930197
BuildRequires:        libXcomposite-devel
d930197
BuildRequires:        libXdamage-devel
d930197
BuildRequires:        libXrender-devel
d930197
d930197
BuildRequires:        desktop-file-utils
d930197
d930197
# Runtime requirements
e0967a3
Requires:             oxygen-cursor-themes
6358bc3
Requires:             qt5-style-oxygen%{?_isa}
d930197
Requires:             fluxbox%{?_isa}
d930197
d930197
# Enforce the library subpackage version requirement
d930197
Requires:             %{name}-libs%{?_isa} = %{version}-%{release}
d930197
Requires:             %{name}-data = %{version}-%{release}
d930197
d930197
# Desktop extensions
d930197
%if 0%{?fedora}
d930197
Suggests:             %{srcname}-wallpapers = %{version}-%{release}
d930197
Suggests:             %{srcname}-open%{?_isa} = %{version}-%{release}
d930197
Suggests:             %{srcname}-config%{?_isa} = %{version}-%{release}
d930197
Suggests:             %{srcname}-fm%{?_isa} = %{version}-%{release}
d930197
Suggests:             %{srcname}-screenshot%{?_isa} = %{version}-%{release}
d930197
Suggests:             %{srcname}-search%{?_isa} = %{version}-%{release}
d930197
Suggests:             %{srcname}-info%{?_isa} = %{version}-%{release}
d930197
Suggests:             %{srcname}-xconfig%{?_isa} = %{version}-%{release}
d930197
Suggests:             %{srcname}-fileinfo%{?_isa} = %{version}-%{release}
d930197
Suggests:             %{srcname}-textedit%{?_isa} = %{version}-%{release}
d930197
%endif
d930197
d930197
%description
d930197
The Lumina Desktop Environment is a lightweight system interface
d930197
that is designed for use on any Unix-like operating system.
d930197
d930197
%package data
d930197
Summary:              Data for Lumina Desktop
d930197
BuildArch:            noarch
d930197
Requires:             %{name} = %{version}-%{release}
d930197
d930197
%description data
d930197
This package provides the data files for the Lumina Desktop
d930197
Environment: Colors, desktop background, theme templates.
d930197
d930197
%package libs
d930197
Summary:              Libraries for Lumina Desktop
d930197
d930197
%description libs
d930197
This package provides the libraries for the Lumina Desktop
d930197
Environment.
d930197
d930197
%package devel
d930197
Summary:              Development libraries for Lumina Desktop
d930197
Requires:             %{name}-libs%{?_isa} = %{version}-%{release}
d930197
d930197
%description devel
d930197
This package provides the files needed to develop plugins
d930197
or extensions for the Lumina Desktop Environment, or
d930197
to develop applications that use Lumina Desktop libraries.
d930197
d930197
%package wallpapers
d930197
Summary:              Wallpapers for Lumina Desktop
d930197
BuildArch:            noarch
d930197
Requires:             kde-filesystem
d930197
d930197
%description wallpapers
d930197
Optional wallpapers recommended for Lumina Desktop.
d930197
d930197
%package -n %{srcname}-open
d930197
Summary:              xdg-open style utility for Lumina Desktop
d930197
Requires:             %{name}-libs%{?_isa} = %{version}-%{release}
d930197
d930197
%description -n %{srcname}-open
d930197
This package provides %{srcname}-open, which handles opening of
d930197
files and URLs according to the system-wide mimetype association.
d930197
It also provides an optional selector if more than one application
d930197
is assigned with the given url or file type.
d930197
d930197
%package -n %{srcname}-config
d930197
Summary:              Configuration utility for Lumina Desktop
d930197
Requires:             %{name}-libs%{?_isa} = %{version}-%{release}
d930197
d930197
%description -n %{srcname}-config
d930197
This package provides %{srcname}-config, which allows changing
d930197
various aspects of %{srcname} and fluxbox, like the wallpaper being
d930197
used, theme, icons, panel (and plugins), startup and default
d930197
applications, desktop menu and more.
d930197
d930197
%package -n %{srcname}-fm
d930197
Summary:              File manager for Lumina Desktop
d930197
Requires:             %{name}-libs%{?_isa} = %{version}-%{release}
d930197
d930197
%description -n %{srcname}-fm
d930197
This package provides %{srcname}-fm, which is a simple file manager
d930197
with support for multiple view modes, tabbed browsing,
d930197
including an integrated slideshow-based picture viewer.
d930197
d930197
d930197
%package -n %{srcname}-screenshot
d930197
Summary:              Screenshot utility for Lumina Desktop
d930197
Requires:             %{name}-libs%{?_isa} = %{version}-%{release}
d930197
d930197
%description -n %{srcname}-screenshot
d930197
This package provides %{srcname}-screenshot, which is a simple
d930197
screenshot utility that allows to snapshot the whole desktop
d930197
or a single window after a configurable delay.
d930197
d930197
Optionally the window border can be hidden when taking a
d930197
screenshot of a single window.
d930197
d930197
d930197
%package -n %{srcname}-search
d930197
Summary:              Search utility for Lumina Desktop
d930197
Requires:             %{name}-libs%{?_isa} = %{version}-%{release}
d930197
d930197
%description -n %{srcname}-search
d930197
This package provides %{srcname}-search, which is a simple
d930197
search utility that allows to search for applications or
d930197
files and directories in the home directory and launch
d930197
or open them.
d930197
d930197
d930197
%package -n %{srcname}-info
d930197
Summary:              Basic information utility for Lumina Desktop
d930197
Requires:             %{name}-libs%{?_isa} = %{version}-%{release}
d930197
d930197
%description -n %{srcname}-info
d930197
This package provides %{srcname}-info, which is a simple
d930197
utility that displays various information about the Lumina
d930197
installation, like paths, contributors, license or version.
d930197
d930197
d930197
%package -n %{srcname}-xconfig
d930197
Summary:              X server display configuration tool for Lumina Desktop
d930197
Requires:             %{name}-libs%{?_isa} = %{version}-%{release}
d930197
d930197
%description -n %{srcname}-xconfig
d930197
This package provides %{srcname}-xconfig, which is a simple
d930197
multi-head aware display configuration tool for configuring
d930197
the X server.
d930197
d930197
d930197
%package -n %{srcname}-fileinfo
d930197
Summary:              Desktop file editor for Lumina Desktop
d930197
Requires:             %{name}-libs%{?_isa} = %{version}-%{release}
d930197
d930197
%description -n %{srcname}-fileinfo
d930197
This package provides %{srcname}-fileinfo, which is an
d930197
advanced desktop file (menu) editor.
d930197
d930197
d930197
%package -n %{srcname}-textedit
d930197
Summary:              Text file editor for Lumina Desktop
d930197
Requires:             %{name}-libs%{?_isa} = %{version}-%{release}
d930197
d930197
%description -n %{srcname}-textedit
d930197
This package provides %{srcname}-textedit, which is an
d930197
text file editor.
d930197
d930197
########################################################################################
d930197
%prep
d930197
%autosetup -n%{srcname}-%{version}-Release%{?relsuffix}
d930197
# translations
d930197
tar xf %{SOURCE1}
d930197
# issues/2, ts/hi/lumina-fileinfo.ts does not parse
d930197
# commit/a96928d68364529cce670e4f64d9f988d5cc1a8c
d930197
sed -i -r -e 's:<TS.*>:\0\n<context>:' -e 's:</TS>:\n</context>\n\0:'\
d930197
 %{localedir}/ts/hi/lumina-fileinfo.ts
d930197
# bug with make -C
d930197
sed -i -r -e '/cp defaults\//d' -e 's:(INSTALLS.*)defaults:\1:' \
d930197
 src-qt5/core/%{srcname}-desktop/*.pro
d930197
d930197
d930197
%build
d930197
mkdir -p %{_target_platform}
d930197
pushd %{_target_platform}
d930197
%qmake_qt5 ../*.pro \
d930197
 CONFIG+=configure \
d930197
 LIBPREFIX="%{_libdir}" \
d930197
 L_BINDIR="%{_bindir}" \
d930197
 L_LIBDIR=%{_libdir} \
d930197
 L_SHAREDIR=%{_datadir} \
d930197
 L_ETCDIR=%{_sysconfdir} \
d930197
 L_INCLUDEDIR=%{_includedir} \
d930197
 QT5LIBDIR="%{_qt5_prefix}" \
d930197
 QMAKE_LFLAGS+="-Wl,--as-needed"
d930197
popd
d930197
%make_build -C %{_target_platform}
d930197
# see https://github.com/trueos/lumina-i18n/blob/master/scripts/mkrelease.sh
d930197
mkdir qm
d930197
for i in $(find %{localedir} -name \*.ts)
d930197
do
d930197
   NLANG=$(dirname $i |xargs basename)
d930197
   QMNAME=$(basename $i .ts)_$NLANG.qm
d930197
   lrelease-qt5 $i -qm qm/$QMNAME
d930197
done
d930197
d930197
d930197
%install
d930197
# Install the desktop
d930197
%if 0%{?rhel}
d930197
install -d %{buildroot}%{_sysconfdir}
d930197
%endif
d930197
%make_install -C %{_target_platform} INSTALL_ROOT=%{buildroot}
d930197
install -d %{buildroot}%{_datadir}/%{name}/i18n
d930197
install -m0644 -D -t %{buildroot}%{_datadir}/%{name}/i18n qm/*.qm
d930197
d930197
# split locales into subpackages
d930197
%find_lang %{name} --with-qt
d930197
%find_lang %{srcname}-open --with-qt
d930197
%find_lang %{srcname}-config --with-qt
d930197
%find_lang %{srcname}-fm --with-qt
d930197
%find_lang %{srcname}-screenshot --with-qt
d930197
%find_lang %{srcname}-search --with-qt
d930197
%find_lang %{srcname}-info --with-qt
d930197
%find_lang %{srcname}-xconfig --with-qt
d930197
%find_lang %{srcname}-fileinfo --with-qt
d930197
%find_lang %{srcname}-textedit --with-qt
d930197
d930197
# Move config folder to correct location
d930197
install -m0644 -D src-qt5/core/%{name}/defaults/%{srcname}Desktop.conf \
d930197
 -t %{buildroot}%{_sysconfdir}
d930197
# Other missing files in cmake installation
d930197
install -m0644 -D src-qt5/core/%{name}/defaults/desktop-background.jpg \
d930197
 -t %{buildroot}%{_datadir}/%{name}
d930197
d930197
# Fix paths in desktop files
d930197
find %{buildroot}%{_datadir}/applications -name *.desktop -print -exec \
d930197
 desktop-file-edit --remove-only-show-in=Lumina --add-only-show-in=X-Lumina '{}' \;
d930197
desktop-file-edit --remove-key=Categories \
d930197
 %{buildroot}%{_datadir}/applications/%{srcname}-support.desktop
d930197
d930197
%check
d930197
desktop-file-validate %{buildroot}%{_datadir}/applications/%{srcname}-*.desktop
d930197
d930197
########################################################################################
d930197
%post libs -p /sbin/ldconfig
d930197
d930197
%postun libs -p /sbin/ldconfig
d930197
d930197
%post -n %{srcname}-fm
d930197
/usr/bin/update-desktop-database &> /dev/null || :
d930197
d930197
%postun -n %{srcname}-fm
d930197
/usr/bin/update-desktop-database &> /dev/null || :
d930197
d930197
%post -n %{srcname}-textedit
d930197
/usr/bin/update-desktop-database &> /dev/null || :
d930197
d930197
%postun -n %{srcname}-textedit
d930197
/usr/bin/update-desktop-database &> /dev/null || :
d930197
d930197
########################################################################################
d930197
%files -f %{name}.lang
d930197
%{_bindir}/%{name}
d930197
%{_bindir}/start-%{name}
d930197
%config(noreplace) %{_sysconfdir}/%{srcname}Desktop.conf
d930197
%{_datadir}/pixmaps/Lumina-DE.png
d930197
%{_datadir}/xsessions/Lumina-DE.desktop
d930197
%{_datadir}/applications/%{srcname}-support.desktop
d930197
d930197
%files data
d930197
%{_datadir}/%{name}/
d930197
%exclude %{_datadir}/%{name}/i18n
d930197
d930197
%files libs
d930197
%license LICENSE
d930197
%{_libdir}/libLuminaUtils.so.*
d930197
# each binary expects its locale files in the common folder
d930197
%dir %{_datadir}/%{name}
d930197
%dir %{_datadir}/%{name}/i18n
d930197
d930197
%files devel
d930197
%license LICENSE
d930197
%{_libdir}/libLuminaUtils.so
d930197
%{_includedir}/Lumina*.h
d930197
d930197
%files wallpapers
d930197
%license LICENSE
d930197
%{_datadir}/wallpapers/Lumina-DE/
d930197
d930197
%files -n %{srcname}-open -f %{srcname}-open.lang
d930197
%{_bindir}/%{srcname}-open
d930197
d930197
%files -n %{srcname}-config -f %{srcname}-config.lang
d930197
%{_bindir}/%{srcname}-config
d930197
%{_datadir}/applications/%{srcname}-config.desktop
d930197
d930197
%files -n %{srcname}-fm -f %{srcname}-fm.lang
d930197
%{_bindir}/%{srcname}-fm
d930197
%{_datadir}/pixmaps/Insight-FileManager.png
d930197
%{_datadir}/applications/%{srcname}-fm.desktop
d930197
d930197
%files -n %{srcname}-screenshot -f %{srcname}-screenshot.lang
d930197
%{_bindir}/%{srcname}-screenshot
d930197
%{_datadir}/applications/%{srcname}-screenshot.desktop
d930197
d930197
%files -n %{srcname}-search -f %{srcname}-search.lang
d930197
%{_bindir}/%{srcname}-search
d930197
%{_datadir}/applications/%{srcname}-search.desktop
d930197
d930197
%files -n %{srcname}-info -f %{srcname}-info.lang
d930197
%license src-qt5/core/%{srcname}-info/LICENSE
d930197
%{_bindir}/%{srcname}-info
d930197
%{_datadir}/applications/%{srcname}-info.desktop
d930197
d930197
%files -n %{srcname}-xconfig -f %{srcname}-xconfig.lang
d930197
%{_bindir}/%{srcname}-xconfig
d930197
%{_datadir}/applications/%{srcname}-xconfig.desktop
d930197
d930197
%files -n %{srcname}-fileinfo -f %{srcname}-fileinfo.lang
d930197
%{_bindir}/%{srcname}-fileinfo
d930197
%{_datadir}/applications/%{srcname}-fileinfo.desktop
d930197
d930197
%files -n %{srcname}-textedit -f %{srcname}-textedit.lang
d930197
# W: dangling-symlink /usr/bin/lte /usr/bin/lumina-textedit
d930197
%exclude %{_bindir}/lte
d930197
%{_bindir}/%{srcname}-textedit
d930197
%{_datadir}/applications/%{srcname}-textedit.desktop
d930197
d930197
########################################################################################
d930197
%changelog
e0967a3
* Mon Sep 26 2016 Raphael Groner <projects.rg@smart.ms> - 1.0.0-5.p2.Lbc08e90
e0967a3
- fix typo
e0967a3
6358bc3
* Sun Sep 25 2016 Raphael Groner <projects.rg@smart.ms> - 1.0.0-4.p2.Lbc08e90
6358bc3
- thin out dependencies, no assumptions about used applications
6358bc3
d930197
* Sat Sep 24 2016 Raphael Groner <projects.rg@smart.ms> - 1.0.0-3.p2.Lbc08e90
d930197
- drop ExcludeArch
d930197
- try to fix unused-direct-shlib-dependency
d930197
d930197
* Sat Aug 27 2016 Raphael Groner <projects.rg@smart.ms> - 1.0.0-2.p2.Lbc08e90
d930197
- update to patchset 2
d930197
- fix E: script-without-shebang
d930197
- [epel] fix creation of folder etc
d930197
d930197
* Sun Aug 14 2016 Raphael Groner <projects.rg@smart.ms> - 1.0.0-1.p1.Lbc08e90
d930197
- use official upstream release
d930197
- clean up build deps
d930197
- update translations from git
d930197
- drop langpacks and include in binary subpackages
d930197
- disable weak dependencies for epel
d930197
d930197
* Sun Aug 07 2016 Raphael Groner <projects.rg@smart.ms> - 1.0.0-0.3.Beta4.Tfbab63e
d930197
- Beta4
d930197
d930197
* Sun Aug 07 2016 Raphael Groner <projects.rg@smart.ms> - 1.0.0-0.2.Beta2.Tfbab63e
d930197
- avoid dangling-symlink /usr/bin/lte
d930197
- drop implicit BR: gcc
d930197
- drop Group tags
d930197
- compile translations and split into individual langpacks
d930197
d930197
* Fri Jul 15 2016 Raphael Groner <projects.rg@smart.ms> - 1.0.0-0.1.Beta2
d930197
- version 1.0.0 Beta2
d930197
- prepare for review
d930197
- split more subpackages: i18n, wallpapers
d930197
d930197
* Wed Dec 23 2015 Neal Gompa <ngompa13@gmail.com>
d930197
- Update to 0.8.8
d930197
- Bring it closer to Fedora guidelines
d930197
- Break out Lumina Desktop package into subpackages
d930197
- Unify 32-bit and 64-bit packaging
d930197
d930197
* Tue Oct 27 2015 Jesse Smith <jsmith@resonatingmedia.com>
d930197
- Update to 0.8.7
d930197
d930197
* Thu Aug 20 2015 Jesse Smith <jsmith@resonatingmedia.com>
d930197
- Updated for 32-bit
d930197
d930197
* Thu Jul 30 2015 Jesse Smith <jsmith@resonatingmedia.com>
d930197
- Initial build