Archive for the 'technology' Category

Syncing Keyboard Shortcuts from one iOS to another using ssh (needs jailbreak)

!!DISCLAIMER!! This process could potentially brick your phone if done improperly. Follow these steps at your own risk.


I have created many on my after learning about the new feature for 5. They make filling out forms and logging into sites so much easier when you can type eml instead of your full email address. You can check out how to setup in iOS at lifehacker or by seaching google for iOS keyboard shortcuts. Many are out there. However the problem that I found myself with was also using my for signing in and other tasks that required filling in forms. I googled around and could not find any methods of copying shortcuts from my iPhone to my other than to restore the from the iPhones backup. Less than an ideal solution. So I have come up with a way that depends on both devices being jailbroken. Since iOS 5.0.1 has recently been jailbroken I downloaded and applied Absinthe on my 4S and redsn0w on my original . I installed openssh on both devices and copied my Keyboard info from one device to the other (remember to change the root and mobile user passwords if you install openssh!)

Here are the full steps I took for getting all my shortcuts assuming both devices are jailbroken:

  • Make an iTunes backup of each device in case something goes wrong!
  • Install openssh on both iOS devices using Cydia (check out the “OpenSSH Access How-To” on the ront page of the Cydia app)
  • ssh in to each device and change the password of root and mobile
  • to the device that has all your keyboard shortcuts and copy the contents of /User/Library/Keyboard to your PC or Mac (ie ssh mobile@192.168.0.5:/User/Library/Keyboard ~/Desktop/keyboardshortcuts/)
  • ssh the contents of the /User/Library/Keyboard directory from your Mac or PC to the device you want the keyboard shortcuts copied to (ie ssh ~/Desktop/keyboardshortcuts/* mobile@192.168.0.6:/User/Library/Keyboard/) the dynamic-text.dat is optional
  • Reboot the device you just copied the Keyboard contents to.
  • Enjoy your awesome keyboard shortcuts!

If you know ssh well you could technically copy from one device to another directly, but I liked the idea of having a backup of all my shortcuts on my Mac.

This is the way I came up with. I would love for Apple to support this feature with iCloud or some other method of keeping them in sync. For now this will do even though it involves jailbreaking. Anyone else have an idea of how to do this differently?

Nerd info:
- I checked the contents of dynamic-text.dat and it doesn’t need to be copied
- The contents of UserDictionary.sqlite is what creates UserDictionaryWordKeyPairs.plist as just copying over UserDictionaryWordKeyPairs.plist does not do the job. I checked with sqlite command line the UserDictionary.sqlite file and it looks to only contain the keyboard shortcut data. Thus I feel this is a safe hack and shouldn’t mess up anything.
- I used mobile user above since the original files were owned by mobile and copied via root could mess up permissions.

Adding pdftk to 1and1 shared hosting

UPDATE 2010-09-03: I updated a couple links to reflect newer downloads. Because is on an older debian (etch) system I had to tweak the steps for using lenny based packages. ENJOY!

There are some cases where you might need a powerful toolkit to use with . 1and1 does not come with any built in pdf processors or pdf built into php. Here is the process I used to integrate phptk into my 1and1 shared account.

Requirements: 1and1 shared plan that has ssh support

- Download file for debian lenny:

http://ftp.us.debian.org/debian/pool/main/p/pdftk/pdftk_1.41-3_i386.deb

- Extract the pdftk deb file:

ar xv pdftk_1.41-3_i386.deb

- Extract the data.tar.gz file:

tar xvzf data.tar.gz

- Download libgcj deb file for debian lenny:

wget http://ftp.us.debian.org/debian/pool/main/g/gcj-4.2/libgcj8-1_4.2.4-4_i386.deb

- Extract the libgcj deb file:

ar xv libgcj7-0_4.1.1-20_i386.deb

- Extract the data.tar.gz file:

tar xvzf data.tar.gz

- Download libstdc++ deb file for debian lenny (backport file http://packages.debian.org/lenny-backports/i386/libstdc++6/download):

wget http://mirror.linux.org.au/backports.org/pool/main/g/gcc-4.3/libstdc++6_4.3.4-6~bpo50+1_i386.deb

- Extract the libstdc++6 deb file:

ar xv libstdc++6_4.3.4-6~bpo50+1_i386.deb

- Extract the data.tar.gz file:

tar xvzf data.tar.gz

- Create a script to link libgcj and libstdc++6 for pdftk (use nano or vi):

#!/bin/bash

LD_LIBRARY_PATH="usr/lib:$LD_LIBRARY_PATH" usr/bin/pdftk $*

- Chmod the pdftk script so it can run:

chmod 755 pdftk

Now you can run pdftk from your main directory and process files from php or cronjobs.

If you run into any problems try running the pdftk command with some test files. If you have any problems please leave a comment. Thanks!

1&1 tightens up Email spam rules

I use 1and1 for my personal and as well as for our clients. We’ve had a client recently that was not receiving emails from one of their colleagues and of course the other company’s IT person said it was our problem. Having been an email administrator for many years I always like to look into the bounced back messages, smtp connection info, email headers, and more to track down a problem. This particular issue was perplexing because there where not many on the net about it. When someone was trying to send an email to a domain hosted at 1and1 it sent this error after the RCPT TO line:

421 invalid sender domain, possibly misconfigured

I tested at http://www.wormly.com/test_smtp_server (which is a great site btw) to get test the error.

So I sent an email to 1and1 support to see if they could help. This was the very speedy response:

The circumstances you have just described is caused by a RFC-non-compliant configuration of the despatcher-domain. The MX-Server
of the domain has no registered A-record, but merely a CNAME-record this is why the e-mail is rejected by our e-.

You can find some general information about this topic here:

http://www.faqs.org/rfcs/rfc2181.html

To provide the e-mail delivery as fast as possible again, we kindly advise you to inscribe the target domain of the CNAME-record as MX-record. For further information, please contact the provider of the despatcher-domain.

Looks like the is blocking any non RFC compliant domains. In the rfc spec above it says:

10.3. MX and NS records

The domain name used as the value of a NS resource record, or part of
the value of a MX resource record must not be an .

Additional section processing does not include CNAME records, let alone the address records that may be associated with the canonical name derived from the alias.

So if you are a or setup DNS for clients make sure to have the for your domains be A records (they directly resolve to an ip) not CNAME records. So far I have had to email a couple of companies related to this issue. I applaud 1and1 for locking down their email servers even more to thwart spam, but it would have been nice to have had a link or faq on their site explaining what was going on. Thus the reason for this lengthy blog post.

Some other posts on the web about this issues:

Useful links to test out DNS and MX records:

Adding PECL Uploadprogress to 1&1 shared hosting for Drupal FileField

Drupal 6.x is the platform we use to build great websites. There are modules FileField and ImageField 3.0 that allow the ability to update a progress meter when uploading a file. This requires installing a extension to called uploadprogress. Here is the process I used to get it working on a 1and1.com package. You will need a package with ssh support currently the and Developer packages do.

  • Download PECL uploadaccess to your account
  • Extract the package
    tar xvzf -1.0.0.tgz
  • Go into the directory
    cd uploadprogress-1.0.0
  • Run phpize5
    phpize5
  • Change php-config to php-config5 in configure script
    sed -i 's/=php-config/=php-config5/g' configure
  • Run Configure
    ./configure
  • Change include directives in Makefile
    sed -i 's#-I/usr/local/include/php#-I/usr/include/php5#g' Makefile
  • Run make and make test
    make
    make test
  • Make new extensions folder for new extension to go in
    mkdir ~/extensions
  • Copy uploadprogress extension to new folder
    cp .libs/uploadprogress.so ~/extensions/
  • Create new php.ini under your main folder (or under a single subfolder for just that application) to new extension_dir then this code to the file
    extension_dir=/kunden/homepages/6/d87663654/htdocs/extensions/
    extension=uploadprogress.so

That should be it. You should now be able to see the “Upload progress Enabled (PECL uploadprogress)” on the admin/reports/status page in .

Links that helped with the above info:

All the good ideas are taken. Lost item locator.

Had a thought last night as I was searching for my daughters pacifier for more than 15min as she was upstairs crying her little eyes out. “Pink passy” she crys from atop the stairs as I rummage around the kitchen, living room and across every corner, nook and cranny. My thought was, “If there was an RFID tag on that stupid passy I could have already found this thing!” After I finally found said passy behind the pantry door I wondered if such as product existed that allowed you to place a small tag onto any item and then locate it with a transceiver by walking around the house. Seems it was such as good idea that someone already patented it. Not that I should be suprised because all the good are taken! Well not really, but any of the obvious ones I come up with seem to be. So maybe one day I’ll come up with something that no one has patented, copyrighted or otherwise thought up and do something really great.

Suggest topics for me to write about: Skribit

I would love for those who read this blog (all 3 of you lol) to suggest topics for to blog about. I was alerted to a very kewl service called Skribit that allows people to suggest items. Please post your there or use the box on the right. Thanks alot!

Paypal’s Security FOB

Yes this has been reviewed multiple times (here) as well as talked about on one of my favorite podcasts Security Now (transcript), but I just had to let the people who look at my blog (all 8 of you lol) how great it is. Here is a picture of it:

This hangs on my keychain and has a button that when I press on it gives a 6 digit number which I can then use to log into .

In fact I just used it to login to paypal to help my buddy Matt get his Dad a new wii at http://www.mydadneedsawii.com/. Please check it out and donate a dollar or two.

So here are the steps to using the Paypal device:

1) Goto http://www.mydadneedsawii.com/
2) Click on the Donate button on the right
3) Enter an amount (ie $5) and click Update Total
4) Enter your paypal email and password
5) Then instead of logging you in you are presented with a box to enter your 6 digit security code from your Paypal FOB.

So that is it. Pretty simple and makes your paypal account alot more secure. Check out more on the paypal site.. You also get to use the same key for your login!

TextMate is the best editor evaaaaar!

Yeah, so I love TextMate. It is in my opinion one of the greatest text editors. It is easy to use, has great features (see below), makes it easy to program (especially in ) and is all around great. Yeah I know I could expound more, but I’m doing other things so read the features below or check out the site. Definitely worth the money (OSX only).

* Ability to Search and Replace in a Project
* Auto-Indent for Common Actions Like Pasting Text
* Auto-Pairing of Brackets and Other Characters
* Clipboard History
* Column Selections and Column Typing
* Completion of Words from Current Document
* CSS-like Selectors to Pinpoint the Scope of Actions and Settings
* Declarative Language Grammars for Graceful Mixing and Hacking
* Dynamic Outline for Working With Multiple Files
* Expand Trigger Words to Code Blocks With Tab-able Placeholders
* File Tabs when Working With Projects
* Foldable Code Blocks
* Function Pop-up for Quick Overview and Navigation
* Plug-able Through Your Favorite Scripting Language
* Recordable Macros With No Programming Required
* Regular Expression Search and Replace (grep)
* Run Shell Commands from Within a Document
* Support for Darcs, Perforce, SVK, and Subversion
* Support for More Than 50 Languages
* Switch Between Files in Projects With a Minimum of Key Strokes
* Themable Syntax Highlight Colors
* Visual Bookmarks to Jump Between Places in a File
* Works As External Editor for (s)ftp Programs
* Works Together With Xcode and Can Build Xcode Projects

Join twitter!!

Not on facebook and want a way to keep track of some musings and things I do throughout the day? Then check out twitter. My blog lists a daily snapshot of all my tweets, but why not get things immediately!?! :) You can also get tweets sent to IM or your phone. Schweet!

Apple Makes me Mad!

iPhone TouchOk well jealous with envy is more like it! They are releasing all kinds of new goodies today including the latest iPod Touch which is like an without the phone. You can even purchase songs straight off of iTunes. Crazy!

I was checking things out here for updates: http://live.gizmodo.com/




SEO Powered by Platinum SEO from Techblissonline