]> git.pld-linux.org Git - packages/cinnamon.git/blobdiff - cinnamon.spec
- updated to 6.0.4 (translations 6.0.2)
[packages/cinnamon.git] / cinnamon.spec
index 12bf7f0f6af3adb0dfbe7ab9679af2e018767ab4..029bcd1d6d444fd917fcb1757ff5aaffbc1b9de3 100644 (file)
@@ -1,50 +1,72 @@
+# TODO:
+# - fulfill dependencies
+# -- python3 pampy or pam module - `import pam` or `import PAM`
+# -- mintlocale (what for?)
+#
+# Conditional build:
+%bcond_without apidocs # API documentation
+
+%define        translations_version    6.0.2
 %define        cinnamon_desktop_ver    2.4.0
-%define        cjs_ver                 3.2.0
+%define        cinnamon_menus_ver      4.8.0
+%define        cjs_ver                 4.8.0
 %define        gi_ver                  1.34.2
-%define        muffin_version          4.0.3
-Summary:       Window management and application launching for GNOME
-Summary(pl.UTF-8):     Zarządzanie oknami i uruchamianie aplikacji dla GNOME
+%define        glib_ver                1:2.52.0
+%define        muffin_ver              5.2.0
+Summary:       Window management and application launching for Cinnamon
+Summary(pl.UTF-8):     Zarządzanie oknami i uruchamianie aplikacji dla środowiska Cinnamon
 Name:          cinnamon
-Version:       4.4.8
+Version:       6.0.4
 Release:       0.1
 License:       GPL v2+ and LGPL v2+
 Group:         X11/Applications
+#Source0Download: https://github.com/linuxmint/Cinnamon/tags
 Source0:       https://github.com/linuxmint/Cinnamon/archive/%{version}/%{name}-%{version}.tar.gz
-# Source0-md5: 4f7901e5f32b4641a4e1388b79821a0d
-Source1:       polkit-%{name}-authentication-agent-1.desktop
-Source2:       %{name}-fedora.gschema.override
+# Source0-md5: dd18dcb7d39a9278e9a1613091dd6298
+#Source1Download: https://github.com/linuxmint/cinnamon-translations/tags
+Source1:       https://github.com/linuxmint/cinnamon-translations/archive/%{translations_version}/cinnamon-translations-%{translations_version}.tar.gz
+# Source1-md5: 36552df46587be4e32ac311b8d7084e4
+Source2:       polkit-%{name}-authentication-agent-1.desktop
+Source3:       %{name}-common.gschema.override
+Source4:       %{name}-apps.gschema.override
 Patch0:                background.patch
 Patch1:                autostart.patch
+Patch2:                %{name}-gtkdoc.patch
 Patch3:                set_wheel.patch
+Patch4:                fix_path.patch
 Patch5:                revert_25aef37.patch
+Patch6:                %{name}-menu.patch
 Patch7:                default_panal_launcher.patch
 URL:           https://github.com/linuxmint/Cinnamon
 BuildRequires: NetworkManager-devel
 BuildRequires: OpenGL-devel
 BuildRequires: at-spi2-atk-devel >= 2.0
-BuildRequires: autoconf >= 2.63
-BuildRequires: automake >= 1:1.11
 BuildRequires: cinnamon-desktop-devel >= %{cinnamon_desktop_ver}
-BuildRequires: cinnamon-menus-devel
+BuildRequires: cinnamon-menus-devel >= %{cinnamon_menus_ver}
 BuildRequires: cjs-devel >= %{cjs_ver}
-BuildRequires: dbus-glib-devel
+BuildRequires: dbus-devel
 BuildRequires: desktop-file-utils
-BuildRequires: glib2-devel >= 1:2.35.0
+BuildRequires: gettext-tools
+BuildRequires: glib2-devel >= %{glib_ver}
 BuildRequires: gobject-introspection-devel >= %{gi_ver}
 BuildRequires: gtk+3-devel >= 3.12.0
 # for screencast recorder functionality
 BuildRequires: gstreamer-devel >= 1.0
 BuildRequires: gtk-doc >= 1.15
 BuildRequires: intltool >= 0.40
-BuildRequires: libcroco-devel >= 0.6.2
-BuildRequires: libsoup-devel >= 2.4
-BuildRequires: libtool >= 2:2.2.6
 BuildRequires: libxml2-devel >= 2.0
+BuildRequires: meson >= 0.56.0
 BuildRequires: muffin-devel >= %{muffin_ver}
+BuildRequires: ninja >= 1.5
 BuildRequires: pkgconfig >= 1:0.22
 BuildRequires: polkit-devel >= 0.100
-BuildRequires: startup-notification-devel >= 0.11
+BuildRequires: python3 >= 1:3.2
+BuildRequires: rpm-build >= 4.6
+BuildRequires: rpmbuild(macros) >= 1.736
+BuildRequires: xapps-devel >= 2.6.0
 BuildRequires: xorg-lib-libX11-devel
+BuildRequires: xorg-lib-libXfixes-devel
+Requires:      glib2 >= %{glib_ver}
 Requires:      muffin >= %{muffin_ver}
 # wrapper script uses to restart old GNOME session if run --replace
 # from the command line
@@ -52,6 +74,8 @@ Requires:     gobject-introspection >= %{gi_ver}
 # needed for loading SVG's via gdk-pixbuf
 Requires:      librsvg >= 2.0
 Requires:      polkit >= 0.100
+# required by polkit-cinnamon-authentication-agent-1.desktop
+Requires:      polkit-gnome
 # through UPowerGlib typelib
 Requires:      upower
 # needed for session files
@@ -63,39 +87,42 @@ Requires:   caribou
 # needed for the user menu
 Requires:      accountsservice-libs
 Requires:      cinnamon-control-center
-Requires:      cinnamon-translations
+Requires:      cinnamon-nemo
 Requires:      mintlocale
-Requires:      python-dbus
-Requires:      python-pexpect
-Requires:      python-pillow
-Requires:      python-pygobject3
+Requires:      python3-dbus
+Requires:      python3-pexpect
+Requires:      python3-pillow
+Requires:      python3-pygobject3
 # needed for settings (cinnamon-settings/modules/cs_user.py)
 Requires:      python3-PyPAM
 # RequiredComponents in the session files
 Requires:      cinnamon-screensaver
-Requires:      nemo
-
-# metacity is needed for fallback
-Requires:      metacity
-Requires:      tint2
 
 # needed for theme overrides
-Requires:      gnome-themes
+Requires:      gnome-backgrounds
 
 # required for keyboard applet
 Requires:      gucharmap
 
-# required for network applet
+# nm-applet, nm-connection-editor required for network applet
 Requires:      NetworkManager-applet
-Requires:      nm-connection-editor
 
 # required for looking glass
-Requires:      python-inotify
+Requires:      python3-pyinotify
+
+# metacity is needed as fallback for cinnamon
+Suggests:      metacity
+# mate-panel > gnome-panel > tint2
+Suggests:      gnome-panel
+Suggests:      mate-panel
+Suggests:      tint2
 
 Provides:      desktop-notification-daemon
-Obsoletes:     cinnamon-2d
-Obsoletes:     cinnamon-menu-editor
-Obsoletes:     cinnamon-settings
+Obsoletes:     cinnamon-2d < 2.4
+Obsoletes:     cinnamon-menu-editor < 2.4
+Obsoletes:     cinnamon-settings < 2.4
+Obsoletes:     cinnamon-translations < 4
+BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %description
 Cinnamon is a Linux desktop which provides advanced innovative
@@ -118,9 +145,7 @@ w domu, oraz żeby zapewnić im łatwe w użyciu i wygodne środowisko.
 Summary:       API documentation for Cinnamon desktop
 Summary(pl.UTF-8):     Dokumentacja API środowiska Cinnamon
 Group:         Documentation
-%if "%{_rpmversion}" >= "4.6"
 BuildArch:     noarch
-%endif
 
 %description apidocs
 API documentation for Cinnamon desktop.
@@ -129,50 +154,38 @@ API documentation for Cinnamon desktop.
 Dokumentacja API środowiska Cinnamon.
 
 %prep
-%setup -q
+%setup -q -a1
 %patch0 -p1
 %patch1 -p1
+%patch2 -p1
 %patch3 -p1
+%patch4 -p1
 %patch5 -p1
+%patch6 -p1
 %patch7 -p1
 
 # cleanup backups after patching
 find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
 
 %build
-install -d m4
-%{__glib_gettextize}
-%{__gtkdocize}
-%{__intltoolize}
-%{__libtoolize}
-%{__aclocal} -I m4
-%{__autoconf}
-%{__autoheader}
-%{__automake}
-%configure \
-       --disable-silent-rules \
-       --disable-static \
-       --disable-rpath \
-       --disable-schemas-compile \
-       --enable-introspection \
-       --enable-compile-warnings=no \
-       --with-ca-certificates=/etc/certs/ca-certificates.crt \
-       --with-html-dir=%{_gtkdocdir}
-
-%{__make}
+%meson build \
+       --default-library=shared \
+       %{?with_apidocs:-Ddocs=true}
+
+%ninja_build -C build
+
+%{__make} -C cinnamon-translations-%{translations_version}
 
 %install
 rm -rf $RPM_BUILD_ROOT
 
-%{__make} install \
-       DESTDIR=$RPM_BUILD_ROOT
-
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/cinnamon/libcinnamon.la
+%ninja_install -C build
 
-install -D %{SOURCE2} $RPM_BUILD_ROOT%{_datadir}/glib-2.0/schemas/cinnamon-fedora.gschema.override
+install -Dp %{SOURCE3} $RPM_BUILD_ROOT%{_datadir}/glib-2.0/schemas/cinnamon-common.gschema.override
+install -Dp %{SOURCE4} $RPM_BUILD_ROOT%{_datadir}/glib-2.0/schemas/cinnamon-apps.gschema.override
 
 # install polkit autostart desktop file
-%{__sed} -e 's,@libexecdir@,%{_libexecdir},' %{SOURCE1} >$RPM_BUILD_ROOT%{_desktopdir}/polkit-cinnamon-authentication-agent-1.desktop
+%{__sed} -e 's,@libexecdir@,%{_libexecdir},' %{SOURCE2} >$RPM_BUILD_ROOT%{_desktopdir}/polkit-cinnamon-authentication-agent-1.desktop
 
 desktop-file-validate $RPM_BUILD_ROOT%{_desktopdir}/cinnamon.desktop
 desktop-file-validate $RPM_BUILD_ROOT%{_desktopdir}/cinnamon2d.desktop
@@ -180,15 +193,27 @@ desktop-file-validate $RPM_BUILD_ROOT%{_desktopdir}/cinnamon-settings*.desktop
 desktop-file-validate $RPM_BUILD_ROOT%{_desktopdir}/cinnamon-menu-editor.desktop
 desktop-file-validate $RPM_BUILD_ROOT%{_desktopdir}/polkit-cinnamon-authentication-agent-1.desktop
 
-# fix hardcoded path
-#sed -i -e 's@/usr/lib/cinnamon-control-center@%{_libdir}/cinnamon-control-center@g' \
-#      $RPM_BUILD_ROOT%{_prefix}/lib/cinnamon-settings/bin/capi.py
+%py3_comp $RPM_BUILD_ROOT%{py3_sitescriptdir}/cinnamon
+%py3_ocomp $RPM_BUILD_ROOT%{py3_sitescriptdir}/cinnamon
+
+# no headers
+%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/cinnamon/{Cinnamon-0.1,St-1.0}.gir
 
-# create directory for lang files
-install -d $RPM_BUILD_ROOT%{_datadir}/cinnamon/locale
+# to fix man page brp check (note: do not package)
+touch $RPM_BUILD_ROOT%{_mandir}/man1/cinnamon-session.1
 
-# to fix man page brp check
-touch $RPM_BUILD_ROOT%{_mandir}/man1/gnome-session.1
+cd cinnamon-translations-%{translations_version}
+for f in usr/share/locale/*/LC_MESSAGES/%{name}.mo ; do
+       install -Dp "$f" "$RPM_BUILD_ROOT/$f"
+done
+cd ..
+
+# not supported by glibc (as of 2.39)
+%{__rm} -r $RPM_BUILD_ROOT%{_localedir}/{ie,frp,jv,ksw,nap,rue,qu,sco}
+# almost empty version of nb(?) under withdrawn code
+%{__rm} -r $RPM_BUILD_ROOT%{_localedir}/no
+
+%find_lang %{name}
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -206,12 +231,17 @@ fi
 %update_icon_cache hicolor
 %glib_compile_schemas
 
-%files
+%files -f %{name}.lang
 %defattr(644,root,root,755)
-%doc AUTHORS README.rst
+%doc AUTHORS README.rst debian/changelog
 %attr(755,root,root) %{_bindir}/cinnamon
+%attr(755,root,root) %{_bindir}/cinnamon-calendar-server
+%attr(755,root,root) %{_bindir}/cinnamon-close-dialog
+%attr(755,root,root) %{_bindir}/cinnamon-dbus-command
 %attr(755,root,root) %{_bindir}/cinnamon-desktop-editor
+%attr(755,root,root) %{_bindir}/cinnamon-display-changes-dialog
 %attr(755,root,root) %{_bindir}/cinnamon-file-dialog
+%attr(755,root,root) %{_bindir}/cinnamon-hover-click
 %attr(755,root,root) %{_bindir}/cinnamon-install-spice
 %attr(755,root,root) %{_bindir}/cinnamon-json-makepot
 %attr(755,root,root) %{_bindir}/cinnamon-killer-daemon
@@ -225,6 +255,7 @@ fi
 %attr(755,root,root) %{_bindir}/cinnamon-settings
 %attr(755,root,root) %{_bindir}/cinnamon-settings-users
 %attr(755,root,root) %{_bindir}/cinnamon-slideshow
+%attr(755,root,root) %{_bindir}/cinnamon-spice-updater
 %attr(755,root,root) %{_bindir}/cinnamon-subprocess-wrapper
 %attr(755,root,root) %{_bindir}/cinnamon-xlet-makepot
 %attr(755,root,root) %{_bindir}/cinnamon2d
@@ -232,19 +263,18 @@ fi
 %attr(755,root,root) %{_bindir}/xlet-settings
 %dir %{_libdir}/cinnamon
 %attr(755,root,root) %{_libdir}/cinnamon/libcinnamon.so
+%attr(755,root,root) %{_libdir}/cinnamon/libst.so
 %{_libdir}/cinnamon/Cinnamon-0.1.typelib
 %{_libdir}/cinnamon/St-1.0.typelib
-%if "%{_libexecdir}" != "%{_libdir}"
-%dir %{_libexecdir}/cinnamon
-%endif
-%attr(755,root,root) %{_libexecdir}/cinnamon/cinnamon-hotplug-sniffer
-%attr(755,root,root) %{_libexecdir}/cinnamon/cinnamon-perf-helper
+%attr(755,root,root) %{_libexecdir}/cinnamon-calendar-server.py
+%attr(755,root,root) %{_libexecdir}/cinnamon-hotplug-sniffer
+%attr(755,root,root) %{_libexecdir}/cinnamon-perf-helper
+%{py3_sitescriptdir}/cinnamon
 /etc/xdg/menus/cinnamon-applications-merged
 /etc/xdg/menus/cinnamon-applications.menu
 %dir %{_datadir}/cinnamon
 %{_datadir}/cinnamon/applets
 %{_datadir}/cinnamon/bumpmaps
-%attr(755,root,root) %{_datadir}/cinnamon/cinnamon-dbus-command
 %{_datadir}/cinnamon/cinnamon-desktop-editor
 %{_datadir}/cinnamon/cinnamon-looking-glass
 %{_datadir}/cinnamon/cinnamon-menu-editor
@@ -257,6 +287,7 @@ fi
 %attr(755,root,root) %{_datadir}/cinnamon/cinnamon-settings/xlet-settings.py
 %{_datadir}/cinnamon/cinnamon-settings/config.py
 %{_datadir}/cinnamon/cinnamon-settings/icons
+%{_datadir}/cinnamon/cinnamon-settings/*.svg
 %{_datadir}/cinnamon/cinnamon-settings/*.ui
 %{_datadir}/cinnamon/cinnamon-slideshow
 %{_datadir}/cinnamon/desklets
@@ -265,53 +296,68 @@ fi
 %{_datadir}/cinnamon/js
 %{_datadir}/cinnamon/search_providers
 %{_datadir}/cinnamon/sounds
+%{_datadir}/cinnamon/styles.d
 %{_datadir}/cinnamon/theme
 %{_datadir}/cinnamon/thumbnails
 %{_datadir}/cinnamon-session/sessions/cinnamon.session
+%{_datadir}/cinnamon-session/sessions/cinnamon-wayland.session
 %{_datadir}/cinnamon-session/sessions/cinnamon2d.session
 %{_datadir}/dbus-1/services/org.Cinnamon.HotplugSniffer.service
 %{_datadir}/dbus-1/services/org.Cinnamon.Melange.service
 %{_datadir}/dbus-1/services/org.Cinnamon.Slideshow.service
+%{_datadir}/dbus-1/services/org.cinnamon.CalendarServer.service
 %{_datadir}/desktop-directories/cinnamon-*.directory
-%{_datadir}/glib-2.0/schemas/cinnamon-fedora.gschema.override
+%{_datadir}/glib-2.0/schemas/cinnamon-apps.gschema.override
+%{_datadir}/glib-2.0/schemas/cinnamon-common.gschema.override
+%{_datadir}/glib-2.0/schemas/org.cinnamon.gestures.gschema.xml
 %{_datadir}/glib-2.0/schemas/org.cinnamon.gschema.xml
 %{_datadir}/polkit-1/actions/org.cinnamon.settings-users.policy
+%{_datadir}/wayland-sessions/cinnamon-wayland.desktop
+%{_datadir}/xdg-desktop-portal/x-cinnamon-portals.conf
 %{_datadir}/xsessions/cinnamon.desktop
 %{_datadir}/xsessions/cinnamon2d.desktop
 %{_desktopdir}/cinnamon-killer-daemon.desktop
 %{_desktopdir}/cinnamon-menu-editor.desktop
 %{_desktopdir}/cinnamon-onscreen-keyboard.desktop
 %{_desktopdir}/cinnamon-settings*.desktop
+%{_desktopdir}/cinnamon-wayland.desktop
 %{_desktopdir}/cinnamon.desktop
 %{_desktopdir}/cinnamon2d.desktop
 %{_desktopdir}/polkit-cinnamon-authentication-agent-1.desktop
-%{_iconsdir}/hicolor/scalable/actions/caps-lock*-symbolic.svg
+%{_iconsdir}/hicolor/24x24/actions/cinnamon-hc-*-click.png
+%{_iconsdir}/hicolor/scalable/actions/cinnamon-caps-lock-*symbolic.svg
+%{_iconsdir}/hicolor/scalable/actions/cinnamon-num-lock-*symbolic.svg
 %{_iconsdir}/hicolor/scalable/actions/list-edit-symbolic.svg
-%{_iconsdir}/hicolor/scalable/actions/num-lock*-symbolic.svg
 %{_iconsdir}/hicolor/scalable/actions/pan-*-symbolic.svg
 %{_iconsdir}/hicolor/scalable/actions/pan-*-symbolic-rtl.svg
 %{_iconsdir}/hicolor/scalable/apps/cinnamon.svg
 %{_iconsdir}/hicolor/scalable/apps/cinnamon-panel-launcher.svg
 %{_iconsdir}/hicolor/scalable/apps/cinnamon-symbolic.svg
+%{_iconsdir}/hicolor/scalable/apps/cinnamon-virtual-keyboard.svg
 %{_iconsdir}/hicolor/scalable/apps/removable-drives.svg
+%{_iconsdir}/hicolor/scalable/categories/cinnamon-all-applications-symbolic.svg
 %{_iconsdir}/hicolor/scalable/categories/cs-*.svg
 %{_iconsdir}/hicolor/scalable/devices/audio-speaker-*.svg
 %{_iconsdir}/hicolor/scalable/devices/audio-subwoofer.svg
 %{_iconsdir}/hicolor/scalable/devices/bluetooth.svg
 %{_iconsdir}/hicolor/scalable/devices/cpu-symbolic.svg
 %{_iconsdir}/hicolor/scalable/emblems/cs-xlet-*.svg
+%{_mandir}/man1/cinnamon.1*
 %{_mandir}/man1/cinnamon-launcher.1*
+%{_mandir}/man1/cinnamon-looking-glass.1*
 %{_mandir}/man1/cinnamon-menu-editor.1*
+%{_mandir}/man1/cinnamon-screensaver-lock-dialog.1*
 %{_mandir}/man1/cinnamon-settings.1*
-%{_mandir}/man1/cinnamon.1*
-%{_mandir}/man1/cinnamon2d.1
-%{_mandir}/man1/gnome-session-cinnamon.1
-%{_mandir}/man1/gnome-session-cinnamon2d.1
-%{_mandir}/man1/gnome-session.1
+%{_mandir}/man1/cinnamon-session-cinnamon.1*
+%{_mandir}/man1/cinnamon-session-cinnamon2d.1*
+%{_mandir}/man1/cinnamon2d.1*
+%exclude %{_mandir}/man1/cinnamon-session.1
 
+%if %{with apidocs}
 %files apidocs
 %defattr(644,root,root,755)
 %{_gtkdocdir}/cinnamon
 %{_gtkdocdir}/cinnamon-js
 %{_gtkdocdir}/cinnamon-st
 %{_gtkdocdir}/cinnamon-tutorials
+%endif
This page took 0.1243 seconds and 4 git commands to generate.