http://wiki.webos-internals.org/api.php?action=feedcontributions&user=Roto&feedformat=atomWebOS Internals - User contributions [en]2024-03-29T00:08:44ZUser contributionsMediaWiki 1.35.1http://wiki.webos-internals.org/index.php?title=Crond&diff=9573Crond2010-04-11T03:28:06Z<p>Roto: Added information about cron alternative</p>
<hr />
<div>== Enabling Stock Cron==<br />
<br />
The [[Patch webOS GPS Tracking]] guide had a nice bit about enabling crond on the Pre. It looks like its already pre-installed, just not set up to start. You will need to edit /etc/event.d/mod-crond (don't modify the existing crond startup-script) to enable cron to start. The settings should look like this:<br />
<br />
<pre><nowiki><br />
# -*- mode: conf; -*-<br />
<br />
# jobfile for busybox crond, with pre-start commands to create the<br />
# directory and files it wants by default. That there's not 'start<br />
# on' stanza is intentional: it's for development use only. We can<br />
# turn it on later if we need it, e.g. to keep the clock synced. It<br />
# does work.<br />
<br />
# below did not work on 1.3.5.1<br />
#start on stopped configure<br />
#stop on started start_update<br />
<br />
# If the above do not work with WebOS above 1.3, try these...<br />
# The above doesn't start service since webos 1.3<br />
# below worked on 1.3.5.1<br />
start on stopped finish<br />
stop on runlevel [!2]<br />
<br />
respawn<br />
<br />
exec /usr/sbin/crond -f -L /var/log/crond<br />
<br />
pre-start script<br />
mkdir -p /var/spool/cron/crontabs<br />
ln -sf /etc/cron/crontabs/root /var/spool/cron/crontabs/root<br />
end script<br />
</nowiki></pre><br />
<br />
A few notes here. Unlike the Dropbear and other scripts I make my upstart scripts so that essential services don't stop when the device exists runlevel 2. This seems to shutdown these services whenever the device locks. I prefer that my upstart services stop only when the updater runs. Also I have made cron log to a separate file under /var/log so that it can be monitored better.<br />
<br />
One thing to note about the standard script for cron on the Pre is that the /var/spool/cron/crontabs directory is created every time the process runs and a symlink to /etc/cron/crontabs/root is created. To my surprise this file does not exist. So we need to create it:<br />
<br />
<pre><nowiki><br />
sudo mkdir -p /etc/cron/crontabs<br />
sudo sh -c 'echo > /etc/cron/crontabs/root'<br />
</nowiki></pre><br />
<br />
Now to start up crond:<br />
<br />
<pre><nowiki>sudo -i initctl start crond</nowiki></pre><br />
<br />
*Note for clarification: I attempted this and it all works OK, but I can't figure out how to actually schedule jobs. I modified /etc/cron/crontabs/root, but nothing seems to happen. I also tried crontab -e, and that doesn't seem to do anything either. I suggest adding a note here clarifying what needs to be done to actually add a cron job. -irwinr<br />
<br />
*Clarification: Edit /etc/cron/crontabs/root with test content something like this:<br />
<br />
<pre><nowiki><br />
# format:<br />
# minute(0-59) hour(0-23) day(1-31) month(1-12) weekday(0-6) command<br />
* * * * * echo "CronTest -" `date` >> /var/crondtest<br />
</nowiki></pre><br />
<br />
Then restart crond like this:<br />
<br />
<pre><nowiki><br />
sudo -i initctl stop crond<br />
sudo -i initctl start crond<br />
</nowiki></pre><br />
<br />
This test will result in a test file at /var/crondtest that grows at the rate of one line per minute. You can count the lines and output the end of the file with the following commands. Also try a reboot to make sure everything is starting up properly. If everything is working make sure to remove or comment out the CronTest task and restart crond.<br />
<br />
<pre><nowiki><br />
grep -c "" /var/crondtest<br />
tail /var/crondtest<br />
</nowiki></pre><br />
<br />
==Alternative (ipkg-opt) Method==<br />
<br />
* Another request for clarification: It's not clear which of these two methods are preferred. This method appears to not work when the screen is off (rendering cron pretty useless), the above method appears to delete the cron entries every time the cron daemon starts. Has anyone worked out either of these issues? -irwinr.<br />
<br />
crond is a system that allows command to be run at specified intervals. <br />
<br />
Do not use the built in crontab -e as it is overwritten on each boot.<br />
<br />
Optware has cron available as an installable package, and using /opt/etc/cron.d/ for cron files will not conflict with any Palm files.<br />
<br />
<pre><nowiki><br />
sudo -i <br />
mount -o remount,rw /<br />
ipkg-opt update<br />
ipkg-opt install cron<br />
/opt/bin/crontab -e<br />
# Add script and intervals here<br />
mount -o remount,ro /<br />
</nowiki></pre><br />
<br />
This does not seem to work when the phone's screen turns off. I tried it plugged in for two minutes then unplugged, and turned the screen off for two minutes. I ran <br />
<pre><nowiki>echo `date` >> sleep.log</nowiki></pre><br />
<br />
And got...<br />
<br />
<pre><nowiki><br />
# cat sleep.log <br />
Wed Jul 1 18:27:01 CDT 2009<br />
Wed Jul 1 18:28:01 CDT 2009<br />
Wed Jul 1 18:30:16 CDT 2009 ## Turned the screen back on. It seems to play catch up.<br />
Wed Jul 1 18:30:16 CDT 2009<br />
</nowiki></pre><br />
<br />
==Alternative to Crond Using Only Upstart==<br />
The following method is an alternate way to repeat a command at set time interval, but not if you need to run a command at a specific time. I developed this solution with the hope to get around the inconsistent behavior of cron when the phone falls asleep. Unfortunately, this way really doesn't work any better, but I currently use this method on my own Pre with some success. In this example, I setup a script to execute every 10 minutes.<br />
<br />
Add a new upstart script file to the /etc/event.d directory, and name it whatever you want the upstart service to be called: <br />
<pre><nowiki><br />
start on stopped finish<br />
stop on runlevel [!2]<br />
console none<br />
<br />
respawn<br />
<br />
exec /var/home/root/Every10Minutes.sh<br />
</nowiki></pre><br />
<br />
This upstart script will run the Every10Minutes.sh file and respawn it when it dies, so the trick is that a sleep command must be added to the end of the Every10Minutes.sh file:<br />
<pre><nowiki><br />
#!/bin/sh<br />
<br />
#Command to run every 10 minutes goes here<br />
<br />
sleep 600<br />
</nowiki></pre><br />
<br />
I recommend rebooting the Pre at this point to make sure the new upstart script takes effect, although you should be able to just do "start <servicename>" once the upstart script is added to the event.d directory. In this case, "sleep 600" keeps the script alive for 10 minutes, but without it doing anything. When the script dies after the sleep concludes, upstart respawns it and the command is performed again.</div>Rotohttp://wiki.webos-internals.org/index.php?title=Next_steps&diff=9421Next steps2010-03-25T02:16:16Z<p>Roto: /* Installing Optware in the Emulator? */</p>
<hr />
<div>{{deprecated|<br />
'''If all you want to do is install an SFTP server''': Just go to the Optware section in [[Preware]] and install it from there. Then go to the [http://www.webos-internals.org/wiki/Application:OpenSSH OpenSSH package homepage] and read the instructions there to create an SSH key for use when accessing your phone via ssh or sftp.<br />
<br />
'''Otherwise''': continue as below.<br />
}}<br />
<br />
=Automated Setup of Optware, Users and Access=<br />
The webOS community asks that users who have obtained access to the Linux subsystem install a standard set of software to ensure everyone has the necessary tools in place to use the resources the community is providing.<br />
<br />
In particular, this includes the Optware package manager. Palm's webOS uses the ''ipkg'' package manager internally. The community has a version of ''ipkg'' called ''ipkg-opt'' which accesses the Optware library of over 1300 Linux programs available for installation on the Pre. <br />
<br />
Palm has indicated that they have no intention of using the /opt directory, so we direct our installs to /opt/bin rather than /bin to avoid being overwritten by future Palm software upgrades. <br />
<br />
In addition, the standard package creates a non-root user, installs ''sudo'', and includes a SSH program (''Dropbear'') and SFTP program. <br />
<br />
For your convenience, we've packaged all this up into a simple script.<br />
<br />
==Optware Setup (Manual)==<br />
<br />
===Installing Optware in the Emulator?===<br />
If you're attempting to install these packages to your emulator, you must first add sufficient space by [[Adding_Disks_to_the_Emulator|enabling a virtual disk]].<br />
<br />
After completing the process of obtaining access to your Pre, do the following: <br />
<br />
'''Type each line exactly as it appears. Copying and pasting is probably a good idea.''' <br />
''' This is confirmed to work with webOS 1.3.1 '''<br />
''Note to Windows Putty users: To paste in putty, simply right-click and the program pastes into the terminal whatever you have copied to the clipboard.''<br />
<br />
<div style="font-size:100%;"><br />
<source lang=bash><br />
cd /tmp<br />
wget http://gitorious.org/webos-internals/bootstrap/blobs/raw/master/optware-bootstrap-manual.sh<br />
chmod 755 ./optware-bootstrap-manual.sh<br />
sh optware-bootstrap-manual.sh<br />
source /etc/profile.d/optware<br />
</source></div><br />
<br />
Follow the on-screen instructions. <br />
<br />
If you want to review the script before you run it, you can look here: <br />
<br />
[http://gitorious.org/webos-internals/bootstrap/blobs/master/optware-bootstrap-manual.sh http://gitorious.org/webos-internals/bootstrap/blobs/master/optware-bootstrap-manual.sh]<br />
<br />
Note that using the WiFi connection for the above steps is to be highly recommended over the 3G or GSM options, which are reported as sometimes failing. (Turn on aeroplane mode then turn on and connect to WiFi)<br />
<br />
As part of this process, you will be creating an unprivileged user account that you can later use to log in to your device. The username that you pick must be lowercase, longer than 3 characters, contain at least one letter, and may only be letters, numbers, dashes (-), and underscores (_). Once you enter your username, you will enter a password. Make sure to pick a strong password for your own security. If you make a typo when entering your password, don't panic. Once the script has finished running, simply type:<br />
<br />
<div style="font-size:100%;"><br />
<source lang=bash><br />
passwd username<br />
</source></div><br />
<br />
"username" should, of course, be the username that you created. This will allow you to re-enter your password correctly.<br />
<br />
==Finishing==<br />
<br />
There is no need to turn developer mode off. If you do, you will not be able to use WebOS Quick Install, the SDK or Novaterm. Leave it on. <br />
<br />
Once you are finished, you may SSH into your Pre with an SSH client like [http://www.chiark.greenend.org.uk/~sgtatham/putty/ Putty]:<br />
*Find your IP address on your Pre with [http://checkmyip.com/ CheckMyIP.com]<br />
**In many cases, you are in a local network, but checkmyip.com gives you the WAN addess. Install whatismyip from the homebrew catalog to get your pre's ip address within the local network and use that<br />
*SSH to that IP address on port 222<br />
**If you're doing this over EVDO, there may be a lot of latency. Be patient.<br />
**You can optionally install [[Avahi]] and SSH to <tt>castle.local.</tt><br />
**[[Tutorials_Linux_DDNS_for_EVDO|Dynamic DNS]] is helpful for consistently accessing the Pre over EVDO with a simple name.<br />
*Log in with the username and password you created during the Optware installation<br />
**Many operations cannot be carried out with the permissions of that username. You'll need to [[Basic_Linux_Use#sudo|sudo]] those operations with the new username's password<br />
<br />
Only the default shell (/bin/ash) will work for ssh. To change your shell to bash (which will be located in /opt/bin/bash, once you've completed the quilt install procedure above), you will have to [http://www.webos-internals.org/wiki/Setup_Bash create] an /etc/shells file, and add the following lines:<br />
<br />
/bin/ash<br />
/bin/sh<br />
/opt/bin/bash<br />
<br />
Then you will be able to edit /etc/passwd and change the shell parameter for the user you created. Note that if you try to change your shell without adding an /etc/shells the SSH server (Dropbear) will look like it is rejecting your password on subsequent connections.<br />
<br />
=Install Preware=<br />
To start getting the most out of your new webOS Device you should install Preware. Continue on to the [[Application:Preware|Preware]] page. There you will see all the ways to install Preware on your device. Including stand-alone installers, package installation and an automated script like you did here.</div>Rotohttp://wiki.webos-internals.org/index.php?title=Important_Personal_Data_Locations&diff=8272Important Personal Data Locations2010-01-13T02:19:12Z<p>Roto: Updated browser data location</p>
<hr />
<div>==Quick Overview==<br />
As anyone who has had their WebOS device replaced at least once knows, the Backup app does not backup all the personal data from your device to the Palm Profile. In fact, anything that is not explicitly a part of the Palm Profile is most likely not backed up.<br />
<br />
The Palm Profile Backup/Restore covers the following:<br />
* Account Information for Contacts, Email, Calendar, and Messaging<br />
* Calendar<br />
* Email<br />
* Memos<br />
* Tasks<br />
* List of Installed Applications<br />
<br />
The Palm Profile Backup/Restore does not cover the following:<br />
* Messaging History and Text Messages<br />
* Calendar View Options<br />
* Application Settings and Data<br />
* Associated Wifi Access Points<br />
* Background Image<br />
* Synergy Links<br />
* Flash Drive Contents (naturally)<br />
<br />
Fortunately I had been using rsnapshot from my home server to regularly backup my Pre when it is connected to Wifi, so I have spent some time trying to recover some of this lost data.<br />
<br />
Note: See [[Backing Up via Rsync]] for instructions on setting up a full backup from the Pre to a linux desktop or mac. I did not feel comfortable performing a full rsync restore, so I installed the basics per [[Portal:Accessing Linux]] and incrementally restored files from my previous backup. I did try restoring all of /var, but for some reason much of that did not stick.<br />
<br />
Here is a list of files and folders that contain important personal data. Restore all files within a folder at once, and reboot the device for the changes to take effect. Be sure to stop LunaSysMgr when specified.<br />
* [[PalmDatabase.db3 File]] is located at /var/luna/data/dbdata. This file contains all text messages sent and received and all IM chats. It also seems to contain Synergy Link information. LunaSysMgr must be stopped before this database is restored, and the device must be rebooted before the data will re-appear.<br />
* Application data is located in /var/palm/data. This entire folder must be restored and the device must be rebooted before the data will re-appear in your favorite applications. This may not apply to Preware applications.<br />
* Wifi system preferences are located in /var/preferences/com.palm.wifi. This folder also contains preferences for other hardware devices.<br />
* IM buddy icons are located in /var/luna/data/im-avatars.<br />
* Facebook and LinkedIn pictures are located at /var/luna/files.<br />
* Sprint Navigation data is located in /var/telenav.<br />
* Pages that were "Add to Launcher" are in /var/luna/launchpoints. Restarting luna is required for these to appear.<br />
* Browser page icons are in /var/luna/data/browser/icons.<br />
* Browser bookmarks and history data can be found inside the .db file (sqlite format) in /var/palm/data/file_.usr.palm.applications.com.palm.app.browser_0<br />
<br />
Please feel free to add to this page as others find out more. Hopefully Palm will backup more of the above within the Palm Profile, or at least provide the option to do so.</div>Rotohttp://wiki.webos-internals.org/index.php?title=Patch_WebOS_Bypassing_Lock_Screen&diff=7297Patch WebOS Bypassing Lock Screen2009-11-21T20:20:34Z<p>Roto: Added references to the 1.3.1 software update</p>
<hr />
<div>{{template:patch}}<br />
== About == <br />
The 1.1 update allowed me to connect to Exchange (EAS) with a policy enforced. Of course, having my screen lock every single time I turn off the screen seems a little harsh. The policy asks for a 10-minute timeout, but the way it's implemented in WebOS, the screen locks whenever the screen turns off. <br />
<br />
== Modification == <br />
<br />
Below is a modification to automatically unlock the screen. This method seems to still work with the 1.3.1 update.<br />
<br />
Edit <pre>/usr/palm/applications/com.palm.app.phone/app/controllers/pin-assistant.js</pre><br />
<br />
Immediately after " setup: function() { " (line 32 in 1.1, line 33 in 1.3.1, line number may vary in other versions)<br />
<br />
add the line:<br />
<pre> <br />
this.unlock(); return;<br />
</pre><br />
<br />
What you've done is edit the "setup" function to immediately call the unlock function and return (skipping anything else it would normally do).<br />
<br />
Reboot, and your screen should automatically unlock as soon as you slide it open.<br />
<br />
Should work like a charm!</div>Rotohttp://wiki.webos-internals.org/index.php?title=Talk:Portal:Patches_to_webOS&diff=6425Talk:Portal:Patches to webOS2009-10-10T23:37:50Z<p>Roto: </p>
<hr />
<div>== catagories ==<br />
we have ten catagories for webOS apps <br />
do we need to catagorize these so that they aren't one giant long list? <br />
[[User:Rboatright|rboatright]] 20:30, 28 July 2009 (UTC)<br />
<br />
== separate pages ==<br />
It may be beneficial to create separate pages for each patch. For example, the Camera Modifications & Additions page contains multiple patches, two distinct countdown timers, Shutter Sound On/Off Button. I have the Shutter Sound On/Off Button installed, and it's working on 1.1.0, but it looks like the count-downs do not (I haven't tried, so I can't say for sure).<br />
[[User:JackieRipper|JackieRipper]]<br />
<br />
: I agree. Each mod should be split onto it's own page. [[User:Rboatright|rboatright]] 15:39, 29 July 2009 (UTC)<br />
: I split the pages with multiple modifications and added their links to the article. [[User:Hopspitfire|hopspitfire]] 17:41, 29 July 2009 (UTC)<br />
<br />
== Editing and new pages ==<br />
Users editing this page, please keep the columns organized alphabetically. [[User:Hopspitfire|hopspitfire]] 06:50, 1 August 2009 (UTC)<br />
<br />
At the top of each new Patch page, please put:<br />
<br />
<pre><nowiki><br />
{{template:patch}}<br />
</nowiki></pre><br />
<br />
This will make the wiki much more cohesive. -[[User:Hopspitfire|hopspitfire]] 09:07, 3 August 2009 (UTC)<br />
<br />
== naming ==<br />
<br />
we need a better naming scheme for patches. "Patch blah blah" does not make sense as an article title. here are some options:<br />
* just the name of the patch. i think this is the best option. you can still organize them using [[wikipedia:Wikipedia:Categorization|categories]] or that template you seem to be fond of.<br />
* "Patches/Name of Patch". this will give you a link back to the Patches page on each of these pages.<br />
** you may also extend this to "Patches/Application/Name of Patch"<br />
* "Patch: Name of Patch"<br />
—[[user:X1011|X1011]] 10:00, 3 August 2009 (UTC)<br />
<br />
I've tried using colons, but that makes the patch unsearchable. Using a "/" is also avoided [[User_talk:Hopspitfire#Porting_pages|read here]], therefore I changed them all to Patch [application] [description]. Using only the name of the patch (example: "Force Offline Send Without Dialog") creates clutter and confusion without specifying what it is (a Patch). Furthermore, we need to specify what application it actually patches so that people can look at a glance and know exactly what it is: Patch Messaging Force Offline Send Without Dialog. Also, have a look at the source code of the Patches Portal, it's much cleaner now that I've renamed all the patches. -[[User:Hopspitfire|hopspitfire]] 20:46, 3 August 2009 (UTC)<br />
<br />
<br />
i think templarian just meant not to use '/' as part of the title of a regular article so as not to unintentionally create a [[metawikipedia:Help:Link#Subpage feature|subpage]].<br />
<br />
we can use the patch template to organize the articles and prevent confusion. we can add a parameter to the template to specify which application the patch is for. we can also add a patch category and an application-specific category based on the parameter, so that any article using the template will automatically be included in those categories.<br />
<br />
not sure how using only the name creates clutter; i think the opposite is true: that adding extra prefixes clutters the title of an article.<br />
<br />
—[[user:X1011|X1011]] 09:30, 4 August 2009 (UTC)<br />
<br />
== Quilt incorporation ==<br />
<br />
It seems like people have abandoned quilt. Making all these modifications and then risking your pre breaking on a software update, or meticulously going in and undoing all the changes you've made before a software update seems like a wasted step in the wrong direction. There is also no way to to distinguish in Quilt, which patches are working in the current version of webOS you have, which kinda goings along with the naming topic above.<br />
--[[User:S4rs|S4rs]] 18:06, 3 August 2009 (UTC)<br />
<br />
agreed; a wiki is not a good software repository. not sure i can help, though; i haven't started using Quilt yet. —[[user:X1011|X1011]] 09:36, 4 August 2009 (UTC)<br />
<br />
== Are more patches 1.2.1 compatible than are shown? ==<br />
<br />
These patches are listed as not yet being 1.2.1 compatible but are'nt they in the 1.2.1 autopatch feed for Preware and WOQI?<br />
*Camera: Shutter Sound On-Off Button <br />
*Clock: Enabling the Hidden Theme <br />
*Messaging: Change "Enter Key" To Create Newline <br />
*Messaging: New Cards For Each Conversation <br />
*Messaging: Adding Timestamps to All Received Messages <br />
*Tasks: Always Show Details of New Tasks <br />
*Browser: Delete Individual History Items <br />
*Calendar: Show All-Day Events in Month View <br />
*Camera: Using Volume Buttons to Take a Picture <br />
*Email: Delete All <br />
*++Messaging: Force Offline Send Without Dialog <br />
*Messaging: Forward Messages <br />
*Messaging: Jump Forward, Backward One Word at a Time <br />
*Messaging: Landscape Orientation <br />
*Messaging: Message Sound <br />
*++PDF Viewer: Change Orientation <br />
*Phone: Disable Various Call Sounds <br />
<br />
Note: The Music Player: Bookmarking does nto work with classical or opera genres etc. and has not been made obsolete.<br />
[[User:Milominderbinder|Milominderbinder]] 03:49, 7 October 2009 (UTC)<br />
<br />
The listings are a bit confusing to follow with regards to compatibility with versions. Should a patch be listed multiple times, once for each version that it works with, or if the patch works with the current version, do we not care about the older versions that it may have worked with? I would propose reorganizing the patch list as a table, with all the patches listed then have a column for each version, and put "OK", "N/A", or some other designation in each respective location. It'd also be easy to add to when new versions of WebOS come out. [[User:Roto|Roto]] 23:37, 10 October 2009 (UTC)</div>Rotohttp://wiki.webos-internals.org/index.php?title=Patch_WebOS_Bypassing_Lock_Screen&diff=6048Patch WebOS Bypassing Lock Screen2009-09-30T23:14:18Z<p>Roto: Added patch template.</p>
<hr />
<div>{{template:patch}}<br />
== About == <br />
The 1.1 update allowed me to connect to Exchange (EAS) with a policy enforced. Of course, having my screen lock every single time I turn off the screen seems a little harsh. The policy asks for a 10-minute timeout, but the way it's implemented in WebOS, the screen locks whenever the screen turns off. <br />
<br />
== Modification == <br />
<br />
Below is a modification to automatically unlock the screen.<br />
<br />
Edit <pre>/usr/palm/applications/com.palm.app.phone/app/controllers/pin-assistant.js</pre><br />
<br />
Immediately after " setup: function() { " (line 32 in 1.1, line number may vary in other versions)<br />
<br />
add the line:<br />
<pre> <br />
this.unlock(); return;<br />
</pre><br />
<br />
What you've done is edit the "setup" function to immediately call the unlock function and return (skipping anything else it would normally do).<br />
<br />
Reboot, and your screen should automatically unlock as soon as you slide it open.<br />
<br />
Should work like a charm!</div>Rotohttp://wiki.webos-internals.org/index.php?title=Talk:Patch_WebOS_Bypassing_Lock_Screen&diff=6040Talk:Patch WebOS Bypassing Lock Screen2009-09-30T15:48:26Z<p>Roto: </p>
<hr />
<div>== New simpler version (call unlock function directly) ==<br />
<br />
-- I massively changed the article replacing all the listed steps with something a bit easier and more universal. The old version is in history, (I removed it from main article to avoid confusion) but if you think that the way previously described should be preserved in the article itself as well, it could be copied there. [[User:Destinal|Destinal]]<br />
<br />
--That is exactly what I was looking for, just couldn't find the right way to do it yet. Thanks! [[User:Roto|Roto]] 15:48, 30 September 2009 (UTC)<br />
<br />
== Discussion of old version (hardcode pin / password) ==<br />
<br />
This will only work if you have Simple Pin requirement by EAS. Please post method for doing this if you have Password requirement. Thank you!<br />
<br />
-- Try putting your password in instead of the pin #'s [[User:Helfire|Helfire]]<br />
<br />
-- I've added some information to help get around the Password requirement. I'm still looking for a better solution, but this makes things a bit easier for now. [[User:Roto|Roto]] 04:45, 30 September 2009 (UTC)<br />
<br />
-Cannot find that line in the pin-assistant.js with the new 1.2 update. Suggestions?<br />
<br />
--I updated for 1.2 [[User:Helfire|Helfire]]</div>Rotohttp://wiki.webos-internals.org/index.php?title=Talk:Patch_WebOS_Bypassing_Lock_Screen&diff=6028Talk:Patch WebOS Bypassing Lock Screen2009-09-30T04:45:19Z<p>Roto: </p>
<hr />
<div>This will only work if you have Simple Pin requirement by EAS. Please post method for doing this if you have Password requirement. Thank you!<br />
<br />
-- Try putting your password in instead of the pin #'s [[User:Helfire|Helfire]]<br />
<br />
-- I've added some information to help get around the Password requirement. I'm still looking for a better solution, but this makes things a bit easier for now. [[User:Roto|Roto]] 04:45, 30 September 2009 (UTC)<br />
<br />
-Cannot find that line in the pin-assistant.js with the new 1.2 update. Suggestions?<br />
<br />
--I updated for 1.2 [[User:Helfire|Helfire]]</div>Rotohttp://wiki.webos-internals.org/index.php?title=Patch_WebOS_Bypassing_Lock_Screen&diff=6027Patch WebOS Bypassing Lock Screen2009-09-30T04:43:41Z<p>Roto: Added information to help bypass password security.</p>
<hr />
<div>== About == <br />
The 1.1 update allowed me to connect to Exchange (EAS) with a policy enforced. Of course, having my screen lock every single time I turn off the screen seems a little harsh. The policy asks for a 10-minute timeout, but the way it's implemented in WebOS, the screen locks whenever the screen turns off. Note that this same hack appears to work with WebOS 1.2.0 as released on 9/28/2009, but has to be reapplied after you upgrade.<br />
<br />
Below is a very insecure hack to automatically unlock the screen by faking the key presses for your actual passcode. It's insecure because you actually have to put your real passcode into the code. Still, here it is.<br />
<br />
== 1.2 ==<br />
===Simple Pin===<br />
In 1.2 the location changed. <br />
Edit <pre>/usr/palm/applications/com.palm.app.phone/app/controllers/pin-assistant.js</pre><br />
After line 161 <br />
<pre><br />
160: Mojo.Log.error( "PhoneApp: PinAssistant#onDeviceLockModeChanged CAUGHT EXCEPTION: %j" , e);}" <br />
161: }<br />
</pre><br />
<br />
add the following lines, replacing 1,2,3,4 with your own passcode digits.<br />
<br />
<pre><br />
162: this.updatePinFields('1');<br />
163: this.updatePinFields('2');<br />
164: this.updatePinFields('3');<br />
165: this.updatePinFields('4');<br />
</pre><br />
<br />
<br />
===Password===<br />
This is a similar hack for those with the EAS password security policy in place, but I am looking into a way to disable the lock altogether. This is a good start though, as it removes the need for the keyboard by pre-filling the password field so just tapping the "Done" button unlocks the phone.<br />
<br />
Edit the same file:<pre>/usr/palm/applications/com.palm.app.phone/app/controllers/pin-assistant.js</pre><br />
At line 58 change this: <br />
<pre><br />
this.passwordModel = { };<br />
</pre><br />
<br />
to this: <br />
<pre><br />
this.passwordModel = {<br />
value: "PASSWORD"<br />
};<br />
</pre><br />
<br />
Where PASSWORD is your device's password. Reboot the phone or restart Luna to ensure the change goes into effect.<br />
<br />
== 1.1 ==<br />
<br />
Edit <pre>/usr/palm/applications/com.palm.app.phone/app/controllers/pin-assistant.js</pre><br />
<br />
After line 71 "this.controller.listen('password', ..." add the following lines, replacing 1,2,3,4 with your own passcode digits.<br />
<br />
<pre><br />
this.updatePinFields('1');<br />
this.updatePinFields('2');<br />
this.updatePinFields('3');<br />
this.updatePinFields('4');<br />
</pre><br />
<br />
What you've done is edit the "setup" function to do everything it already does to prepare the screen unlock application, then automatically key in your passcode.<br />
<br />
Reboot, and your screen should automatically unlock as soon as you slide it open.<br />
<br />
Should work like a charm!</div>Rotohttp://wiki.webos-internals.org/index.php?title=Luna_Send&diff=4941Luna Send2009-08-30T01:28:32Z<p>Roto: </p>
<hr />
<div>NOTE: You have to run with root perms.<br />
<br />
Using luna-send to refresh the Launcher panel.<br />
<pre><nowiki><br />
luna-send -n 1 palm://com.palm.applicationManager/rescan {}<br />
</nowiki></pre><br />
<br />
Get a list of all installed apps:<br />
<pre><nowiki><br />
luna-send -n 1 "palm://com.palm.applicationManager/listLaunchPoints" "{}"<br />
</nowiki></pre><br />
<br />
Using luna-send to launch an application:<br />
<pre><nowiki><br />
luna-send -n 1 palm://com.palm.applicationManager/launch {\"id\":\"com.palm.app.browser\"}<br />
luna-send -n 1 palm://com.palm.applicationManager/launch {\"id\":\"com.palm.app.browser\",\"params\":{\"scene\":\"page\",\"target\":\"http://www.google.com\"}}<br />
</nowiki></pre><br />
<br />
The second command shows how to open www.google.com when the browser is launched.<br />
<br />
Using luna-send to download a file to /media/internal/downloads/:<br />
<pre><nowiki><br />
luna-send -n 1 palm://com.palm.downloadmanager/download {\"target\":\"http://www.google.com/index.html\"} <br />
</nowiki></pre><br />
<br />
Replace www.google.com/index.html with whatever file you want downloaded.<br />
<br />
Using luna-send to control the palm progress animation (The pulsing "palm" logo seen at boot):<br />
<br />
<pre><nowiki><br />
luna-send -n 1 palm://com.palm.systemmanager/runProgressAnimation {\"state\":\"start\"}<br />
luna-send -n 1 palm://com.palm.systemmanager/runProgressAnimation {\"state\":\"stop\"}<br />
</nowiki></pre><br />
<br />
TODO: These should probably be plugged into the Tracker app.<br />
<br />
<pre><nowiki><br />
luna-send -n 1 palm://com.palm.location/setUseGps {\"useGps\":\"true\"}<br />
luna-send -n 1 palm://com.palm.location/setAutoLocate {\"autoLocate\":\"true\"}<br />
luna-send -n 1 palm://com.palm.location/getCurrentPosition {}<br />
</nowiki></pre><br />
<br />
List all of the processes which are running:<br />
<pre><nowiki><br />
sudo luna-send -n 1 palm://com.palm.applicationManager/running {}<br />
** Message: serviceResponse Handling: 2, { "running": [ { "id": "com.palm.launcher", "processid": "1006" }, { "id": "com.palm.systemui", "processid": "1007" }, { "id": "com.palm.app.email", "processid": "1000" }, { "id": "com.palm.app.phone", "processid": "1001" }, { "id": "com.palm.app.contacts", "processid": "1002" }, { "id": "com.palm.app.camera", "processid": "1003" }, { "id": "com.palm.app.messaging", "processid": "1004" }, { "id": "com.palm.app.calendar", "processid": "1005" }, { "id": "com.palm.app.phone", "processid": "1008" }, { "id": "com.palm.app.camera", "processid": "1014" } ] }<br />
</nowiki></pre><br />
Interesting note:<br />
Seems everything with a processid below 1008 are static. As seen above, open camera app has pid 1014 and startup app is pid 1003<br />
<br />
Close a process:<br />
<br />
<pre><nowiki><br />
luna-send -n 1 "palm://com.palm.applicationManager/close" "{\"processId\":\"1058\"}"<br />
</nowiki></pre><br />
<br />
Activate the vibrator:<br />
<br />
<pre><nowiki><br />
luna-send -n 1 palm://com.palm.vibrate/vibrate {\"period\":1,\"duration\":1000\}<br />
</nowiki></pre><br />
The duration value is in milliseconds and can be adjusted as desired.</div>Rotohttp://wiki.webos-internals.org/index.php?title=Application_talk:Terminal&diff=4911Application talk:Terminal2009-08-29T01:27:37Z<p>Roto: </p>
<hr />
<div>== Bugs: Paste? ==<br />
- Can't seem to figure out how to paste something that was copied from another app/msg/web site. The old paste shortcut of "Gesture + V" doesn't work (because its being used for other things). I tried to "Insert" shortcut, but it didn't do anything.<br />
--[[User:Zinge|Zinge]] 08:58, 7 August 2009 (UTC)<br />
<br />
- Tossing in another request to get a solution in for pasting: as it stands there is no way to get some symbols (specifically curly braces) into the terminal - tough to do a rescan :) -- [[User:Flare576|Flare576]] 17:51, 20 August 2009 (UTC)<br />
<br />
- I triple the motion. Can we distinguish gesture HOLD from gesture tap? We could then leave gesture HOLD V as paste and use tap and double-tap as activating the special cursor movement etc. currently in place (AWESOME JOB on this app by the way). I also second the motion for needing '{'. This is crippling. Couldn't we just leave access to the normal symbol input by hitting some unused key combo (gesture sym?) then we'd be able to get any symbol we need with a little effort.<br />
[[User:MerlinMM|MerlinMM]]<br />
<br />
== Ansi bugs ==<br />
Scrolling in BX is fixed. Thanks! terminal is a killer app.<br />
<br />
Still have a bug when typing a message in IRC that's long enough to require horizontal scrolling. Instead of scrolling it does weird single-char newlines and status bar is lost.<br />
<br />
Also when using arrow keys to move around in vim (with TERM=linux and syntax/color on), what seems to be ansi color code artifacts are printed. Arrows do work, but it's unusable due to artifacts. --[[User:T3rmin|T3rmin]] 18:05, 14 August 2009 (UTC)<br />
<br />
== New Version Changelog? ==<br />
<br />
The newest version from the feed seems to be 0.1.6. Anybody know what changes have been made? --[[User:Zinge|Zinge]] 19:30, 1 August 2009 (UTC)<br />
<br />
== Font Size Feature Request ==<br />
Well done! I notice that there are two fonts, normal and small. Would it be possible to add an intermediate font size? The 40 col is to large for seeing much and the 80 col is far to small. Would it be possible to have a ~60col font? --[[user:Dreadchicken|Dreadchicken]]<br />
<br />
: Also, could you add a "large" font size? I don't like the small sizes for little one-line commands (wget, etc). I guess ultimately it'd be nice to have in that combo box a handful of sizes. Thank you so much for the mind-blowing awesomeness of this app, by the way. [[User:Michaelb|Michaelb]] 18:46, 17 August 2009 (UTC)<br />
<br />
== Broadcast messages when phone sleeps/wakes ==<br />
<br />
Has anyone figured out how to stop the broadcast messages generated on the Terminal when the phone sleeps and wakes? They clobber whatever's on the screen if you happen to turn off the phone while Terminal is open.<br />
<br />
Other than this, great app. I'm eternally grateful. :) --[[User:zorinlynx|zorinlynx]]<br />
<br />
I'm not sure if this will help, but there is a quilt patch in the gitorious modification for disabling some messages to the log. http://gitorious.org/webos-internals/modifications/blobs/master/luna/quiet-powerd-messages.patch --[[User:Plee3|plee3]] 21:05, 3 August 2009 (UTC)<br />
<br />
Thank you! This has resolved the issue. --[[User:Zorinlynx|Zorinlynx]] 21:24, 3 August 2009 (UTC)<br />
<br />
== Brackets ==<br />
Any way to enter < or > chars? Kinda tough to dump output to a file without.<br />
--[[User:Daemon|Daemon]]<br />
<br />
These characters have not been implemented yet, but as a work-around, you can use tee or tee -a.<br />
--[[User:JackieRipper|JackieRipper]]<br />
<br />
==Colors Sticking, and Permissions==<br />
Would it be possible to set the foreground color permanently, so that I don't havve to set it each time I log in?<br />
<br />
I've also noticed that when I open the application, sometimes it automatically logs me in as root. How can I disable this?<br />
<br />
Thanks for your awesome work!! -[[User:Hopspitfire|hopspitfire]] 05:47, 16 August 2009 (UTC)<br />
<br />
I think one solution for disabling root access is to go into <br />
/var/usr/palm/applications/org.webosinternals.terminal/app/controllers<br />
and edit '''session-assistant.js'''<br />
Search for the line that reads<br />
this.termplugin.start("root");<br />
and change 'root' to your username.<br />
[[User:Clebio|Clebio]] 20:57, 16 August 2009 (UTC)<br />
<br />
:That worked perfectly! Thank you.<br />
:I'm still having trouble with the colors sticking, now when I change a color in the preferences menu and go back to the terminal, the entire screen freezes (It responds to <orange><sym><r>, but won't show the boot logo as it's shutting down, and ssh responds normally). Is this a bug? -[[User:Hopspitfire|hopspitfire]] 04:13, 17 August 2009 (UTC)<br />
:: I get this too when I try to change preferences. [[User:Michaelb|Michaelb]] 18:51, 17 August 2009 (UTC)<br />
: The problem has been fixed after the new update (0.1.9), THANKS! -[[User:Hopspitfire|hopspitfire]] 21:00, 19 August 2009 (UTC)<br />
<br />
Terminal displays blank screen after install<br />
----<br />
<br />
It will display nothing that I type, I have tried rebooting the phone with no luck. I did see an message that looked like an error during the install:<br />
<br />
Configuring org.webosinternals.termplugin <br />
(offline root mode: not running org.webosinternals.termplugin.postinst)<br />
<br />
Could the offline root mode error above be causing this? I was not in Dev mode when I installed this, should I have been?<br />
<br />
==Curved mask blocks text on screen corners==<br />
<br />
There used to be padding on the top and bottom of the screen to keep the curved corners of the mojo view from blocking text. Why were they removed? --[[User:Zorinlynx|Zorinlynx]] 02:12, 20 August 2009 (UTC)<br />
<br />
Can we get an easier way of tabbing? Say sym+period?<br />
<br />
== On Screen Keyboard? ==<br />
<br />
Any plans to integrate or implement something similar to the recently released OSK to the Terminal app? I think it would be very handy for landscape mode. --[[User:Roto|Roto]] 01:27, 29 August 2009 (UTC)</div>Roto