Bug 175630 - Review Request: smart - Next generation package handling tool
Review Request: smart - Next generation package handling tool
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
All Linux
medium Severity medium
: ---
: ---
Assigned To: Tom "spot" Callaway
David Lawrence
: 175438 185239 (view as bug list)
Depends On:
  Show dependency treegraph
Reported: 2005-12-13 11:02 EST by Axel Thimm
Modified: 2007-11-30 17:11 EST (History)
7 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2006-04-12 08:21:23 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Axel Thimm 2005-12-13 11:02:25 EST
Spec Name or Url: http://people.atrpms.net/~athimm/fedorasubmit/smart.spec
SRPM Name or Url: http://people.atrpms.net/~athimm/fedorasubmit/smart-0.40-23.src.rpm

 "The Smart Package Manager project has the ambitious objective of creating smart
  and portable algorithms for solving adequately the problem of managing software
  upgrading and installation. This tool works in all major distributions, and will
  bring notable advantages over native tools currently in use (APT, APT-RPM, YUM,
  URPMI, etc)."

o Config files (channels) for Fedora Core 4 are in a separate submission
o Derived from ATrpms' packages, adapted to Fedora Extras guidelines.
o Known to work under i386 and x86_64, ppc should pose no threats
o conffile-without-noreplace-flag /etc/pam.d/smart-root: similar to what
  up2date does
Comment 1 Axel Thimm 2005-12-13 11:06:30 EST
The config files are submitted in bug #175631
Comment 2 Tom "spot" Callaway 2005-12-13 11:12:20 EST
Why are the config files in a separate package? 
Comment 3 Ville Skyttä 2005-12-13 11:27:24 EST
Hello Axel! :)

We have already smart + configs in progress, so I'm marking these as dupes, feel
free to participate in the ongoing reviews!

*** This bug has been marked as a duplicate of 175438 ***
Comment 4 Enrico Scholz 2005-12-14 04:12:01 EST
response to comment @2 (referencing to bug #175631):

> Why are the config files in a separate package?

* upstream 'smart' does not ship channel lists
  ==> separate channels are no artifical package-split
  ==> adding channel lists to the 'smart' package would also add clutter

* at least in bug #175631: 'smart-channels' are packaged noarch while
  'smart' is arch-specific

* yum makes this too (yum + fedora-release)
Comment 5 Axel Thimm 2005-12-14 05:13:33 EST
up2date, too.

Fedora as a vendor and all the third party repos ship the config files in a
separate package. This allows flexibility in the sense that you only update the
config files package instead of rebuilding the whole thing. Local site admins
can simply replace this package with a package containing local mirrors,
distribution updates can be made by upgrading only the config files (as future
yum/smart etc. will depend on future python, you break the chicken and egg

There are only reasons as far as to keep the config files in its own package.
But I agree it should become part of fedora-release in the long term :)
(seriously, if smart does meet its expectations it would be a good candidate to
be promoted to Core someday. While already have duplicate functionality by yum
and up2date, smart could have benfits. But that's not to discuss yet, let smart
convince users in Extras first).
Comment 6 Axel Thimm 2006-03-30 17:27:37 EST
Reopening due to bug 175438 comment 77 and bug 185239
Comment 7 Axel Thimm 2006-03-31 19:41:05 EST
Updated packages for FC5 are available at:

* Fri Mar 31 2006 Axel Thimm <Axel.Thimm@ATrpms.net> - 0.41-27
- Sync with specfile from Ville Skyttä <ville.skytta at iki.fi>
- Add empty-description patch (upstream issue 64).
- Update multi-version to include more kernel-* variants.
- Add distro.d support.
- Make owner of %%{_sysconfdir}/smart and

* Wed Dec 21 2005 Axel Thimm <Axel.Thimm@ATrpms.net> - 0.41-26
- Update to 0.41.

Comment 8 Axel Thimm 2006-03-31 20:03:52 EST
In reply to Jochen's review in bug 175631 comment 2:

o the review is about the smart package, e.g. you probably wanted
  to add this to this bug report :)
o smart-gui and smart-update are subpackages of smart and have no
  documentation directory of their own
o new upstream release has been packaged
o /etc/pam.d/* and /etc/security/console.apps/* are usually not
  replacable config files.
o which parts are non UTF-8 encoded?

Comment 9 Axel Thimm 2006-04-03 12:53:38 EDT
In reply to Ville Skyttä's comments in PM:

* Sun Apr 02 2006 Axel Thimm <Axel.Thimm@ATrpms.net> - 0.41-28
- Move usermode support to the gui package.
- Add cluster/gfs *-kernel variants.

The new package is available here:
Comment 10 Tom "spot" Callaway 2006-04-09 19:51:43 EDT
One minor issue that I see immediately: 
smart should have Requires: fedora-package-config-smart

- rpmlint checks return:
W: smart-update no-documentation (ok to ignore)
W: smart-gui conffile-without-noreplace-flag /etc/pam.d/smart-root 
W: smart-gui conffile-without-noreplace-flag /etc/security/console.apps/smart-root
(ok to ignore, there should be no need for the user to edit these files)
W: smart-gui no-documentation (ok to ignore)

- package meets naming guidelines
- package meets packaging guidelines
- license (GPL) OK, text in %doc, matches source
- spec file legible, in am. english
- source matches upstream
- package compiles on devel (x86)
- no missing BR
- no unnecessary BR
- locales handled properly
- not relocatable
- owns all directories that it creates
- no duplicate files
- permissions ok
- %clean ok
- code, not content
- no need for -docs
- nothing in %doc affects runtime
- .desktop file ok 

Minor issues:

- There is one reference to /usr/bin , please replace with %{_bindir}

Major Issue:
- gui mode doesn't work with the included distro.py. You need to make the
following change:

--- distro.py.orig      2006-04-09 18:56:29.000000000 -0500
+++ distro.py   2006-04-09 18:56:48.000000000 -0500
@@ -6,9 +6,9 @@
                      "name": "RPM Database"})

     for flavour in ("", "-smp", "-hugemem", "-largesmp", "-xen0", "-xenU",
-        pkgconf.setFlag("multi-version", "kernel%s" flavour)
-        pkgconf.setFlag("multi-version", "kernel%s-unsupported" flavour)
-        pkgconf.setFlag("multi-version", "kernel%s-devel" flavour)
+        pkgconf.setFlag("multi-version", "kernel%s" % (flavour))
+        pkgconf.setFlag("multi-version", "kernel%s-unsupported" % (flavour))
+        pkgconf.setFlag("multi-version", "kernel%s-devel" % (flavour))
         for clustergfs in ("GFS", "cman", "dlm", "gnbd"):
              pkgconf.setFlag("multi-version", "%s-kernel%s" % (clustergfs,

... otherwise, it gets confused in trying to call setFlag, this resolves it.

Show me a package that has all of these items resolved, and I will approve it.
Comment 11 Axel Thimm 2006-04-10 05:28:36 EDT
The new package at


fixes the three issues from comment #10:

* Mon Apr 10 2006 Axel Thimm <Axel.Thimm@ATrpms.net> - 0.41-29
- Fix typos in distro.py, there were %% missing.
- /usr/bin/smart-root should had been %%{_bindir}/smart-root ...
- Make dependent on fedora-package-config-smart.

I hadn't added the dependency to fedora-package-config-smart on purpose, because
this package should be replaceable by local policies (e.g. local mirrors), and
because Fedora Core's main depsolver, yum, also doesn't have a dependency on its
repo files. But I see the benefits, too (yum install smart does the expected
operation, no surprised users and bug reports).

Thanks for reviewing!
Comment 12 Tom "spot" Callaway 2006-04-10 10:04:01 EDT
All issues raised in this package review have been resolved in 0.41-29, this
package is APPROVED.

Nice work Axel, go ahead and put in your application for cvsextras access and I
will sponsor you.
Comment 13 Panu Matilainen 2006-04-11 03:25:05 EDT
Have the configuration package provide "smart-config" or such and depend on that
instead of the actual package name, that way it can more easily be replaced locally?
Comment 14 Ville Skyttä 2006-04-11 15:48:26 EDT
(In reply to comment #13)
> Have the configuration package provide "smart-config" or such and depend on that
> instead of the actual package name, that way it can more easily be replaced 
> locally?

Comment 15 Ville Skyttä 2006-04-11 15:51:36 EDT
*** Bug 185239 has been marked as a duplicate of this bug. ***
Comment 16 Alex Lancaster 2006-04-12 03:15:47 EDT
Now that it's built and available in devel (as well as FC-4, FC-5) this bug
Comment 17 Ville Skyttä 2006-04-22 07:26:08 EDT
*** Bug 175438 has been marked as a duplicate of this bug. ***

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