<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>geekbin.net &#187; Gentoo</title>
	<atom:link href="http://www.geekbin.net/main/category/gentoo/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.geekbin.net/main</link>
	<description></description>
	<lastBuildDate>Fri, 02 Jul 2010 05:37:08 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Creating a 32 Bit Chroot with Funtoo Sources (For Wine)</title>
		<link>http://www.geekbin.net/main/2010/03/creating-a-32-bit-chroot-with-funtoo-sources-for-wine/</link>
		<comments>http://www.geekbin.net/main/2010/03/creating-a-32-bit-chroot-with-funtoo-sources-for-wine/#comments</comments>
		<pubDate>Tue, 23 Mar 2010 09:28:04 +0000</pubDate>
		<dc:creator>IAmWill</dc:creator>
				<category><![CDATA[Funtoo]]></category>
		<category><![CDATA[Gentoo]]></category>
		<category><![CDATA[Scripts / Code]]></category>
		<category><![CDATA[Wine]]></category>
		<category><![CDATA[X]]></category>
		<category><![CDATA[x86_64]]></category>

		<guid isPermaLink="false">http://www.geekbin.net/main/?p=327</guid>
		<description><![CDATA[Since I can&#8217;t seem to get wine to work properly on the 64 bit build, I decided to break down and stop fighting the system. Just create a damn 32bit chroot so that everything works fine. The following (modified from the official gentoo site) were the steps that I took, and everything seemed to build [...]]]></description>
			<content:encoded><![CDATA[<p>Since I can&#8217;t seem to get wine to work properly on the 64 bit build, I decided to break down and stop fighting the system.  Just create a damn 32bit chroot so that everything works fine.  The following (modified from the official gentoo site) were the steps that I took, and everything seemed to build fine with no problems.  I put this is script format so if anyone wants to save 15 minutes of time, then they can just cut/paste this into vim, chmod it, and execute it.  If you decide to be lazy like me, make sure that you review what you are stuffing into your make.conf file.  It might not be what you wanted.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:750px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">#!/bin/bash<br />
mkdir /mnt/gentoo32<br />
wget http://distro.ibiblio.org/pub/linux/distributions/funtoo/funtoo/x86/stage3-x86-current.tar.bz2<br />
tar -xvjpf stage3-x86-current.tar.bz2<br />
cp -L /etc/resolv.conf /mnt/gentoo32/etc/resolv.conf<br />
cp -L /etc/passwd /mnt/gentoo32/etc/passwd<br />
rm /mnt/gentoo32/etc/make.conf<br />
echo &quot;CFLAGS=\&quot;-O2 -march=native -msse2 -pipe -fomit-frame-pointer\&quot;&quot; &gt;&gt; /mnt/gentoo32/etc/make.conf<br />
echo &quot;CHOST=\&quot;i686-pc-linux-gnu\&quot;&quot; &gt;&gt; /mnt/gentoo32/etc/make.conf<br />
echo &quot;CXXFLAGS=\&quot;${CFLAGS}\&quot;&quot; &gt;&gt; /mnt/gentoo32/etc/make.conf<br />
echo &quot;MAKEOPTS=\&quot;-j2\&quot;&quot; &gt;&gt; /mnt/gentoo32/etc/make.conf<br />
mount -o bind /dev /mnt/gentoo32/dev<br />
mount -o bind /dev/pts /mnt/gentoo32/dev/pts<br />
mount -o bind /dev/shm /mnt/gentoo32/dev/shm<br />
mount -o bind /proc /mnt/gentoo32/proc<br />
mount -o bind /proc/bus/usb /mnt/gentoo32/proc/bus/usb<br />
mount -o bind /sys /mnt/gentoo32/sys<br />
mkdir -p /mnt/gentoo32/usr/portage/<br />
mount -o bind /usr/portage /mnt/gentoo32/usr/portage/<br />
mount -o bind /tmp /mnt/gentoo32/tmp<br />
emerge --noreplace sys-apps/util-linux<br />
echo<br />
echo /##################################################\<br />
echo <br />
echo NOW RUN THE FOLLOWING: &nbsp; &nbsp; <br />
echo # linux32 chroot /mnt/gentoo32 /bin/bash &nbsp; <br />
echo # source /etc/profile&nbsp; <br />
echo # env-update &nbsp; <br />
echo # emerge -vauND world<br />
echo<br />
echo \##################################################/</div></div>
]]></content:encoded>
			<wfw:commentRss>http://www.geekbin.net/main/2010/03/creating-a-32-bit-chroot-with-funtoo-sources-for-wine/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sync the iPhone 3x in Amarok on Gentoo Linux</title>
		<link>http://www.geekbin.net/main/2010/03/sync-the-iphone-3x-in-amarok-on-gentoo-linux/</link>
		<comments>http://www.geekbin.net/main/2010/03/sync-the-iphone-3x-in-amarok-on-gentoo-linux/#comments</comments>
		<pubDate>Sat, 13 Mar 2010 01:06:54 +0000</pubDate>
		<dc:creator>IAmWill</dc:creator>
				<category><![CDATA[Amarok]]></category>
		<category><![CDATA[Gentoo]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://www.geekbin.net/main/?p=299</guid>
		<description><![CDATA[This was partially error on my part, and lack of documentation else where. The iPhone 3x (jailbroken or not) can finally sync with Amarok. A few packages are needed, but the process is automated. You no longer need to use ifuse to manually mount and use gtkpod to transfer music. However, I have not found [...]]]></description>
			<content:encoded><![CDATA[<p>This was partially error on my part, and lack of documentation else where.  The iPhone 3x (jailbroken or not) can finally sync with Amarok.  A few packages are needed, but the process is automated.  You no longer need to use ifuse to manually mount and use gtkpod to transfer music.  However, I have not found a way to tranfer pictures or video yet, so I don&#8217;t recommend completely removing them.  The following packages are needed to complete this, and a few  things are needed before you install Amarok.</p>
<p><strong>Prerequisite Packages Needed with the Proper USE Flags:</strong></p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:750px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">=dev-libs/libusb-0.1.12-r7 debug doc<br />
=dev-libs/libusb-1.0.3 debug doc<br />
=app-pda/libplist-9999<br />
=app-pda/libiphone-9999<br />
=app-pda/ifuse-9999<br />
=app-pda/usbmuxd-9999</div></div>
<p>After these are installed, you need to remove both <strong>media-sound/amarok</strong> and <strong>media-sound/amarok-utils</strong>.  Once these are removed, you need to reinstall both of the newest packages with the following USE flags.</p>
<p>Before the installation, you need to remove the Amarok folders in your home directory.  You will have to reconfigure your music collection&#8217;s location, but this will clear all of the problems that might stop your phone from mounting in Amarok.  (I removed all the folders vice each file inside)</p>
<p><strong>Locations of Amarok Configurations:</strong></p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:750px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">~/.kde4/share/apps/amarok/<br />
~/.kde4/share/config/amarok</div></div>
<p>&#8230;and here are the new Amarok packages you need.</p>
<p><strong>Amarok and Amarok Utilities with Proper USE Flags:</strong></p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:750px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">=media-sound/amarok-2.2.2.90 daap embedded ipod lastfm mp3tunes opengl<br />
=media-sound/amarok-utilites-2.2.2.90 -debug</div></div>
<p>Once you have done all of this, plug your phone in, and it should mount in Amarok automatically.</p>
<p><strong>Screenshot:<br />
<a href="http://www.geekbin.net/main/wp-content/uploads/2010/03/amarok-22290-iphone.png"><img class="alignnone size-medium wp-image-302" title="amarok-22290-iphone" src="http://www.geekbin.net/main/wp-content/uploads/2010/03/amarok-22290-iphone-300x217.png" alt="" width="300" height="217" /></a></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.geekbin.net/main/2010/03/sync-the-iphone-3x-in-amarok-on-gentoo-linux/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>CAC Reader Support in Gentoo</title>
		<link>http://www.geekbin.net/main/2010/03/cac-reader-support-in-gentoo/</link>
		<comments>http://www.geekbin.net/main/2010/03/cac-reader-support-in-gentoo/#comments</comments>
		<pubDate>Fri, 12 Mar 2010 05:56:06 +0000</pubDate>
		<dc:creator>IAmWill</dc:creator>
				<category><![CDATA[CAC Reader]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Gentoo]]></category>

		<guid isPermaLink="false">http://www.geekbin.net/main/?p=289</guid>
		<description><![CDATA[This might not be new, but it was defiantly new to me.  I found a package in portage that grants the ability to install your own CAC card reader, integrate it with Firefox and use your certificates to log into government sites that you have the proper access to.  It&#8217;s great for people who don&#8217;t [...]]]></description>
			<content:encoded><![CDATA[<p>This might not be new, but it was defiantly new to me.  I found a package in portage that grants the ability to install your own CAC card reader, integrate it with Firefox and use your certificates to log into government sites that you have the proper access to.  It&#8217;s great for people who don&#8217;t want to use a virtual machine alternative solution, and additionally, you don&#8217;t have to purchase any additional software like ActivCard Gold.</p>
<p>Simply emerge the following, start the init script, and install the additional certificates into Firefox, and your CAC should work.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:750px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">app-crypt/ccid<br />
sys-apps/pcsc-lite<br />
app-crypt/coolkey</div></div>
<p>&#8230; and for the init script</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:750px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"># /etc/init.d/pcscd start<br />
# rc-update add pcscd default</div></div>
<p>Lastly, installing the DoD Certificates:</p>
<p><b>The Certs:</b></p>
<p>The easiest way to install the certificates is by visiting<a href="http://dodpki.c3pki.chamb.disa.mil/rootca.html">http://dodpki.c3pki.chamb.disa.mil/rootca.html</a> and clicking on each one.</p>
<p>Alternatively, you can download them and install them by hand.</p>
<p>All of the certificates are located at the following links:</p>
<ul>
<li><a href="https://crl.chamb.disa.mil/">https://crl.chamb.disa.mil/</a></li>
</ul>
<p>Sadly, there is no quick way to manually add the certs, and I had to load all 45 certs by hand.  It shouldn&#8217;t take more than 10 minutes, however, you have to load each one, click Okay, and then start the new one, you can&#8217;t just load all of them before clicking Okay.</p>
<p>To add the certs manually, simply go to <b>Edit</b> >> <b> Preferences.</b>  Once the window appears, go to the <b>Advanced</b> tab, and then the <b>Encryption</b> sub tab.  Click on the <b>View Certificates</b> button.  Go to the <b>Authorities</b> tab, and click the import button.  Navigate to the first certificate, and then add it.  Click okay, then repeat the steps starting at the <b>Import</b> button again.</p>
<p>After you have loaded all of the certs, and before you can use your card, you have to point Firefox to the CAC reader.  Firefox considers your reader to be a &#8220;Security Device.&#8221;  To add it, simply go to <b>Edit</b> >> <b> Preferences.</b>  Once the window appears, go to the <b>Advanced</b> tab, and then the <b>Encryption</b> sub tab.  Click on the <b>Security Devices</b> button.  You need to select <b>CAC Module</b> and add the path to libcoolkeypk11.so.  You can either slocate it on your system, or if you have a 64bit, then point it to <b>/usr/lib64/pkcs11/libcoolkeypk11.so</b>.  You should be prompted for your password and after that you are set.</p>
<p><b>MAKE SURE YOU DO NOT ENTER YOUR PASSWORD WRONG 3 TIMES OR IT WILL LOCK YOUR CARD, AND YOU WILL HAVE TO GET YOUR CARD PROVIDER TO UNLOCK IT!</b></p>
]]></content:encoded>
			<wfw:commentRss>http://www.geekbin.net/main/2010/03/cac-reader-support-in-gentoo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Updates for Ruby</title>
		<link>http://www.geekbin.net/main/2010/03/updates-for-ruby/</link>
		<comments>http://www.geekbin.net/main/2010/03/updates-for-ruby/#comments</comments>
		<pubDate>Sat, 06 Mar 2010 00:54:37 +0000</pubDate>
		<dc:creator>IAmWill</dc:creator>
				<category><![CDATA[Emerge]]></category>
		<category><![CDATA[Gentoo]]></category>
		<category><![CDATA[Portage]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://www.geekbin.net/main/?p=273</guid>
		<description><![CDATA[So, portage must really be behind the updates or someone in charge of ruby is slacking. As of now, portage only recognizes =dev-lang/ruby-1.8.7-p174, which the file doesn&#8217;t exist in any repository. What does exist however is =dev-lang/ruby-1.8.7-p249. The downfall is that it relies on =app-admin/eselect-ruby-20091225 which&#8230; doesn&#8217;t exist. You have to love updates!! For convenience, [...]]]></description>
			<content:encoded><![CDATA[<p>So, portage must really be behind the updates or someone in charge of ruby is slacking.  As of now, portage only recognizes =dev-lang/ruby-1.8.7-p174, which the file doesn&#8217;t exist in any repository.  What does exist however is =dev-lang/ruby-1.8.7-p249.  The downfall is that it relies on =app-admin/eselect-ruby-20091225 which&#8230; doesn&#8217;t exist.  You have to love updates!!  </p>
<p>For convenience, I just added both into the /usr/local/portage tree, and digested these.  Hopefully in the next day or two this problem will be fixed.</p>
<p>http://www.gentoo-portage.com/dev-lang/ruby</p>
<p>http://www.gentoo-portage.com/app-admin/eselect-ruby</p>
]]></content:encoded>
			<wfw:commentRss>http://www.geekbin.net/main/2010/03/updates-for-ruby/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Samba is a Pain!</title>
		<link>http://www.geekbin.net/main/2010/03/samba-is-a-pain/</link>
		<comments>http://www.geekbin.net/main/2010/03/samba-is-a-pain/#comments</comments>
		<pubDate>Sat, 06 Mar 2010 00:19:57 +0000</pubDate>
		<dc:creator>IAmWill</dc:creator>
				<category><![CDATA[Emerge]]></category>
		<category><![CDATA[Gentoo]]></category>
		<category><![CDATA[World]]></category>

		<guid isPermaLink="false">http://www.geekbin.net/main/?p=271</guid>
		<description><![CDATA[Well, today on the update of world, I got the great circular error of dependencies on net-fs/samba and net-fs/samba-libs. I am not sure what is going on upstream, but all of the kde 4.4.1 packages are really having problems with particular versions of samba, and the libs were fighting me on the versions as well. [...]]]></description>
			<content:encoded><![CDATA[<p>Well, today on the update of world, I got the great circular error of dependencies on net-fs/samba and net-fs/samba-libs.  I am not sure what is going on upstream, but all of the kde 4.4.1 packages are really having problems with particular versions of samba, and the libs were fighting me on the versions as well.  The only solution I had was to unmask =net-fs/samba-3.5.0 and pull that one manually (with &#8211;oneshot) and then pull =net-fs/samba-libs-3.4.5 (with &#8211;oneshot).  After that, world updated with no problems.  It was simple enough yet it was just a pain in the ass.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.geekbin.net/main/2010/03/samba-is-a-pain/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>iPhone 3.x Sync&#8217;ed in Linux (Full Gentoo Guide)</title>
		<link>http://www.geekbin.net/main/2010/01/iphone-3-1-2-synced-in-linux-full-gentoo/</link>
		<comments>http://www.geekbin.net/main/2010/01/iphone-3-1-2-synced-in-linux-full-gentoo/#comments</comments>
		<pubDate>Sat, 09 Jan 2010 19:46:30 +0000</pubDate>
		<dc:creator>IAmWill</dc:creator>
				<category><![CDATA[GTKPod]]></category>
		<category><![CDATA[Gentoo]]></category>
		<category><![CDATA[Media]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://www.geekbin.net/main/?p=253</guid>
		<description><![CDATA[Okay, so This is the third (and hopefully final) walkthrough for getting your iPhone to sync with Gentoo and now I am incorporating file transfer and music management. The process is actually very simple, but you should make sure to follow all of the steps. I encountered some problems along the way as well; I [...]]]></description>
			<content:encoded><![CDATA[<p>Okay, so This is the third (and hopefully final) walkthrough for getting your iPhone to sync with Gentoo and now I am incorporating file transfer and music management.  The process is actually very simple, but you should make sure to follow all of the steps.  I encountered some problems along the way as well; I received an error from one of the commands that used in other walkthroughs &#8220;Couldn’t read xml sysinfo from uuid.&#8221;  I simply fixed it by <strong>&#8220;READING&#8221;</strong> all of the steps properly and everything worked, so if you don&#8217;t read, you won&#8217;t get it!</p>
<p>Even though I have thanked him once before, thanks again to <a href="http://marcansoft.com/blog/2009/10/iphone-syncing-on-linux/">Marcan</a> and his blog.  His hard work has made this possible.  I recommend reading his walkthrough to get a better understanding of everything.  This walkthrough is a similar walkthrough to his, but targets Gentoo.  As stated in all other walkthroughs, you do not need to jailbreak your phone, but I recommend it, makes everything easier.  I nor any developer or provider is responsible for any damages that you cause by following our walkthroughs, so, if you brick, it is on you.  Lastly, your iPhone should have already been plugged into iTunes and received a song at least once.</p>
<p><strong>The way I did it might not be the way it SHOULD be done, but it did work.  If you know of a better way, please bring it to light.</strong></p>
<p>First, you will need the Rion overlay like I wrote in earlier posts.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:750px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"># emerge -va layman<br />
# layman -a rion<br />
# layman -S<br />
# echo `PORTDIR_OVERLAY=&quot;/usr/local/portage/layman/rion&quot;` &gt;&gt; /etc/make.conf<br />
# env-update<br />
# eix-update</div></div>
<p>Next, you will need to emerge a few needed packages.  I found that the libgpod package in portage isn&#8217;t going to work, so will have to manually install that one from the sourceforge project page.  In the mean time, I will try writing an ebuild for it so that it can be emerged. (I emerged it, an then built new one over it)  Additionally, the versions that you have will also matter, but the 9999 versions mostly don&#8217;t work yet, so a couple of entries into your package.keywords and package.use will be necessary.  Also, before emerging any of this, I would recommend adding &#8220;ipod&#8221; you your USE flags in your /etc/make.conf file.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:750px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"># echo &quot;dev-libs/libusb debug doc&quot; &gt;&gt; /etc/portage/package.use<br />
# echo &quot;media-libs/libgpod gtk hal python test&quot; &gt;&gt; /etc/portage/package.use<br />
# echo &quot;dev-util/gtk-doc debug doc&quot; &gt;&gt; /etc/portage/package.use<br />
<br />
# echo &quot;=app-pda/libplist-9999&quot; &gt;&gt; /etc/portage/package.mask<br />
# echo &quot;=app-pda/libiphone-9999&quot; &gt;&gt; /etc/portage/package.mask<br />
# echo &quot;=app-pda/ifuse-9999&quot; &gt;&gt; /etc/portage/package.mask<br />
# echo &quot;dev-libs/libusb **&quot; &gt;&gt; /etc/portage/package.keywords<br />
# echo &quot;app-pda/ifuse **&quot; &gt;&gt; /etc/portage/package.keywords<br />
# echo &quot;app-pda/libplist **&quot; &gt;&gt; /etc/portage/package.keywords<br />
# echo &quot;app-pda/libiphone **&quot; &gt;&gt; /etc/portage/package.keywords<br />
# echo &quot;app-pda/usbmuxd **&quot; &gt;&gt; /etc/portage/package.keywords<br />
<br />
# emerge -va libusb libiphone ifuse libplist usbmuxd libgpod gtk-doc gtkpod dev-util/git</div></div>
<p>Next, you will need to build the custom version of libgpod.  If everything is built right on your system, then you should be fine, but if you get any errors, of course you will need to fix them before you continue.  You will need git in order to obtain this build from the sourceforge repository.  Find a nice location on your drive, and as root, execute the following.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:750px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"># git clone git://gtkpod.git.sourceforge.net/gitroot/gtkpod/libgpod<br />
# cd libgpod<br />
# CFLAGS=&quot;-g -O0&quot; sh autogen.sh --prefix=/usr<br />
# make<br />
# make install</div></div>
<p>Now, we have start testing everything out.  We need to make sure that your phone is fully connected once you plug it in, and we need to make sure that usbmuxd is detecting your phone.  We have to create the usbmux user so that usbmuxd will work properly. You will have to make sure that this user has access to usb and plugdev. I added wheel too, but it isn’t necessary.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:750px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"># useradd -G usb,plugdev,wheel -s /bin/bash usbmux</div></div>
<p>Once everything is emerged successfully, you need to test out and make sure that your iphone is being registered when it connects. First you will have to modify the udev rules so that you can see the output. Increase the syslog debug level by editing “/lib/udev/rules.d/85-usbmuxd.rules” and adding “-v -v” flags to the end of both RUN statements. Now you can run the following and see if usbmuxd is seeing your iphone.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:750px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">Jan &nbsp;9 12:43:24 ghost kernel: [139025.359653] hub 2-0:1.0: state 7 ports 6 chg 0000 evt 0004<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.359663] ehci_hcd 0000:00:1d.7: GetStatus port 2 status 001403 POWER sig=k CSC CONNECT<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.359670] hub 2-0:1.0: port 2, status 0501, change 0001, 480 Mb/s<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.385242] ehci_hcd 0000:00:1d.7: GetStatus port 2 status 001002 POWER sig=se0 CSC<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.463060] ehci_hcd 0000:00:1d.7: GetStatus port 2 status 001803 POWER sig=j CSC CONNECT<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.567304] hub 2-0:1.0: debounce: port 2: total 200ms stable 100ms status 0x501<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.618227] ehci_hcd 0000:00:1d.7: port 2 high speed<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.618232] ehci_hcd 0000:00:1d.7: GetStatus port 2 status 001005 POWER sig=se0 PE CONNECT<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.669065] usb 2-2: new high speed USB device using ehci_hcd and address 14<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.720353] ehci_hcd 0000:00:1d.7: port 2 high speed<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.720358] ehci_hcd 0000:00:1d.7: GetStatus port 2 status 001005 POWER sig=se0 PE CONNECT<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.785527] usb 2-2: skipped 3 descriptors after interface<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.785530] usb 2-2: skipped 2 descriptors after interface<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.785533] usb 2-2: skipped 1 descriptor after endpoint<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.785535] usb 2-2: skipped 1 descriptor after interface<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.788140] usb 2-2: default language 0x0409<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.789388] usb 2-2: udev 14, busnum 2, minor = 141<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.789391] usb 2-2: New USB device found, idVendor=05ac, idProduct=1292<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.789393] usb 2-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.789395] usb 2-2: Product: iPhone<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.789397] usb 2-2: Manufacturer: Apple Inc.<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.789399] usb 2-2: SerialNumber: 69a4294a91a56958927f3fafe0086bf90ccd2d2b<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.789469] usb 2-2: uevent<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.789486] usb 2-2: usb_probe_device<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.789489] usb 2-2: configuration #1 chosen from 4 choices<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.791263] usb 2-2: adding 2-2:1.0 (config #1, interface 0)<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.791282] usb 2-2:1.0: uevent<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.791351] drivers/usb/core/inode.c: creating file '014'<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.791371] hub 2-0:1.0: state 7 ports 6 chg 0000 evt 0004<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.791385] usb 2-2: usb_disable_device nuking non-ep0 URBs<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.791388] usb 2-2: unregistering interface 2-2:1.0<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.791434] usb 2-2:1.0: uevent<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.793892] usb 2-2: adding 2-2:4.0 (config #4, interface 0)<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.793929] usb 2-2:4.0: uevent<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.793989] usb 2-2: adding 2-2:4.1 (config #4, interface 1)<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.794005] usb 2-2:4.1: uevent<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.794035] usb 2-2: adding 2-2:4.2 (config #4, interface 2)<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.794053] usb 2-2:4.2: uevent<br />
Jan &nbsp;9 12:43:24 ghost kernel: [139025.811303] usb 2-2: uevent</div></div>
<p>Now it is time to mount the device, create some required folders, and get your UUID.  Since you now have ifuse, you can easily mount your device, but in order to do this, it is required to be in a specific location.  Additionally, if you want your users (not root) to also have ifuse privileges, you will need to edit the config files to do that.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:750px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"># echo &quot;user_allow_other&quot; &gt;&gt; /etc/fuse.conf<br />
# mkdir /mnt/ipod<br />
# chmod 777 /mnt/ipod<br />
# ifuse /mnt/ipod<br />
# mkdir /mnt/ipod/iTunes_Control/Device</div></div>
<p>Now obtain your UUID either from the logs, or by running&#8230;</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:750px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"># lsusb -v | grep -i iSerial</div></div>
<p>Your UUID is a long hexadecimal string that is roughly 40 characters long.  In the longs above, mine is <strong>69a4294a91a56958927f3fafe0086bf90ccd2d2b</strong>.  Now, lets generate the XML file for your phone, simply run&#8230;</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:750px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">ipod-read-sysinfo-extended YOUR_UUID /mnt/ipod</div></div>
<p>This will create the file <strong>iTunes_Control/Device/SysInfoExtended</strong> file. Make sure there is stuff in it, and it is not empty.  It should be a large XML file with a bunch of info.</p>
<p>If there were no errors, then you are good to go.  You can now sync up with linux and transfer music.  In the future, when you plug your device in, you simply need to run&#8230;</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:750px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">$ ifuse /mnt/ipod</div></div>
<p>I have been using GTKPod to transfer my music over to the device, however, it should work with other applications like RhythmBox or Amarok.  I haven&#8217;t tried them out yet, but I would be interested to see if anyone gets that working.</p>
<p>[singlepic id=20 w=320 h=240 float=left] [singlepic id=21 w=320 h=240 float=center]</p>
]]></content:encoded>
			<wfw:commentRss>http://www.geekbin.net/main/2010/01/iphone-3-1-2-synced-in-linux-full-gentoo/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>iPhone 3G(s) 3.1.2 Sync&#8217;ed in Gentoo</title>
		<link>http://www.geekbin.net/main/2009/12/iphone-3gs-3-1-2-synced-in-gentoo/</link>
		<comments>http://www.geekbin.net/main/2009/12/iphone-3gs-3-1-2-synced-in-gentoo/#comments</comments>
		<pubDate>Sun, 13 Dec 2009 21:27:52 +0000</pubDate>
		<dc:creator>IAmWill</dc:creator>
				<category><![CDATA[Amarok]]></category>
		<category><![CDATA[Gentoo]]></category>
		<category><![CDATA[Jailbreak]]></category>
		<category><![CDATA[Media]]></category>
		<category><![CDATA[Rhythmbox]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://www.geekbin.net/main/?p=243</guid>
		<description><![CDATA[Yep, that&#8217;s right.  Sync&#8217;ed, finally.  It took a little work, and thanks to Marcan and his team of helpers, this can finally be done. The following guide is for gentoo users, but can be tailored to work for any linux OS. I successfully got Rhythmbox and Amarok to play all of the music from my [...]]]></description>
			<content:encoded><![CDATA[<p>Yep, that&#8217;s right.  Sync&#8217;ed, finally.  It took a little work, and thanks to <a href="http://marcansoft.com/blog/2009/10/iphone-syncing-on-linux/" target=new>Marcan</a> and his team of helpers, this can finally be done.  The following guide is for gentoo users, but can be tailored to work for any linux OS.  I successfully got Rhythmbox and Amarok to play all of the music from my iPhone.  </p>
<p>Step 1: First, you need add the Rion overlay from layman.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:750px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"># emerge -va layman<br />
# layman -a rion<br />
# layman -S<br />
# echo `PORTDIR_OVERLAY=&quot;/usr/local/portage/layman/rion&quot;` &gt;&gt; /etc/make.conf<br />
# env-update<br />
# eix-update</div></div>
<p>(if you have a PORTDIR_OVERLAY line already, then just add it manually with your favorite editor)</p>
<p>Step 2: You will need to emerge a couple of packages, if you have them installed, it is best to remove them first, then emerge the new ones.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:750px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"># emerge -C libusb usbmuxd libplist libiphone ifuse</div></div>
<p>You will need the following packages in order for this to work right.  Note that the version DOES matter.  If you have older versions, they need to go, but same or later versions are good.</p>
<ul>
<li>1. dev-libs/libusb-1.0.5
<li>virtual/libusb-1
<li>2. app-pda/ifuse-0.9.4
<li>3. app-pda/libplist-0.16
<li>4. app-pda/libiphone-0.9.4
<li>5. app-pda/usbmuxd-1.0.0_rc2
</ul>
<p>The 9999 packages of any of these really didn&#8217;t work for me, so I suggest masking them out.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:750px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"># echo &quot;=app-pda/libplist-9999&quot; &gt;&gt; /etc/portage/package.mask<br />
# echo &quot;=app-pda/libiphone-9999&quot; &gt;&gt; /etc/portage/package.mask<br />
# echo &quot;=app-pda/ifuse-9999&quot; &gt;&gt; /etc/portage/package.mask<br />
# echo &quot;dev-libs/libusb **&quot; &gt;&gt; /etc/portage/package.keywords<br />
# echo &quot;app-pda/ifuse **&quot; &gt;&gt; /etc/portage/package.keywords<br />
# echo &quot;app-pda/libplist **&quot; &gt;&gt; /etc/portage/package.keywords<br />
# echo &quot;app-pda/libiphone **&quot; &gt;&gt; /etc/portage/package.keywords<br />
# echo &quot;app-pda/usbmuxd **&quot; &gt;&gt; /etc/portage/package.keywords<br />
# emerge -va libusb libiphone ifuse libplist usbmuxd libgpod</div></div>
<p>Additionally, I would make sure that amarok and/or rhythmbox are built with ipod support (USE=&#8221;ipod&#8221;).  Just add the &#8216;ipod&#8217; use flag to your USE line in /etc/make.conf.</p>
<p>Now, we have to create the usbmux user so that usbmuxd will work properly.  You will have to make sure that this user has access to usb and plugdev.  I added wheel too, but it isn&#8217;t necessary.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:750px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"># useradd -G usb,plugdev,wheel -s /bin/bash usbmux</div></div>
<p>Once everything is emerged successfully, you need to test out and make sure that your iphone is being registered when it connects.  First you will have to modify the udev rules so that you can see the output.  Increase the syslog debug level by editing &#8220;/lib/udev/rules.d/85-usbmuxd.rules&#8221; and adding &#8220;-v -v&#8221; flags to the end of both RUN statements.  Now you can run the following and see if usbmuxd is seeing your iphone.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:750px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"># tail -f /var/log/messages<br />
Dec 12 11:39:27 ghost kernel: [450381.899021] usb 2-4: New USB device found, idVendor=05ac, idProduct=1292<br />
Dec 12 11:39:27 ghost kernel: [450381.899024] usb 2-4: New USB device strings: Mfr=1, Product=2, SerialNumber=3<br />
Dec 12 11:39:27 ghost kernel: [450381.899026] usb 2-4: Product: iPhone<br />
Dec 12 11:39:27 ghost kernel: [450381.899028] usb 2-4: Manufacturer: Apple Inc.<br />
Dec 12 11:39:27 ghost kernel: [450381.899030] usb 2-4: SerialNumber: 69a4294a91a56958927f3fafe0086bf90ccd2d2b<br />
Dec 12 11:39:27 ghost kernel: [450381.899134] usb 2-4: usb_probe_device<br />
Dec 12 11:39:27 ghost kernel: [450381.899137] usb 2-4: configuration #1 chosen from 4 choices<br />
Dec 12 11:39:27 ghost kernel: [450381.900385] usb 2-4: adding 2-4:1.0 (config #1, interface 0)<br />
Dec 12 11:39:27 ghost kernel: [450381.900413] usb 2-4:1.0: uevent<br />
Dec 12 11:39:27 ghost kernel: [450381.900485] drivers/usb/core/inode.c: creating file '012'<br />
Dec 12 11:39:27 ghost kernel: [450381.900505] hub 2-0:1.0: state 7 ports 6 chg 0000 evt 0010<br />
Dec 12 11:39:27 ghost kernel: [450381.905696] usb 2-4: usb_disable_device nuking non-ep0 URBs<br />
Dec 12 11:39:27 ghost kernel: [450381.905701] usb 2-4: unregistering interface 2-4:1.0<br />
Dec 12 11:39:27 ghost kernel: [450381.905782] usb 2-4:1.0: uevent</div></div>
<p>If you are seeing your phone come up, then everything was done right.  The last thing to do is mount the phone.  simply use ifuse, and mount it to a specified mount point.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:750px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"># ifuse /mnt/to/location</div></div>
<p>Again, you can now browse the entire filing system, and when you import the music, it should convert so that it isn&#8217;t in the hashed/encrypted form.  Rhythmbox even got the album art.</p>
<p>I am working on how to copy music to the iphone now, so if anyone got that down, please let me know. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.geekbin.net/main/2009/12/iphone-3gs-3-1-2-synced-in-gentoo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
