Smart: Difference between revisions

From Yocto Project
Jump to navigationJump to search
(Update now smart has been merged)
(Update for current master (pseudo automatically used in devshell, etc.))
Line 6: Line 6:


  # Ensure you are using "package_rpm" in PACKAGE_CLASSES
  # Ensure you are using "package_rpm" in PACKAGE_CLASSES
  # Comment out the line in core-image-minimal that removes the packaging data files
  # Have EXTRA_IMAGE_FEATURES += "package-management" in local.conf
  # <code>bitbake core-image-minimal</code>
  # <code>bitbake core-image-minimal</code>
  # <code>bitbake -c devshell core-image-minimal</code>
  # <code>bitbake -c devshell core-image-minimal</code>
  # Within the devshell:
  # Then, within the devshell:
  cd ../rootfs
  cd ../rootfs
export PATH=/path/to/native/sysroot/usr/bin/python-native:$PATH
  export RPM_ETCRPM=$PWD/etc/rpm
  export RPM_ETCRPM=$PWD/etc/rpm
smart --data-dir=$PWD/var/lib/smart channel --add rpmsys type=rpm-sys name="rpmsys"
smart --data-dir=$PWD/var/lib/smart config --set rpm-root=$PWD
smart --data-dir=$PWD/var/lib/smart config --set rpm-dbpath=/var/lib/rpm


You should now be able to query the packages installed into the rootfs e.g.
You should now be able to query the packages installed into the rootfs e.g.
Line 24: Line 20:
  smart --data-dir=$PWD/var/lib/smart channel --add test type=rpm-dir path=/path/to/tmp/deploy/rpm/i586
  smart --data-dir=$PWD/var/lib/smart channel --add test type=rpm-dir path=/path/to/tmp/deploy/rpm/i586
  smart --data-dir=$PWD/var/lib/smart query # verify that the new channel is recognized
  smart --data-dir=$PWD/var/lib/smart query # verify that the new channel is recognized
  unset PSEUDO_DISABLED
  smart --data-dir=$PWD/var/lib/smart install zip # install 'zip' in the rootfs
unset PSEUDO_UNLOAD
export PSEUDO_LOCALSTATEDIR=$PWD/../pseudo
pseudo smart --data-dir=$PWD/var/lib/smart install zip # install 'zip' in the rootfs

Revision as of 17:47, 23 July 2013

http://labix.org/smart/

Smart is now merged into OE-Core / Poky master.

To test this out querying a root filesystem on the host:

# Ensure you are using "package_rpm" in PACKAGE_CLASSES
# Have EXTRA_IMAGE_FEATURES += "package-management" in local.conf
# bitbake core-image-minimal
# bitbake -c devshell core-image-minimal
# Then, within the devshell:
cd ../rootfs
export RPM_ETCRPM=$PWD/etc/rpm

You should now be able to query the packages installed into the rootfs e.g.

smart --data-dir=$PWD/var/lib/smart query

If you add an rpm-dir channel and run smart under pseudo you can install and uninstall packages:

smart --data-dir=$PWD/var/lib/smart channel --add test type=rpm-dir path=/path/to/tmp/deploy/rpm/i586
smart --data-dir=$PWD/var/lib/smart query # verify that the new channel is recognized
smart --data-dir=$PWD/var/lib/smart install zip # install 'zip' in the rootfs