Spec URL: http://people.ee.ethz.ch/~gygers/rpms/electrum.spec SRPM URL: http://people.ee.ethz.ch/~gygers/rpms/electrum-1.9.8-1.fc21.src.rpm Description: A lightweight bitcoin client that uses external servers to do the heavy lifting of the bitcoin protocol. Fedora Account System Username:gyger Koji Build: http://koji.fedoraproject.org/koji/taskinfo?taskID=8764068 Copr Repository: https://copr.fedoraproject.org/coprs/gyger/electrum/ I'm quite new (2nd package) and I need a sponsor.
This is an unofficial review only. Package Review ============== Legend: [x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated Issues: ======= - Package contains BR: python2-devel or python3-devel Your package contains only python-devel. If you need both python2, python3, you need to add both of these as separate BRs, otherwise only add one of these. - Package uses either %{buildroot} or $RPM_BUILD_ROOT Please don't use a mixture of macro style and variable style. Keep it consistent throughout the spec file. See: http://fedoraproject.org/wiki/Packaging/Guidelines#macros - Package installs a %{name}.desktop using desktop-file-install or desktop- file-validate if there is such a file. Your package includes electrum.desktop file but doesn't use desktop-file-install to install this desktop file. Also add a BR: desktop-file-utils for this. See: http://fedoraproject.org/wiki/Packaging:Guidelines#desktop-file-install_usage - update-desktop-database is invoked in %post and %postun if package contains desktop file(s) with a MimeType: entry. Since, this package involves a desktop file, you probably need to add these sections. See: http://fedoraproject.org/wiki/Packaging:ScriptletSnippets#desktop- database - Use %license and move LICENSE file from %doc to %license. See : http://fedoraproject.org/wiki/Changes/Use_license_macro_in_RPMs_for_packages_in_Cloud_Image - You need to change %{__python} macro to specifically %{__python2} or 3 in your spec file. Unversioned python macros are deprecated. - Use versioned python_sitelib in %files instead of unversioned %{__python_sitelib} - Your package doesn't include the *.egg-info in %files. - Binary eggs must be removed in %prep probably. ===== MUST items ===== 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. [!]: License field in the package spec file matches the actual license. Licenses found: "Apache (v2.0)", "GPL (v3 or later)", "Unknown or generated", "MIT/X11 (BSD like)", "BSD (2 clause)", "*No copyright* MIT/X11 (BSD like)". 44 files have unknown license. Please make sure that you mention all of these licenses in License field in spec file or put an *effective* license in that field. [?]: Package requires other packages for directories it uses. Note: No known owner of /usr/share/locale/ar_SA/LC_MESSAGES, /usr/share/locale/eo_UY/LC_MESSAGES, /usr/share/locale/ky_KG, /usr/share/locale/eo_UY, /usr/share/locale/ky_KG/LC_MESSAGES, /usr/share/locale/ar_SA [?]: Package must own all directories that it creates. Note: Directories without known owners: /usr/share/locale/eo_UY/LC_MESSAGES, /usr/share/locale/eo_UY, /usr/share/locale/ar_SA, /usr/share/locale/ky_KG, /usr/share/locale/ky_KG/LC_MESSAGES, /usr/share/locale/ar_SA/LC_MESSAGES [x]: Package contains no bundled libraries without FPC exception. [x]: Changelog in prescribed format. [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]: The spec file handles locales properly. [!]: Package consistently uses macros (instead of hard-coded directory names). You use macros at most of the places but there is still some scope. You can use %{name} when installing binaries and other files in %{datadir}. [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. [?]: Requires correct, justified where necessary. [x]: Spec file is legible and written in American English. [-]: Package contains systemd file(s) if in need. [x]: 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. This doesn't have large documentation. [x]: Packages must not store files under /srv, /opt or /usr/local [x]: Package complies to the Packaging Guidelines [x]: Package successfully compiles and builds into binary rpms on at least one supported primary architecture. [x]: Rpmlint is run on all rpms the build produces. Note: No rpmlint messages. [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]: 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 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]: Package contains desktop file if it is a GUI application. [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. Python: [!]: Binary eggs must be removed in %prep Probably you need to do rm -rf %{name}.egg-info. I am not sure about this. [?]: Python eggs must not download any dependencies during the build process. [?]: A package which is used by another package via an egg interface should provide egg info. [x]: Package meets the Packaging Guidelines::Python ===== 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). [x]: Package functions as described. [x]: Latest version is packaged. [x]: Package does not include license text files separate from upstream. [!]: Patches link to upstream bugs/comments/lists or are otherwise justified. [?]: 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]: 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]: Spec use %global instead of %define unless justified. ===== EXTRA items ===== Generic: [x]: Rpmlint is run on all installed packages. See: http://fedoraproject.org/wiki/Packaging/Guidelines#rpmlint [-]: Large data in /usr/share should live in a noarch subpackage if package is arched. [x]: Spec file according to URL is the same as in SRPM. Rpmlint ------- Checking: electrum-1.9.8-1.fc21.noarch.rpm electrum-1.9.8-1.fc21.src.rpm 2 packages and 0 specfiles checked; 0 errors, 0 warnings. Requires -------- electrum (rpmlib, GLIBC filtered): /usr/bin/python PyQt4 python python(abi) python-ecdsa python-slowaes Provides -------- electrum: application() application(electrum.desktop) electrum mimehandler(x-scheme-handler/bitcoin) Source checksums ---------------- https://download.electrum.org/Electrum-1.9.8.tar.gz : CHECKSUM(SHA256) this package : 8fc144a32013e4a747fea27fff981762a6b9e14cde9ffb405c4c721975d846ff CHECKSUM(SHA256) upstream package : 8fc144a32013e4a747fea27fff981762a6b9e14cde9ffb405c4c721975d846ff
New Files are uploaded: Spec URL: http://people.ee.ethz.ch/~gygers/rpms/electrum.spec SRPM URL: http://people.ee.ethz.ch/~gygers/rpms/electrum-1.9.8-2.fc21.src.rpm Koji Build: http://koji.fedoraproject.org/koji/taskinfo?taskID=8860395 Copr Repository: https://copr.fedoraproject.org/coprs/gyger/electrum/ Fixed Bugs: all but the following. - Package owns all the folders from the languages. Not sure what to do there. Added gettext as a builddependency, but it's not realy used as .mo files are released in the package and not build. What is the solution there? - License: I remove the distributed third party libraries from the source folder in the %prep section. A lot of files have no license header, but they are all set to be GPLv3 by the author of the files. - Egg-info not specifically listed as it says here (https://fedoraproject.org/wiki/Packaging:Python_Eggs#Providing_Egg_Metadata_Using_Setuptools), that the %{python2_sitelib}/* captures also .egg-info
Sorry, forgot one RPM_BUILDROOT variable, here an updated build, everything else same as before. Spec URL: http://people.ee.ethz.ch/~gygers/rpms/electrum.spec SRPM URL: http://people.ee.ethz.ch/~gygers/rpms/electrum-1.9.8-3.fc21.src.rpm Koji: http://koji.fedoraproject.org/koji/taskinfo?taskID=8860814
I'm afraid Fedora doesn't accept it, asking legal.
Any update on that?
There should no longer be any legal issue with FOSS bitcoin implementations. Lifting FE-Legal.
Uploaded electrum-2.5.1-1.fc23.src.rpm to COPR if that's of help to anyone: https://copr.fedoraproject.org/coprs/seeitcoming/electrum/ i.e. Samuel's .spec file seems to work fine for later versions.
Any progress on this? Samuel are you still interested in packaging/maintaining this?
Yes, definitely, but there was no response for a long time, so I didn't invest more time. If there is a chance to get it into Fedora now, I'll package the new versions and update the SPEC files.
Nice, Do you still need a sponsor? I can review this package but cant's sponsor you.
gyger's scratch build of electrum-2.5.2-1.fc21.src.rpm for f21 completed http://koji.fedoraproject.org/koji/taskinfo?taskID=11745928
I need a sponsor. So I updated the SPEC file and also create a SRPM file, hosted under the following links. SPEC: http://people.ee.ethz.ch/~gygers/rpms/electrum.spec SRPMS: http://people.ee.ethz.ch/~gygers/rpms/electrum-2.5.2-1.fc21.src.rpm Koji Builds are here: http://koji.fedoraproject.org/koji/taskinfo?taskID=11745928 (F21) http://koji.fedoraproject.org/koji/taskinfo?taskID=11745974 (F22) The copr repository is also updated.
And the last package for this new effort to get electrum into fedora. Sorry for the delay as I was stuck on fedora 21 for quite a while, but a new computer, enough power for virtualization got me running on packaging this stuff again. Here the updated files with your inputs included. Spec URL: http://people.ee.ethz.ch/~gygers/rpms/electrum.spec SRPM URL: http://people.ee.ethz.ch/~gygers/rpms/electrum-2.6.4-2.fc23.src.rpm Description: A lightweight bitcoin client that uses external servers to do the heavy lifting of the bitcoin protocol. Fedora Account System Username:gyger I need a sponsor too. Koji: http://koji.fedoraproject.org/koji/taskinfo?taskID=13815905 (F23) And also my copr repository runs the newest files now. https://copr.fedorainfracloud.org/coprs/gyger/electrum
What is the status of this package? Do you mind I take over and become the maintainer?
Feel free, you can take my work, Public Domain, no limits from me. Thanks for stepping up to the task. Cheers
(In reply to Samuel Gyger from comment #15) > Feel free, you can take my work, Public Domain, no limits from me. Thanks > for stepping up to the task. > > Cheers Great! Thanks for your work, my SPEC files are based on your contributions.
New version based on the work of Samuel Gyger: Spec URL: https://jonny.fedorapeople.org/electrum/electrum.spec SRPM URL: https://jonny.fedorapeople.org/electrum/electrum-2.7.12-1.fc25.src.rpm Description: A lightweight bitcoin client that uses external servers to do the heavy lifting of the bitcoin protocol. Fedora Account System Username: jonny Koji build: http://koji.fedoraproject.org/koji/taskinfo?taskID=16378467
Not sure how to package the locale files, now their are in: /usr/lib/python2.7/site-packages/electrum/locale, but I assume the best place would be /usr/share/locale/. This would require changes to Electrum: Electrum-2.7.12/lib/i18n.py: > import gettext, os > > LOCALE_DIR = os.path.join(os.path.dirname(__file__), 'locale') > language = gettext.translation('electrum', LOCALE_DIR, fallback = True) Do you think it is worth the effort to patch this file and install the translations in /usr/share/locale/? Or should we work with upstream to have a better solution?
If this is how it should be, than I think working with upstream is the way to go. The author is very responsive, at least in my experience. I don't know how locales for python packages are handled.
(In reply to Samuel Gyger from comment #19) > If this is how it should be, than I think working with upstream is the way > to go. The author is very responsive, at least in my experience. I just sent him an email and asked if we could find a solution. Btw, Debian stores the locales in /usr/lib/python2.7/dist-packages/electrum/locale for their Electrum package
I will review when python-pbkdf2 will be available in rawhide
(In reply to gil cattaneo from comment #21) > I will review when python-pbkdf2 will be available in rawhide Seem unavailable also python-slowaes
(In reply to gil cattaneo from comment #22) > (In reply to gil cattaneo from comment #21) > > I will review when python-pbkdf2 will be available in rawhide > Seem unavailable also python-slowaes Great, both have been requested in the package database, I will let you know when they are in rawhide.
Updated SPEC file. Spec URL: https://jonny.fedorapeople.org/electrum/electrum.spec SRPM URL: https://jonny.fedorapeople.org/electrum/electrum-2.7.12-2.fc25.src.rpm Description: A lightweight bitcoin client that uses external servers to do the heavy lifting of the bitcoin protocol. Fedora Account System Username: jonny Koji build: http://koji.fedoraproject.org/koji/taskinfo?taskID=16440972 Changelog * Sun Nov 13 2016 Jonny Heggheim <jonnyheggheim> - 2.7.12-2 - Added weak dependency on zbar-pygtk
Package Review ============== Legend: [x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated [ ] = Manual review needed ===== MUST items ===== 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. [?]: License field in the package spec file matches the actual license. Note: Checking patched sources after %prep for licenses. Licenses found: "MIT/X11 (BSD like)", "BSD (2 clause)", "*No copyright* MIT/X11 (BSD like)", "Unknown or generated". 107 files have unknown license. Detailed output of licensecheck in /home/gil/1187084-electrum/licensecheck.txt BSD (2 clause) -------------- Electrum-2.7.12/lib/socks.py Unknown or generated -------------------- Electrum-2.7.12/gui/kivy/i18n.py Electrum-2.7.12/gui/kivy/main_window.py Electrum-2.7.12/gui/kivy/nfc_scanner/scanner_android.py Electrum-2.7.12/gui/kivy/nfc_scanner/scanner_dummy.py Electrum-2.7.12/gui/kivy/uix/combobox.py Electrum-2.7.12/gui/kivy/uix/context_menu.py Electrum-2.7.12/gui/kivy/uix/dialogs/amount_dialog.py Electrum-2.7.12/gui/kivy/uix/dialogs/bump_fee_dialog.py Electrum-2.7.12/gui/kivy/uix/dialogs/checkbox_dialog.py Electrum-2.7.12/gui/kivy/uix/dialogs/choice_dialog.py Electrum-2.7.12/gui/kivy/uix/dialogs/fee_dialog.py Electrum-2.7.12/gui/kivy/uix/dialogs/fx_dialog.py Electrum-2.7.12/gui/kivy/uix/dialogs/installwizard.py Electrum-2.7.12/gui/kivy/uix/dialogs/label_dialog.py Electrum-2.7.12/gui/kivy/uix/dialogs/nfc_transaction.py Electrum-2.7.12/gui/kivy/uix/dialogs/password_dialog.py Electrum-2.7.12/gui/kivy/uix/dialogs/qr_dialog.py Electrum-2.7.12/gui/kivy/uix/dialogs/qr_scanner.py Electrum-2.7.12/gui/kivy/uix/dialogs/question.py Electrum-2.7.12/gui/kivy/uix/dialogs/seed_options.py Electrum-2.7.12/gui/kivy/uix/dialogs/settings.py Electrum-2.7.12/gui/kivy/uix/dialogs/tx_dialog.py Electrum-2.7.12/gui/kivy/uix/dialogs/wallets.py Electrum-2.7.12/gui/kivy/uix/drawer.py Electrum-2.7.12/gui/kivy/uix/gridview.py Electrum-2.7.12/gui/kivy/uix/menus.py Electrum-2.7.12/gui/kivy/uix/qrcodewidget.py Electrum-2.7.12/gui/kivy/uix/screens.py Electrum-2.7.12/gui/qt/amountedit.py Electrum-2.7.12/gui/qt/console.py Electrum-2.7.12/gui/qt/icons_rc.py Electrum-2.7.12/gui/qt/installwizard.py Electrum-2.7.12/gui/qt/qrcodewidget.py Electrum-2.7.12/gui/qt/qrtextedit.py Electrum-2.7.12/gui/qt/util.py Electrum-2.7.12/gui/stdio.py Electrum-2.7.12/gui/text.py Electrum-2.7.12/lib/msqr.py Electrum-2.7.12/lib/paymentrequest_pb2.py Electrum-2.7.12/lib/simple_config.py Electrum-2.7.12/lib/tests/test_account.py Electrum-2.7.12/lib/tests/test_bitcoin.py Electrum-2.7.12/lib/tests/test_interface.py Electrum-2.7.12/lib/tests/test_mnemonic.py Electrum-2.7.12/lib/tests/test_simple_config.py Electrum-2.7.12/lib/tests/test_transaction.py Electrum-2.7.12/lib/tests/test_util.py Electrum-2.7.12/lib/tests/test_wallet.py Electrum-2.7.12/lib/version.py Electrum-2.7.12/plugins/audio_modem/qt.py Electrum-2.7.12/plugins/exchange_rate/exchange_rate.py Electrum-2.7.12/plugins/exchange_rate/kivy.py Electrum-2.7.12/plugins/exchange_rate/qt.py Electrum-2.7.12/plugins/keepkey/client.py Electrum-2.7.12/plugins/keepkey/cmdline.py Electrum-2.7.12/plugins/keepkey/keepkey.py Electrum-2.7.12/plugins/keepkey/qt.py Electrum-2.7.12/plugins/labels/kivy.py Electrum-2.7.12/plugins/labels/labels.py Electrum-2.7.12/plugins/labels/qt.py Electrum-2.7.12/plugins/ledger/cmdline.py Electrum-2.7.12/plugins/ledger/ledger.py Electrum-2.7.12/plugins/ledger/qt.py Electrum-2.7.12/plugins/plot/qt.py Electrum-2.7.12/plugins/trezor/client.py Electrum-2.7.12/plugins/trezor/clientbase.py Electrum-2.7.12/plugins/trezor/cmdline.py Electrum-2.7.12/plugins/trezor/plugin.py Electrum-2.7.12/plugins/trezor/qt.py Electrum-2.7.12/plugins/trezor/qt_generic.py Electrum-2.7.12/plugins/trezor/trezor.py Electrum-2.7.12/plugins/trustedcoin/cmdline.py Electrum-2.7.12/plugins/virtualkeyboard/qt.py Electrum-2.7.12/scripts/bip70 Electrum-2.7.12/scripts/block_headers Electrum-2.7.12/scripts/estimate_fee Electrum-2.7.12/scripts/get_chunk Electrum-2.7.12/scripts/get_donation_address Electrum-2.7.12/scripts/get_history Electrum-2.7.12/scripts/peers Electrum-2.7.12/scripts/servers Electrum-2.7.12/scripts/txradar Electrum-2.7.12/scripts/util.py Electrum-2.7.12/scripts/watch_address Electrum-2.7.12/setup-release.py [?]: Package requires other packages for directories it uses. Note: No known owner of /usr/share/locale/hy_AM, /usr/share/locale/eo_UY, /usr/share/locale/ky_KG/LC_MESSAGES, /usr/share/locale/ar_SA/LC_MESSAGES, /usr/share/locale/eo_UY/LC_MESSAGES, /usr/share/locale/ar_SA, /usr/share/locale/ky_KG, /usr/share/locale/hy_AM/LC_MESSAGES [?]: Package must own all directories that it creates. Note: Directories without known owners: /usr/share/locale/eo_UY/LC_MESSAGES, /usr/share/locale/hy_AM, /usr/share/locale/eo_UY, /usr/share/locale/ar_SA, /usr/share/locale/ky_KG, /usr/share/locale/ky_KG/LC_MESSAGES, /usr/share/locale/ar_SA/LC_MESSAGES, /usr/share/locale/hy_AM/LC_MESSAGES [x]: Package contains no bundled libraries without FPC exception. [?]: Changelog in prescribed format. [x]: Sources contain only permissible code or content. [-]: Development files must be in a -devel package [x]: Package uses nothing in %doc for runtime. [?]: The spec file handles locales properly. [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]: update-desktop-database is invoked in %post and %postun if package contains desktop file(s) with a MimeType: entry. Note: desktop file(s) with MimeType entry in electrum [x]: 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 40960 bytes in 4 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 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]: 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]: 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]: 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 Python: [x]: Python eggs must not download any dependencies during the build process. [?]: A package which is used by another package via an egg interface should provide egg info. [x]: Package meets the Packaging Guidelines::Python [x]: Package contains BR: python2-devel or python3-devel [x]: Binary eggs must be removed in %prep ===== 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). [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. [-]: %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]: 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: [!]: Spec file according to URL is the same as in SRPM. Note: Spec file as given by url is not the same as in SRPM (see attached diff). See: (this test has no URL) [x]: Rpmlint is run on all installed packages. Note: There are rpmlint messages (see attachment). Rpmlint ------- Checking: electrum-2.7.12-2.fc26.noarch.rpm electrum-2.7.12-2.fc26.src.rpm electrum.noarch: W: no-manual-page-for-binary electrum electrum.src:38: W: setup-not-quiet 2 packages and 0 specfiles checked; 0 errors, 2 warnings. Rpmlint (installed packages) ---------------------------- electrum.noarch: W: no-manual-page-for-binary electrum 1 packages and 0 specfiles checked; 0 errors, 1 warnings. Diff spec file in url and in SRPM --------------------------------- --- /home/gil/1187084-electrum/srpm/electrum.spec 2016-11-14 18:06:42.939626718 +0100 +++ /home/gil/1187084-electrum/srpm-unpacked/electrum.spec 2016-11-14 00:52:40.000000000 +0100 @@ -1,5 +1,5 @@ Name: electrum Version: 2.7.12 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A lightweight Bitcoin Client @@ -7,4 +7,5 @@ URL: https://electrum.org/ Source0: https://download.electrum.org/%{version}/Electrum-%{version}.tar.gz +Patch0: zbar-installation-instructions.patch BuildArch: noarch @@ -25,4 +26,6 @@ Requires: PyQt4 +Suggests: zbar-pygtk + %description Electrum is an easy to use Bitcoin client. It protects you from losing @@ -33,5 +36,6 @@ %prep -%setup -q -n Electrum-%{version} +%setup -n Electrum-%{version} +%patch0 rm -rf Electrum.egg-info rm -rf packages @@ -42,4 +46,6 @@ %install +install -d %{buildroot}/usr/share/locale +mv lib/locale %{buildroot}/usr/share %{py2_install} @@ -82,4 +88,7 @@ %changelog +* Sun Nov 13 2016 Jonny Heggheim <jonnyheggheim> - 2.7.12-2 +- Added weak dependency on zbar-pygtk + * Wed Nov 09 2016 Jonny Heggheim <jonnyheggheim> - 2.7.12-1 - new version Requires -------- electrum (rpmlib, GLIBC filtered): /bin/sh /usr/bin/python2 PyQt4 protobuf-python python(abi) python-dns python-ecdsa python-jsonrpclib python-pbkdf2 python-qrcode python-requests python-slowaes python2 Provides -------- electrum: application() application(electrum.desktop) electrum mimehandler(x-scheme-handler/bitcoin) python2.7dist(electrum) python2dist(electrum) Source checksums ---------------- https://download.electrum.org/2.7.12/Electrum-2.7.12.tar.gz : CHECKSUM(SHA256) this package : 3644274231326cc6b13a25703ebe6ec22bbbce7832a86d75abc745040475ad6f CHECKSUM(SHA256) upstream package : 3644274231326cc6b13a25703ebe6ec22bbbce7832a86d75abc745040475ad6f Generated by fedora-review 0.6.1 (f03e4e7) last change: 2016-05-02 Command line :/usr/bin/fedora-review -b 1187084 --plugins Python -m fedora-rawhide-i386 -L ~/deps Buildroot used: fedora-rawhide-i386 Active plugins: Python, Generic, Shell-api Disabled plugins: Java, C/C++, fonts, SugarActivity, Ocaml, Perl, Haskell, R, PHP, Ruby Disabled flags: EXARCH, DISTTAG, EPEL5, BATCH, EPEL6 Built with local dependencies: ~/deps/python2-pbkdf2-1.3-5.fc26.noarch.rpm ~/deps/python2-slowaes-0.1a1-6.fc26.noarch.rpm
Issues: [?]: License field in the package spec file matches the actual license. Note: Checking patched sources after %prep for licenses. Licenses found: "MIT/X11 (BSD like)", "BSD (2 clause)", "*No copyright* MIT/X11 (BSD like)", "Unknown or generated". 107 files have unknown license. Detailed output of licensecheck in /home/gil/1187084-electrum/licensecheck.txt BSD (2 clause) -------------- Electrum-2.7.12/lib/socks.py The following source files are without license headers. Unknown or generated -------------------- Electrum-2.7.12/gui/kivy/i18n.py Electrum-2.7.12/gui/kivy/main_window.py Electrum-2.7.12/gui/kivy/nfc_scanner/scanner_android.py Electrum-2.7.12/gui/kivy/nfc_scanner/scanner_dummy.py Electrum-2.7.12/gui/kivy/uix/combobox.py Electrum-2.7.12/gui/kivy/uix/context_menu.py Electrum-2.7.12/gui/kivy/uix/dialogs/amount_dialog.py Electrum-2.7.12/gui/kivy/uix/dialogs/bump_fee_dialog.py Electrum-2.7.12/gui/kivy/uix/dialogs/checkbox_dialog.py Electrum-2.7.12/gui/kivy/uix/dialogs/choice_dialog.py Electrum-2.7.12/gui/kivy/uix/dialogs/fee_dialog.py Electrum-2.7.12/gui/kivy/uix/dialogs/fx_dialog.py Electrum-2.7.12/gui/kivy/uix/dialogs/installwizard.py Electrum-2.7.12/gui/kivy/uix/dialogs/label_dialog.py Electrum-2.7.12/gui/kivy/uix/dialogs/nfc_transaction.py Electrum-2.7.12/gui/kivy/uix/dialogs/password_dialog.py Electrum-2.7.12/gui/kivy/uix/dialogs/qr_dialog.py Electrum-2.7.12/gui/kivy/uix/dialogs/qr_scanner.py Electrum-2.7.12/gui/kivy/uix/dialogs/question.py Electrum-2.7.12/gui/kivy/uix/dialogs/seed_options.py Electrum-2.7.12/gui/kivy/uix/dialogs/settings.py Electrum-2.7.12/gui/kivy/uix/dialogs/tx_dialog.py Electrum-2.7.12/gui/kivy/uix/dialogs/wallets.py Electrum-2.7.12/gui/kivy/uix/drawer.py Electrum-2.7.12/gui/kivy/uix/gridview.py Electrum-2.7.12/gui/kivy/uix/menus.py Electrum-2.7.12/gui/kivy/uix/qrcodewidget.py Electrum-2.7.12/gui/kivy/uix/screens.py Electrum-2.7.12/gui/qt/amountedit.py Electrum-2.7.12/gui/qt/console.py Electrum-2.7.12/gui/qt/icons_rc.py Electrum-2.7.12/gui/qt/installwizard.py Electrum-2.7.12/gui/qt/qrcodewidget.py Electrum-2.7.12/gui/qt/qrtextedit.py Electrum-2.7.12/gui/qt/util.py Electrum-2.7.12/gui/stdio.py Electrum-2.7.12/gui/text.py Electrum-2.7.12/lib/msqr.py Electrum-2.7.12/lib/paymentrequest_pb2.py Electrum-2.7.12/lib/simple_config.py Electrum-2.7.12/lib/tests/test_account.py Electrum-2.7.12/lib/tests/test_bitcoin.py Electrum-2.7.12/lib/tests/test_interface.py Electrum-2.7.12/lib/tests/test_mnemonic.py Electrum-2.7.12/lib/tests/test_simple_config.py Electrum-2.7.12/lib/tests/test_transaction.py Electrum-2.7.12/lib/tests/test_util.py Electrum-2.7.12/lib/tests/test_wallet.py Electrum-2.7.12/lib/version.py Electrum-2.7.12/plugins/audio_modem/qt.py Electrum-2.7.12/plugins/exchange_rate/exchange_rate.py Electrum-2.7.12/plugins/exchange_rate/kivy.py Electrum-2.7.12/plugins/exchange_rate/qt.py Electrum-2.7.12/plugins/keepkey/client.py Electrum-2.7.12/plugins/keepkey/cmdline.py Electrum-2.7.12/plugins/keepkey/keepkey.py Electrum-2.7.12/plugins/keepkey/qt.py Electrum-2.7.12/plugins/labels/kivy.py Electrum-2.7.12/plugins/labels/labels.py Electrum-2.7.12/plugins/labels/qt.py Electrum-2.7.12/plugins/ledger/cmdline.py Electrum-2.7.12/plugins/ledger/ledger.py Electrum-2.7.12/plugins/ledger/qt.py Electrum-2.7.12/plugins/plot/qt.py Electrum-2.7.12/plugins/trezor/client.py Electrum-2.7.12/plugins/trezor/clientbase.py Electrum-2.7.12/plugins/trezor/cmdline.py Electrum-2.7.12/plugins/trezor/plugin.py Electrum-2.7.12/plugins/trezor/qt.py Electrum-2.7.12/plugins/trezor/qt_generic.py Electrum-2.7.12/plugins/trezor/trezor.py Electrum-2.7.12/plugins/trustedcoin/cmdline.py Electrum-2.7.12/plugins/virtualkeyboard/qt.py Electrum-2.7.12/scripts/bip70 Electrum-2.7.12/scripts/block_headers Electrum-2.7.12/scripts/estimate_fee Electrum-2.7.12/scripts/get_chunk Electrum-2.7.12/scripts/get_donation_address Electrum-2.7.12/scripts/get_history Electrum-2.7.12/scripts/peers Electrum-2.7.12/scripts/servers Electrum-2.7.12/scripts/txradar Electrum-2.7.12/scripts/util.py Electrum-2.7.12/scripts/watch_address Electrum-2.7.12/setup-release.py Please, ask to upstream to confirm the licensing of code and/or content/s, and to add license headers https://fedoraproject.org/wiki/Packaging:LicensingGuidelines?rd=Packaging/LicensingGuidelines#License_Clarification Non blocking issues: [!]: Spec file according to URL is the same as in SRPM. Note: Spec file as given by url is not the same as in SRPM (see attached diff).
(In reply to gil cattaneo from comment #26) > Please, ask to upstream to confirm the licensing of code and/or content/s, > and to add license headers https://github.com/spesmilo/electrum/issues/2041
(In reply to Jonny Heggheim from comment #27) > (In reply to gil cattaneo from comment #26) > > Please, ask to upstream to confirm the licensing of code and/or content/s, > > and to add license headers Approved, maybe we could wait the upstream reply @ > https://github.com/spesmilo/electrum/issues/2041
(In reply to gil cattaneo from comment #28) > Approved, maybe we could wait the upstream reply @ Thanks, I will wait for reply from upstream
Have not heard anything from upstream, I updated the license to MIT and BSD.
Package request has been approved: https://admin.fedoraproject.org/pkgdb/package/rpms/electrum
@Jonny Heggheim: Thank you for taking over and making this happen so fast. Appreciate this.
(In reply to Samuel Gyger from comment #32) > Thank you for taking over and making this happen so fast. Appreciate this. You're welcome! It would be great if more users could test the build on Fedora 25: > sudo dnf install electrum --enablerepo=updates-testing And provided feedback on bodhi: https://bodhi.fedoraproject.org/updates/FEDORA-2016-e5dbc775ab
It would be great if someone could test https://bodhi.fedoraproject.org/updates/FEDORA-2018-4978426286 This is a urgent security update.