Fedora Merge Review: system-config-rootpassword http://cvs.fedora.redhat.com/viewcvs/devel/system-config-rootpassword/ Initial Owner: pnasrat
Preliminary Review:- rpmlint on SRPM and RPM gave me ------------------------------------- system-config-rootpassword.src:12: W: unversioned-explicit-obsoletes redhat-config-rootpassword ==> The specfile contains an unversioned Obsoletes: token, which will match all older, equal and newer versions of the obsoleted thing. This may cause update problems, restrict future package/provides naming, and may match something it was originally not inteded to match -- make the Obsoletes versioned if possible. system-config-rootpassword.src:21: W: prereq-use gtk2 >= 2.6 ==> The use of PreReq is deprecated. In the majority of cases, a plain Requires is enough and the right thing to do. Sometimes Requires(pre), Requires(post), Requires(preun) and/or Requires(postun) can also be used instead of PreReq. system-config-rootpassword.src: E: no-cleaning-of-buildroot %install ==> You should clean $RPM_BUILD_ROOT in the %clean section and just after the beginning of %install section. Use "rm -Rf $RPM_BUILD_ROOT". system-config-rootpassword.src: W: mixed-use-of-spaces-and-tabs (spaces: line 36, tab: line 39) ==> The specfile mixes use of spaces and tabs for indentation, which is a cosmetic annoyance. Use either spaces or tabs for indentation, not both. system-config-rootpassword.noarch: W: no-documentation system-config-rootpassword.noarch: E: script-without-shebang /usr/share/system-config-rootpassword/rootpassword_tui.py system-config-rootpassword.noarch: E: script-without-shebang /usr/share/system-config-rootpassword/passwordDialog.py ==>This text file has executable bits set or is located in a path dedicated for executables, but lacks a shebang and cannot thus be executed. If the file is meant to be an executable script, add the shebang, otherwise remove the executable bits or move the file elsewhere. system-config-rootpassword.noarch: W: symlink-should-be-relative /usr/share/firstboot/modules/rootpassword.py /usr/share/system-config-rootpassword/passwordDialog.py ==>Absolute symlinks are problematic eg. when working with chroot environments. system-config-rootpassword.noarch: W: obsolete-not-provided redhat-config-rootpassword ==> If a package is obsoleted by a compatible replacement, the obsoleted package must also be provided in order to provide clean upgrade paths and not cause unnecessary dependency breakage. If the obsoleting package is not a compatible replacement for the old one, leave out the provides. system-config-rootpassword.noarch: W: conffile-without-noreplace-flag /etc/pam.d/system-config-rootpassword system-config-rootpassword.noarch: W: conffile-without-noreplace-flag /etc/security/console.apps/system-config-rootpassword ==> A configuration file is stored in your package without the noreplace flag. A way to resolve this is to put the following in your SPEC file: %config(noreplace) /etc/your_config_file_here ---------------------------------------------------- also, 1) update buildroot tag as given in http://fedoraproject.org/wiki/Packaging/Guidelines#head-b4fdd45fa76cbf54c885ef0836361319ab962473 2) packaging guidelines suggests use of make as http://fedoraproject.org/wiki/Packaging/Guidelines#head-525c7d76890cb22df33b759c65c35c82bf434d2e 3) missing buildroot cleanup in %install. check http://fedoraproject.org/wiki/Packaging/Guidelines#head-6c809b2e945ca78ae25d040f250be60f73181ef0 4) any reason for not using macros for following line om %files section /usr/bin/system-config-rootpassword %dir /usr/share/system-config-rootpassword %dir /usr/share/system-config-rootpassword/pixmaps /usr/share/system-config-rootpassword/* %dir /usr/share/firstboot/ %dir /usr/share/firstboot/modules /usr/share/firstboot/modules/rootpassword.py* 5) Any reason for commenting %doc COPYING? 6) good to use %defattr(-,root,root,-) Update package. Better to provide new SPEC and SRPM links for this package before actually committing in CVS.
Ping? any updated ?
Orphaned Package. Moving away from this review. Open this review once someone wants to maintain this.
Can I have updates here now?
Parag: I'll incorporate your fixes shortly. I'll be adding a lot of other fixes also (around 3 :), and I wait for a hosting space for a source code repository now. Thanks for your patience!
Hey thanks. Also, thanks for keeping this package alive :) take your time for those fixes.
(In reply to comment #1) > system-config-rootpassword.src:12: W: unversioned-explicit-obsoletes > redhat-config-rootpassword > ==> The specfile contains an unversioned Obsoletes: token, which will match all > older, equal and newer versions of the obsoleted thing. This may cause update > problems, restrict future package/provides naming, and may match something it > was originally not inteded to match -- make the Obsoletes versioned if > possible. Not a good idea -- I expressed that on fedora-devel once. Versioned obsoletes can not really be done correctly -- they either obsolete possible future version or disallow updates in old versions. No worries, redhat-config-rootpassword is never coming back. > system-config-rootpassword.src:21: W: prereq-use gtk2 >= 2.6 > ==> The use of PreReq is deprecated. In the majority of cases, a plain Requires > is enough and the right thing to do. Sometimes Requires(pre), Requires(post), > Requires(preun) and/or Requires(postun) can also be used instead of PreReq. Just removed it -- it should be pulled in by pygtk2 anyways. > system-config-rootpassword.src: E: no-cleaning-of-buildroot %install > ==> You should clean $RPM_BUILD_ROOT in the %clean section and just after the > beginning of %install section. Use "rm -Rf $RPM_BUILD_ROOT". Done. > system-config-rootpassword.src: W: mixed-use-of-spaces-and-tabs (spaces: line > 36, tab: line 39) > ==> The specfile mixes use of spaces and tabs for indentation, which is a > cosmetic annoyance. Use either spaces or tabs for indentation, not both. Done. > system-config-rootpassword.noarch: W: no-documentation > system-config-rootpassword.noarch: E: script-without-shebang > /usr/share/system-config-rootpassword/rootpassword_tui.py > system-config-rootpassword.noarch: E: script-without-shebang > /usr/share/system-config-rootpassword/passwordDialog.py > ==>This text file has executable bits set or is located in a path dedicated > for executables, but lacks a shebang and cannot thus be executed. If the file > is meant to be an executable script, add the shebang, otherwise remove the > executable bits or move the file elsewhere. Should not be executable. Will be fixed usptream. > system-config-rootpassword.noarch: W: symlink-should-be-relative > /usr/share/firstboot/modules/rootpassword.py > /usr/share/system-config-rootpassword/passwordDialog.py > ==>Absolute symlinks are problematic eg. when working with chroot environments. Will be fixed upstream. > system-config-rootpassword.noarch: W: obsolete-not-provided > redhat-config-rootpassword > ==> If a package is obsoleted by a compatible replacement, the obsoleted package > must also be provided in order to provide clean upgrade paths and not cause > unnecessary dependency breakage. If the obsoleting package is not a compatible > replacement for the old one, leave out the provides. Done. > system-config-rootpassword.noarch: W: conffile-without-noreplace-flag > /etc/pam.d/system-config-rootpassword > system-config-rootpassword.noarch: W: conffile-without-noreplace-flag > /etc/security/console.apps/system-config-rootpassword > ==> A configuration file is stored in your package without the noreplace flag. > A way to resolve this is to put the following in your SPEC file: > > %config(noreplace) /etc/your_config_file_here The console.apps one contains no configuration user would modify. I added noreplace just to the other one. > 1) update buildroot tag as given in > http://fedoraproject.org/wiki/Packaging/Guidelines#head-b4fdd45fa76cbf54c885ef0836361319ab962473 Done > 2) packaging guidelines suggests use of make as > http://fedoraproject.org/wiki/Packaging/Guidelines#head-525c7d76890cb22df33b759c65c35c82bf434d2e Done > 3) missing buildroot cleanup in %install. check > http://fedoraproject.org/wiki/Packaging/Guidelines#head-6c809b2e945ca78ae25d040f250be60f73181ef0 Done > 4) any reason for not using macros for following line om %files section > /usr/bin/system-config-rootpassword > %dir /usr/share/system-config-rootpassword > %dir /usr/share/system-config-rootpassword/pixmaps > /usr/share/system-config-rootpassword/* > %dir /usr/share/firstboot/ > %dir /usr/share/firstboot/modules > /usr/share/firstboot/modules/rootpassword.py* Done > 5) Any reason for commenting %doc COPYING? Yes -- It is not actually present. Will be fixed in next upstream release. > 6) good to use %defattr(-,root,root,-) Done > > Update package. Better to provide new SPEC and SRPM links for this package > before actually committing in CVS. Disagreeed :) Sooo, I commited a couple of SPEC fixes to devel. Don't waste your time looking at it -- as you can see I did not fixed all the outstainding issues. I am currently waiting for the VCS repository for hosting the project. I plan to bump the version number and fix the remaining packaging issues (among other things) in the new version. "Will be fixed upstream" above means, that the fixes will be commited to that new version.
Do you want some more time to give updates here?
Oh, sorry, I didn't realize I didn't link to the new files. SRPM: http://koji.fedoraproject.org/packages/system-config-rootpassword/1.99.2/1.fc9/src/system-config-rootpassword-1.99.2-1.fc9.src.rpm SPEC: http://cvs.fedoraproject.org/viewcvs/*checkout*/rpms/system-config-rootpassword/devel/system-config-rootpassword.spec?only_with_tag=system-config-rootpassword-1_99_2-1_fc9
You should remove %attr(0644,root,root) in %files section mock build gave me /var/tmp/system-config-rootpassword-1.99.2-1.fc9-root-mockbuild/usr/share/applications/fedora-system-config-rootpassword.desktop: error: value "system-config-rootpassword.png" for key "Icon" in group "Desktop Entry" is an icon name with an extension, but there should be no extension as described in the Icon Theme Specification if the value is not an absolute path Error on file "/var/tmp/system-config-rootpassword-1.99.2-1.fc9-root-mockbuild/usr/share/applications/system-config-rootpassword.desktop": Failed to validate the created desktop file If we fix above then build.log showed me warning: File listed twice: /usr/share/system-config-rootpassword/pixmaps rpmlint reported system-config-rootpassword.noarch: W: conffile-without-noreplace-flag /etc/security/console.apps/system-config-rootpassword A configuration file is stored in your package without the noreplace flag. A way to resolve this is to put the following in your SPEC file: %config(noreplace) /etc/your_config_file_here system-config-rootpassword.src:22: W: unversioned-explicit-obsoletes redhat-config-rootpassword The specfile contains an unversioned Obsoletes: token, which will match all older, equal and newer versions of the obsoleted thing. This may cause update problems, restrict future package/provides naming, and may match something it was originally not inteded to match -- make the Obsoletes versioned if possible.
any updates here?
15:01 <lkundrak> the desktop file change was rawhide in the buildsys change some short time after I commited the current package 15:01 <lkundrak> the configfile things are intentional, I described them in the bug iirc 15:02 <lkundrak> so is the unversioned obsolete 15:04 <paragan> lkundrak okay for conffile 15:05 <paragan> lkundrak dunno currently desktop file issue is there or not 15:06 <paragan> but still I see you can modify desktop removing extension .png 15:06 <paragan> lkundrak want to solve => You should remove %attr(0644,root,root) in %files section 15:07 <paragan> okay for unversioned obsolete SRPM: http://koji.fedoraproject.org/koji/getfile?taskID=299328&name=system-config-rootpassword-1.99.3-1.fc9.src.rpm SPEC: http://cvs.fedoraproject.org/viewcvs/*checkout*/rpms/system-config-rootpassword/devel/system-config-rootpassword.spec?rev=1.21 http://koji.fedoraproject.org/koji/taskinfo?taskID=299325
APPROVED.