Hide Forgot
Spec URL: http://josephsmidt.googlepages.com/phoronix-test-suite.spec SRPM URL: http://josephsmidt.googlepages.com/phoronix-test-suite-1.6.0-0.fc10.src.rpm Description: Hello. This is my first attempt at a Fedora package! The Phoronix Test Suite is on the package wishlist: http://fedoraproject.org/wiki/PackageMaintainers/WishList The Phoronix Test Suite is the most comprehensive testing and benchmarking platform available for Linux and is designed to carry out qualitative and quantitative benchmarks in a clean, reproducible, and easy-to-use manner.
I have a new place I am housing the files. Please use these, I made a minor correction: Spec URL: http://jsmidt.fedorapeople.org/phoronix-test-suite.spec SRPM URL: http://jsmidt.fedorapeople.org/phoronix-test-suite-1.6.0-0.fc10.src.rpm Also, I forgot these: -------------------------------------------------------------- rpmlint phoronix-test-suite.spec phoronix-test-suite.spec: W: no-%build-section -------------------------------------------------------------- rpmlint phoronix-test-suite-1.6.0-0.fc10.src.rpm phoronix-test-suite.src: W: no-%build-section ------------------------------------------------------------- rpmlint phoronix-test-suite-1.6.0-0.fc10.i386.rpm phoronix-test-suite.i386: E: non-executable-script /usr/share/phoronix-test-suite/pts-core/modules/dummy_script_module.sh 0644 phoronix-test-suite.i386: E: devel-dependency SDL-devel phoronix-test-suite.i386: E: explicit-lib-dependency compat-libstdc++-33 phoronix-test-suite.i386: E: explicit-lib-dependency libXv-devel phoronix-test-suite.i386: E: explicit-lib-dependency libXvMC-devel phoronix-test-suite.i386: E: explicit-lib-dependency libaio-devel phoronix-test-suite.i386: E: explicit-lib-dependency libjpeg-devel phoronix-test-suite.i386: E: explicit-lib-dependency libpng-devel phoronix-test-suite.i386: E: no-binary 1 packages and 0 specfiles checked; 9 errors, 0 warnings. -------------------------------------------------------------- For the above, note that this package needs all those -devel packages to correctly function because ultimately it tests how fast your system can do things like compile different types of packages.
Some comments about the spec : 1) Source0 should be an URL (the appropriate one : http://www.phoronix-test-suite.com/releases/phoronix-test-suite-1.6.0.tar.gz) 2) The PTS is a PHP program so the package doesn't need a particular architecture. Add "BuildArch: noarch" after "BuildRoot:" 3) Where do you find all this dependencies ? The PTS site just give me "php-gd" and "php-cli" ; for the rest, I suppose that the "External Dependencies" feature work with yum. 4) Add a %build section even if it's empty
Thanks a lot for your comments. (In reply to comment #2) > Some comments about the spec : > 1) Source0 should be an URL (the appropriate one : > http://www.phoronix-test-suite.com/releases/phoronix-test-suite-1.6.0.tar.gz) Done > 2) The PTS is a PHP program so the package doesn't need a particular > architecture. Add "BuildArch: noarch" after "BuildRoot:" Done > 3) Where do you find all this dependencies ? The PTS site just give me "php-gd" > and "php-cli" ; for the rest, I suppose that the "External Dependencies" > feature work with yum. It is true you only need "php-gd" and "php-cli" to run the program. However, when you run the program it executes the script found in the source phoronix-test-suite/pts/distro-scripts/install-fedora-packages.sh which scans phoronix-test-suite/pts/distro-xml/fedora-packages.xml and asks the user to download all those packages. (So I got all the dependencies from the fedora-packages.xml file) I thought it would be better to have Fedora install those packages for the user up front then have PTS do it. What would you prefer? > 4) Add a %build section even if it's empty Done Here are the new files: Spec URL: http://jsmidt.fedorapeople.org/phoronix-test-suite.spec SRPM URL: http://jsmidt.fedorapeople.org/phoronix-test-suite-1.6.0-1.fc10.src.rpm whit the new rpmlint: rpmlint phoronix-test-suite-1.6.0-1.fc10.noarch.rpm phoronix-test-suite.noarch: E: non-executable-script /usr/share/phoronix-test-suite/pts-core/modules/dummy_script_module.sh 0644 phoronix-test-suite.noarch: E: devel-dependency SDL-devel phoronix-test-suite.noarch: E: explicit-lib-dependency compat-libstdc++-33 phoronix-test-suite.noarch: E: explicit-lib-dependency libXv-devel phoronix-test-suite.noarch: E: explicit-lib-dependency libXvMC-devel phoronix-test-suite.noarch: E: explicit-lib-dependency libaio-devel phoronix-test-suite.noarch: E: explicit-lib-dependency libjpeg-devel phoronix-test-suite.noarch: E: explicit-lib-dependency libpng-devel 1 packages and 0 specfiles checked; 8 errors, 0 warnings. Thanks again.
(In reply to comment #3) > (In reply to comment #2) > > 3) Where do you find all this dependencies ? The PTS site just give me "php-gd" > > and "php-cli" ; for the rest, I suppose that the "External Dependencies" > > feature work with yum. > > It is true you only need "php-gd" and "php-cli" to run the program. However, > when you run the program it executes the script found in the source > phoronix-test-suite/pts/distro-scripts/install-fedora-packages.sh which scans > phoronix-test-suite/pts/distro-xml/fedora-packages.xml and asks the user to > download all those packages. (So I got all the dependencies from the > fedora-packages.xml file) > > I thought it would be better to have Fedora install those packages for the user > up front then have PTS do it. What would you prefer? > Good question. I will ask a package guru :-) Anyway, you can remove the "explicite-lib" indicated by rpmlint and also SDL-devel, openal, freeimage (dependencies not detected by rpmlint). Also you can rename "qt4-devel" (this is for legacy version) to "qt-devel".
Okay, I removed the "explicite-lib" dependencies you mentioned and changed qt4-devel to qt-devel. Here are the new files: Spec: http://jsmidt.fedorapeople.org/phoronix-test-suite.spec Srpm: http://jsm:dt.fedorapeople.org/phoronix-test-suite-1.6.0-2.fc10.src.rpm Here is the new rpmlint results: rpmlint phoronix-test-suite-1.6.0-2.fc10.noarch.rpm phoronix-test-suite.noarch: E: non-executable-script /usr/share/phoronix-test-suite/pts-core/modules/dummy_script_module.sh 0644 phoronix-test-suite.noarch: E: devel-dependency SDL_gfx-devel 1 packages and 0 specfiles checked; 2 errors, 0 warnings.
I did not find the time to polish it for an actual review, but perhaps you can steal something useful from there: http://ndim.fedorapeople.org/packages/phoronix-test-suite/
Any update on the dependency issue? Should I just have the minimal dependencies installed which means PTS installs the rest or do I make Fedora install the dependencies up front? If the latter, I believe the package is ready to be reviewed whenever. Otherwise I can quickly change things. Thanks.
Well, typically the package should Require: everything it needs to operate as packaged by the maintainer. So, I would say if it needs those things it should require them, so a simple yum install will install them too. It's not good to install something, run it and have it ask you to install more items. ;) So, yes, I would personally say you should re-add those.
Joseph: Can you spin a new package with the deps again and I will look at doing a review.
Thanks for continuing the review. Here are the new packages: Spec URL: http://jsmidt.fedorapeople.org/phoronix-test-suite.spec SRPM URL: http://jsmidt.fedorapeople.org/phoronix-test-suite-1.6.0-3.fc10.src.rpm Also, the upstream author had this to say: "PHP FPDF and PHP Ming aren't external dependencies, but if either of those packages are available in Fedora, they should be "Requires" for the PTS package. The FPDF package allows the user to save the results to a PDF file and the Ming package allows the user to render Adobe SWF graphs. These aren't required unless you want to use those features, but they should be included if available in Fedora." I do not see either of those packages in Fedora. If I am wrong let me know. Thanks again.
Hi Joseph, From a quick look at your latest packages, they look fine from the PTS side of it. Michael Larabel [ Lead Developer of the Phoronix Test Suite ]
Sorry for the delay here. :( Look for a full review later tonight. Did you have any other packages you wanted to submit? Or have you done any pre-reviews of other packages pending review to show you know the guidelines?
Since starting this bug report I successfully packaged Scitools: https://bugzilla.redhat.com/show_bug.cgi?id=485607 and have reviewed: 1. Grnotify: https://bugzilla.redhat.com/show_bug.cgi?id=483116 2. Marlin: https://bugzilla.redhat.com/show_bug.cgi?id=485954 3. Pygrace: https://bugzilla.redhat.com/show_bug.cgi?id=485617
I have sponsored Joseph so the initial message is outdated. :-)
OK - Package meets naming and packaging guidelines OK - Spec file matches base package name. OK - Spec has consistant macro usage. OK - Meets Packaging Guidelines. See below - License See below - License field in spec matches OK - License file included in package OK - Spec in American English OK - Spec is legible. OK - Sources match upstream md5sum: 7d53151838aba7a6d3b498dea5973c3d phoronix-test-suite-1.6.0.tar.gz 7d53151838aba7a6d3b498dea5973c3d phoronix-test-suite-1.6.0.tar.gz.orig OK - BuildRequires correct OK - Package has %defattr and permissions on files is good. OK - Package has a correct %clean section. OK - Package has correct buildroot OK - Package is code or permissible content. OK - Packages %doc files don't affect runtime. OK - Package has rm -rf RPM_BUILD_ROOT at top of %install OK - Package compiles and builds on at least one arch. OK - Package has no duplicate files in %files. OK - Package doesn't own any directories other packages own. OK - Package owns all the directories it creates. OK - Package obey's FHS standard (except for 2 exceptions) See below - No rpmlint output. OK - final provides and requires are sane. SHOULD Items: OK - Should build in mock. OK - Should function as described. OK - Should have dist tag OK - Should package latest version OK - Should not use file requires outside of /etc, /bin, /sbin, /usr/bin, or /usr/sbin Issues: 1. The documentation says the license is GPLv3, but many of the headers of the source files say "either version 3 of the License, or (at your option) any later version." Perhaps it's worth clarifying with upstream if this should be GPLv3 or GPLv3+ 2. rpmlint says: phoronix-test-suite.noarch: E: non-executable-script /usr/share/phoronix-test-suite/pts-core/modules/dummy_script_module.sh 0644 Should that be mode 755? phoronix-test-suite.noarch: E: devel-dependency SDL-devel phoronix-test-suite.noarch: E: explicit-lib-dependency compat-libstdc++-33 phoronix-test-suite.noarch: E: explicit-lib-dependency libXv-devel phoronix-test-suite.noarch: E: explicit-lib-dependency libXvMC-devel phoronix-test-suite.noarch: E: explicit-lib-dependency libaio-devel phoronix-test-suite.noarch: E: explicit-lib-dependency libjpeg-devel phoronix-test-suite.noarch: E: explicit-lib-dependency libpng-devel I think we can ignore those here, as this is a odd case. 3. We may want to think about removing the non free tests here. Since they download non free software, I'm not sure thats something we want to encourage or allow. I guess it's a gray area, but I thought I would bring it up for more discussion. 4. I think we should look at handling the deps and downloads a better way. For example, nexuiz gets downloaded and installed locally, even though it's available in fedora. Would it be possible to patch things and get it to use 'yum install' or 'pk-con install' to install Fedora packages of dependencies and then use the fedora packaged versions? That could be used to remove all the devel deps as well until needed.
1. GPLv3+ is fine. 2. It can be 755 though doesn't need to be for it to work properly. Though in the Git code and in the soon to be released version of PTS 1.8, it is made executable just so it won't emit that potential problem. 3. To find all of the non free software tests, run: phoronix-test-suite list-tests and then at the end of each line it should say FREE, RESTRICTED, RETAIL, or NON-FREE. The overwhelming majority of the tests are free / open-source. In the future we may also split the phoronix-test-suite upstream package into pts and pts-core/ where pts-core is our testing engine and where pts would just contain the different test profiles, etc. This may make it easier for your purposes of stripping out non-free tests in the future. 4. The reason that some files are downloaded and not fetched via the distribution's package management system is to ensure better validity of the test results. If just relying upon the distribution-supplied packages, we cannot ensure the generated test results are comparable to other systems / distributions. Different distributions may ship with slightly minor versions, incorporate extra patches, build the software with different optimizations, etc. That is why the main test files aren't fetched using the package management system, since it could lead to unreliable results so we try to reduce the number of variables at play. Michael
> 3. We may want to think about removing the non free tests here. > Since they download non free software, I'm not sure thats something we > want to encourage or allow. I guess it's a gray area, but I thought I would > bring it up for more discussion. Given the upstream author's above comments, would a README explaining the free/nonfree tests and how to distinguish them suffice?
Here are the new packages: Spec URL: http://jsmidt.fedorapeople.org/phoronix-test-suite.spec SRPM URL: http://jsmidt.fedorapeople.org/phoronix-test-suite-1.6.0-4.fc10.src.rpm This version deals with the below comments: > any later version." Perhaps it's worth clarifying with upstream if this should > be > GPLv3 or GPLv3+ Done. > > Should that be mode 755? Done > 3. We may want to think about removing the non free tests here. > Since they download non free software, I'm not sure thats something we > want to encourage or allow. I guess it's a gray area, but I thought I would > bring it up for more discussion. I have included a README.Fedora to clear up how to distinguish between non-free and free tests with as additional statement that Fedora only advocates Free software. > 4. I think we should look at handling the deps and downloads a better way. As you saw above upstream needs many of these packages to be precise versions. I also believe in order to do proper comparisons across different systems it may be best to leave things how they are. Feel free to tell me if you disagree.
Joseph: Phoronix Test Suite 1.8.0 is now available at http://www.phoronix-test-suite.com/ and that would be the preferred version now for packaging. Fortunately, there aren't many packaging changes that should be needed. About the only one I can think of is that there is now a phoronix-test-suite.png program icon and also some of the external dependencies for Fedora were revised and removed (checkout the pts/distro-xml/fedora-packages.xml, there's just a couple). If Fedora ends up getting PHP5 GTK (http://gtk.php.net/) down the road, that can be added as a dependency so there can be the GUI.
sorry for my delay here. 1 and 2 look good. 3: I am still a bit nervous about having them available, but I'm not sure it violates any packaging rule. 4. I guess I see the need here as well. These are not packages, but rather just benchmark tests/data in this case. I don't think folks will use this package to install and use them day to day. So, pretty much everything looks ok for me... however, could you spin up a 1.8.0 version and let me give it a final look over before approval? And Thanks to Michael for watching this review and keeping us informed. :)
Thanks again for your reveiw. Here are the new packages: Spec URL: http://jsmidt.fedorapeople.org/phoronix-test-suite.spec SRPM URL: http://jsmidt.fedorapeople.org/phoronix-test-suite-1.8.0-1.fc10.src.rpm
ok. That looks good. I don't see any further blockers here, so this package is APPROVED. You will need to keep updating the README.fedora when new non free tests appear.
New Package CVS Request ======================= Package Name: phoronix-test-suite Short Description: A Comprehensive Linux Benchmarking System Owners: jsmidt Branches: F-9 F-10 F-11 InitialCC:
cvs done. Would you also consider maintaining this in EPEL? I'm not sure off hand if it builds/works there, but if so it would be nice to have.
The Phoronix Test Suite should run just fine on RHEL with EPEL. The Phoronix Test Suite has been tested on CentOS, etc. It may not install the dependencies automatically from within the PTS program (it would just be a one-line patch to fix that upstream), but since you're handling that already with requiring all of the dependencies from the RPM, there should be no issues.
Yes, I will maintain the EPEL branches. New Package CVS Request ======================= Package Name: phoronix-test-suite Short Description: A Comprehensive Linux Benchmarking System Owners: jsmidt Branches: F-9 F-10 F-11 EL-5 EL-4 InitialCC:
phoronix-test-suite-1.8.0-1.fc9 has been submitted as an update for Fedora 9. http://admin.fedoraproject.org/updates/phoronix-test-suite-1.8.0-1.fc9
phoronix-test-suite-1.8.0-1.fc10 has been submitted as an update for Fedora 10. http://admin.fedoraproject.org/updates/phoronix-test-suite-1.8.0-1.fc10
EL-5 and EL-4 branches created.
Thanks for everything everyone.
phoronix-test-suite-1.8.0-1.fc10 has been pushed to the Fedora 10 stable repository. If problems still persist, please make note of it in this bug report.
phoronix-test-suite-1.8.0-1.fc9 has been pushed to the Fedora 9 stable repository. If problems still persist, please make note of it in this bug report.
Is there and EL-5 package available in EPEL? I can't seem to find one.
Hi Steven, Joseph will need to comment in regards to the status of EPEL packages, but if you simply run the upstream phoronix-test-suite package it should run fine and can be installed using the included install script. Alternatively, using the Fedora RPM on RHEL should work just fine too, but I think even the Fedora RPMs are sadly out of date. Let me know if you have any further questions. Michael Larabel Michael [at] phoronix.com
There are a number of dependencies not available in RHEL5 for the fc9 package. See the following output: # rpm -Uvh phoronix-test-suite-1.8.1-1.fc9.noarch.rpm warning: phoronix-test-suite-1.8.1-1.fc9.noarch.rpm: Header V3 DSA signature: NOKEY, key ID 6df2196f error: Failed dependencies: freeimage is needed by phoronix-test-suite-1.8.1-1.fc9.noarch freeimage-devel is needed by phoronix-test-suite-1.8.1-1.fc9.noarch glew-devel is needed by phoronix-test-suite-1.8.1-1.fc9.noarch jam is needed by phoronix-test-suite-1.8.1-1.fc9.noarch openal is needed by phoronix-test-suite-1.8.1-1.fc9.noarch openal-devel is needed by phoronix-test-suite-1.8.1-1.fc9.noarch perl-SDL is needed by phoronix-test-suite-1.8.1-1.fc9.noarch taglib-devel is needed by phoronix-test-suite-1.8.1-1.fc9.noarch xorg-x11-server-devel is needed by phoronix-test-suite-1.8.1-1.fc9.noarch Even when I was able to cobble together everything (except perl-SDL and xorg-x11-server-devel) from various fedora repos and EPEL, and installed the rpm (using the --nodeps flag), I still could not run the gui. I get either of these two messages: PHP Fatal error: Class 'GtkWindow' not found in /usr/share/phoronix-test-suite/pts-core/objects/gtk/pts_gtk_window.php on line 23 The PHP GTK module must be loaded for the GUI. This module can be found @ http://gtk.php.net/ I've tried, but I can't get php-gtk2 to build. I'm on RHEL 5.4 x86_64. 2.6.18-164.6.1.el5 For now, I'll try running it without the gui
Hi Steven, As I believe is described earlier in this bug report, the Fedora RPM includes all possible external dependencies needed for every included test. Personally I find this to be a bit much and prefer to just install the dependencies as needed (PTS can handle that internally), but that was the Fedora packaging choice. With that said, as long as the php-cli package is installed, the Fedora RPM should be able to be forced without any issues. Unfortunately, one of the packages still not found in Fedora is php-gtk, which provides GTK support for PHP. This is needed by the GUI (the version of PTS you are using just emits a fatal error though, in newer versions it makes this clear). Your options here would be to either build PHP GTK from source (http://gtk.php.net/) or to find a third-party RPM for it somewhere. Hopefully php-gtk will get packaged up for Fedora / EPEL soon... Running it from the command-line interface should work just fine. If you encounter any problems, try either 2.2.0 or a 2.4 snapshot ideally, as new features and test profiles are quick to be pushed in :) -- Michael
I managed to get all components needed for Phoronix test suite installed but still have one issue. # phoronix-test-suite gui shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory pwd: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory pwd: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory /usr/bin/phoronix-test-suite: line 28: [: /usr/share/phoronix-test-suite: unary operator expected You need two packages that aren't in Fedora, php-gtk, but php-gtk also has it's dependency - pecl-cairo php-gtk needs to be downloaded from svn because tar.gz version is really old and doesn't work with php 5.3 Here is how I got all components built. su -c "yum install php-cli php-devel make gcc gtk2-devel svn" svn co [url]http://svn.php.net/repository/pecl/cairo/trunk[/url] pecl-cairo cd pecl-cairo/ phpize ./configure make su -c "make install" cd .. svn co [url]http://svn.php.net/repository/gtk/php-gtk/trunk[/url] php-gtk cd php-gtk ./buildconf ./configure make su -c "make install" cd .. wget [url]http://www.phoronix-test-suite.com/download.php?file=phoronix-test-suite-2.8.1[/url] tar xvzf phoronix-test-suite-2.8.1.tar.gz cd phoronix-test-suite su -c "./install-sh" So please take where I left to get Phoronix test suite running on Fedora.
Please file a new bug against the package, don't add bugreports to old closed reviews.