Bug 824703 - Review Request: gnome-shell-theme-selene - The Selene gnome-shell theme
Review Request: gnome-shell-theme-selene - The Selene gnome-shell theme
Status: CLOSED ERRATA
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
rawhide
All Linux
medium Severity medium
: ---
: ---
Assigned To: Mario Blättermann
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2012-05-23 23:12 EDT by Adrian Alves
Modified: 2012-10-22 00:51 EDT (History)
4 users (show)

See Also:
Fixed In Version: gnome-shell-theme-selene-3.4.0-5.fc18
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2012-10-22 00:24:05 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
mario.blaettermann: fedora‑review+
limburgher: fedora‑cvs+


Attachments (Terms of Use)

  None (edit)
Description Adrian Alves 2012-05-23 23:12:50 EDT
Spec URL: http://alvesadrian.fedorapeople.org/gnome-shell-theme-selene.spec
SRPM URL: http://alvesadrian.fedorapeople.org/gnome-shell-theme-selene-3.4.0-1.fc16.src.rpm
Description: Selene is an "almost dark" theme based on elementary GTK theme, inspired by the old Atolm GTK2 theme.
Fedora Account System Username: alvesadrian
Comment 1 Mario Blättermann 2012-08-12 14:33:12 EDT
Looks almost fine, but look here:

%doc %{_datadir}/themes/%{theme_name}/gnome-shell/LICENSE
%dir %{_datadir}/themes/%{theme_name}
%{_datadir}/themes/%{theme_name}/gnome-shell/*

The folder /usr/share/themes/selene is owned by your package, and also the files LICENSE and all the shell design files, but the folder /usr/share/themes/selene/gnome-shell stays unowned. Better:

%doc %{_datadir}/themes/%{theme_name}/gnome-shell/LICENSE
%dir %{_datadir}/themes/%{theme_name}
%dir %{_datadir}/themes/%{theme_name}/gnome-shell
%{_datadir}/themes/%{theme_name}/gnome-shell/*
Comment 2 Mario Blättermann 2012-09-13 16:27:28 EDT
Any news...?
Comment 4 Mario Blättermann 2012-09-16 12:06:23 EDT
Your srpm link is dead, it points to the old package. It is now http://alvesadrian.fedorapeople.org/gnome-shell-theme-selene-3.4.0-2.fc16.src.rpm

Doesn't matter, here's the scratch build:
http://koji.fedoraproject.org/koji/taskinfo?taskID=4488087

Formal review follows.
Comment 5 Mario Blättermann 2012-09-16 12:28:10 EDT
$ rpmlint -i -v *
gnome-shell-theme-selene.src: I: checking
gnome-shell-theme-selene.src: I: checking-url https://launchpad.net/~tista/+archive/selene (timeout 10 seconds)
gnome-shell-theme-selene.src: W: no-%build-section
The spec file does not contain a %build section.  Even if some packages don't
directly need it, section markers may be overridden in rpm's configuration to
provide additional "under the hood" functionality, such as injection of
automatic -debuginfo subpackages.  Add the section, even if empty.

gnome-shell-theme-selene.src:9: W: mixed-use-of-spaces-and-tabs (spaces: line 9, tab: line 6)
The specfile mixes use of spaces and tabs for indentation, which is a cosmetic
annoyance.  Use either spaces or tabs for indentation, not both.

gnome-shell-theme-selene.src: I: checking-url https://launchpad.net/~tista/+archive/selene/+files/gnome-shell-theme-selene_3.4.1-0ubuntu1~tista1.tar.gz (timeout 10 seconds)
gnome-shell-theme-selene.noarch: I: checking
gnome-shell-theme-selene.noarch: I: checking-url https://launchpad.net/~tista/+archive/selene (timeout 10 seconds)
gnome-shell-theme-selene.spec: W: no-%build-section
The spec file does not contain a %build section.  Even if some packages don't
directly need it, section markers may be overridden in rpm's configuration to
provide additional "under the hood" functionality, such as injection of
automatic -debuginfo subpackages.  Add the section, even if empty.

gnome-shell-theme-selene.spec:9: W: mixed-use-of-spaces-and-tabs (spaces: line 9, tab: line 6)
The specfile mixes use of spaces and tabs for indentation, which is a cosmetic
annoyance.  Use either spaces or tabs for indentation, not both.

gnome-shell-theme-selene.spec: I: checking-url https://launchpad.net/~tista/+archive/selene/+files/gnome-shell-theme-selene_3.4.1-0ubuntu1~tista1.tar.gz (timeout 10 seconds)
2 packages and 1 specfiles checked; 0 errors, 4 warnings.


Please add a %build section. Well, it isn't needed for packages for which we just have to copy files. But perhaps you need in the future, and one more line doesn't eat really much disk space. Moreover, rpmlint is happy again.

The mixed use of whitespaces and tabs has to be fixed, too. I recommend spaces, because that way the file view is the same in all text editors, independent from the configured tab width. BTW, there's a packager (don't remember his name for now) who insists on a tab width of five characters. Very annoying for a reviewer...
Comment 6 Adrian Alves 2012-09-16 19:32:49 EDT
Spec URL: http://alvesadrian.fedorapeople.org/gnome-shell-theme-selene.spec
SRPM URL: http://alvesadrian.fedorapeople.org/gnome-shell-theme-selene-3.4.0-3.fc16.src.rpm

there u go a new releases with rpmlint gaves no wornings
Comment 7 Mario Blättermann 2012-09-17 14:17:17 EDT
Scratch build:
http://koji.fedoraproject.org/koji/taskinfo?taskID=4492426

$ rpmlint -i -v *
gnome-shell-theme-selene.src: I: checking
gnome-shell-theme-selene.src: I: checking-url https://launchpad.net/~tista/+archive/selene (timeout 10 seconds)
gnome-shell-theme-selene.src: I: checking-url https://launchpad.net/~tista/+archive/selene/+files/gnome-shell-theme-selene_3.4.1-0ubuntu1~tista1.tar.gz (timeout 10 seconds)
gnome-shell-theme-selene.noarch: I: checking
gnome-shell-theme-selene.noarch: I: checking-url https://launchpad.net/~tista/+archive/selene (timeout 10 seconds)
gnome-shell-theme-selene.spec: I: checking-url https://launchpad.net/~tista/+archive/selene/+files/gnome-shell-theme-selene_3.4.1-0ubuntu1~tista1.tar.gz (timeout 10 seconds)
2 packages and 1 specfiles checked; 0 errors, 0 warnings.

All is fine.


---------------------------------
key:

[+] OK
[.] OK, not applicable
[X] needs work
---------------------------------

[+] MUST: rpmlint must be run on the source rpm and all binary rpms the build produces. The output should be posted in the review.
[+] MUST: The package must be named according to the Package Naming Guidelines.
[+] MUST: The spec file name must match the base package %{name}, in the format %{name}.spec unless your package has an exemption.
[+] MUST: The package must meet the Packaging Guidelines.
[+] MUST: The package must be licensed with a Fedora approved license and meet the Licensing Guidelines.
[X] MUST: The License field in the package spec file must match the actual license.
    GPLv3 is OK so far, but the css file headers say LGPLv2.1. That's why
    the license field in your spec has to be "GPLv3 and LGPLv2.1"

[+] MUST: If (and only if) the source package includes the text of the license(s) in its own file, then that file, containing the text of the license(s) for the package must be included in %doc.
[+] MUST: The spec file must be written in American English.
[+] MUST: The spec file for the package MUST be legible.
[+] MUST: The sources used to build the package must match the upstream source, as provided in the spec URL. Reviewers should use sha256sum for this task as it is used by the sources file once imported into git. If no upstream URL can be specified for this package, please see the Source URL Guidelines for how to deal with this.
    $ sha256sum *
    ba20dc5e97e38b297afdf324379e768e664f7d0593d36eff88fcfe19821ee6cc  gnome-shell-theme-selene_3.4.1-0ubuntu1~tista1.tar.gz
    ba20dc5e97e38b297afdf324379e768e664f7d0593d36eff88fcfe19821ee6cc  gnome-shell-theme-selene_3.4.1-0ubuntu1~tista1.tar.gz.packaged

[+] MUST: The package MUST successfully compile and build into binary rpms on at least one primary architecture.
[.] MUST: If the package does not successfully compile, build or work on an architecture, then those architectures should be listed in the spec in ExcludeArch. Each architecture listed in ExcludeArch MUST have a bug filed in bugzilla, describing the reason that the package does not compile/build/work on that architecture. The bug number MUST be placed in a comment, next to the corresponding ExcludeArch line.
[.] MUST: All build dependencies must be listed in BuildRequires, except for any that are listed in the exceptions section of the Packaging Guidelines ; inclusion of those as BuildRequires is optional. Apply common sense.
[.] MUST: The spec file MUST handle locales properly. This is done by using the %find_lang macro. Using %{_datadir}/locale/* is strictly forbidden.
[.] MUST: Every binary RPM package (or subpackage) which stores shared library files (not just symlinks) in any of the dynamic linker's default paths, must call ldconfig in %post and %postun.
[.] MUST: Packages must NOT bundle copies of system libraries.
[.] MUST: If the package is designed to be relocatable, the packager must state this fact in the request for review, along with the rationalization for relocation of that specific package. Without this, use of Prefix: /usr is considered a blocker.
[+] MUST: A package must own all directories that it creates. If it does not create a directory that it uses, then it should require a package which does create that directory.
[+] MUST: A Fedora package must not list a file more than once in the spec file's %files listings. (Notable exception: license texts in specific situations)
[+] MUST: Permissions on files must be set properly. Executables should be set with executable permissions, for example.
[+] MUST: Each package must consistently use macros.
[+] MUST: The package must contain code, or permissable content.
[.] MUST: Large documentation files must go in a -doc subpackage. (The definition of large is left up to the packager's best judgement, but is not restricted to size. Large can refer to either size or quantity).
[+] MUST: If a package includes something as %doc, it must not affect the runtime of the application. To summarize: If it is in %doc, the program must run properly if it is not present.
[.] MUST: Static libraries must be in a -static package.
[.] MUST: Development files must be in a -devel package.
[.] MUST: In the vast majority of cases, devel packages must require the base package using a fully versioned dependency: Requires: %{name}%{?_isa} = %{version}-%{release}
[.] MUST: Packages must NOT contain any .la libtool archives, these must be removed in the spec if they are built.
[.] MUST: Packages containing GUI applications must include a %{name}.desktop file, and that file must be properly installed with desktop-file-install in the %install section. If you feel that your packaged GUI application does not need a .desktop file, you must put a comment in the spec file with your explanation.
[+] MUST: Packages must not own files or directories already owned by other packages. The rule of thumb here is that the first package to be installed should own the files or directories that other packages may rely upon. This means, for example, that no package in Fedora should ever share ownership with any of the files or directories owned by the filesystem or man package. If you feel that you have a good reason to own a file or directory that another package owns, then please present that at package review time.
[+] MUST: All filenames in rpm packages must be valid UTF-8.


[.] SHOULD: If the source package does not include license text(s) as a separate file from upstream, the packager SHOULD query upstream to include it.
[.] SHOULD: The description and summary sections in the package spec file should contain translations for supported Non-English languages, if available.
[+] SHOULD: The reviewer should test that the package builds in mock.
    See Koji build above (which uses Mock anyway).
[+] SHOULD: The package should compile and build into binary rpms on all supported architectures.
[+] SHOULD: The reviewer should test that the package functions as described. A package should not segfault instead of running, for example.
[.] SHOULD: If scriptlets are used, those scriptlets must be sane. This is vague, and left up to the reviewers judgement to determine sanity.
[.] SHOULD: Usually, subpackages other than devel should require the base package using a fully versioned dependency.
[.] SHOULD: The placement of pkgconfig(.pc) files depends on their usecase, and this is usually for development purposes, so should be placed in a -devel pkg. A reasonable exception is that the main pkg itself is a devel tool not installed in a user runtime, e.g. gcc or gdb.
[.] SHOULD: If the package has file dependencies outside of /etc, /bin, /sbin, /usr/bin, or /usr/sbin consider requiring the package which provides the file instead of the file itself.
[.] SHOULD: your package should contain man pages for binaries/scripts. If it doesn't, work with upstream to add them where they make sense.


Fix the license field, and your package is ready for approval.
Comment 9 Mario Blättermann 2012-09-18 13:34:38 EDT
OK, your package is APPROVED.

But correct the license field before you import the package into the Git repo, as follows:

License: GPLv3 and LGPLv2.1

Don't use the slash.
Comment 11 Mario Blättermann 2012-09-20 09:13:31 EDT
Your package is already approved anyway, go ahead as usual.
Comment 12 Adrian Alves 2012-09-20 20:50:00 EDT
package ready to be pushed into the repos
Comment 13 Adrian Alves 2012-09-20 20:57:37 EDT
U need to acomplish this to finish with the process
6- A reviewer takes on the task of reviewing your package. They will set the fedora-review flag to ?
7- The reviewer will review your package. You should fix any blockers that the reviewer identifies. Once the reviewer is happy with the package, the fedora-review flag will be set to +, indicating that the package has passed review.
Comment 14 Adrian Alves 2012-09-20 21:08:33 EDT
New Package SCM Request
=======================
Package Name: gnome-shell-theme-selene
Short Description: Selene is a gnome shell theme
Owners: alvesadrian
Branches: f17 f18
InitialCC:
Comment 15 Mario Blättermann 2012-09-21 03:54:41 EDT
Please don't change the "fedora-review" flag, because you are not the reviewer. I set this back now no "+" and add "fedora-cvs ?".
Comment 16 Gwyn Ciesla 2012-09-21 06:08:40 EDT
Git done (by process-git-requests).
Comment 17 Fedora Update System 2012-09-21 07:47:11 EDT
gnome-shell-theme-selene-3.4.0-5.fc17 has been submitted as an update for Fedora 17.
https://admin.fedoraproject.org/updates/gnome-shell-theme-selene-3.4.0-5.fc17
Comment 18 Fedora Update System 2012-09-21 07:58:32 EDT
gnome-shell-theme-selene-3.4.0-5.fc18 has been submitted as an update for Fedora 18.
https://admin.fedoraproject.org/updates/gnome-shell-theme-selene-3.4.0-5.fc18
Comment 19 Fedora Update System 2012-09-22 02:31:00 EDT
gnome-shell-theme-selene-3.4.0-5.fc18 has been pushed to the Fedora 18 testing repository.
Comment 20 Jens Petersen 2012-10-19 06:50:50 EDT
The F-18 Branched report reports this dependency breakage:

"""
[gnome-shell-theme-selene]
        gnome-shell-theme-selene-3.4.0-5.fc18.noarch requires gnome-shell-extensions-user-theme
"""

It seems for f18 gnome-shell-extensions-user-theme was renamed to
gnome-shell-extension-user-theme. F17 looks ok.
Comment 21 Jens Petersen 2012-10-19 06:56:09 EDT
Ok I see now that this was already pushed to stable.

Anyway you could fix this using a rpm conditional

%if %{fedora} >= 18
BuildRequires: gnome-shell-extension-user-theme
%else
BuildRequires: gnome-shell-extensions-user-theme
%endif

Untested, but something along these lines should work.
Comment 22 Mohamed El Morabity 2012-10-19 08:40:04 EDT
(In reply to comment #20)
> The F-18 Branched report reports this dependency breakage:
> 
> """
> [gnome-shell-theme-selene]
>         gnome-shell-theme-selene-3.4.0-5.fc18.noarch requires
> gnome-shell-extensions-user-theme
> """
> 
> It seems for f18 gnome-shell-extensions-user-theme was renamed to
> gnome-shell-extension-user-theme. F17 looks ok.
Not exactly. This package is renamed since F15, in fact.

(In reply to comment #21)
> Ok I see now that this was already pushed to stable.
> 
> Anyway you could fix this using a rpm conditional
> 
> %if %{fedora} >= 18
> BuildRequires: gnome-shell-extension-user-theme
> %else
> BuildRequires: gnome-shell-extensions-user-theme
> %endif
> 
> Untested, but something along these lines should work.

It's useless, since no supported releases of Fedora (16 up to rawhide) provide anymore a package named "gnome-shell-extensionS-user-theme".
Please rely *only* on "gnome-shell-extensions-user-theme".
Comment 23 Mohamed El Morabity 2012-10-19 08:40:38 EDT
> Please rely *only* on "gnome-shell-extensions-user-theme".
I mean, on "gnome-shell-extension-user-theme" (no "S").
Comment 24 Jens Petersen 2012-10-22 00:24:05 EDT
Right - just noticed that, doh.

Fixing in gnome-shell-theme-selene-3.4.0-6

Closing this out for bodhi since already long pushed stable.

Note You need to log in before you can comment on or make changes to this bug.