{"id":128,"date":"2012-02-20T11:10:14","date_gmt":"2012-02-20T17:10:14","guid":{"rendered":"http:\/\/mtu.net\/~jpschewe\/blog\/?p=128"},"modified":"2012-02-20T11:10:14","modified_gmt":"2012-02-20T17:10:14","slug":"finally-able-to-use-my-ipod-touch-without-windows-or-mac","status":"publish","type":"post","link":"https:\/\/mtu.net\/~jpschewe\/blog\/2012\/02\/finally-able-to-use-my-ipod-touch-without-windows-or-mac\/","title":{"rendered":"Finally able to use my iPod Touch without Windows or Mac"},"content":{"rendered":"<p>I&#8217;ve finally made it. I can now use my iPod Touch just with Linux. Apple adding over the air updates really helped, but I still couldn&#8217;t sync my music. I also found that pulling large videos off via Dropbox didn&#8217;t work as the app would time out. I had been trying to get gtkpod to work, but kept running into a problem with the database checksum on the music database. Recently I found <a href=\"http:\/\/itunes.apple.com\/us\/app\/phone-drive-file-sharing-wifi\/id431033044?mt=8\">Phone Drive<\/a>\u00a0and this has solved my problem. This app lets me copy images and videos out of my camera roll into the app and then the app will bring up a web server and an ftp server on the device. I can then browse the files from my web browser and download the files to my desktop. I can also put files up this way. Phone Drive also has a built in music player that will play any directory as a playlist and supports users adding their own playlists. So I wrote a little script (below) that will generate a playlist for all music and one for each artist on my computer and then I can upload those and all of my music via ftp. I did have a little trouble with some ftp programs that want to open multiple connections. In the end I used ncftp as it doesn&#8217;t try to open multiple connections and it has the ability to upload directories recursively. I did find one oddity that I needed to turn off the auto conversion of ascii files otherwise playlist files got their line endings changed and Phone Drive wouldn&#8217;t recognize them.<\/p>\n<p>So my current list of apps that I\u00a0regularly\u00a0use is this:<\/p>\n<ul>\n<li>Calendar syncing with Google, either via Active Sync or via caldav (this allows the colors to sync)<\/li>\n<li>Contacts syncing with Google as an Exchange account<\/li>\n<li>GMail app for mail from Google as I prefer the way Google does conversations<\/li>\n<li><a href=\"http:\/\/www.appigo.com\/todo\">Appigo Todo<\/a> syncing with <a href=\"http:\/\/www.toodledo.com\/\">Toodledo<\/a><\/li>\n<li><a href=\"http:\/\/itunes.apple.com\/us\/app\/plaintext-dropbox-text-editing\/id391254385?mt=8\">PlainText<\/a>\u00a0for notes<\/li>\n<li><a href=\"dropbox.com\">Dropbox<\/a>\u00a0for keeping family pictures and moving images between my device and my computer<\/li>\n<li><a href=\"http:\/\/itunes.apple.com\/us\/app\/minikeepass-secure-password\/id451661808?mt=8\">MiniKeePass<\/a>\u00a0on my device and <a href=\"http:\/\/www.keepassx.org\/\">KeePassX<\/a>\u00a0syncing through Dropbox<\/li>\n<li><a href=\"http:\/\/itunes.apple.com\/us\/app\/podcaster-4\/id377195245?mt=8\">Podcaster<\/a> for audio and video podcasts<\/li>\n<li><a href=\"http:\/\/readitlaterlist.com\/\">ReadItLater<\/a>\u00a0for offline access to web pages<\/li>\n<\/ul>\n<pre>#!\/bin\/sh<\/pre>\n<pre>debug() { ! \"${log_debug-false}\" || log \"DEBUG: $*\" &gt;&amp;2; }\r\nlog() { printf '%s\\n' \"$*\"; }\r\nwarn() { log \"WARNING: $*\" &gt;&amp;2; }\r\nerror() { log \"ERROR: $*\" &gt;&amp;2; }\r\nfatal() { error \"$*\"; exit 1; }<\/pre>\n<pre>mydir=$(cd \"$(dirname \"$0\")\" &amp;&amp; pwd -L) || fatal \"Unable to determine script directory\"<\/pre>\n<pre>cd \"${mydir}\/mp3\"<\/pre>\n<pre># generate artist playlists\r\nfind . -maxdepth 1 -type d -print0 | while read -d $'\\0' dir\r\n do\r\n short_dir=\"${dir#.\/}\"\r\n if [ \"${short_dir}\" != \".\" ]; then\r\n playlist=\"${mydir}\/itouch-playlists\/aaa_${short_dir}.m3u\"\r\n log \"Processing ${short_dir}\"\r\n printf \"\" &gt; \"${playlist}\"\r\n find \"${short_dir}\" -type f -name '*.mp3' -printf \"\/music\/%p\\n\" &gt;&gt; \"${playlist}\"\r\n mv \"${playlist}\" \"${dir}\"\r\n fi\r\ndone<\/pre>\n<pre># generate all music playlist\r\nlog \"Generating all music playlist\"\r\nfind . -type f -name '*.mp3' \\\r\n -fprintf \"${mydir}\/mp3\/aaa_all_music-new.m3u\" \"\/music\/%P\\n\"<\/pre>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I&#8217;ve finally made it. I can now use my iPod Touch just with Linux. Apple adding over the air updates really helped, but I still couldn&#8217;t sync my music. I also found that pulling large videos off via Dropbox didn&#8217;t work as the app would time out. I had been trying to get gtkpod to &hellip; <a href=\"https:\/\/mtu.net\/~jpschewe\/blog\/2012\/02\/finally-able-to-use-my-ipod-touch-without-windows-or-mac\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">Finally able to use my iPod Touch without Windows or Mac<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[13],"tags":[],"class_list":["post-128","post","type-post","status-publish","format-standard","hentry","category-ipod-touch"],"_links":{"self":[{"href":"https:\/\/mtu.net\/~jpschewe\/blog\/wp-json\/wp\/v2\/posts\/128","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mtu.net\/~jpschewe\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mtu.net\/~jpschewe\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mtu.net\/~jpschewe\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mtu.net\/~jpschewe\/blog\/wp-json\/wp\/v2\/comments?post=128"}],"version-history":[{"count":1,"href":"https:\/\/mtu.net\/~jpschewe\/blog\/wp-json\/wp\/v2\/posts\/128\/revisions"}],"predecessor-version":[{"id":129,"href":"https:\/\/mtu.net\/~jpschewe\/blog\/wp-json\/wp\/v2\/posts\/128\/revisions\/129"}],"wp:attachment":[{"href":"https:\/\/mtu.net\/~jpschewe\/blog\/wp-json\/wp\/v2\/media?parent=128"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mtu.net\/~jpschewe\/blog\/wp-json\/wp\/v2\/categories?post=128"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mtu.net\/~jpschewe\/blog\/wp-json\/wp\/v2\/tags?post=128"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}