| Summary: | Review request: lfp-flash-plugin - Adobe Flash Player package bootstrap | ||
|---|---|---|---|
| Product: | Package Reviews | Reporter: | Simone Caronni <negativo17> |
| Component: | Review Request | Assignee: | Alec Leamas <leamas.alec> |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | CC: | leamas.alec, rpmfusion-package-review, sergio |
| Priority: | P5 | ||
| Version: | Current | ||
| Hardware: | All | ||
| OS: | GNU/Linux | ||
| namespace: | |||
|
Description
Simone Caronni
2013-11-21 11:45:40 CET
spec: http://slaanesh.fedorapeople.org/lpf-flash-plugin.spec srpm: http://slaanesh.fedorapeople.org/lpf-flash-plugin-11.2.202.327-2.fc19.src.rpm Updated install, post and postun sections for the latest additions. - Why an epoch is set ? - Where is the mention that the produced package will either be i686 or x86_64 and not ppc/arm or else ? - Also the adobe repository allow to install the i686 version along with the x86_64. Is it still possible to do so with lfp? How ? - The license of the wrapper is MIT, but the resulting usable package will be Proprietary. I think we shouldn't abuse anyone with the license of the "wrapped" spec file. Specially MIT is the default license for spec files unless stated otherwise. But MIT from the spec was never added in the computation of the license field for all packages in the fedora collection. - Flash on linux, is unmaintained buggy ? Should we still advertise that, even by improving the packaging ? This will only hide misery. - I'm keen to have any patch to review for nvidia packaged driver - but that's unrelated to this bugreport ;) (In reply to comment #2) > - Why an epoch is set ? Simone wrote somewhere that is to overwrite the original (In reply to comment #2) > - Flash on linux, is unmaintained buggy ? Should we still advertise that, even > by improving the packaging ? This will only hide misery. I can just agree. Still, it's the only solution to view a lot of copyrighted content out there. We all want HTML5 instead, but the practical alternative for copyrighted videos is often Silverlight (Netflix!), worse from a Linux perspective. So yes, IMHO flash in needed. And since it's needed it makes sense to package it (I actually asked Simone to make this request). As for the other issues, it will be handled in due time. The parallel i686/x86_64 installation will probably need an lpf update. Currently, we try to get skype and spotify the complete way before we push any more packages. The bottleneck is a badly required update to lpf, currently in updates-testing. Karma welcome! > - Why an epoch is set ? This is to upgrade the original package and avoid issues when using a mix of Adobe repositories and on RHEL 6 the supplementary channel. > - Where is the mention that the produced package will either be i686 or x86_64 > and not ppc/arm or else ? > - Also the adobe repository allow to install the i686 version along with the > x86_64. Is it still possible to do so with lfp? How ? The bundled spec file (flash-plugin.spec.in) states the architectures on which it is built. The lpf package needs an update to build both i686 and x86_64 packages at the same time but at its current stage it is able to build and install the package on the base architecture of the system. > - Flash on linux, is unmaintained buggy ? Should we still advertise that, even > by improving the packaging ? This will only hide misery. It is horrible indeed, but at least it's much more stable now that Adobe has stopped integrating new features. The only other option on Linux is the pepper plugin on the proprietary build of Chrome; the open Chromium does not have it. So this is the only chance unfortunately. The i686 plugin is required as well by Steam to play videos in the various screens. > - I'm keen to have any patch to review for nvidia packaged driver - but that's > unrelated to this bugreport ;) I will do eventually, but this is hard and time consuming as my driver is almost totally different from the RPMFusion one. Time is limited and I have other priorities and things to finish before submitting this one. I think that finishing all the pending stuff in RPMFusion is a good start before starting with the Nvidia driver(s). First review look into this:
- The lpf spec needs a new scriptlet (upstream lpf fixes):
%triggerpostun -- %{target_pkg}
lpf scan-removal %{target_pkg} &>/dev/null || :
- Wouldn't it be possible for the x86_64 variant to include both the i386 and the x86_64 stuff (Nicholas remark)?. Thinking about it, the x86_64 could download both sources and augment the x86_64 installation with the i386 plugin. The only conflict I see in the filelist is flash-player-properties; the 32-bit variant could be installed as flash-player-properties32 in the x86_64 case if required. Couldn't all this be done just by updating the spec, without any lpf changes?
- Please add info about target package being i386/x86_64 only to description (Nicholas remark).
- The lpf package MIT license is basically fine, we cannot use the target package license, it's not re-distributable (Nicholas' remark). Please add info on the target license to the description.
- I understand the reasons for using an epoch. While there was other alternatives before this spec, it's now in use and I think it's reasonable to provide a sane upgrade path for existing users i. e., please bump the epoch.
- The icons paths in %files could be simplified using a wildcard:
%{_datadir}/icons/hicolor/*/apps/flash-player-properties.png
- Please add the -a flag to cp in %install to preserve timestamps
For lpf-spotify-client I added the following to the description to cope with some of Nicholas remarks: target-summary: Spotify music player native client target-arch: i386 i686 x86_64 target-license: No modification permitted, non-redistributable target-url: http://www.spotify.com/se/blog/archives/2010/07/12/linux/ Hopefully, a format like this is easy enough to handle for both humans and machines. (In reply to comment #6) > - The lpf spec needs a new scriptlet (upstream lpf fixes): > > %triggerpostun -- %{target_pkg} > lpf scan-removal %{target_pkg} &>/dev/null || : Ok, I've added it and also added to the lpf-skype package. > - Please add info about target package being i386/x86_64 only to description > (Nicholas remark). Done. > - The lpf package MIT license is basically fine, we cannot use the target > package license, it's not re-distributable (Nicholas' remark). Please add info > on the target license to the description. This is already in the description: "Bootstrap package allowing the lpf system to build the non-redistributable flash-plugin package." > - I understand the reasons for using an epoch. While there was other > alternatives before this spec, it's now in use and I think it's reasonable to > provide a sane upgrade path for existing users i. e., please bump the epoch. I've seen only Epoch 0 used (official adobe repo and RHEL supplementary channel); so I think unless someone installed the Epoch 1 package from me they will have an Epoch 0 package installed. Should I bump it anyway? I find it useless. > - The icons paths in %files could be simplified using a wildcard: > %{_datadir}/icons/hicolor/*/apps/flash-player-properties.png > > - Please add the -a flag to cp in %install to preserve timestamps Done. > - Wouldn't it be possible for the x86_64 variant to include both the i386 and
> the x86_64 stuff (Nicholas remark)?. Thinking about it, the x86_64 could
> download both sources and augment the x86_64 installation with the i386 plugin.
> The only conflict I see in the filelist is flash-player-properties; the 32-bit
> variant could be installed as flash-player-properties32 in the x86_64 case if
> required. Couldn't all this be done just by updating the spec, without any lpf
> changes?
Fedora already handles such cases of duplicated binaries, the native one takes precedence. Please look here at my system where I have both installed:
$ rpm -qa flash-plugin
flash-plugin-11.2.202.327-1.fc19.i686
flash-plugin-11.2.202.327-1.fc19.x86_64
The following lists both packages:
$ rpm -ql flash-plugin | grep bin
/usr/bin/flash-player-properties
/usr/bin/flash-player-properties
But the one in bin is the correct arch one.
$ file /usr/bin/flash-player-properties
/usr/bin/flash-player-properties: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.9, stripped
But more clean would be if I would split flash-player-properties in its own package.
This way we can have the libs on both archs (i686 and x86_64) and the flash-player-properties only in your native arch. The purpose of flash-player-properties is to only write preferences in ~/.adobe.
This would make everything look like normal libraries in Fedora, where you have the libs multiarch, and the binaries single arch.
x86_64:
flash-plugin-properties.x86_64
flash-plugin.x86_64
flash-plugin.i686
i686:
flash-plugin-properties.i686
flash-plugin.i686
I'm doing this, will post it the updated package in a couple of hours (I'm at work!).
Question for Alec: can't we just run lpf-setup-pkg two times, one for each arch in the %install section if the arch is x86_64?
(In reply to comment #8) . > > I've seen only Epoch 0 used (official adobe repo and RHEL supplementary > channel); so I think unless someone installed the Epoch 1 package from me they > will have an Epoch 0 package installed. Should I bump it anyway? I find it > useless. > Only if you want to handle those who actually have installed a package from you... (In reply to comment #9) > Question for Alec: can't we just run lpf-setup-pkg two times, one for each arch > in the %install section if the arch is x86_64? As of now, I think we will run into problems. lpf-setup-pkg basically creates a directory named after the target package without any arch part i . e., running it twice will be a name collision. And some hack to generate different names will break the overall promise lpf package name -> target package name -> file system directory name. If possible, I'd prefer to have this as-is. (In reply to comment #10) > Only if you want to handle those who actually have installed a package from > you... At the moment my packages are on an older revision, and if I stop publishing them the lpf package will take precedence anyway. I would prefer avoiding the bump as it's not reversible. If you look at the Bind package they are now at Epoch 33 (!)... SRPM: http://slaanesh.fedorapeople.org/lpf-flash-plugin-11.2.202.327-3.fc19.src.rpm SPEC: http://slaanesh.fedorapeople.org/lpf-flash-plugin.spec (In reply to comment #12) > (In reply to comment #10) > > Only if you want to handle those who actually have installed a package from > > you... > > At the moment my packages are on an older revision, and if I stop publishing > them the lpf package will take precedence anyway. I would prefer avoiding the > bump as it's not reversible. If you look at the Bind package they are now at > Epoch 33 (!)... > > SRPM: > http://slaanesh.fedorapeople.org/lpf-flash-plugin-11.2.202.327-3.fc19.src.rpm > SPEC: http://slaanesh.fedorapeople.org/lpf-flash-plugin.spec OK, fine with me. SRPM: http://slaanesh.fedorapeople.org/lpf-flash-plugin-11.2.202.327-4.fc19.src.rpm SPEC: http://slaanesh.fedorapeople.org/lpf-flash-plugin.spec Updated with latest postun and triggerpostun scriptlets. (In reply to comment #7) > For lpf-spotify-client I added the following to the description to cope with > some of Nicholas remarks: My original remark was that the lpf package itslef need to be arched. In this case. It will built both x86_64 i686 (or i386 version) and I can copy the lpf-flash-plugin.i386 to the x86_64 repository. so the lpf-flash-plugin will not end in a repository it does not make sense. (such as arm ppc etc). > target-summary: Spotify music player native client > target-arch: i386 i686 x86_64 This is either i386 or i686, but I don't think both makes sense. Even if we default to i686, but flash still produce a i386, then i386 should be the right arch. Spec file looks basically OK, but needs a versioned lpf dependency >= 0-13.
Package Review
==============
Legend:
[x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated
Issues:
======
- Useful -debuginfo package or justification otherwise (please
justify the debug_package and _strip).
- Fix the mixed tabs in the spec (rpmlint warning)
- Please add an empty build section, makes things easier for other
programs parsing the spec.
===== MUST items =====
C/C++:
[x]: Development (unversioned) .so files in -devel subpackage, if present.
Generic:
[x]: License is acceptable in a lpf context.
[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 %doc.
[x]: License field in the package spec file matches the actual license.
Note: Checking patched sources after %prep for licenses. No licenses
found. Please check the source files for licenses manually.
[x]: License file installed when any subpackage combination is installed.
[-]: %build honors applicable compiler flags or justifies otherwise.
[x]: Package contains no bundled libraries without FPC exception.
[x]: Changelog in prescribed format.
[!]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the
beginning of %install.
Note: rm -rf %{buildroot} present but not required
[x]: Sources contain only permissible code or content.
[-]: 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).
[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.
[-]: 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.
[-]: Package contains systemd file(s) if in need.
[x]: gtk-update-icon-cache is invoked in %postun and %posttrans if package
contains icons.
Note: icons in flash-plugin-properties
[!]: Package is not known to require an ExcludeArch tag.
[-]: Large documentation must go in a -doc subpackage. Large could be size
(~1MB) or number of files.
Note: Documentation size is 10240 bytes in 1 files.
[x]: Package complies to the Packaging Guidelines, besides rpmfusion
modifications.
[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]: Package requires other packages for directories it uses.
[x]: Package must own all directories that it creates.
[x]: Package does not own files or directories owned by other packages.
[x]: All build dependencies are listed in BuildRequires, except for any that
are listed in the exceptions section of Packaging Guidelines.
[x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT
[x]: Macros in Summary, %description expandable at SRPM build time.
[x]: Package contains desktop file if it is a GUI application.
[x]: Package installs a %{name}.desktop using desktop-file-install or desktop-
file-validate if there is such a file.
[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 do not use a name that already exist
[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:
[-]: 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).
[?]: Package functions as described.
[x]: Latest version is packaged.
[x]: Package does not include license text files separate from upstream.
[x]: Scriptlets must be sane, if used.
[-]: Description and summary sections in the package spec file contains
translations for supported Non-English languages, if available.
[x] Fully versioned dependency in subpackages if applicable.
[-]: %check is present and all tests pass.
[x]: Packages should try to preserve timestamps of original installed files.
[x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file
[x]: Sources can be downloaded from URI in Source: tag
[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]: Dist tag is present (not strictly required in GL).
[x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.
[x]: SourceX is a working URL.
[x]: Package should compile and build into binary rpms on all supported
architectures.
[x]: Spec use %global instead of %define unless justified.
===== EXTRA items =====
Generic:
[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: flash-plugin-11.2.202.327-2.fc21.i686.rpm
flash-plugin-properties-11.2.202.327-2.fc21.i686.rpm
flash-plugin-11.2.202.327-2.fc21.src.rpm
flash-plugin.i686: W: invalid-license Non-redistributable, no modification permitted
flash-plugin-properties.i686: W: spelling-error %description -l en_US perferences -> preferences, references, conferences
flash-plugin-properties.i686: W: invalid-license Non-redistributable, no modification permitted
flash-plugin-properties.i686: W: no-documentation
flash-plugin-properties.i686: W: no-manual-page-for-binary flash-player-properties
flash-plugin.src: W: invalid-license Non-redistributable, no modification permitted
flash-plugin.src: W: no-%build-section
flash-plugin.src:2: W: mixed-use-of-spaces-and-tabs (spaces: line 1, tab: line 2)
3 packages and 0 specfiles checked; 0 errors, 8 warnings.
Rpmlint (installed packages)
----------------------------
# rpmlint flash-plugin flash-plugin-properties
flash-plugin.i686: W: invalid-license Non-redistributable, no modification permitted
flash-plugin-properties.i686: W: spelling-error %description -l en_US perferences -> preferences, references, conferences
flash-plugin-properties.i686: W: invalid-license Non-redistributable, no modification permitted
flash-plugin-properties.i686: W: no-documentation
flash-plugin-properties.i686: W: no-manual-page-for-binary flash-player-properties
2 packages and 0 specfiles checked; 0 errors, 5 warnings.
# echo 'rpmlint-done:'
Requires
--------
flash-plugin (rpmlib, GLIBC filtered):
ld-linux.so.2
libX11.so.6
libXcursor.so.1
libXext.so.6
libXrender.so.1
libXt.so.6
libatk-1.0.so.0
libc.so.6
libcairo.so.2
libdl.so.2
libfontconfig.so.1
libfreetype.so.6
libgdk-x11-2.0.so.0
libgdk_pixbuf-2.0.so.0
libglib-2.0.so.0
libgmodule-2.0.so.0
libgobject-2.0.so.0
libgthread-2.0.so.0
libgtk-x11-2.0.so.0
libm.so.6
libnspr4.so
libnss3.so
libnss3.so(NSS_3.10)
libnss3.so(NSS_3.11)
libnss3.so(NSS_3.12)
libnss3.so(NSS_3.2)
libnss3.so(NSS_3.3)
libnss3.so(NSS_3.4)
libnss3.so(NSS_3.6)
libnss3.so(NSS_3.9)
libnss3.so(NSS_3.9.2)
libnssutil3.so
libpango-1.0.so.0
libpangocairo-1.0.so.0
libpangoft2-1.0.so.0
libplc4.so
libplds4.so
libpthread.so.0
librt.so.1
libsmime3.so
libsmime3.so(NSS_3.2)
libsmime3.so(NSS_3.4)
libssl3.so
libssl3.so(NSS_3.2)
mozilla-filesystem
flash-plugin-properties (rpmlib, GLIBC filtered):
/bin/sh
flash-plugin(x86-32)
hicolor-icon-theme
ld-linux.so.2
libatk-1.0.so.0
libc.so.6
libcairo.so.2
libdl.so.2
libfontconfig.so.1
libfreetype.so.6
libgdk-x11-2.0.so.0
libgdk_pixbuf-2.0.so.0
libglib-2.0.so.0
libgmodule-2.0.so.0
libgobject-2.0.so.0
libgtk-x11-2.0.so.0
libm.so.6
libpango-1.0.so.0
libpangocairo-1.0.so.0
libpangoft2-1.0.so.0
Provides
--------
flash-plugin:
flash-plugin
flash-plugin(x86-32)
lib_plugin.so
flash-plugin-properties:
application()
application(flash-player-properties.desktop)
flash-plugin-kde
flash-plugin-properties
flash-plugin-properties(x86-32)
Unversioned so-files
--------------------
flash-plugin: /usr/lib/mozilla/plugins/libflashplayer.so
Source checksums
----------------
http://fpdownload.macromedia.com/get/flashplayer/pdc/11.2.202.327/install_flash_player_11_linux.i386.tar.gz :
CHECKSUM(SHA256) this package : 1fbbadf17c86b3fd52bbf1df299f52c0b2eb7a0b9aca1d55756bc884c9270f62
CHECKSUM(SHA256) upstream package : 1fbbadf17c86b3fd52bbf1df299f52c0b2eb7a0b9aca1d55756bc884c9270f62
http://fpdownload.macromedia.com/get/flashplayer/pdc/11.2.202.327/install_flash_player_11_linux.x86_64.tar.gz :
CHECKSUM(SHA256) this package : 34248b36f4b640c0b3846a334f995414c1bf4c8813ec80e2dbd3028d38bb4235
CHECKSUM(SHA256) upstream package : 34248b36f4b640c0b3846a334f995414c1bf4c8813ec80e2dbd3028d38bb4235
Generated by fedora-review 0.5.0 (6defee6) last change: 2013-10-04
Command line :./try-fedora-review -rn /home/mk/FedoraReview/flash-plugin-11.2.202.327-2.fc19.src.rpm
Buildroot used: fedora-rawhide-i386
Active plugins: Generic, Shell-api
Disabled plugins: Java, C/C++, Python, fonts, SugarActivity, Ocaml, Perl, Haskell, R, PHP, Ruby
Disabled flags: EXARCH, EPEL5, BATCH, DISTTAG
Issues are not blockers, so: *** Approved Package CVS request ====================== Package Name: lpf-flash-plugin Short Description: Adobe Flash Player package bootstrap Owners: leamas slaanesh Branches: f18 f19 f20 InitialCC: ---------------------- License tag: nonfree (In reply to comment #17) > flash-plugin-properties.i686: W: spelling-error %description -l en_US > perferences -> preferences, references, conferences > flash-plugin.src: W: no-%build-section > flash-plugin.src:2: W: mixed-use-of-spaces-and-tabs (spaces: line 1, tab: line > 2) Fixed locally. Also updated flash plugin to version 11.2.202.332, will push this into the repositories. Package Change Request ====================== Package Name: lpf-flash-plugin New Branches: el6 Updated RPMFusion Owners: leamas slaanesh sergiomb Updated EPEL Owners: leamas slaanesh sergiomb Sorry, I used the Fedora branch name. Updated request: Package Change Request ====================== Package Name: lpf-flash-plugin New Branches: EL-6 Updated RPMFusion Owners: leamas slaanesh sergiomb Updated EPEL Owners: leamas slaanesh sergiomb flash-plugin: install completed, no errors flash-plugin is now updated thanks (In reply to comment #23) > flash-plugin: install completed, no errors > > flash-plugin is now updated > > thanks sorry. reported in wrong bug report, but cvs request can be made in any bug report and with bug closed. |