Bug 832130 - Review Request: cups-filters - OpenPrinting CUPS filters and backends
Summary: Review Request: cups-filters - OpenPrinting CUPS filters and backends
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Tomáš Hozza
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 840830
Blocks: 841925 843415
TreeView+ depends on / blocked
 
Reported: 2012-06-14 15:28 UTC by Jiri Popelka
Modified: 2013-01-29 18:55 UTC (History)
7 users (show)

Fixed In Version: cups-filters-1.0.20-4.fc19
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2012-08-08 12:59:46 UTC
Type: ---
Embargoed:
thozza: fedora-review+
gwync: fedora-cvs+


Attachments (Terms of Use)

Description Jiri Popelka 2012-06-14 15:28:25 UTC
Spec URL: http://jpopelka.fedorapeople.org/cups-filters.spec
SRPM URL: http://jpopelka.fedorapeople.org/cups-filters-1.0.18-1.fc17.src.rpm

Description:
This package contains backends, filters, and other software that was
once part of the core CUPS distribution but is no longer maintained by
Apple Inc. In addition it contains additional filters developed
independently of Apple, especially filters for the PDF-centric printing
workflow introduced by OpenPrinting.

Note: It conflicts with the current cups package. If you want to install it you need also http://jpopelka.fedorapeople.org/cups-1.6-0.1.b1.fc18.src.rpm

For more info see
http://www.linuxfoundation.org/collaborate/workgroups/openprinting/pdf_as_standard_print_job_format
https://blueprints.launchpad.net/ubuntu/+spec/desktop-p-new-cups-filters-package

Fedora Account System Username: jpopelka

Comment 1 Jiri Popelka 2012-06-15 09:13:56 UTC
There are some errors in rpmlint output:

cups-filters.x86_64: E: incorrect-fsf-address /usr/lib/cups/filter/textonly
will be fixed in 1.0.19

cups-filters.x86_64: E: non-readable /usr/lib/cups/backend/serial 0700L
cups-filters.x86_64: E: non-standard-executable-perm /usr/lib/cups/backend/serial 0700L
Already commented in bug #225670, comment #4.

Comment 2 Jiri Popelka 2012-07-17 13:03:50 UTC
version 1.0.19 - lot of changes, mainly switching build system to autotools.

Spec URL: http://jpopelka.fedorapeople.org/cups-filters.spec
SRPM URL: http://jpopelka.fedorapeople.org/cups-filters-1.0.19-1.fc17.src.rpm

Comment 4 Jiri Popelka 2012-07-26 12:54:57 UTC
(In reply to comment #0)
> Note: It conflicts with the current cups package. If you want to install it
> you need also http://jpopelka.fedorapeople.org/cups-1.6-0.1.b1.fc18.src.rpm

or
http://koji.fedoraproject.org/koji/taskinfo?taskID=4331060

Comment 5 Jiri Popelka 2012-08-02 10:18:40 UTC
Added one BuildRequire to be able to build against poppler-0.20 (rawhide).

Spec URL: http://jpopelka.fedorapeople.org/cups-filters.spec
SRPM URL: http://jpopelka.fedorapeople.org/cups-filters-1.0.20-2.fc17.src.rpm

koji scratch-build:
http://koji.fedoraproject.org/koji/taskinfo?taskID=4350095

Comment 6 Tomáš Hozza 2012-08-02 15:08:30 UTC
Review of cups-filters-1.0.20-2.fc17:

Legend: "+" means OK, "-" means not OK.

- MUST(1): rpmlint must be run on the source rpm and all binary rpms the build produces.
+ 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.
- MUST(2,3): The package must meet the Packaging Guidelines.
- MUST(2): The package must be licensed with a Fedora approved license and meet the Licensing Guidelines.
+ MUST: The License field in the package spec file must match the actual license.
+ MUST: If the source package includes the text of the license(s) in its own file, then that file 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.
+ MUST: The package MUST successfully compile and build into binary rpms on at least one primary architecture.
+ MUST: All build dependencies must be listed in BuildRequires.
+ MUST: The spec file MUST handle locales properly.he %find_lang macro.
+ MUST: Every binary RPM package (or subpackage) which stores shared library files 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.
+ MUST: A package must own all directories that it creates.
+ MUST: A Fedora package must not list a file more than once in the spec file's %files listings.
- MUST(4): Permissions on files must be set properly.
+ 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. 
+ MUST: If a package includes something as %doc, it must not affect the runtime of the application. 
+ 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.
+ MUST: Packages must NOT contain any .la libtool archives.
+ MUST: Packages containing GUI applications must include a %{name}.desktop file.
+ MUST: Packages must not own files or directories already owned by other packages.
+ MUST: All filenames in rpm packages must be valid UTF-8.

1:
 RPMLINT check of binary RPMs:
 cups-filters.x86_64: I: enchant-dictionary-not-found en_US
 cups-filters.x86_64: E: non-readable /usr/lib/cups/backend/serial 0700L
 cups-filters.x86_64: E: non-standard-executable-perm /usr/lib/cups/backend/serial 0700L
 cups-filters-devel.x86_64: W: no-documentation
 4 packages and 0 specfiles checked; 2 errors, 1 warnings.

 RPMLINT check of SRPM:
 cups-filters.src: I: enchant-dictionary-not-found en_US
 1 packages and 0 specfiles checked; 0 errors, 0 warnings.

2: 
 - The package must contain a comment explaining the multiple licensing breakdown. Check https://fedoraproject.org/wiki/Packaging/LicensingGuidelines#Multiple_Licensing_Scenarios for more info.

3:
 - Compiler used to build probably doesn't honor compiler flags (no use of %{optflags} or $RPM_OPT_FLAGS in SPEC file). Check https://fedoraproject.org/wiki/Packaging/Guidelines#Compiler_flags for more info.

4:
 - Not sure if permissions for "%{_cups_serverbin}/backend/serial" are set correctly.

Comment 7 Jiri Popelka 2012-08-02 15:58:19 UTC
(In reply to comment #6)
>  cups-filters.x86_64: I: enchant-dictionary-not-found en_US

This must be a problem on your side.
Maybe installing hunspell-en or aspell-en ?

>  cups-filters.x86_64: E: non-readable /usr/lib/cups/backend/serial 0700L
>  cups-filters.x86_64: E: non-standard-executable-perm
> /usr/lib/cups/backend/serial 0700L

See comment #1. This was already commented in bug #225670, comment #4 (backend/serial used to be part of CUPS).
 
>  - The package must contain a comment explaining the multiple licensing
> breakdown.

I added a comment.

>  - Compiler used to build probably doesn't honor compiler flags (no use of
> %{optflags} or $RPM_OPT_FLAGS in SPEC file).

Yes, it does. You can see the values of CXXFLAGS/CFLAGS for example here
http://kojipkgs.fedoraproject.org//work/tasks/96/4350096/build.log

I think that you need to use the %{optflags} or $RPM_OPT_FLAGS only if you want to override them, e.g.
CXXFLAGS="%{optflags} -fno-strict-aliasing" make

I've also added a --disable-silent-rules switch to ./configure so you can see that the flags (https://fedoraproject.org/wiki/Packaging:RPMMacros#Build_flags_macros_and_variables) are really used during building.

>  - Not sure if permissions for "%{_cups_serverbin}/backend/serial" are set
> correctly.

It's ok, see above.


Spec URL: http://jpopelka.fedorapeople.org/cups-filters.spec
SRPM URL: http://jpopelka.fedorapeople.org/cups-filters-1.0.20-3.fc17.src.rpm

Comment 8 Tomáš Hozza 2012-08-03 08:12:43 UTC
(In reply to comment #7)
> This must be a problem on your side.
> Maybe installing hunspell-en or aspell-en ?

I installed hunspell-en and got the following output for cups-filters-1.0.20-3.fc17.src.rpm

cups-filters.src: W: spelling-error Summary(en_US) backends -> back ends, back-ends, backhands
cups-filters.src: W: spelling-error %description -l en_US backends -> back ends, back-ends, backhands
cups-filters.src: W: spelling-error %description -l en_US centric -> eccentric, centrist, concentric
cups-filters.src: W: spelling-error %description -l en_US workflow -> work flow, work-flow, workforce

Please check spelling of these words.

> See comment #1. This was already commented in bug #225670, comment #4
> (backend/serial used to be part of CUPS).

I checked the comment and it's OK.

> 
> I added a comment.

I checked cups-filters-1.0.20-3.fc17 and it is OK now.

> 
> Yes, it does. You can see the values of CXXFLAGS/CFLAGS for example here
> http://kojipkgs.fedoraproject.org//work/tasks/96/4350096/build.log
> 
> I think that you need to use the %{optflags} or $RPM_OPT_FLAGS only if you
> want to override them, e.g.
> CXXFLAGS="%{optflags} -fno-strict-aliasing" make
> 
> I've also added a --disable-silent-rules switch to ./configure so you can
> see that the flags
> (https://fedoraproject.org/wiki/Packaging:
> RPMMacros#Build_flags_macros_and_variables) are really used during building.

You are right, compiler uses proper flags.

> 
> It's ok, see above.

It is OK, as stated above.

Comment 9 Jiri Popelka 2012-08-03 09:05:30 UTC
(In reply to comment #8)
> (In reply to comment #7)
> cups-filters.src: W: spelling-error %description -l en_US backends
> cups-filters.src: W: spelling-error %description -l en_US centric
> cups-filters.src: W: spelling-error %description -l en_US workflow
> 
> Please check spelling of these words.

They all seem good to me.

I don't see anything else to fix, so can you approve the package ?

Comment 10 Tomáš Hozza 2012-08-03 09:17:30 UTC
Package seems OK for me, package is APPROVED. Changing fedora‑review to "+"

Comment 11 Jiri Popelka 2012-08-03 09:32:20 UTC
New Package SCM Request
=======================
Package Name: cups-filters
Short Description: OpenPrinting CUPS filters and backends
Owners: twaugh jpopelka

Comment 12 Gwyn Ciesla 2012-08-03 19:56:48 UTC
Git done (by process-git-requests).

Comment 13 Alan Brown 2012-08-06 11:56:26 UTC
Any chance of a EL6 backport?

Thanks
Alan

Comment 14 Jiri Popelka 2012-08-06 12:24:49 UTC
Most likely no.

To use cups-filters you'd need either slightly modified (http://www.cups.org/str.php?L4120) cups-1.6 or heavily modified cups < 1.6.

Because it definitely can't be installed along cups-1.4 as shipped with RHEL-6
and because we can't ship cups-1.6 in epel, I don't see any reason to ship cups-filters in epel.

If you want to run cups-1.6 in RHEL-6 (/me wonders why would somebody want to do that) rebuild (you'd probably need to tweak the spec file a little) the SRPM from this BZ.

Comment 15 Alan Brown 2012-08-06 13:38:06 UTC
I do want to run cups 1.6 (1.5 and 1.4 both have interoperability issues with the latest versions of cups shipped with OSX and that's been driving us somewhat crazy as mac users have been getting extremely noisy about things not working anymore)

You're right about tweaking the spec file a little, but one also runs into the issue of needing things which don't seem to be available for EL6 in any of the popular repos - Python-cups and poppler-cpp-devel in particular.

(I'd skip all this headache and just use Fedora, but "Those who pay the bills" insist the machine running cups must remain on EL6)

Comment 16 Jiri Popelka 2012-08-06 13:50:22 UTC
(In reply to comment #15)
> Python-cups and poppler-cpp-devel in particular.

python-cups is part of system-config-printer libs on EL6.
You probably don't need poppler-cpp-devel at all.

Comment 17 Jiri Popelka 2012-08-06 13:51:02 UTC
s/system-config-printer libs/system-config-printer-libs/

Comment 18 Tim Waugh 2012-08-06 14:15:28 UTC
Alan: Rather than backporting CUPS 1.6 to Red Hat Enterprise Linux 6, it is more likely that we would provide fixes and/or workarounds for interoperability problems.

If you could file a separate bug report detailing the problem you are seeing, we can take a look.  Thanks in advance.

Comment 19 Jiri Popelka 2012-08-08 12:59:46 UTC
cups-filters-1.0.20-4.fc19
http://koji.fedoraproject.org/koji/taskinfo?taskID=4368531


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