webOS Nation Forums >  webOS Developers >  webOS Development > Accessing Linux != "rooting your Pre"
Accessing Linux != "rooting your Pre"
  Reply
 
Thread Tools Display Modes
Old 07/20/2009, 07:09 AM   #1 (permalink)
Developer
 
rwhitby's Avatar
 
Posts: 10,568
There's no such thing as "rooting your Pre". The Pre already runs Linux, already has a root user enabled in the password file from the factory, and already runs all applications as that root user. So your Pre already comes "rooted" out of the factory direct from Palm.

What most people (for some reason, maybe because they've been brainwashed by the closed nature of the Apple iPhone) refer to as "rooting your Pre" is simply accessing the built-in Linux operating system. This can be done by using the official Palm SDK and the "novaterm" program included with the SDK. Before the SDK was released, it was more difficult to access Linux. Now that the SDK is no longer under an NDA, it is easy to do (Palm even provide you with instructions on how to do it on their web site).

Now, what you do when you have achieved access to the Linux operating system on the Pre is up to you.

You can install an SSH daemon, and use that to enable you to access the Linux operating system on your Pre using your wifi or cellular connection instead of being tied to a USB cable. Note that the Pre Emulator already has the same SSH daemon pre-installed, so we're not doing anything here that Palm doesn't already expect developers to use.

You can install the Optware package manager (ipkg-opt) and use it to install over 1300 Linux utilities and command-line applications that have been specifically compiled to run on the Pre. These are installed in /opt, a directory that has been confirmed with the Senior Director of Core OS Software at Palm to not conflict with anything that Palm provides.

You can use the 'quilt' program to install modifications to the standard Palm applications, providing you with new features (and unlocking some features that Palm had already coded but for some reason didn't enable in the first webOS release). You can use 'quilt' to automatically remove all these modifications before you do an OTA update, and automatically reapply them all afterwards.

Or you can simply use it once to install any services that need to be installed as root outside of the /var filesystem (as the org.webosinternals.services package currently does, and as any replacement that can run shell commands will almost certainly need to as well), and then rely on the palm-install command that comes with the SDK to install any applications that depends on those services.

Accessing the Linux operating system does not change your Pre in any way.

It's the things that you install (e.g. the SSH daemon, the Optware package manager, or the shell command access service) that are the lasting effect of your actions. And even those things can be easily reverted by using the webOS Doctor to reflash your Pre.

So be bold, use the SDK that Palm has provided to access the underlying Linux operating system that drives your Pre, and don't listen to people who try and make others believe that there is something dangerous or "against the wishes of Palm" involved here by using terminology (such as "rooting your Pre") that really is only relevant to a closed device like the iPhone, not an open device like the Pre.

Instructions for how to do all the fantastic things I mentioned above can be found on the new WebOS Internals wiki (which replaces the old wiki at predev.wikidot.com) at http://www.webos-internals.org ...

-- Rod
__________________
WebOS Internals and Preware Founder and Developer
You may wish to donate by Paypal to donations @ webos-internals.org if you find our work useful.
All donations go back into development.
www.webos-internals.org twitter.com/webosinternals facebook.com/webosinternals
rwhitby is offline   Reply With Quote
Old 07/20/2009, 08:05 AM   #2 (permalink)
Member
 
Posts: 354
I guess it depends on how you define rooting. Usually when a we say "I rooted the server" or something like that you mean you got root access somehow by bypassing the password. So technically you are rooting, its just very easy to do.

However, when people talk about rooting the iPhone they usually mean circumventing the chroot jail by jailbreaking it.
joshewah is offline   Reply With Quote
Thanked by robbskittles, X1011
Old 07/20/2009, 08:14 AM   #3 (permalink)
Member
 
Posts: 50
Did you really just write that long post to explain why it's not called that?
shaklee3 is offline   Reply With Quote
Old 07/20/2009, 08:48 AM   #4 (permalink)
Member
 
Posts: 129
Quote:
Originally Posted by shaklee3 View Post
Did you really just write that long post to explain why it's not called that?
No he didn't. Read it again.
rmbwebs is offline   Reply With Quote
Old 07/20/2009, 08:56 AM   #5 (permalink)
Member
 
Posts: 47
The terminology has bothered me as well. Thank you for the write-up.
dangerusty is offline   Reply With Quote
Old 07/20/2009, 09:02 AM   #6 (permalink)
Member
 
Posts: 354
Quote:
Originally Posted by shaklee3 View Post
Did you really just write that long post to explain why it's not called that?
It has some other useful information about what you can do with access to linux on your phone. The main point is that you don't have to mod your pre to get root access, you are just connecting to it and its what you do after that which would be modding. There are lots of possibilities because Palm didn't go crazy and lock the thing down. Plus most of the stuff is running is already documented and they use plenty of open source.
joshewah is offline   Reply With Quote
Old 07/20/2009, 09:25 AM   #7 (permalink)
Developer
 
rwhitby's Avatar
 
Posts: 10,568
Quote:
Originally Posted by shaklee3 View Post
Did you really just write that long post to explain why it's not called that?
Yes, I did.

The names you use for things have a huge effect on the perception of those things to people who are not familiar with the details. Accurate terminology is important.

I should write a second post about "bricking", but will refrain ;-)

-- Rod
__________________
WebOS Internals and Preware Founder and Developer
You may wish to donate by Paypal to donations @ webos-internals.org if you find our work useful.
All donations go back into development.
www.webos-internals.org twitter.com/webosinternals facebook.com/webosinternals
rwhitby is offline   Reply With Quote
Old 07/20/2009, 09:28 AM   #8 (permalink)
Member
 
fritos1406's Avatar
 
Posts: 1,303
wow hahah
fritos1406 is offline   Reply With Quote
Old 07/20/2009, 09:29 AM   #9 (permalink)
Developer
 
rwhitby's Avatar
 
Posts: 10,568
Unfortunately, the optware-devel package from Optware (which installs all those things you mentioned onto the Pre), is too large for the standard partitions, so you'll need to reformat the /media/internal partition from vfat to ext3, or do some reallocation of the LVM volumes and create a new volume for /opt on the flash with some additional space taken from /media/internals.

So it is possible, but it's much easier just to cross-compile on your desktop machine.

-- Rod
__________________
WebOS Internals and Preware Founder and Developer
You may wish to donate by Paypal to donations @ webos-internals.org if you find our work useful.
All donations go back into development.
www.webos-internals.org twitter.com/webosinternals facebook.com/webosinternals
rwhitby is offline   Reply With Quote
Thanked By: Dumpshock
Old 07/20/2009, 11:37 AM   #10 (permalink)
Member
 
lmorchard's Avatar
 
Posts: 146
Quote:
Originally Posted by shaklee3 View Post
Did you really just write that long post to explain why it's not called that?
It's an important distinction. With just the official SDK, my Pre was even easier to get into and start tweaking than either my NSLU2 or WRT54G from Linksys - not to mention my iPod Touch.

It's almost like Palm meant it to be that way. If this is akin to jailbreaking, it's a jail like Alcatraz Island where they give tours and all the cells are open.
lmorchard is offline   Reply With Quote
Old 07/20/2009, 12:56 PM   #11 (permalink)
Member
 
vreihen's Avatar
 
Posts: 495
Quote:
Originally Posted by rwhitby View Post
The names you use for things have a huge effect on the perception of those things to people who are not familiar with the details. Accurate terminology is important.
"Rooting" implies danger, breaking the rules, or at least tearing that mattress tag off when you're not the consumer! (Oh, and if you ask someone from Australia what rooting is, they'd probably sit you down for a lecture about the birds and the bees.)

Anyway, I agree that "rooting" is a bad term in this case, since Palm didn't set a root password at all on the Pre.....
vreihen is offline   Reply With Quote
Old 07/20/2009, 02:52 PM   #12 (permalink)
Member
 
Posts: 5
Technically rooting just means gaining root when you didn't have access to it before. So this IS rooting your cellphone.

Just because there wasn't much protection on it doesn't make it any less root.
LurkingGrue is offline   Reply With Quote
Old 07/20/2009, 03:21 PM   #13 (permalink)
Member
 
Posts: 425
I would say that the "street meaning" of "rooting" a device such as this is simply gaining access to the root filesystem, regardless of whether that access is built in or not. While I don't really agree with the semantics, I don't think that it's going to change, and people will still refer to it as that and will still be wary of it. However, props for trying to allay fears for those who don't understand it!
stubbs is offline   Reply With Quote
Thanked By: cmflouis
Old 07/20/2009, 05:38 PM   #14 (permalink)
Developer
 
rwhitby's Avatar
 
Posts: 10,568
Quote:
Originally Posted by LurkingGrue View Post
Technically rooting just means gaining root when you didn't have access to it before. So this IS rooting your cellphone.

Just because there wasn't much protection on it doesn't make it any less root.
So do you say "I'm rooting my Linux desktop workstation" when you sit down and log in as root? I doubt that you do, because it's something that is built-in.

It's the same with the Pre. If the manufacturer publishes instructions on their web site detailing how to log in as root, you can't seriously say "Oh, I rooted that device" ...

-- Rod
__________________
WebOS Internals and Preware Founder and Developer
You may wish to donate by Paypal to donations @ webos-internals.org if you find our work useful.
All donations go back into development.
www.webos-internals.org twitter.com/webosinternals facebook.com/webosinternals
rwhitby is offline   Reply With Quote
Thanked by hparsons, mdmogren, sudoer
Old 07/20/2009, 05:40 PM   #15 (permalink)
Developer
 
rwhitby's Avatar
 
Posts: 10,568
Quote:
Originally Posted by stubbs View Post
I would say that the "street meaning" of "rooting" a device such as this is simply gaining access to the root filesystem, regardless of whether that access is built in or not. While I don't really agree with the semantics, I don't think that it's going to change, and people will still refer to it as that and will still be wary of it. However, props for trying to allay fears for those who don't understand it!
We must walk on different streets then, cause in my neck of the woods (embedded Linux development for third-party consumer devices), "rooting" a device means using nefarious and non-manufacturer-approved means to bypass device lock-down and gain root access where you are not supposed to have it.

That's certainly not the case for the Pre since the SDK release.

-- Rod
__________________
WebOS Internals and Preware Founder and Developer
You may wish to donate by Paypal to donations @ webos-internals.org if you find our work useful.
All donations go back into development.
www.webos-internals.org twitter.com/webosinternals facebook.com/webosinternals
rwhitby is offline   Reply With Quote
Old 07/20/2009, 07:09 PM   #16 (permalink)
Member
 
StoneRyno's Avatar
 
Posts: 1,553
I have access to root on my pre. I wanted to start poking around but I have no idea what the different directories are for. I have found that /usr/palm/applications are the preinstalled ones from palm and sprint. But where are 3rd party apps stored? And what are all the other folders for? Or at least for the ones that would be useful to know. The folder tree is very complex so I find I'm overwhelmed since I am for the most part new to this part of linux.

EDIT:

I have also not proceeded to this point in the process: http://www.webos-internals.org/wiki/Next_steps Being new to this I am just wondering the significance of the process.
StoneRyno is offline   Reply With Quote
Old 07/20/2009, 07:13 PM   #17 (permalink)
Member
 
Posts: 89
I am the common user aka consumer. I was at first discouraged at accessing linux because it was called rooting, which sounded like I had to mod or "cheat the phone". rwhitby did encourage me after I read his claim, but I clicked on the link he provided and It states "Enacting any set of instructions from this site is very likely to void your warranty." in the disclaimer. So I am confused now, isn't this against palm if it voids your warranty.

Oh and since it can void your warranty, I will not be attempting this until I get more clarification.
Muyiwafly is offline   Reply With Quote
Old 07/20/2009, 07:21 PM   #18 (permalink)
Developer
 
rwhitby's Avatar
 
Posts: 10,568
Quote:
Originally Posted by Muyiwafly View Post
I am the common user aka consumer. I was at first discouraged at accessing linux because it was called rooting, which sounded like I had to mod or "cheat the phone". rwhitby did encourage me after I read his claim, but I clicked on the link he provided and It states "Enacting any set of instructions from this site is very likely to void your warranty." in the disclaimer. So I am confused now, isn't this against palm if it voids your warranty.

Oh and since it can void your warranty, I will not be attempting this until I get more clarification.
Getting access to root is following the Palm instructions, so is not likely to void your warranty. If all you want to do is side-load applications that is all you need.

However, if you go and do other modifications as per instructions on the webos-internals site, then you are doing things which neither Palm nor Sprint have published, and therefore they could revoke your warranty if they so choose.

On the other hand, if you are able to restore your Pre back to the pristine factory state using the webOS Doctor (and you can do so after doing anything written on the webos-internals site), then how will they know?

So it's a disclaimer that we put there to make sure that people realise that they are doing something which is not supported by Palm or Sprint if they do more than just use the Palm SDK to install applications.

It's up to each individual to consider how they want to treat that disclaimer. We can't tell you what you should do.

-- Rod
__________________
WebOS Internals and Preware Founder and Developer
You may wish to donate by Paypal to donations @ webos-internals.org if you find our work useful.
All donations go back into development.
www.webos-internals.org twitter.com/webosinternals facebook.com/webosinternals
rwhitby is offline   Reply With Quote
Old 07/20/2009, 07:24 PM   #19 (permalink)
Developer
 
rwhitby's Avatar
 
Posts: 10,568
Quote:
Originally Posted by StoneRyno View Post
I have access to root on my pre. I wanted to start poking around but I have no idea what the different directories are for. I have found that /usr/palm/applications are the preinstalled ones from palm and sprint. But where are 3rd party apps stored? And what are all the other folders for? Or at least for the ones that would be useful to know. The folder tree is very complex so I find I'm overwhelmed since I am for the most part new to this part of linux.

EDIT:

I have also not proceeded to this point in the process: http://www.webos-internals.org/wiki/Next_steps Being new to this I am just wondering the significance of the process.
The best thing for you to do would be to read the logs of the #webos-internals IRC channel, and then help everyone else by summarising the information you find onto the wiki as you go. You'll learn a lot.

The logs are at http://logs.nslu2-linux.org/livelogs/webos-internals/

-- Rod
__________________
WebOS Internals and Preware Founder and Developer
You may wish to donate by Paypal to donations @ webos-internals.org if you find our work useful.
All donations go back into development.
www.webos-internals.org twitter.com/webosinternals facebook.com/webosinternals
rwhitby is offline   Reply With Quote
Old 07/20/2009, 07:33 PM   #20 (permalink)
Member
 
Posts: 89
Ok so if I want to load the flashlight or tethering homebrew, which both requires "rooting", to my pre, is that considered as regular side-load or per instructions on the webos-internals site?

Basically I am trying to ask if I load apps that require accessing Linux are considered doing what palm, may or may not want us to do?
Muyiwafly is offline   Reply With Quote
Reply

 

Thread Tools
Display Modes



 


Content Relevant URLs by vBSEO 3.6.0