Name: oreon-kde-defaults Version: 10.0 Release: 4%{?dist} Summary: Oreon KDE default configuration files License: GPLv2+ URL: https://oreonproject.org Source0: %{name}-%{version}.tar.gz BuildArch: noarch BuildRequires: systemd-rpm-macros Requires: plasma-workspace Requires: plasma-desktop Provides: kde-defaults-oreon = %{version}-%{release} %description This package provides custom KDE Plasma configuration files for Oreon. It installs our overrides into their own directory and then uses update-alternatives to switch them in, avoiding direct file conflicts. %prep %setup -q %build # nothing to build %install rm -rf $RPM_BUILD_ROOT mkdir -p $RPM_BUILD_ROOT%{_datadir}/oreon-kde-defaults mkdir -p $RPM_BUILD_ROOT%{_datadir}/oreon-kde-defaults/backup install -m 644 layout.js $RPM_BUILD_ROOT%{_datadir}/oreon-kde-defaults/layout.js install -m 644 plasmarc $RPM_BUILD_ROOT%{_datadir}/oreon-kde-defaults/plasmarc %files %defattr(-,root,root,-) %dir %{_datadir}/oreon-kde-defaults %dir %{_datadir}/oreon-kde-defaults/backup %config(noreplace) %{_datadir}/oreon-kde-defaults/layout.js %config(noreplace) %{_datadir}/oreon-kde-defaults/plasmarc %pre # backup originals if [ -f %{_datadir}/plasma/layout-templates/org.kde.plasma.desktop.defaultPanel/contents/layout.js ]; then mkdir -p %{_datadir}/oreon-kde-defaults/backup cp %{_datadir}/plasma/layout-templates/org.kde.plasma.desktop.defaultPanel/contents/layout.js \ %{_datadir}/oreon-kde-defaults/backup/layout.js.orig 2>/dev/null || : fi if [ -f %{_datadir}/plasma/desktoptheme/breeze-dark/plasmarc ]; then mkdir -p %{_datadir}/oreon-kde-defaults/backup cp %{_datadir}/plasma/desktoptheme/breeze-dark/plasmarc \ %{_datadir}/oreon-kde-defaults/backup/plasmarc.orig 2>/dev/null || : fi %post if [ -x /usr/bin/update-alternatives ]; then update-alternatives --install %{_datadir}/plasma/layout-templates/org.kde.plasma.desktop.defaultPanel/contents/layout.js \ plasma-default-layout %{_datadir}/oreon-kde-defaults/layout.js 50 || : update-alternatives --install %{_datadir}/plasma/desktoptheme/breeze-dark/plasmarc \ plasma-breeze-dark-config %{_datadir}/oreon-kde-defaults/plasmarc 50 || : fi if [ -x /usr/bin/systemctl ]; then systemctl --user daemon-reload 2>/dev/null || : fi touch %{_datadir}/oreon-kde-defaults/.oreon-defaults-installed %preun if [ $1 -eq 0 ]; then # restore originals if [ -f %{_datadir}/oreon-kde-defaults/backup/layout.js.orig ]; then cp %{_datadir}/oreon-kde-defaults/backup/layout.js.orig \ %{_datadir}/plasma/layout-templates/org.kde.plasma.desktop.defaultPanel/contents/layout.js 2>/dev/null || : fi if [ -f %{_datadir}/oreon-kde-defaults/backup/plasmarc.orig ]; then cp %{_datadir}/oreon-kde-defaults/backup/plasmarc.orig \ %{_datadir}/plasma/desktoptheme/breeze-dark/plasmarc 2>/dev/null || : fi if [ -x /usr/bin/update-alternatives ]; then update-alternatives --remove plasma-default-layout %{_datadir}/oreon-kde-defaults/layout.js 2>/dev/null || : update-alternatives --remove plasma-breeze-dark-config %{_datadir}/oreon-kde-defaults/plasmarc 2>/dev/null || : fi rm -f %{_datadir}/oreon-kde-defaults/.oreon-defaults-installed fi %postun if [ $1 -eq 0 ]; then if [ -x /usr/bin/systemctl ]; then systemctl --user daemon-reload 2>/dev/null || : fi fi %triggerpostun -- plasma-workspace, plasma-desktop, kde-settings if [ -f %{_datadir}/oreon-kde-defaults/.oreon-defaults-installed ]; then # reapply our defaults if upstream KDE was updated if [ -f %{_datadir}/oreon-kde-defaults/layout.js ]; then cp %{_datadir}/oreon-kde-defaults/layout.js \ %{_datadir}/plasma/layout-templates/org.kde.plasma.desktop.defaultPanel/contents/layout.js 2>/dev/null || : fi if [ -f %{_datadir}/oreon-kde-defaults/plasmarc ]; then cp %{_datadir}/oreon-kde-defaults/plasmarc \ %{_datadir}/plasma/desktoptheme/breeze-dark/plasmarc 2>/dev/null || : fi if [ -x /usr/bin/update-alternatives ]; then update-alternatives --install %{_datadir}/plasma/layout-templates/org.kde.plasma.desktop.defaultPanel/contents/layout.js \ plasma-default-layout %{_datadir}/oreon-kde-defaults/layout.js 50 || : update-alternatives --install %{_datadir}/plasma/desktoptheme/breeze-dark/plasmarc \ plasma-breeze-dark-config %{_datadir}/oreon-kde-defaults/plasmarc 50 || : fi fi