Bug 1627084

Summary: Review Request: mutter328 - Window and compositing manager based on Clutter
Product: [Fedora] Fedora Reporter: Fabio Valentini <decathorpe>
Component: Package ReviewAssignee: Neal Gompa <ngompa13>
Status: CLOSED NEXTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: igor.raits, ngompa13, package-review
Target Milestone: ---Flags: ngompa13: fedora-review+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-09-10 21:26:28 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Fabio Valentini 2018-09-10 12:03:44 UTC
Spec URL: https://decathorpe.fedorapeople.org/packages/mutter328.spec
SRPM URL: https://decathorpe.fedorapeople.org/packages/mutter328-3.28.3-4.fc28.src.rpm


Description:
============

Mutter is a window and compositing manager that displays and manages
your desktop via OpenGL. Mutter combines a sophisticated display engine
using the Clutter toolkit with solid window-management logic inherited
from the Metacity window manager.

While Mutter can be used stand-alone, it is primarily intended to be
used as the display core of a larger system such as GNOME Shell. For
this reason, Mutter is very extensible via plugins, which are used both
to add fancy visual effects and to rework the window management
behaviors to meet the needs of the environment.

Fedora Account System Username: decathorpe


koji scratch build for rawhide: https://koji.fedoraproject.org/koji/taskinfo?taskID=29597663


Packager's Notes:
=================

This package is based on the f28 branch of the main mutter package, and has been cleaned up for best practices and new Guidelines. The package is needed as a compat package for gala, wingpanel, and future versions pantheon-greeter due to an API and ABI bump in mutter with versions 3.29.4+ (libmutter-2 -> libmutter-3).

In addition, I've added Conflicts tags to the packages where they conflict with the main mutter package. It looks like gala does not require any of mutter's data files to be present, but only requires the shared libraries (and possibly GSettings keys, etc.) - that's why I split them out into a new -libs sub-package. It boils down to this:

- mutter328-devel is only needed as BuildRequires for gala and pantheon-greeter. This package is not parallel-installable with mutter-devel 3.30 in f29 and rawhide (this is expected).
- mutter328-libs is only needed as runtime requirement of gala, wingpanel, and pantheon-greeter. This package is parallel-installable with mutter 3.30 in f29 and rawhide, and depends on the main mutter package for the data files (e.g. GSettings schemas).
- mutter328 and mutter328-tests are expected to conflict with the main mutter package, and should never be installed manually (and should not be pulled in as dependencies automatically).

I checked that this works as expected with rebuilt packages from my COPR repositories (decathorpe/elementary-staging for stable builds, decathorpe/elementary-nightly for builds from git master).

Comment 1 Neal Gompa 2018-09-10 14:45:11 UTC
Taking this review.

Comment 2 Neal Gompa 2018-09-10 18:17:44 UTC
Review notes:

[x] Package is functionally identical to mutter
[x] Package builds and is installable
[x] Package follows guidelines for compatibility packages

PACKAGE APPROVED.

Comment 3 Fabio Valentini 2018-09-10 19:25:56 UTC
Thanks so much for the quick review!

I requested a repository with master and f29 branches:
https://pagure.io/releng/fedora-scm-requests/issue/8084
https://pagure.io/releng/fedora-scm-requests/issue/8085

Comment 4 Gwyn Ciesla 2018-09-10 19:52:35 UTC
(fedscm-admin):  The Pagure repository was created at https://src.fedoraproject.org/rpms/mutter328

Comment 6 Igor Raits 2018-09-11 15:44:27 UTC
why is it called 328 and not 3.28?

Comment 7 Fabio Valentini 2018-09-11 15:53:27 UTC
Because I think periods in package names look weird and wrong.

According to [0], including the periods is a SHOULD, not a MUST:

"The package version, which SHOULD include the periods present in the original version."

[0]: https://fedoraproject.org/wiki/Packaging:Naming?rd=Packaging:NamingGuidelines#Multiple_packages_with_the_same_base_name