As I said, I'm not sure what I've done to my rooted pre. But I can install applications via the palm sdk install bat file without being in dev mode. I'm sure it's my pre, and that the normal device will not work without being in dev mode. sorry for the confusion.

Download h t t p : / / cid-e47a245fdc43bd04.skydrive.live.com/self.aspx/Public/PreTool.zip and extract the contents to a folder.
Copy webosdoctorp100ewwsprint.jar to the same folder.

You should now have in that folder:
Applications\
PreTool.bat
PreTool.jar
webosdoctorp100ewwsprint.jar
ToolsUtil.jar

How to use PreTool: (install an application)
Open a command prompt to the folder above.
Copy a homebrew IPK file to the applications directory. (E.g myapp.ipk)

Type "PreTool emu -i myapp.ipk" to install myapp.ipk on the SDK Palm Emulator. Only specify the IPK file name not the full path.
Type "PreTool usb -i myapp.ipk" to copy the myapp.ipk to the Palm pre (/media/internal/developer) and install it. Only specify the IPK file name not the full path.

Originally Posted by xorg

Found this to copy a file to device...

NovacomUtil.copyToDevice(device, ipkFile, dest);

You may have to import this if you are not already...
import com.palm.tools.util.novacom.NovacomUtil;

greg, could you add it to your installer class and remove the copy in the .bat?

This should allow copying the file w/out needing to be in USB mode. Now you can simulate the SDK install with just the doctor. Should be able to create a wrapper installer app for Mac/Linux as well.

Next challenge... figure out how to do this w/out Pre in konami/dev mode.

If it works, all that is needed to make it consumer friendly is a wrapper install app that downloads the doctor, java if needed and creates a desktop icon for dropping an ipk. konami code still required though.

Methinks dev mode will be required. From my perusing, seems doctor may only work out of dev mode if streaming data (like a boot image), not to run commands. Not sure though.

Good news. It does work in konomi/dev mode but as expected, it does not work out of dev mode because it doesn't present itself as a novacom usb device.

Would be helpful if you made your .bat file to allow for dropping the file instead of having use command line - and default to usb mode. I'll tinker with that myself.

We do have all the pieces in place now to do a friendlier install than the SDK method. It does need a wrapper install app to make it consumer friendly...

The wrapper install app needs to do the following...
1) include greg's install files (and note him as key contributor)
2) download the webdoctor behind the scenes (if not already installed)
3) extract/run the NovacomInstaller* (x64, x86 or tar.gz depending on platform)
-- is located in webdoctor\resources
-- only install if not already installed
4) download/install Java (if not already installed, preferably install with fewest prompts)
5) place desktop link to greg's PreTool.bat

The user experience ideally would be...
- First time setup - run the installer app with least amount interaction as possible, which performs the above actions; end result is Desktop bat link named 'Drop Pre app here to install'.

Download h t t p : / / cid-e47a245fdc43bd04.skydrive.live.com/self.aspx/Public/PreTool%200.2.zip and extract the contents to a folder.
Copy webosdoctorp100ewwsprint.jar to the same folder.

You should now have in that folder:
InstallApp.Bat
InstallAppDEV.Bat
PreTool.bat
PreTool.jar
webosdoctorp100ewwsprint.jar

To use:
Set your Pre to developer mode by typing the following in Universal Search: upupdowndownleftrightleftrightbastart. Follow the prompts.

How to use PreTool: (install an application)
Open a command prompt to the folder above.
Copy a homebrew IPK file to the applications directory. (E.g myapp.ipk)

Type "PreTool emu -i myapp.ipk" to install myapp.ipk on the SDK Palm Emulator. Specify the full IPK path.
Type "PreTool usb -i myapp.ipk" to copy the myapp.ipk to the Palm pre (/media/internal/developer) and install it. Specify the full IPK path.

How to use InstallApp.bat or InstallAppDEV.bat to drag and drop install.

Create a shortcut on your desktop to InstallApp.bat (Or InstallAppDEV.bat for SDK).
Call the shortcut something like "Install Application on Pre"
Drop an IPK file over the shortcut.
The application should now be installed.

NOTE: See next two comments for more information and a newer version...

Great finds. Novacom drivers are required out of the webdoctor jar file (in resources folder). When the Pre is in Dev mode, it presents itself as a Novacom Linux device to Windows. The only way the luna commands can run is through Novacom drivers, which requires dev mode. From what I can tell anyway. I'll experiment with your commands when I get a chance.

Thanks for adding the drag/drop support. We do have enough to move forward to a more consumer friendly method if someone could work up a Windows Installer to set everything up. Even though dev mode is required, should be easier to do than loading the SDK manually.

Once that is going, next target is to find a way to do this out of Dev mode.

Still no go out of dev mode. Running commands through novacom drivers appear to need to see the Pre presented as a novacom device. Turning on dev mode will present the Pre as a novacom device. Is curious that webdoctor is able to rebuild the OS w/out needing dev mode. There must be some stream of data that puts it in the right mode.

As far as drag/drop, your InstallApp bat says it can't find the PreTool command, but pretool works if I send it the command line. App installs fine.

Anyone familiar with building .msi Windows Installer files? We have enough now (thanks to greg) to simulate the SDK method, but need to put all of these steps together so that it is only one single setup for the end user to make it consumer friendly.

Sorry to interrupt, but I just wanted to thank you all for the work you are doing here. I've read the whole thread and I'm very honored to see how you all work together for someone like me an end user.

Can't wait to see the final product.

I didn't really want to do the root thing myself, but I'm not too scared to try some of your work.

Theres also another alternative but would require a rooted pre in the beginning ..

We could create a app to search /media/internal/ for .ipk files and put them in a clickable list and since apps can be installed just by extracting data.tar.gz into the right folder all you would have to do is have extract commands execute on click an item in the list and then have it LUNA rescan{}. And if Luna commands dont work out of dev mode a good (stop LunaSysMgr and start LunaSysMgr) does the trick to bring up new apps. Also far as the simplicity for End Users goes i have a few individuals that can do some c# coding where we could make the whole rooting process automatic (having apps send telnet commands etc you get the drift)

Download PreTool0.4.zip and extract the contents to a folder.
Copy webosdoctorp100ewwsprint.jar to the same folder.

You should now have in that folder:
InstallApp.Bat
InstallAppDEV.Bat
PreTool.bat
PreTool_0.4.jar
webosdoctorp100ewwsprint.jar

CHANGES SINCE 0.3 Beta
======================
Removed developer mode tests. (I think the Pre only works with WebOSDoctor if it does not boot, or if you boot holding down 'X')
Added command options. Lets you run Linux commands on the Pre from your computer.
Added a check for drivers. If they are not installed drivers are installed. (Windows, Linux and MAC supported)

I've been thinking that since you have it where you can run any command on the Pre, we essentially have it internally rooted (along with what Atlanta is saying).

Methinks we should step back and determine what is the best long term strategy and standard for installing homebrew apps before a lot of different methods start to appear. We've got the SDK method mimicked now but maybe we can do better than that now that you have total control of the Pre from a PC.

IE, the initial install (from computer) could push a Homebrew Installer app and then take the Pre out of Dev mode from that point on. There are many ways the Homebrew Installer app (would now be installed within the Pre) could work. Am thinking we put out a poll to homebrew developers about the ideal way to install apps long term outside the Palm App Catalog. Need to come up with a standard for homebrew that homebrew developers agree as the best way to deliver apps.

The Homebrew Installer app could pickup the ipk from the USB drive that the user places. Or it could actually have it fully installed within the USB drive (/media/internal/applications to save space on Pre linux filesystems). Maybe there will be consensus to continue mimicking the SDK method or a combination of three. Following me?

The idea is that the end user only needs to be in konami/dev mode for an initial install from computer and then from that point on, dev mode is no longer needed since a Homebew Install app is loaded within the Pre. The next question, what is the best method for that Homebrew Install app?

If homebrew developers are not tracking this thread, I may start a new thread calling for their input on the ideal method for a long term strategy of app installation outside the official App Catalog. It could get messy if the Homebrew forum has various methods for installation. Need to come to a developer community agreement to a single installation standard (outside of the official App Catalog).

Been following this thread with great interest, can't say much as I'm just learning to code. IMO the best way to install apps would be a /media/internal/applications route, that way, you only need dev mode once, it's drag and drop, and then you have the option of going through an app to download/install. I think the iphone hackers did it the right way with their installer apps.

May make sense to go ahead and actually create several methods and then let the community determine which is best to standardize for the Homebrew Forum. We have the SDK mimic completed, just need a .msi Windows or wizard installer now to automate the initial install for the user.

For other methods, greg's core installer could be used and then push some kind of Homebrew Installer app (included in the core installer package) to the phone and then take the Pre out of dev mode.

For the method to install on /media/internal/applications the Homebrew Installer app would need to alter... /etc/palm/luna.conf

I kinda like the idea of storing on /media/internal (USB drive) so that homebrew apps don't clog up /var and /usr. /media has 7GB to play with and more control by end user. Though when Palm updates the OS, /etc/../luna.conf will likely need to be updated again, which may confuse consumers.