Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.

Bug 1509679

Summary: Review Request: rofi - A window switcher, application launcher and dmenu replacement
Product: [Fedora] Fedora Reporter: Till Hofmann <thofmann>
Component: Package ReviewAssignee: Jan Pokorný [poki] <jpokorny>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: jpokorny, package-review
Target Milestone: ---Keywords: Reopened
Target Release: ---Flags: jpokorny: fedora-review+
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-11-23 02:31:53 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 Till Hofmann 2017-11-05 17:04:10 UTC
Spec URL: https://thofmann.fedorapeople.org/rofi.spec
SRPM URL: https://thofmann.fedorapeople.org/rofi-1.4.2-1.fc26.src.rpm
Description:
Rofi is a dmenu replacement. Rofi, like dmenu, will provide the user with a
textual list of options where one or more can be selected. This can either be,
running an application, selecting a window or options provided by an external
script.
Fedora Account System Username: thofmann

rpmlint gives three warnings:
$ rpmlint ~/rpmbuild/RPMS/x86_64/rofi-*
rofi.x86_64: W: spelling-error Summary(en_US) dmenu -> menu, d menu, madmen
^ dmenu is correct
rofi.x86_64: W: spelling-error %description -l en_US dmenu -> menu, d menu, madmen
^ dmenu is correct
rofi-devel.x86_64: W: only-non-binary-in-usr-lib
^ the usual false warning
rofi-devel.x86_64: W: no-documentation
^ it's in a separate doc package

The package has two bundled libraries: libgwater and libnkutils. Judging from their upstreams, they are intended as copy libs. Therefore I decided not to package them separately.

Comment 1 Igor Gnatenko 2017-11-05 19:26:10 UTC

*** This bug has been marked as a duplicate of bug 1396761 ***

Comment 2 Till Hofmann 2018-11-01 19:09:50 UTC
Reopened, as 1396761 is stalled.

Comment 3 Jan Pokorný [poki] 2018-11-03 15:18:34 UTC
Hello Till, since you currently maintain sway, I have something for
an attractive review swap if you are interested since these are going
to replace + extend swaygrab experience (unless there's something else
that works equally well) since sway 1.0:

- grim [bug 1645764]
- slurp [bug 1645765]

Vice-versa, I am interested in this dmenu replacement.
How does this sound to you?

(FWIW. also have tweaked sway spec to work with the current sway beta
that I used for my private build -- since upstream asks not to package
that explicitly -- if it would save you some time; also have adopted
wlroots package and updated it to released 0.1 version in Rawhide
in an anticipation of this new sway.)

Comment 4 Till Hofmann 2018-11-03 15:25:43 UTC
Hi Jan,
a review swap sounds good, I can have a look at both your packages!

I'm a bit busy and currently travelling, but if you can wait a couple days, I'll review them.

I'd also be interested in your sway spec (and possibly COPR?)

Also note the NotReady flag on this review request, it needs an update.

Comment 5 Till Hofmann 2018-11-05 19:13:09 UTC
Spec URL: https://thofmann.fedorapeople.org/rofi.spec
SRPM URL: https://thofmann.fedorapeople.org/rofi-1.5.1-1.fc28.src.rpm

koji scratch build: https://koji.fedoraproject.org/koji/taskinfo?taskID=30693834

- Update to 1.5.1
- Run tests
- Remove upstreamed patch
- Add missing BR: doxygen
- Add missing BR: graphviz

Ready for review now!

Comment 6 Jan Pokorný [poki] 2018-11-06 00:52:38 UTC
Thanks, will take a look.

Comment 7 Jan Pokorný [poki] 2018-11-06 13:58:30 UTC
Just some debatable spots based on fedora-review results:

- can the bundled libraries be related to particular versions?
- does it make sense to put themes to a separate noarch subpackage?

Comment 8 Till Hofmann 2018-11-06 14:08:07 UTC
(In reply to Jan Pokorný from comment #7)
> Just some debatable spots based on fedora-review results:
> 
> - can the bundled libraries be related to particular versions?

Not really, as they do not have any releases. However, I could use release tags similar to git snapshot tags: https://fedoraproject.org/wiki/Packaging:Versioning#Snapshots
Do you think that makes sense?

> - does it make sense to put themes to a separate noarch subpackage?

Good suggestion, working on it.

Comment 9 Till Hofmann 2018-11-06 14:13:46 UTC
Spec URL: https://thofmann.fedorapeople.org/rofi.spec
SRPM URL: https://thofmann.fedorapeople.org/rofi-1.5.1-2.fc28.src.rpm

- Move themes into a separate noarch sub-package
- Make doc sub-package noarch

Comment 10 Till Hofmann 2018-11-06 14:20:42 UTC
Spec URL: https://thofmann.fedorapeople.org/rofi.spec
SRPM URL: https://thofmann.fedorapeople.org/rofi-1.5.1-3.fc28.src.rpm

I just realized I forgot the license file. Added it to all independently installable sub-packages.

Comment 11 Jan Pokorný [poki] 2018-11-06 22:22:35 UTC
Good catch about the license file, everything else looks good, just let
me do the final dive.

Re bundled libraries: if there are no versions to practically relate
to, I wouldn't do anything more on that front.

* * *

Re copr for sway beta (feel free to adopt as you wish, in preparation
to finalized release, note that some BRs can be overapproximated set
imposed with previous state of affairs, didn't attempt to establish
deps from scratch):

https://copr.fedorainfracloud.org/coprs/jpokorny/sway-testing/build/820081/

(note that https://koji.fedoraproject.org/koji/buildinfo?buildID=1158154
did not make it set of up2date packages recognized in the external repo,
yet, so had that rebuild within copr as well)

Issues I hit:
https://github.com/swaywm/sway/issues/2898
https://github.com/swaywm/wlroots/issues/958 (may not be 1.0 specific)

Comment 12 Jan Pokorný [poki] 2018-11-08 14:58:34 UTC
Hmm, it feels like rofi-doc should rather be something like
rofi-devel-doc since it's nothing like end user docs, but rather
the doxygen-generated extract from source code annotation.

There are prior examples:

$ dnf repoquery '*-devel-doc'
> bullet-devel-doc-0:2.87-5.fc30.x86_64
> c++-gtk-utils-devel-doc-0:2.0.16-14.fc29.noarch
> cegui-devel-doc-0:0.8.7-12.fc30.noarch
> cegui06-devel-doc-0:0.6.2-30.fc30.x86_64
> cinnamon-devel-doc-0:4.0.0-1.fc30.noarch
> dSFMT-devel-doc-0:2.2.3-11.fc29.noarch
> dhcp-devel-doc-12:4.3.6-29.fc30.noarch
> fontconfig-devel-doc-0:2.13.1-1.fc30.noarch
> ghc-aws-devel-doc-0:0.20-3.fc30.noarch
> ghc-bdcs-api-devel-doc-0:0.1.3-2.fc29.noarch
> ghc-bdcs-devel-doc-0:0.6.1-2.fc29.noarch
> ghc-criterion-devel-doc-0:1.3.0.0-5.fc29.noarch
> ghc-cryptonite-devel-doc-0:0.25-1.fc29.x86_64
> ghc-esqueleto-devel-doc-0:2.5.20180715-2.fc30.noarch
> ghc-feed-devel-doc-0:1.0.0.0-6.fc29.noarch
> ghc-foundation-devel-doc-0:0.0.21-1.fc29.noarch
> ghc-free-devel-doc-0:5.0.2-3.fc29.noarch
> ghc-generic-deriving-devel-doc-0:1.12.2-2.fc29.noarch
> ghc-generics-sop-devel-doc-0:0.3.2.0-1.fc29.noarch
> ghc-hackage-security-devel-doc-0:0.5.3.0-3.fc29.noarch
> ghc-haskell-gi-base-devel-doc-0:0.21.1-1.fc29.noarch
> ghc-haskell-gi-devel-doc-0:0.21.3-1.fc29.noarch
> ghc-hourglass-devel-doc-0:0.2.11-2.fc29.noarch
> ghc-hspec-core-devel-doc-0:2.4.8-1.fc29.noarch
> ghc-http-client-devel-doc-0:0.5.13.1-4.fc29.noarch
> ghc-lens-devel-doc-0:4.17-1.fc29.noarch
> ghc-memory-devel-doc-0:0.14.16-3.fc29.noarch
> ghc-mono-traversable-devel-doc-0:1.0.8.1-1.fc29.noarch
> ghc-persistent-devel-doc-0:2.8.2-3.fc29.noarch
> ghc-profunctors-devel-doc-0:5.2.2-3.fc29.noarch
> ghc-semigroupoids-devel-doc-0:5.2.2-3.fc29.noarch
> ghc-servant-devel-doc-0:0.13.0.1-1.fc29.noarch
> ghc-servant-server-devel-doc-0:0.13.0.1-1.fc29.noarch
> ghc-statistics-devel-doc-0:0.14.0.2-6.fc29.noarch
> ghc-turtle-devel-doc-0:1.5.10-1.fc29.noarch
> gsequencer-devel-doc-0:2.0.37-0.fc30.noarch
> hail-devel-doc-0:0.8-0.16.gf9c5b967.fc22.noarch
> jansson-devel-doc-0:2.11-2.fc29.noarch
> libdb-devel-doc-0:5.3.28-34.fc30.noarch
> libopenzwave-devel-doc-0:1.5.0-0.20180623git1e36dcc.0.fc29.x86_64
> libpst-devel-doc-0:0.6.72-1.fc29.x86_64
> libsidplayfp-devel-doc-0:1.8.8-1.fc29.noarch
> libusbx-devel-doc-0:1.0.22-1.fc29.noarch
> libvirt-designer-devel-doc-0:0.0.2-8.fc29.x86_64
> libzypp-devel-doc-0:17.8.1-1.fc30.noarch
> mmg2d-devel-doc-0:5.3.11-1.fc30.noarch
> mmg3d-devel-doc-0:5.3.11-1.fc30.x86_64
> mmgs-devel-doc-0:5.3.11-1.fc30.noarch
> mygui-devel-doc-0:3.2.2-9.fc29.noarch
> tokyocabinet-devel-doc-0:1.4.48-12.fc29.noarch

Comment 13 Till Hofmann 2018-11-08 15:29:27 UTC
Spec URL: https://thofmann.fedorapeople.org/rofi.spec
SRPM URL: https://thofmann.fedorapeople.org/rofi-1.5.1-4.fc28.src.rpm

Good suggestion, I renamed the doc sub-package to devel-doc.

Comment 14 Jan Pokorný [poki] 2018-11-09 23:45:48 UTC
I think only these two points remain and I have nothing more
(in Fedora, there's apparently nothing like x-terminal-emulator,
older xdg initiative likely and sadly went nowhere as well:
https://lists.freedesktop.org/archives/xdg/2006-December/007290.html):

- s/pkgconfig(xcb-util)/pkgconfig(xcb-aux)/
  (same package but for consistency ...)

- there's an interesting situation regarding licensing, and I was
  surprised not seeing that discussed anywhere in Fedora context,
  since lexer/theme-parser.[ch] (these are intermediate products
  likely provided for convenience for direct consumption by upstream,
  since they would get regenerated in mock anew otherwise)
  are effectively "GPLv3+ with exceptions", whereby the exception
  itself is that

> [you may] distribute that work under terms of your choice [...]

Also have found a direct reference indicating it's nothing
accidental:
https://spdx.org/licenses/GPL-2.0-with-bison-exception.html
likely from times Bison used to be GPLv2[+], and that such exception
wasn't granted before:
https://www.gnu.org/software/bison/manual/bison.html#Conditions
(it could also imply that some years back, rofi, if it existed,
could not arbitrarily mix this GPL licensed generated code with
its own MIT code, but take this with a grain of salt, and it's
irrelevant these days, anyway).

Perhaps would add a comment, that those files are "GPLv3+ with
Bison exception" and hence the project's MIT license is applicable,
to clear out any doubts from superficial peek into licensecheck
output and whatnot.

Thanks.  Will fix the findings for grim/slurp shortly.

Comment 15 Jan Pokorný [poki] 2018-11-10 12:11:02 UTC
> - there's an interesting situation regarding licensing, and I was
>  surprised not seeing that discussed anywhere in Fedora context,

actually it was, and likewise it indicates this usage is fine:

https://lists.fedoraproject.org/archives/list/legal@lists.fedoraproject.org/message/C4VVT54Z4WFGJPPD5X54ILKRF6X2IFLZ/

> Will fix the findings for grim/slurp shortly.

done

Comment 16 Till Hofmann 2018-11-10 13:14:27 UTC
Spec URL: https://thofmann.fedorapeople.org/rofi.spec
SRPM URL: https://thofmann.fedorapeople.org/rofi-1.5.1-5.fc28.src.rpm

Thank you for the detailed analysis of the licensing of the generated files!

- Replace BR pkconfig(xcb-util) -> pkgconfig(xcb-aux)
- Clarify license of bison-generated files

scratch build: https://koji.fedoraproject.org/koji/taskinfo?taskID=30775707

Comment 17 Jan Pokorný [poki] 2018-11-10 23:58:34 UTC
> Package Review
> ==============
> 
> Legend:
> [x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated
> [ ] = Manual review needed
> 
> 
> ===== MUST items =====
> 
> C/C++:
> [x]: Package does not contain kernel modules.
> [x]: Package contains no static executables.
> [x]: Package does not contain any libtool archives (.la)
> [x]: Rpath absent or only used for internal libs.
> 
> Generic:
> [x]: Package is licensed with an open-source compatible license and meets
>      other legal requirements as defined in the legal section of Packaging
>      Guidelines.
> [x]: License field in the package spec file matches the actual license.
>      Note: Checking patched sources after %prep for licenses. Licenses
>      found: "FSF All Permissive License", "Expat License", "Unknown or
>      generated", "GPL (v3 or later)". 74 files have unknown license.
> [x]: License file installed when any subpackage combination is installed.
> [x]: Package does not own files or directories owned by other packages.
> [x]: %build honors applicable compiler flags or justifies otherwise.
> [x]: Package contains no bundled libraries without FPC exception.

see [comment 0], the libraries are built as static and included directly
in resulting rofi binary.  They are mentioned explicitly:

  # https://github.com/sardemff7/libgwater
  Provides: bundled(libgwater)
  # https://github.com/sardemff7/libnkutils
  Provides: bundled(libnkutils)

Note that versions are practically (in a predictable way that would help
in repoqueries) indeterminable ([comment 8]).

> [x]: Changelog in prescribed format.
> [x]: Sources contain only permissible code or content.
> [x]: Package contains desktop file if it is a GUI application.

Rofi is a GUI application, however desktop file doesn't appear to be
a necessity, given the program meant to run for the whole GUI sessions
and, quite on the contrary, to deal with desktop files of other programs.

> [x]: Development files must be in a -devel package
> [x]: Package uses nothing in %doc for runtime.
> [x]: Package consistently uses macros (instead of hard-coded directory
>      names).

For the sake of completeness, I'd suggest:

  s#/usr/bin/${interpreter}#%{_bindir}/${interpreter}#

but is not a blocker here (note that possibly python* dealing in the same
location in the spec file is merely an overapproximation, so no crossing
into Python specific guidelines takes place, I'd suggest dropping those
mentions, actually).

> [x]: Package is named according to the Package Naming Guidelines.
> [x]: Package does not generate any conflict.
> [x]: Package obeys FHS, except libexecdir and /usr/target.
> [x]: If the package is a rename of another package, proper Obsoletes and
>      Provides are present.
> [x]: Requires correct, justified where necessary.
> [x]: Spec file is legible and written in American English.
> [x]: Package contains systemd file(s) if in need.
> [x]: Useful -debuginfo package or justification otherwise.
> [x]: Package is not known to require an ExcludeArch tag.
> [x]: Large documentation must go in a -doc subpackage. Large could be size
>      (~1MB) or number of files.
>      Note: Documentation size is 20480 bytes in 1 files.
> [x]: Package complies to the Packaging Guidelines
> [x]: Package successfully compiles and builds into binary rpms on at least
>      one supported primary architecture.
> [x]: Package installs properly.
> [x]: Rpmlint is run on all rpms the build produces.
>      Note: There are rpmlint messages (see attachment).
> [x]: 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 is included in %license.
> [x]: Package requires other packages for directories it uses.
> [x]: Package must own all directories that it creates.
> [x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT
> [x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the
>      beginning of %install.
> [x]: Macros in Summary, %description expandable at SRPM build time.
> [x]: Dist tag is present.
> [x]: Package does not contain duplicates in %files.
> [x]: Permissions on files are set properly.
> [x]: Package use %makeinstall only when make install DESTDIR=... doesn't
>      work.
> [x]: Package is named using only allowed ASCII characters.
> [x]: Package does not use a name that already exists.
> [x]: Package is not relocatable.
> [x]: Sources used to build the package match the upstream source, as
>      provided in the spec URL.
> [x]: Spec file name must match the spec package %{name}, in the format
>      %{name}.spec.
> [x]: File names are valid UTF-8.
> [x]: Packages must not store files under /srv, /opt or /usr/local
> 
> ===== SHOULD items =====
> 
> Generic:
> [!]: Uses parallel make %{?_smp_mflags} macro.

Rather a false positive raised, main building command is fine  -> [x]

> [x]: If the source package does not include license text(s) as a separate
>      file from upstream, the packager SHOULD query upstream to include it.
> [x]: Final provides and requires are sane (see attachments).
> [x]: Fully versioned dependency in subpackages if applicable.
>      Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in rofi-
>      devel , rofi-devel-doc , rofi-themes , rofi-debuginfo , rofi-
>      debugsource
> [x]: Package functions as described.
> [x]: Latest version is packaged.
> [x]: Package does not include license text files separate from upstream.
> [-]: Description and summary sections in the package spec file contains
>      translations for supported Non-English languages, if available.
> [x]: Package should compile and build into binary rpms on all supported
>      architectures.
> [x]: %check is present and all tests pass.
> [x]: Packages should try to preserve timestamps of original installed
>      files.
> [x]: Reviewer should test that the package builds in mock.
> [x]: Buildroot is not present
> [x]: Package has no %clean section with rm -rf %{buildroot} (or
>      $RPM_BUILD_ROOT)
> [x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.
> [x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file
> [x]: The placement of pkgconfig(.pc) files are correct.
> [x]: Sources can be downloaded from URI in Source: tag
> [x]: SourceX is a working URL.
> [x]: Spec use %global instead of %define unless justified.
> 
> ===== EXTRA items =====
> 
> Generic:
> [x]: Rpmlint is run on debuginfo package(s).
>      Note: No rpmlint messages.
> [x]: Rpmlint is run on all installed packages.
>      Note: There are rpmlint messages (see attachment).
> [x]: Large data in /usr/share should live in a noarch subpackage if package
>      is arched.
> 
> 
> Rpmlint
> -------
> Checking: rofi-1.5.1-5.fc30.x86_64.rpm
>           rofi-devel-1.5.1-5.fc30.x86_64.rpm
>           rofi-devel-doc-1.5.1-5.fc30.noarch.rpm
>           rofi-themes-1.5.1-5.fc30.noarch.rpm
>           rofi-debuginfo-1.5.1-5.fc30.x86_64.rpm
>           rofi-debugsource-1.5.1-5.fc30.x86_64.rpm
>           rofi-1.5.1-5.fc30.src.rpm
> rofi.x86_64: W: spelling-error Summary(en_US) dmenu -> menu, d menu, madmen
> rofi.x86_64: W: spelling-error %description -l en_US dmenu -> menu, d menu, madmen
> rofi-devel.x86_64: W: no-documentation
> rofi-themes.noarch: W: no-documentation
> rofi.src: W: spelling-error Summary(en_US) dmenu -> menu, d menu, madmen
> rofi.src: W: spelling-error %description -l en_US dmenu -> menu, d menu, madmen
> rofi.src:43: W: unversioned-explicit-provides bundled(libgwater)
> rofi.src:45: W: unversioned-explicit-provides bundled(libnkutils)

see above

> 7 packages and 0 specfiles checked; 0 errors, 8 warnings.
> 
> 
> 
> 
> Rpmlint (debuginfo)
> -------------------
> Checking: rofi-debuginfo-1.5.1-5.fc30.x86_64.rpm
> 1 packages and 0 specfiles checked; 0 errors, 0 warnings.
> 
> 
> 
> 
> 
> Rpmlint (installed packages)
> ----------------------------
> sh: /usr/bin/python: No such file or directory
> rofi-debuginfo.x86_64: W: invalid-url URL: https://github.com/DaveDavenport/rofi <urlopen error [Errno -2] Name or service not known>
> rofi.x86_64: W: spelling-error Summary(en_US) dmenu -> menu, d menu, madmen
> rofi.x86_64: W: spelling-error %description -l en_US dmenu -> menu, d menu, madmen
> rofi.x86_64: W: invalid-url URL: https://github.com/DaveDavenport/rofi <urlopen error [Errno -2] Name or service not known>
> rofi-devel-doc.noarch: W: invalid-url URL: https://github.com/DaveDavenport/rofi <urlopen error [Errno -2] Name or service not known>
> rofi-devel.x86_64: W: invalid-url URL: https://github.com/DaveDavenport/rofi <urlopen error [Errno -2] Name or service not known>
> rofi-devel.x86_64: W: no-documentation
> rofi-debugsource.x86_64: W: invalid-url URL: https://github.com/DaveDavenport/rofi <urlopen error [Errno -2] Name or service not known>
> rofi-themes.noarch: W: invalid-url URL: https://github.com/DaveDavenport/rofi <urlopen error [Errno -2] Name or service not known>
> rofi-themes.noarch: W: no-documentation
> 6 packages and 0 specfiles checked; 0 errors, 10 warnings.

Bogus complaints about opening URLs, perhaps mock container without
net access.

> 
> 
> 
> 
> Requires
> --------
> rofi-debuginfo (rpmlib, GLIBC filtered):
> 
> rofi (rpmlib, GLIBC filtered):
>     /usr/bin/bash
>     libc.so.6()(64bit)
>     libcairo.so.2()(64bit)
>     libgio-2.0.so.0()(64bit)
>     libglib-2.0.so.0()(64bit)
>     libgmodule-2.0.so.0()(64bit)
>     libgobject-2.0.so.0()(64bit)
>     libpango-1.0.so.0()(64bit)
>     libpangocairo-1.0.so.0()(64bit)
>     libpthread.so.0()(64bit)
>     librsvg-2.so.2()(64bit)
>     libstartup-notification-1.so.0()(64bit)
>     libxcb-ewmh.so.2()(64bit)
>     libxcb-icccm.so.4()(64bit)
>     libxcb-randr.so.0()(64bit)
>     libxcb-util.so.1()(64bit)
>     libxcb-xinerama.so.0()(64bit)
>     libxcb-xkb.so.1()(64bit)
>     libxcb-xrm.so.0()(64bit)
>     libxcb.so.1()(64bit)
>     libxkbcommon-x11.so.0()(64bit)
>     libxkbcommon-x11.so.0(V_0.5.0)(64bit)
>     libxkbcommon.so.0()(64bit)
>     libxkbcommon.so.0(V_0.5.0)(64bit)
>     libxkbcommon.so.0(V_0.7.0)(64bit)
>     rofi-themes
>     rtld(GNU_HASH)
> 
> rofi-devel-doc (rpmlib, GLIBC filtered):
> 
> rofi-devel (rpmlib, GLIBC filtered):
>     /usr/bin/pkg-config
>     pkgconfig
>     pkgconfig(cairo)
>     pkgconfig(glib-2.0)
>     pkgconfig(gmodule-2.0)
>     rofi
> 
> rofi-debugsource (rpmlib, GLIBC filtered):
> 
> rofi-themes (rpmlib, GLIBC filtered):
> 
> 
> 
> Provides
> --------
> rofi-debuginfo:
>     debuginfo(build-id)
>     rofi-debuginfo
>     rofi-debuginfo(x86-64)
> 
> rofi:
>     bundled(libgwater)
>     bundled(libnkutils)
>     rofi
>     rofi(x86-64)
> 
> rofi-devel-doc:
>     rofi-devel-doc
> 
> rofi-devel:
>     pkgconfig(rofi)
>     rofi-devel
>     rofi-devel(x86-64)
> 
> rofi-debugsource:
>     rofi-debugsource
>     rofi-debugsource(x86-64)
> 
> rofi-themes:
>     rofi-themes
> 
> 
> 
> Source checksums
> ----------------
> https://github.com/DaveDavenport/rofi/releases/download/1.5.1/rofi-1.5.1.tar.gz :
>   CHECKSUM(SHA256) this package     : e99817668317979a5cf9a931d28cbb54291e46f3b753b03a9368fc31dc1f83b5
>   CHECKSUM(SHA256) upstream package : e99817668317979a5cf9a931d28cbb54291e46f3b753b03a9368fc31dc1f83b5
> 
> 
> Generated by fedora-review 0.6.1 (f03e4e7) last change: 2016-05-02
> Command line :/usr/bin/fedora-review -rn rofi-1.5.1-5.fc28.src.rpm
> Buildroot used: fedora-rawhide-x86_64
> Active plugins: Generic, Shell-api, C/C++
> Disabled plugins: Java, Python, fonts, SugarActivity, Ocaml, Perl, Haskell, R, PHP
> Disabled flags: EXARCH, DISTTAG, EPEL5, BATCH, EPEL6


The concern about the in-spec interpreter mangling loop is not a blocker
per se though would be good to tackle it eventually.
That being said, setting fedora-review+.

Comment 18 Jan Pokorný [poki] 2018-11-11 09:05:06 UTC
> For the sake of completeness, I'd suggest:
> 
>   s#/usr/bin/${interpreter}#%{_bindir}/${interpreter}#
> 
> but is not a blocker here (note that possibly python* dealing in the same
> location in the spec file is merely an overapproximation, so no crossing
> into Python specific guidelines takes place, I'd suggest dropping those
> mentions, actually).

Actually, ditching that handling altogether will make the implicit
rpm scripts do the Right Thing:

> + /usr/lib/rpm/redhat/brp-mangle-shebangs
> mangling shebang in /usr/bin/rofi-sensible-terminal from /usr/bin/env bash to #!/usr/bin/bash
> mangling shebang in /usr/bin/rofi-theme-selector from /usr/bin/env bash to #!/usr/bin/bash

so best to just rely on that.

* * *

Also have noticed that there's likely no good reason to ship *.md5 files
in -devel-doc (my understanding is that it tells doxygen which source
got updated, and that's not needed here, since that documentation is not
to be regenerated directly at one's machines at that system location).

Comment 19 Jan Pokorný [poki] 2018-11-11 09:14:51 UTC
Hmm, just dropping *.md5 and *.map will save some 8 MB in -doc-devel
without any change in usability.

Comment 20 Till Hofmann 2018-11-11 14:31:13 UTC
Thank you again for your detailed comments!

As you suggested, I removed *.md5 and *.map files and I ditched the shebang scriptlet -- I thought the mangler would eventually fail instead of fixing shebangs, but I think I confused that with unversioned python shebangs.

Comment 21 Gwyn Ciesla 2018-11-12 14:35:21 UTC
(fedscm-admin):  The Pagure repository was created at https://src.fedoraproject.org/rpms/rofi

Comment 22 Fedora Update System 2018-11-13 13:09:52 UTC
rofi-1.5.1-7.fc27 has been submitted as an update to Fedora 27. https://bodhi.fedoraproject.org/updates/FEDORA-2018-28f832916a

Comment 23 Fedora Update System 2018-11-13 13:09:58 UTC
rofi-1.5.1-7.fc28 has been submitted as an update to Fedora 28. https://bodhi.fedoraproject.org/updates/FEDORA-2018-d2694e59a8

Comment 24 Fedora Update System 2018-11-13 13:10:03 UTC
rofi-1.5.1-7.fc29 has been submitted as an update to Fedora 29. https://bodhi.fedoraproject.org/updates/FEDORA-2018-d5ed05edc5

Comment 25 Fedora Update System 2018-11-14 04:30:43 UTC
rofi-1.5.1-7.fc28 has been pushed to the Fedora 28 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-d2694e59a8

Comment 26 Fedora Update System 2018-11-14 04:57:34 UTC
rofi-1.5.1-7.fc27 has been pushed to the Fedora 27 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-28f832916a

Comment 27 Fedora Update System 2018-11-14 06:01:56 UTC
rofi-1.5.1-7.fc29 has been pushed to the Fedora 29 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-d5ed05edc5

Comment 28 Fedora Update System 2018-11-23 02:31:53 UTC
rofi-1.5.1-7.fc29 has been pushed to the Fedora 29 stable repository. If problems still persist, please make note of it in this bug report.

Comment 29 Fedora Update System 2018-11-23 04:34:35 UTC
rofi-1.5.1-7.fc27 has been pushed to the Fedora 27 stable repository. If problems still persist, please make note of it in this bug report.

Comment 30 Fedora Update System 2018-11-23 05:02:29 UTC
rofi-1.5.1-7.fc28 has been pushed to the Fedora 28 stable repository. If problems still persist, please make note of it in this bug report.