File branding-moldavite.spec of Package branding-moldavite

#
# spec file for package branding-moldavite
#
# Copyright (c) 2023 Richard Brown
# Copyright (c) 2023 Project Moldavite
#
# 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 https://github.com/ProjectMoldavite/bugs
#

%define _name branding
Name:           branding-moldavite
Version:        0+git.1772390902.68733c1
Release:        0
Summary:        Moldavite Brand File
License:        BSD-3-Clause AND CC-BY-SA-3.0
URL:            https://github.com/ProjectMoldavite/branding
Source0:        %{name}-%{version}.tar.xz
Source99:       branding-moldavite.rpmlintrc
# For /etc/skel ownership
BuildRequires:  filesystem
BuildRequires:  flatpak
BuildRequires:  newt
BuildRequires:  transactional-update
Requires:       newt
Conflicts:      branding
Conflicts:      branding-openSUSE
Conflicts:      distribution-logos
Conflicts:      greetd-branding
Conflicts:      grub2-branding
Conflicts:      grub2-branding-openSUSE
Conflicts:      sway-branding
Conflicts:      waybar-branding
Provides:       branding
Provides:       branding-openSUSE
Provides:       grub2-branding
Provides:       grub2-branding-openSUSE
Provides:       distribution-logos
Provides:       sway-branding
Provides:       waybar-branding
Provides:       greetd-branding
BuildArch:      noarch

%description
This package provides the brand identity for Moldavite

%prep
%autosetup -p1 -n %{name}-%{version}

%build

%install
# Install greetd configs

install -D -p -m 0644 ./config/greetd/greetd.conf %{buildroot}%{_sysconfdir}/greetd/greetd.conf.way
install -D -p -m 0644 ./config/greetd/sway-config %{buildroot}%{_sysconfdir}/greetd/sway-config
install -D -m 0755 ./config/greetd/sway-greetd.sh %{buildroot}%{_bindir}/sway-greetd.sh
install -D -m 0755 ./config/greetd/sway-run.sh %{buildroot}%{_bindir}/sway-run.sh
install -D -p -m 0644 ./config/greetd/sway-session.target %{buildroot}%{_prefix}/lib/systemd/user/sway-session.target
install -D -p -m 644 ./config/greetd/sway.service %{buildroot}%{_prefix}/lib/systemd/user/sway.service
install -D -p -m 644 ./config/greetd/sway.desktop %{buildroot}%{_datadir}/wayland-sessions/sway.desktop.brand

# Install sway configs
mkdir -p %{buildroot}%{_sysconfdir}/sway/config.d
install -m 0644 ./config/sway/config %{buildroot}%{_sysconfdir}/sway/config
install -m 0644 ./config/sway/env %{buildroot}%{_sysconfdir}/sway/env
install -m 0644 ./config/sway/config.d/50-moldavite.conf %{buildroot}%{_sysconfdir}/sway/config.d/50-moldavite.conf

# # Install config for sway autostart
# Per default switched off
mkdir -p %{buildroot}%{_sysconfdir}/profile.d
install -m 0644 ./config/profile.d/sway.sh %{buildroot}%{_sysconfdir}/profile.d/sway.sh.OFF

## swaync
mkdir -p %{buildroot}%{_sysconfdir}/sway/swaync/
install -m 0644 ./config/swaync/config.json %{buildroot}%{_sysconfdir}/sway/swaync/config.json
install -m 0644 ./config/swaync/style.css %{buildroot}%{_sysconfdir}/sway/swaync/style.css

# Install wallpaper, the config and filename don't currently match but we can fix that later
mkdir -p "%{buildroot}%{_datadir}/wallpapers/"
install -m 0755 ./wallpaper/moldavitewallpaper.png %{buildroot}%{_datadir}/wallpapers/wallpaper.png

# Install waybar configs
mkdir -p %{buildroot}%{_sysconfdir}/xdg/waybar/
install -m 0644 ./config/waybar/config %{buildroot}%{_sysconfdir}/xdg/waybar/config
install -m 0644 ./config/waybar/style.css %{buildroot}%{_sysconfdir}/xdg/waybar/style.css

# Install xdg-terminals.list
install -m 0644 ./config/xdg-terminals.list %{buildroot}%{_sysconfdir}/xdg/

#Install firstboot wizards scripts and configs
mkdir -p %{buildroot}%{_datadir}/moldavite-desktop
install -m 0644  ./config/firstboot/flathub.flatpakrepo %{buildroot}%{_datadir}/moldavite-desktop/flathub.flatpakrepo
mkdir -p %{buildroot}%{_libexecdir}/moldavite
install -m 0755 ./config/firstboot/firstboot \
    %{buildroot}%{_libexecdir}/moldavite/firstboot

# Install mimeapps.list
mkdir -p %{buildroot}%{_sysconfdir}/skel/.config/
install -m 0644 ./config/mimeapps.list %{buildroot}%{_sysconfdir}/skel/.config/mimeapps.list
# Install drop-in file for the transactional update notifier
mkdir -p %{buildroot}%{_prefix}%{_sysconfdir}/transactional-update.d
install -m 0644 ./config/transactional-update.d/50-desktop.conf %{buildroot}%{_prefix}%{_sysconfdir}/transactional-update.d/50-desktop.conf

# Install systemd configuration
mkdir -p %{buildroot}%{_sysconfdir}/systemd/system/greetd.service.d/ordering.conf
## install -m 0644 ./config/systemd/10-fde.conf \
##    %{buildroot}%{_sysconfdir}/systemd/system/greetd.service.d/10-fde.conf
mkdir -p %{buildroot}%{_unitdir}
install -m 0644 ./config/systemd/moldavite-firstboot.service \
    %{buildroot}%{_unitdir}/moldavite-firstboot.service

%check
# no test suite available

%post
test -e %{_sysconfdir}/greetd/greetd.conf && \
    mv -n %{_sysconfdir}/greetd/greetd.conf %{_sysconfdir}/greetd/greetd.conf.orig || true
cp %{_sysconfdir}/greetd/greetd.conf.way %{_sysconfdir}/greetd/greetd.conf

%postun
test -e %{_sysconfdir}/greetd/greetd.conf.orig && \
    mv %{_sysconfdir}/greetd/greetd.conf.orig %{_sysconfdir}/greetd/greetd.conf || true

%files
%{_bindir}/sway-run.sh
%{_bindir}/sway-greetd.sh
%config %{_sysconfdir}/profile.d/sway.sh*
%dir %{_sysconfdir}/skel/.config
%config %{_sysconfdir}/skel/.config/mimeapps.list
%dir %{_sysconfdir}/systemd/system/greetd.service.d
# %%config %%{_sysconfdir}/systemd/system/greetd.service.d/10-fde.conf
%config %{_sysconfdir}/xdg/xdg-terminals.list
%dir %{_sysconfdir}/greetd
%config %{_sysconfdir}/greetd/greetd.conf.way
%config %{_sysconfdir}/greetd/sway-config
%{_sysconfdir}/sway
%{_sysconfdir}/xdg/waybar
%{_datadir}/moldavite-desktop
%{_datadir}/wallpapers/
%{_datadir}/wayland-sessions
%{_libexecdir}/moldavite
%dir %{_prefix}/lib/systemd/user
%{_prefix}/lib/systemd/user/sway.service
%{_prefix}/lib/systemd/user/sway-session.target
%{_prefix}%{_sysconfdir}/transactional-update.d
%{_unitdir}/moldavite-firstboot.service

%changelog
openSUSE Build Service is sponsored by