Application:Preware

From WebOS Internals
Revision as of 09:46, 14 March 2010 by Gollyzila (talk | contribs)
Jump to navigation Jump to search
« Go Back to the Utilities application list
Preware ss1.png

Preware - Version: Beta 0.9.30
(5 Mar 2010)

Summary

Icon Preware.png

Preware is a package management application for the Palm Pre. Preware allows the user to install any package from any of the open standard package repositories on preware.org (or any other location that hosts an open standard package repository). Preware relies on a custom written service developed from community research which allows the mojo app to talk to the built-in ipkg tool.

This application was the result of extensive community-based design in IPKG Service and Preware Design.

For application management, Preware can access more applications, and has more features, than any other on-device package installer.

And since it is open source, and has a completely open development process supported by a team of world-class WebOS Internals developers, it will continue to get better much faster than any other package management application.

Preware is the open application installer that has been written specifically to support a homebrew ecosystem where any developer can upload any application to any submission site, and that application can then be installed by any user. Developers no longer need to upload their applications to multiple submission sites, and users are no longer excluded from accessing applications from any open standard package repository.

Key Features

  • Install / Remove / Update Homebrew Applications including advanced applications with special requirements.
  • Install / Remove / Update WebOS Themes
  • Install / Remove / Update WebOS Patches
  • Install / Remove / Update Palm App Catalog Applications
  • Support for installation of signed packages

Usage

Preferences

Preferences.png

You can select preferences in the top left corner of the pre to bring up the preferences screen. On the Preferences screen you can specify the look of the application, the frequency that feeds are updated, and what Preware will show you by default.

Feed Management

Preware ss9.png

In the preferences section on the top bar on the right side is a button that takes you to the feeds screen. On the feeds screen you can select which feeds are loaded and which ones are not. Simply select the on or off button for that feed. (If you are not interested in themes you can disable the two feeds for themes to speed up the updating of feeds) Preware comes with the following feeds by default.

  • Optware
  • Palm Beta
  • Palm Beta Updates
  • Palm Catalog
  • Palm Catalog Updates
  • Palm Web
  • Palm Web Updates
  • PreCentral
  • PreCentral Themes
  • PreThemer
  • WebOS Internals
  • WebOS Patches

Adding Custom Feeds

With Preware versions 0.9.30 and above, users are now able to add custom feeds through Preware without the use of a computer. The following instructions will explain how to add the Webos-Internals Testing feed for all devices:

  1. Open Preware and wait for it to finish loading.
  2. Open the App Menu (tap "Preware" in the top left corner of the screen) and tap Manage feeds.
  3. Scroll to the bottom until you see the New Feed box.
  4. Type webosinternals-testing in the NAME text box.
    • NOTICE: DO NOT PUT SPACES IN THE NAME. THEY RESULT IN THE FEED NOT LOADING. Instead use hyphens and make sure the name is NOT capitalized.
  5. Type or paste the URL http://ipkg.preware.org/feeds/webos-internals/testing/all/ in the URL text box
    • Make sure to delete 'http://' before pasting the URL if the URL already contains 'http://'
  6. Make sure the IS COMPRESSED option is set to YES (currently the toggle does not work, but will be fixed in future versions).
  7. Tap Add Feed and then tap Yes when the alert pops up.
  8. Gesture swipe back, open the App Menu, and tap Update Feeds.

Congratulations, you have just added a custom feed! For adding other feeds, be sure to replace the name and URL in these instructions with the proper name and URL.


The following are the testing feed URLs specifically for Pre, Pixi, and emulator respectively (These are separate from the 'all' testing feed):

Pre:
http://ipkg.preware.org/feeds/webos-internals/testing/armv7/
Pixi:
http://ipkg.preware.org/feeds/webos-internals/testing/armv6/
Emulator:
http://ipkg.preware.org/feeds/webos-internals/testing/i686/

Package Updates

Applications

Themes

Patches

Installed Packages

List of Everything

Status

This is beta software. Even so:

  • Since 27 August 2009 it is the only over-the-air installer for the palm capable of installing advanced palm applications such as the on screen keyboard or the terminal application.
  • Since 27 August 2009 it is the only application supporting installation from all existing palm homebrew feeds.
  • Since 17 September 2009 it also supports installation of themes.
  • Since 8 October 2009 it also supports installation of webos patches.
  • Since 12 Jan 2010 it also supports all Palm App Catalog feeds.

License

Please be aware that org.webosinternals.preware and org.webosinternals.ipkgservice are licensed under the GPLv2.

They cannot be used by a closed source application. If you want to use them in a non-GPLv2 but otherwise open source application, please contact the authors.

Operating notes

Limitations

No known limitations.

Known bugs

  • When selecting a patch with dependencies, if you view those dependencies then install them, when Preware returns you to the original patch's screen it will still have the 'install' button showing even though it is installed successfully. Swiping back and returning will show the correct status.
  • The Update All button can get confused if there are patches with complex dependencies. This will be fixed in a future version.
  • If updates to App Catalog applications are pending, they will be silently skipped when using the Update All button.
  • The Updates feature from the regular Palm Launcher, may claim that application updates are needed, and then when the user clicks Show Updates shows the App Catalog's installed applications, there are none shown that need updating. This isn't as expected. This is because an app that was previously only in Preware has now migrated to the Palm Catalog. Don't worry, your apps are up to date (with the possible exception of the one with the conflict.) Not a bug in PreWare per se' but an app version conflict because the app is in both the Palm Catalog and also in Homebrew. Notice that you don't need to remove preware to install the app from the official catalog, but simply disable the feed in preware then "update feeds" to refresh the list then it should install fine from the official app catalog.
  • In the Manage Feeds scene, feeds do not delete when they are turned off. For now, toggle them ON and then swipe delete.
  • When adding a custom feed, the IS COMPRESSED toggle does not currently work (14 March 2010).

Installing Preware

Simple step-by-step instructions with screenshots are here: Getting Started: Preware

You do not need to access the Linux command line or "root your Pre" to install or use Preware.

Please use version 2.96 or later of the WebOS Quick Install tool to install the Package Manager Service and the Preware application directly from the WebOS Internals feed.

No other application installer tool is sophisticated enough to install the custom Package Manager Service that Preware requires. Preware can install it, but you need a way to bootstrap Preware first, so you need to use our stand-alone Preware Installers or WebOS Quick Install for the very first installation of Preware.

You need to have your Pre in developer mode when using the stand-alone Preware Installer or WebOS Quick Install for the very first installation of the Package Manager Service and Preware. Once you have Preware correctly installed, you never need to use developer mode again with Preware (it does the required steps in the background for you whenever it needs to).

Note that Preware works just as well on the Emulator as it does on a real device, and is installed in exactly the same way.

Installing Preware with WebOS Quick Install

Simple step-by-step instructions with screenshots are here: Getting Started: Preware Latest Version of WebOS Quick Install available here: WebOS Quick Install v3.01

  1. Install the required Software
    1. Click here to verify that you have the latest java installed on your computer and update if needed
    2. Click here to download the current webOS Doctor for your carrier and phone in a subdirectory your will remember (maybe "Palm"?). If you already have it, skip this step.
      • Do not run the webOS Doctor
    3. Click Here to download the latest version of WebOS Quick Install
  2. Put your device in Developer Mode
  3. Run WebOS Quick Install
  4. Click the third button on the right (Blue Down Arrow)
  5. Choose WebOS Internals Feed (all) from the dropdown list at the top.
  6. Select Package Manager Service from the list.
  7. Select Preware from the list.
  8. Click Download.
  9. Click Close.
  10. Click Install.

Note: If WebOS Quick Install offers to install the Package Manager Service automatically to enable tweaking, do not agree. It will install the wrong version. You must install it as detailed above.

Installing Preware from Terminal, Novaterm or WebOS Quick Install "Linux Commandline"

Really, unless you *really* know what you are doing, you should use the normal WebOS Quick Install installation instructions above.

<source lang="bash"> cd /tmp wget http://bit.ly/preware-bootstrap sh preware-bootstrap </source>

Installing Preware with Preware Installer

  1. Put your phone into Developer Mode (skip if you already have developer mode on)
  2. Install Required Software:
    1. Click here to verify that you have the latest java installed on your computer and update if needed
    2. Click here to download the current webOS Doctor for your carrier and phone in a subdirectory your will remember (maybe "Palm"?). If you already have it, skip this step.
      • Do not run the webOS Doctor
  3. Install Preware:
    1. Right click the most recent PrewareInstaller.jar from get.preware.org and choose Save As...
    2. Save the Preware Installer in the same folder where your save the webOS Doctor.
    3. Open (run) the Preware Installer (Double click the jar file you just downloaded.)
    4. Click Tools then Update Drivers to refresh Novacomd. This may take a few minutes.
    5. Click INSTALL. Wait while the Install button is grayed out (Preware is being installed).
    6. When the Preware Installer Button is no longer grayed out, close the Preware Installer.
  4. Restart your phone:
    1. Press and hold the ON/OFF button for 8 seconds
    2. Tap Power
    3. Tap Restart
  5. Update the Package Manager Service and Preware
    1. Tap Launcher
    2. Tap Preware
    3. Tap OK to continue if there is a splash screen
    4. Tap Package Updates (an update for Package Manager Service and Preware should be shown)
    5. Tap Package Manager Service
    6. Tap Update
    7. Tap OK when the Package Manager Service application has installed
    8. Swipe back to return to Package Updates
    9. Tap Preware
    10. Tap Update
    11. Tap OK when the Preware application has installed

Updating

To update Preware or the Package Manager Service, simpy use Preware version 0.9.0 or later.

Note that you cannot use fileCoaster, or PreLoad, or PreUpdate to install or update Preware or the Package Manager Service. Those tools are unable to operate correctly on advanced homebrew packages.

Removal

Why would you ever want to remove Preware?

To remove Preware, use WebOS Quick Install's Device Management page and unselect the Package Manager Service and the Preware application.

Recent enhancements

0.9.30: Now chooses the correct information to display for packages in multiple feeds.

0.9.29: Added option to search package descriptions instead of just the titles. Integrated Luna Manager into Preware, find it in the app menu.

0.9.28: Added support for displaying the countries for which an application is released.

0.9.27: Fixed a serious bug in update subscription handling. Now hides the price sort option when none of the loaded packages have any prices.

0.9.26: Fixed a bug in App Catalog background operation detection.

0.9.25: Added a preference to only show free applications.

0.9.24: Added protection against App Catalog installs clobbering the ipkg status file.

0.9.23: Spanish translations added, courtesy of Ángel Prada (Malakun).

0.9.22: Italian translations added, courtesy of Federico Pietta (Darkmagister).

0.9.21: German translations added, courtesy of Volker Zota (DocZet) and Thomas Linden (debilator).

0.9.20: Fixed an error in the French support which prevented Preware from loading.

0.9.19: Localization support and French translations added, courtesy of Yannick LE NY. Fixed the OnFeeds split error, caused by zero length feed config files. Now continues to load the package feeds after an update error.

0.9.18: Added second line options for feed, price & feed, and price & version & feed. Added reporting of each feed index file as it is being downloaded.

0.9.16: Removed the partial app limit fix (obsolete as of webOS 1.3.5)

0.9.15: Added Palm App Catalog feeds, including price information.

0.9.14: Added support for installation of signed packages without confirmation.

0.9.13: Enabled the Update All button, and added support for skipping restart actions (e.g. when installing multiple patches).

0.9.12: Fixed the recurring splash screen bug.

0.9.11: Added a preference for enabling and disabling the fair dinkum partial app limit fix.

0.9.10: Added support for category themes.

0.9.9: Massive speed improvements, a fix for the theme hanging problem, and support for Pixi patching.

0.9.8: Robustified the calls to the JSON parser to handle packages with syntax errors in appinfo.json

0.9.7: Added a preference to enable or disable fixing the metadata for unknown type packages.

0.9.6: Added the initial startup screen. Fixed the display of packages with multiple maintainers. Now loads extended appinfo and control file information for Unknown packages. Changed default list second-line to version + maintainer. No longer allows back-gestures during package operations. Multi-line package titles are now supported. Show All Packages changed to Show Available Types and now defaults to No.

0.9.5: A package is removed if the user cancels installation. More verbose status and error messages. Selects appropriate webos-patches feed automatically.

0.9.4: Added support for package dependencies.

0.9.3: Adds the webos-patches feed, and feed management support.

0.9.1: Adds the All category, plus other miscellaneous fixes.

0.9.0: Now supports themes, restart flags and the new memory-reduction service methods.

0.8.5: Massive speed improvement on loading, now supports package types and adding feeds.

0.8.2: More preferences added and now functional, with listing and update frequency options.

0.8.1: Preferences scene implemented. Upstart job stops on removal.

0.8.0: Now supports Descriptions and Screenshots.

0.7.7: Addition of ipkglog and config list, and if ipkgservice fails at start it notifies people, and if it fails after postinst it considers it complete anyways

0.7.6: Fixed the superfluous update subscription message windows

0.7.5: Fixed update subscription oddity.

0.7.4: Fixed remounting of root filesystem for post-install and pre-remove scripts on the Pre.

0.7.1: Fixed buttons and title on script view screen.

0.7.0: Initial support for post-install and pre-remove scripts, including secure informed user consent. Does not work properly with dependencies yet, so please install dependencies one at a time.

0.6.7: Fixed bug in category drop-down list.

0.6.6: Fixed bug in package size reporting.

0.6.5: Updated icon and other graphical annotations.

0.6.4: Categories drop-down bug fixed. Preware category updated.

0.6.2: Categories now work to some extent. Still a bug in the drop down box.

0.6.1: Sorting by name or date is now available. Application details screen is much more organized.

0.6.0: No user visible changes. Preparation for the secure informed user consent functionality.

0.5.1: Filtering is now available on the list screens. Just start typing ...

Repository

Preware and the Package Manager Service are housed in the applications/preware and services/ipkservice git repositories at http://git.webos-internals.org/

For commit permission to the open source project, contact rwhitby on #webos-internals or email [support@webos-internals.org]

Preware Bootstrap

The Preware Bootstrap is the fastest, most robust way to install or update Preware and the Package Manager Service.

<source lang="bash"> cd /tmp wget http://bit.ly/preware-bootstrap sh preware-bootstrap </source>