<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" version="2.0">

<channel>
	<title>Roy Sindre Norangshol</title>
	
	<link>http://www.roysindre.no</link>
	<description>Attracted to computers since I was two..</description>
	<lastBuildDate>Wed, 11 Nov 2009 03:07:03 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/roysindre" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="roysindre" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>dhclient: classless static route, bug?</title>
		<link>http://www.roysindre.no/a/2009/11/05/dhclient-classless-static-route-bug/</link>
		<comments>http://www.roysindre.no/a/2009/11/05/dhclient-classless-static-route-bug/#comments</comments>
		<pubDate>Thu, 05 Nov 2009 00:53:32 +0000</pubDate>
		<dc:creator>norrs</dc:creator>
				<category><![CDATA[/dev/random]]></category>
		<category><![CDATA[121]]></category>
		<category><![CDATA[249]]></category>
		<category><![CDATA[516]]></category>
		<category><![CDATA[5x6]]></category>
		<category><![CDATA[classless static route]]></category>
		<category><![CDATA[csr]]></category>
		<category><![CDATA[dhclient]]></category>
		<category><![CDATA[dhcp]]></category>
		<category><![CDATA[nerdrage]]></category>
		<category><![CDATA[Q&A]]></category>
		<category><![CDATA[question]]></category>
		<category><![CDATA[routing]]></category>
		<category><![CDATA[solved]]></category>
		<category><![CDATA[speedtouch]]></category>
		<category><![CDATA[standard gateway]]></category>
		<category><![CDATA[ubuntu 8.10]]></category>

		<guid isPermaLink="false">https://www.roysindre.no/?p=115</guid>
		<description><![CDATA[Lately (since Ubuntu 9.x) I&#8217;ve had issues with DHCP on my network, not really understanding why my DHCP client never assigned my standard gateway that I&#8217;ve configured my router to give out. Since I&#8217;ve just upgraded my system to Ubuntu 9.10 and problems were still there, I couldn&#8217;t continue to ignore this annoying problem. I [...]]]></description>
			<content:encoded><![CDATA[<p>Lately (since Ubuntu 9.x) I&#8217;ve had issues with DHCP on my network, not really understanding why my DHCP client never assigned my standard gateway that I&#8217;ve configured my router to give out. Since I&#8217;ve just upgraded my system to Ubuntu 9.10 and problems were still there, I couldn&#8217;t continue to ignore this annoying problem. I tried to fire up Google and other search engines to see if I were able to find a solution to the problem, but I couldn&#8217;t find any solution to it, without setting a static network configuration which is NOT a solution. I had to get my hands dirty, and I fired up Wireshark and started digging..<br />
<strong>EDIT: This problem is now solved! <img src='http://www.roysindre.no/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </strong></p>
<p><span id="more-115"></span></p>
<p style="text-align: left">After analyzing the DHCP Offer packet, I notice it hands out a &#8220;Classless Static Route <strong>(Microsoft)</strong>&#8221; (249) which is not defined in the bootp dhcp parameters[1], could this be the cause?</p>
<p style="text-align: center">
<div id="attachment_118" class="wp-caption aligncenter" style="width: 490px"><img class="size-full wp-image-124" src="https://www.roysindre.no/files/2009/11/dhclient-2491.jpg" alt="dhclient-249" width="480" height="374" /><p class="wp-caption-text">CSR 249</p></div>
<p style="text-align: left">I quickly fired up telnet and reconfigured my DHCP pool and flushed all leases on my SpeedTouch 516[2] series modem/router.<br />
Ready for a new Wireshark capture:</p>
<div id="attachment_125" class="wp-caption aligncenter" style="width: 376px"><img class="size-full wp-image-125    " src="https://www.roysindre.no/files/2009/11/dhclient-1211.jpg" alt="dhclient-121" width="366" height="366" /><p class="wp-caption-text">CSR 121</p></div>
<p style="text-align: left">Finally it seems to send the correct DHCP parameters [1], with &#8220;Classless Static Route&#8221; (121)  so my dhclient picks up the standard gateway. I tested renewing my lease a few times together with flushing the dhcp pool table, and <strong>it was working like a charm!</strong></p>
<p style="text-align: center"><strong><br />
</strong></p>
<p style="text-align: left"><strong>Why</strong> would my <span style="text-decoration: underline">SpeedTouch modem/router</span> give out some kind of <strong>Microsoft propiertary</strong>[3] routing configuration, and how did  this happen in the first time? Anyway, I did a quick reboot to Windows 7 to make sure it was still working just fine there, and back to Ubuntu. <strong>Guess what?</strong> I&#8217;m back to the<strong> non-working </strong>dhclient not picking up the gateway information for my network. Wireshark tells me that it started serving out CSR (249) again.</p>
<h2 style="text-align: center"><strong>Conclution:</strong></h2>
<p style="text-align: left">SpeedTouch 516 modem/router seems to have some annoying feature of figuring out which hosts are running Microsoft&#8217;s operating system (assuming Vista and 7, since this never was a problem in XP), and then suddenly switches on how it gives out the &#8220;Classless Static Route&#8221; information. Now why would the router change on using CSR 121 and CSR 249 is out of my league, wireshark shows the same data is sent anyway so I don&#8217;t really get why it switches to a proprietary CSR before it requires some functionality from it. Wouldn&#8217;t it be better that the client requested it in the DHCP Discover/Request?</p>
<h2 style="text-align: center"><strong>Questions, What to do?:</strong></h2>
<p style="text-align: left">Complain to ISP and be allowed to firmware upgrade my modem/router and hope it works?</p>
<p style="text-align: left">If Microsoft proprietary CSR (249) [3]  is used, as far as I understand it shouldn&#8217;t serve CSR 121 information if it is duplicated information, so should dhclient add support for reading &#8220;normal&#8221; CSR (249)&#8217;s from Microsoft? If not, more and more Linux users will fall in the same pitfall that I am now&#8230;</p>
<p style="text-align: left">Configure a low lease time, which will generate a lot of broadcast packages on my network for a dirty solution?</p>
<p style="text-align: left"><strong>I can&#8217;t be the only one which is having this problem</strong>, since most Norwegian ISP&#8217;s hands out these types of modem/routers. <strong><br />
</strong></p>
<h2><strong><span style="color: #ff0000"> Any input anyone?!</span></strong></h2>
<h2 style="text-align: center"><strong><span style="color: #ff0000"><span style="color: #000000">Update &#8211; 11 November 2009 &#8211; I got it working!</span></span></strong></h2>
<p><span style="color: #000000">After some more digging, I figured out that editing dhclient.conf in /etc/dhcp3 (Ubuntu 9.10) and removing &#8220;rfc3442-classless-static-routes&#8221; from the request line, it works as it should and the router uses the default route option in the protocol (option 3). So my request line is now:</span></p>
<pre>request subnet-mask, broadcast-address, time-offset, routers,
 domain-name, domain-name-servers, domain-search, host-name,
 netbios-name-servers, netbios-scope, interface-mtu,
 ntp-servers;</pre>
<h3><strong><strong><span style="color: #ff0000"><span style="color: #000000">If you still have any issues, don&#8217;t hesitate with leaving a comment!<br />
</span></span></strong></strong></h3>
<p>[1] http://www.iana.org/assignments/bootp-dhcp-parameters/<br />
[2] SpeedTouch 516, Flash image : 5.3.1.5.0, Build name  : ZZTVAU5.315<br />
[3] http://social.technet.microsoft.com/Forums/en-US/itprovistanetworking/thread/bfe43ccb-ec6e-4540-ab17-f76b20b715b8/</p>
]]></content:encoded>
			<wfw:commentRss>http://www.roysindre.no/a/2009/11/05/dhclient-classless-static-route-bug/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JavaZone 2009 Talks</title>
		<link>http://www.roysindre.no/a/2009/09/21/javazone-2009-talks/</link>
		<comments>http://www.roysindre.no/a/2009/09/21/javazone-2009-talks/#comments</comments>
		<pubDate>Mon, 21 Sep 2009 07:07:24 +0000</pubDate>
		<dc:creator>norrs</dc:creator>
				<category><![CDATA[/dev/random]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[JavaZone]]></category>
		<category><![CDATA[JavaZone 2009]]></category>
		<category><![CDATA[streaming]]></category>
		<category><![CDATA[talks]]></category>

		<guid isPermaLink="false">https://www.roysindre.no/?p=110</guid>
		<description><![CDATA[If you were as unlucky as me, and couldn&#8217;t attend JavaZone 2009, take a trip over at http://tcs.java.no &#8211; here you have access to stream &#38; download talks from JavaZone 2009 thanks to Tandberg.
NB: If you have issues streaming the  talks in Ubuntu (linux), make sure you use Firefox 3.5, and disable the Windows [...]]]></description>
			<content:encoded><![CDATA[<p>If you were as unlucky as me, and couldn&#8217;t attend JavaZone 2009, take a trip over at <a href="http://tcs.java.no">http://tcs.java.no</a> &#8211; here you have access to stream &amp; download talks from JavaZone 2009 thanks to Tandberg.</p>
<p>NB: If you have issues streaming the  talks in Ubuntu (linux), make sure you use Firefox 3.5, and disable the Windows Media Player addon in Firefox (even thought you might not be able to stream all the talks, you will be able to stream the talks which supports Adobe Flash). At least here at my computer,  totem-plugin-view really wouldn&#8217;t play along and was fighting..</p>
]]></content:encoded>
			<wfw:commentRss>http://www.roysindre.no/a/2009/09/21/javazone-2009-talks/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Debian Lenny (5.0) gone stable!</title>
		<link>http://www.roysindre.no/a/2009/02/15/debian-lenny-gone-stable/</link>
		<comments>http://www.roysindre.no/a/2009/02/15/debian-lenny-gone-stable/#comments</comments>
		<pubDate>Sun, 15 Feb 2009 15:55:29 +0000</pubDate>
		<dc:creator>norrs</dc:creator>
				<category><![CDATA[/dev/random]]></category>
		<category><![CDATA[4D270D06F42584E6]]></category>
		<category><![CDATA[apt-get]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[debian lenny]]></category>
		<category><![CDATA[lenny]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[release]]></category>
		<category><![CDATA[stable]]></category>

		<guid isPermaLink="false">http://www.roysindre.no/?p=97</guid>
		<description><![CDATA[Congratulations for finally releasing Debian Lenny as stable! This sunday will be a great day indeed.
If you encounter this:
W: There is no public key available for the following key IDs:
4D270D06F42584E6
W: You may want to run apt-get update to correct these problems
You can safly ignore it and continune doing a dist-upgrade. This warning should go away [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Congratulations</strong> for finally releasing <strong>Debian Lenny as stable!</strong> This sunday will be a great day indeed.</p>
<p>If you encounter this:</p>
<blockquote><p>W: There is no public key available for the following key IDs:<br />
<em>4D270D06F42584E6</em><br />
W: You may want to run apt-get update to correct these problems</p></blockquote>
<p><strong>You can safly ignore it and continune doing a dist-upgrade.</strong> This warning should go away after the upgrade, since the following key ID is Lenny&#8217;s stable public key which is not yet in use. As for now the etch key is still valid and release is signed with both Etch and Lenny keys and the package debian-archive-keyring is yet to be updated in the etch tree as far as I understand it, so that&#8217;s probably why we get the warning. This has todo with this post on the mailing list:<br />
<a href="http://lists.debian.org/debian-devel-announce/2009/01/msg00008.html">http://lists.debian.org/debian-devel-announce/2009/01/msg00008.html</a></p>
<p>We could import the Lenny key  even if Debian is not officially using it before Etch&#8217;s key has expired or Debian Lenny R1 is released. This is atleast how you fetch the fingerprint of the key ID:</p>
<blockquote><p>gpg &#8211;keyserver wwwkeys.eu.pgp.net &#8211;fingerprint 4D270D06F42584E6<br />
pub   1024D/F42584E6 2008-04-06 [expires: 2012-05-15]<br />
Key fingerprint = 7F5A 4445 4C72 4A65 CBCD  4FB1 4D27 0D06 F425 84E6<br />
uid                  Lenny Stable Release Key &lt;debian-release@lists.debian.org&gt;</p></blockquote>
<p><strong>Verify</strong> the fingerprint towards this page: <a href="http://ftp-master.debian.org/keys.html">http://ftp-master.debian.org/keys.html</a></p>
<p><strong>If they match</strong>, go on and import it:</p>
<blockquote><p>gpg &#8211;keyserver wwwkeys.eu.pgp.net &#8211;recv-keys 4D270D06F42584E6</p></blockquote>
<blockquote><p>gpg &#8211;keyserver wwwkeys.eu.pgp.net &#8211;recv-keys 4D270D06F42584E6<br />
gpg: directory `/root/.gnupg&#8217; created<br />
gpg: can&#8217;t open `/gnupg/options.skel&#8217;: No such file or directory<br />
gpg: keyring `/root/.gnupg/secring.gpg&#8217; created<br />
gpg: keyring `/root/.gnupg/pubring.gpg&#8217; created<br />
gpg: requesting key F42584E6 from hkp server wwwkeys.eu.pgp.net<br />
gpg: /root/.gnupg/trustdb.gpg: trustdb created<br />
gpg: key F42584E6: public key &#8220;Lenny Stable Release Key &lt;debian-release@lists.debian.org&gt;&#8221; imported<br />
gpg: no ultimately trusted keys found<br />
gpg: Total number processed: 1<br />
gpg:               imported: 1</p>
<p>gpg &#8211;armor &#8211;export 4D270D06F42584E6 | apt-key add -</p></blockquote>
<p><strong>Have a nice sunday upgrading! </strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.roysindre.no/a/2009/02/15/debian-lenny-gone-stable/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fix: Can’t connect to MSN with Pidgin or Adium</title>
		<link>http://www.roysindre.no/a/2009/01/12/fix-cant-connect-to-msn-with-pidgin-or-adium/</link>
		<comments>http://www.roysindre.no/a/2009/01/12/fix-cant-connect-to-msn-with-pidgin-or-adium/#comments</comments>
		<pubDate>Mon, 12 Jan 2009 17:23:05 +0000</pubDate>
		<dc:creator>norrs</dc:creator>
				<category><![CDATA[/dev/random]]></category>
		<category><![CDATA[adium]]></category>
		<category><![CDATA[fix]]></category>
		<category><![CDATA[msn]]></category>
		<category><![CDATA[msn broken]]></category>
		<category><![CDATA[pidgin]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[ubuntu 8.10]]></category>
		<category><![CDATA[Unable to retrieve MSN Address Book]]></category>

		<guid isPermaLink="false">https://www.roysindre.no/?p=91</guid>
		<description><![CDATA[It seems like Microsoft has upgraded their MSN Messenger servers, and this seems to have caused that all 3rd party clients are broken.
You probably receive the error message &#8220;Unable to retrieve MSN Address Book&#8221; in Pidgin.
The solution for Ubuntu 8.10 people is to:
apt-get install msn-pecan
Restart pidgin, create a new account and in the drop down [...]]]></description>
			<content:encoded><![CDATA[<p>It seems like Microsoft has upgraded their MSN Messenger servers, and this seems to have caused that all 3rd party clients are broken.</p>
<p>You probably receive the error message &#8220;<strong>Unable to retrieve MSN Address Book</strong>&#8221; in Pidgin.</p>
<p>The solution for Ubuntu 8.10 people is to:</p>
<blockquote><p>apt-get install msn-pecan</p>
<p>Restart pidgin, create a new account and in the drop down list of protocols, choose &#8220;wlm&#8221; for Windows Live Messanger, and plugin in your default/normal MSN account info.</p></blockquote>
<p>This should put you online again..</p>
<p>Sighs, why doesn&#8217;t we all migrate to open standards and use XMPP?</p>
<p><strong>EDIT:</strong> This fix seems to work for most of us, but sadly not everyone. (after what I have observed from comments online at IRC and so on..). <em>It&#8217;s at least worth a try!</em></p>
<p><strong>Adium/Mac users:</strong> Try visit <a href="http://adiumx.com/blog/2009/01/msn-rejecting-adium-132-connections/">http://adiumx.com/blog/2009/01/msn-rejecting-adium-132-connections/</a> for updated information. Solution for now is either to use <a href="http://microsoft.com/mac/products/messenger/">Microsoft&#8217;s Official Messanger Client for Mac</a>, or to use <a href="http://adiumx.cachefly.net/Adium_1.3.1.dmg">Adium 1.31</a>. Anyway, make sure you visit adium&#8217;s own blog to keep updated on the issue!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.roysindre.no/a/2009/01/12/fix-cant-connect-to-msn-with-pidgin-or-adium/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Convert FLAC to MP3 on the fly with mp3fs</title>
		<link>http://www.roysindre.no/a/2008/12/10/convert-flac-to-mp3-on-the-fly-with-mp3fs/</link>
		<comments>http://www.roysindre.no/a/2008/12/10/convert-flac-to-mp3-on-the-fly-with-mp3fs/#comments</comments>
		<pubDate>Wed, 10 Dec 2008 19:01:33 +0000</pubDate>
		<dc:creator>norrs</dc:creator>
				<category><![CDATA[/dev/random]]></category>
		<category><![CDATA[flac]]></category>
		<category><![CDATA[flac to mp3 directly]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[mp3]]></category>
		<category><![CDATA[mp3fs]]></category>
		<category><![CDATA[transcoding]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[ubuntu 8.10]]></category>

		<guid isPermaLink="false">https://www.roysindre.no/?p=72</guid>
		<description><![CDATA[I&#8217;m one of those lunatics who store my music in lovely FLAC lossless format, but sadly enough it&#8217;s not supported in many portable music players (aka mp3 players).
That&#8217;s where MP3FS comes in. MP3FS is a read-only FUSE file system which transcodes FLAC directly to MP3 on the fly when opened and read. So we simply [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m one of those lunatics who store my music in lovely FLAC lossless format, but sadly enough it&#8217;s not supported in many portable music players (aka mp3 players).</p>
<p>That&#8217;s where MP3FS comes in. MP3FS is a read-only FUSE file system which transcodes FLAC directly to MP3 on the fly when opened and read. So we simply pick our FLAC source point, and mount it somewhere else (just like mount binding). Last name on files get automagically renamed as .mp3 files. This is perfect when we need to transfer our beloved music over to a portable music player which is only able to handle MP3 files.</p>
<p>Continue to read more about how to fetch mp3fs and install it..</p>
<p><span id="more-72"></span></p>
<p>Requirements needed for building mp3fs:</p>
<blockquote><p># apt-get install libfuse-dev libflac-dev libmp3lame-dev libid3tag0-dev</p></blockquote>
<p>Other dependencies you need to build it:</p>
<blockquote><p># apt-get install darcs libtool automake1.9 build-essential</p></blockquote>
<blockquote><p># darcs get http://mp3fs.sourceforge.net/mp3fs<br />
Finished getting.<br />
# cd mp3fs/</p></blockquote>
<p>if your interested in viewing the changelog of the project:</p>
<blockquote><p># darcs changes</p></blockquote>
<p>First we need to make the file autogen.sh executable (chmod +x autogen.sh) and run autogen.sh to make you a configure-script. (-j4 since I have a QUAD, 3 if dual core, 2 if normal). Yes &#8211; it is a two hyphen on the prefix, and a single hyphen for the j option. A sweet rule for remembering this is that all single character options is a single hyphen, while every other configure option longer then 1 character is two hyphen <img src='http://www.roysindre.no/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<blockquote><p># ./configure &#8211;prefix=/usr/local<br />
# make -j4<br />
# make install</p></blockquote>
<p>We&#8217;re done and mp3fs is installed. Quoted from the README of mp3fs, this is how you mount your FLAC source:</p>
<blockquote><p>mount your filesystem like this:<br />
(you will probably have to be root)</p>
<p># mp3fs musicdir,bitrate mountpoint [-o fuse_options]</p>
<p>e.g.<br />
# mp3fs /mnt/music,128 /mnt/mp3 -o allow_other,ro</p>
<p>Recent versions of FUSE and mp3fs can be mounted from /etc/fstab using the<br />
following syntax (you must have /sbin/mount.fuse from the fuse-utils package)</p>
<p>mp3fs#/mnt/music,128 /mnt/mp3 fuse ro,allow_other 0  0</p></blockquote>
<p>Editors note: VLC seems to have issues playing these files when it gets transcoded directly for some odd reason, but then again &#8211; who uses VLC to listen to music <img src='http://www.roysindre.no/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.roysindre.no/a/2008/12/10/convert-flac-to-mp3-on-the-fly-with-mp3fs/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Uni-Form Prado repository and project management moved</title>
		<link>http://www.roysindre.no/a/2008/12/06/uni-form-prado-repository-and-project-management-moved/</link>
		<comments>http://www.roysindre.no/a/2008/12/06/uni-form-prado-repository-and-project-management-moved/#comments</comments>
		<pubDate>Fri, 05 Dec 2008 23:00:30 +0000</pubDate>
		<dc:creator>norrs</dc:creator>
				<category><![CDATA[/dev/random]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[Prado]]></category>
		<category><![CDATA[projects]]></category>
		<category><![CDATA[svn]]></category>
		<category><![CDATA[Uni-Form]]></category>
		<category><![CDATA[uniforms]]></category>

		<guid isPermaLink="false">https://www.roysindre.no/?p=68</guid>
		<description><![CDATA[Just a short note about our Uni-Form Prado port:
We have moved it into projects.norrs.no. You will find the project over at
https://projects.norrs.no/projects/show/uniforms and SVN access is available at
https://www.norrs.no/svn/uniforms
]]></description>
			<content:encoded><![CDATA[<p>Just a short note about our Uni-Form Prado port:</p>
<p>We have moved it into <a href="https://projects.norrs.no">projects.norrs.no</a>. You will find the project over at<br />
<a href="https://projects.norrs.no/projects/show/uniforms">https://projects.norrs.no/projects/show/uniforms</a> and SVN access is available at<br />
<a href="https://www.norrs.no/svn/uniforms">https://www.norrs.no/svn/uniforms</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.roysindre.no/a/2008/12/06/uni-form-prado-repository-and-project-management-moved/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Patch: Sociable WordPress Plugin to load pictures from https if browsing with https</title>
		<link>http://www.roysindre.no/a/2008/12/05/patch-sociable-wordpress-plugin-to-load-pictures-from-https-if-browsing-with-https/</link>
		<comments>http://www.roysindre.no/a/2008/12/05/patch-sociable-wordpress-plugin-to-load-pictures-from-https-if-browsing-with-https/#comments</comments>
		<pubDate>Fri, 05 Dec 2008 00:33:34 +0000</pubDate>
		<dc:creator>norrs</dc:creator>
				<category><![CDATA[/dev/random]]></category>
		<category><![CDATA[bookmark]]></category>
		<category><![CDATA[bookmarking]]></category>
		<category><![CDATA[bookmarks]]></category>
		<category><![CDATA[fix]]></category>
		<category><![CDATA[patch]]></category>
		<category><![CDATA[sociable wordpress plugin]]></category>
		<category><![CDATA[social]]></category>
		<category><![CDATA[social bookmarking]]></category>
		<category><![CDATA[social bookmarks]]></category>

		<guid isPermaLink="false">https://www.roysindre.no/?p=49</guid>
		<description><![CDATA[I&#8217;ve made a tiny little patch for Sociable WordPress Plugin I&#8217;m using. I got rather annoyed that it loaded it pictures over http while browsing with https. Plugin will pick up https if you use it in SITE_URL on your WordPress blog, but I don&#8217;t like to bother my visitors with my self-signed certificate, so [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: left">I&#8217;ve made a tiny little patch for <a href="http://yoast.com/wordpress/sociable/">Sociable WordPress Plugin</a> I&#8217;m using. I got rather annoyed that it loaded it pictures over http while browsing with https. Plugin will pick up https if you use it in <strong>SITE_URL</strong> on your WordPress blog, but I don&#8217;t like to bother my visitors with my self-signed certificate, so I only require https to login.</p>
<div id="attachment_50" class="wp-caption alignnone" style="width: 310px"><a href="http://www.roysindre.no/files/2008/12/sociable_https_annoying.png"><img class="size-medium wp-image-50" src="http://www.roysindre.no/files/2008/12/sociable_https_annoying-300x110.png" alt="Sociable loading pictures over http while using https causes this annoying warning in firefox" width="300" height="110" /></a><p class="wp-caption-text">Sociable loading pictures over http while using https causes this annoying warning in Firefox</p></div>
<p style="text-align: left">Save the quoted content below as a random-filename.patch in your sociable plugin directory , make a backup of current sociable.php to sociable.orginal and apply it with patch -p0 &lt; random-filename.patch in your sociable plugin directory.</p>
<p style="text-align: left">Patch:</p>
<blockquote>
<p style="text-align: left">&#8212; sociable.orginal	2008-12-05 00:49:37.000000000 +0100<br />
+++ sociable.php	2008-12-05 01:08:23.000000000 +0100<br />
@@ -33,6 +33,9 @@</p>
<p>// Guess the location<br />
$sociablepluginpath = WP_CONTENT_URL.&#8217;/plugins/&#8217;.plugin_basename(dirname(__FILE__)).&#8217;/';<br />
+if ( isset($_SERVER['SERVER_PORT']) &amp;&amp; $_SERVER['SERVER_PORT']==443){<br />
+	$sociablepluginpath = preg_replace(&#8217;/^http:/&#8217;,'https:&#8217;, $sociablepluginpath);<br />
+}</p>
<p>function sociable_init_locale(){<br />
load_plugin_textdomain(&#8217;sociable&#8217;, $sociablepluginpath);</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.roysindre.no/a/2008/12/05/patch-sociable-wordpress-plugin-to-load-pictures-from-https-if-browsing-with-https/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>How to add self-signed certificates as trusted authority in Subversion</title>
		<link>http://www.roysindre.no/a/2008/12/02/how-to-add-self-signed-certificates-as-trusted-authority-in-subversion/</link>
		<comments>http://www.roysindre.no/a/2008/12/02/how-to-add-self-signed-certificates-as-trusted-authority-in-subversion/#comments</comments>
		<pubDate>Tue, 02 Dec 2008 16:23:38 +0000</pubDate>
		<dc:creator>norrs</dc:creator>
				<category><![CDATA[/dev/random]]></category>
		<category><![CDATA[openssl]]></category>
		<category><![CDATA[subversion]]></category>
		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">https://www.roysindre.no/?p=39</guid>
		<description><![CDATA[Normally when you use svn in a terminal and you check out some source code from a server who uses a self-signed certificate, you always get a prompt if you want to permanent store this certificate as a trusted source.
My problem was with Redmine is browsing my repositories over https and Redmine&#8217;s webserver complaining about [...]]]></description>
			<content:encoded><![CDATA[<p>Normally when you use svn in a terminal and you check out some source code from a server who uses a self-signed certificate, you always get a prompt if you want to permanent store this certificate as a trusted source.</p>
<p>My problem was with Redmine is browsing my repositories over https and Redmine&#8217;s webserver complaining about untrusted certificate. This is rather an easy fix, edit /etc/subversion/servers (or ~/.subversion/servers e.x.) and jump to [global] section and add:</p>
<blockquote><p>[global]<br />
ssl-authority-files = /etc/ssl/geekrevolution/cacert.pem; /some/other/cert-if-needed.pem</p></blockquote>
<p>Thanks to Kevin Miller who have <a title="Kevin Miller's blog entry about self-signed certificates and how you can trust it." href="http://blogs.dovetailsoftware.com/blogs/kmiller/archive/2007/04/12/subversion-and-certificate-authorties.aspx">blogged</a> something interessting on the &#8220;same&#8221; subject. I guess everyone should consider to bookmark this book: <a href="http://svnbook.red-bean.com/">http://svnbook.red-bean.com/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.roysindre.no/a/2008/12/02/how-to-add-self-signed-certificates-as-trusted-authority-in-subversion/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Public and private Mercurial repositories</title>
		<link>http://www.roysindre.no/a/2008/12/02/public-and-private-mercurial-repositories/</link>
		<comments>http://www.roysindre.no/a/2008/12/02/public-and-private-mercurial-repositories/#comments</comments>
		<pubDate>Tue, 02 Dec 2008 15:15:04 +0000</pubDate>
		<dc:creator>norrs</dc:creator>
				<category><![CDATA[/dev/random]]></category>
		<category><![CDATA[apache2]]></category>
		<category><![CDATA[config]]></category>
		<category><![CDATA[hg]]></category>
		<category><![CDATA[mercurial]]></category>
		<category><![CDATA[private repository]]></category>
		<category><![CDATA[public repository]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[redmine]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[scripts]]></category>
		<category><![CDATA[subversion]]></category>
		<category><![CDATA[svn]]></category>
		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">https://www.roysindre.no/?p=32</guid>
		<description><![CDATA[Latest days I&#8217;ve been fighting with installing Redmine (which is a history of it&#8217;s self when your new to Ruby and Rails). Finally I&#8217;ve managed to migrate from Trac to Redmine which is super sweet. You can manage subversion &#38; git (haven&#8217;t tried git yet!) access directly with Redmine by just adding projects members &#8211; [...]]]></description>
			<content:encoded><![CDATA[<p>Latest days I&#8217;ve been fighting with installing Redmine (which is a history of it&#8217;s self when your new to Ruby and Rails). Finally I&#8217;ve managed to migrate from Trac to Redmine which is super sweet. You can manage subversion &amp; git (haven&#8217;t tried git yet!) access directly with Redmine by just adding projects members &#8211; which is lovely! Since I was still playing with my setup, I tried to setup mercurial &#8211; which sadly has no support yet for Redmine&#8217;s Redmine.pm apache module. I did some dirty apache tricks using mod_perl so I can manage HG-repository access with a normal htpasswd file and groups.</p>
<p>You can find my scripts over at: <a href="https://projects.norrs.no/projects/show/scripts">https://projects.norrs.no/projects/show/scripts</a> , or you could just use your favorite mercurial client to clone <a href="https://www.norrs.no/hg/pub/scripts/apache2">https://www.norrs.no/hg/pub/scripts/apache2</a></p>
<p>My next goal when I find some time, is to patch Redmine.pm so we can easily maintain mercurial repositories through Redmine too!</p>
<p>For those who are interested, you can read more to also fetch my apache2 virtual host config which should make it more simple for you to setup and see as an example <img src='http://www.roysindre.no/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p><span id="more-32"></span></p>
<div class="moz-text-plain" style="font-family: -moz-fixed;font-size: 12px" lang="x-western">
<blockquote>
<pre>&lt;VirtualHost 158.38.48.16:80&gt;
	ServerAdmin use_contact@page
	DocumentRoot /var/websites/norrs.no/public_html/
	ServerName norrs.no
	ServerAlias www.norrs.no
	ErrorLog /var/log/apache2/error-norrs.no.log
	TransferLog /var/log/apache2/access-norrs.no.log
	&lt;Directory /var/websites/norrs.no/public_html&gt;
	&lt;/Directory&gt;

	# Redirects to secure area.
	RewriteEngine On
	RewriteRule ^/hg$ https://www.norrs.no/hg/pub$1 [R]
	RewriteRule ^/hg/$ https://www.norrs.no/hg/pub/$1 [R]
	RewriteRule ^/hg/(.*)$ https://www.norrs.no/hg/$1 [R]
	RewriteRule ^/svn/(.*)$ https://www.norrs.no/svn/$1 [R]
	RewriteRule ^/p/(.*)$ https://www.norrs.no/p/$1 [R]

&lt;/VirtualHost&gt;
&lt;VirtualHost 158.38.48.16:443&gt;
	ServerAdmin use_contact@page
	DocumentRoot /var/websites/norrs.no/public_html/
	ServerName www.norrs.no
	ServerAlias norrs.no
        SSLEngine on
        SSLCertificateFile /etc/ssl/geekrevolution/certs/ssl.geekrevolution.net-cert.pem
        SSLCertificateKeyFile /etc/ssl/geekrevolution/private/ssl.geekrevolution.net-key.pem
        SSLCertificateChainFile /etc/ssl/geekrevolution/cacert.pem

	ErrorLog /var/log/apache2/error-norrs.no.log
	TransferLog /var/log/apache2/access-norrs.no.log
	&lt;Directory /var/websites/norrs.no/public_html&gt;
	&lt;/Directory&gt;

	# Redirects
	RewriteEngine on
	RewriteRUle ^/hg/$ https://www.norrs.no/hg/pub/$1 [R]
	RewriteRUle ^/hg$ https://www.norrs.no/hg/pub$1 [R]

	PerlRequire /usr/lib/apache2/Redmine.pm

	Alias /svn /home/projects
	&lt;Location /svn&gt;
		DAV svn
		SVNParentPath "/home/projects/svn"
		AuthType Basic
		AuthName "Projects at norrs.no"
		Require valid-user

		PerlAccessHandler Apache::Authn::Redmine::access_handler
		PerlAuthenHandler Apache::Authn::Redmine::authen_handler
		## for postgres
		PerlSetVar dsn "DBI:Pg:dbname=xxxxx;host=localhost"
		PerlSetVar db_user "xxxxxxxxx"
		PerlSetVar db_pass "xxxxxxxxxx"
		## for mysql
		#RedmineDSN "DBI:mysql:database=databasename;host=my.db.server"
	&lt;/Location&gt;
	  # a private location in read only mode to allow Redmine browsing
	&lt;Location /p/redmine/svn&gt;
		DAV svn
		SVNParentPath "/home/projects/svn"
		Order deny,allow
		Deny from all
		# only allow reading orders
		&lt;Limit GET PROPFIND OPTIONS REPORT&gt;
		Allow from 127.0.0.1
		Allow from 158.38.48.16
		&lt;/Limit&gt;
	&lt;/Location&gt;
	# This could be droped, will keep it for when working on my next goal..
	ScriptAlias /p/redmine/hg/pub /var/hg/hgweb/pub/hgwebdir.cgi
	&lt;Location /p/redmine/hg/pub&gt;
                DirectoryIndex hgwebdir.cgi
                AddHandler cgi-script .cgi
                Options ExecCGI
                Options +FollowSymLinks
		Order deny,allow
		Deny from all
		&lt;Limit GET PROPFIND OPTIONS REPORT&gt;
			Allow from 127.0.0.1
			Allow from 158.38.48.16
		&lt;/Limit&gt;
	&lt;/Location&gt;
	# This could be droped, will keep it for when working on my next goal..
	ScriptAlias /p/redmine/hg/priv /var/hg/hgweb/priv/hgwebdir.cgi
	&lt;Location /p/redmine/hg/priv&gt;
                DirectoryIndex hgwebdir.cgi
                AddHandler cgi-script .cgi
                Options ExecCGI
                Options +FollowSymLinks
		Order deny,allow
		Deny from all

		AuthType Basic
		AuthName "Private repositories for norrs.no"
		AuthUserFile /etc/hg/users
		require valid-user
		# Could limit to a system bot.. for redmine..
		&lt;Limit GET PROPFIND OPTIONS REPORT&gt;
			Allow from 127.0.0.1
			Allow from 158.38.48.16
		&lt;/Limit&gt;
	&lt;/Location&gt;

	ScriptAlias /hg/pub /var/hg/hgweb/pub/hgwebdir.cgi
        &lt;Directory /var/hg/hgweb/pub&gt;
                DirectoryIndex hgwebdir.cgi
                AddHandler cgi-script .cgi
                Options ExecCGI
                Options +FollowSymLinks
                Order allow,deny
                Allow from all
        &lt;/Directory&gt;
	ScriptAlias /hg/priv /var/hg/hgweb/priv/hgwebdir.cgi
        &lt;Directory /var/hg/hgweb/priv&gt;
                DirectoryIndex hgwebdir.cgi
                AddHandler cgi-script .cgi
                Options ExecCGI
                Options +FollowSymLinks
                Order allow,deny
                Allow from all

		AuthType Basic
		AuthName "Private repositories for norrs.no"
		AuthUserFile /etc/hg/users
		require valid-user
	&lt;/Directory&gt;
	# public hg restrictions when it comes to push. Need to be in project group
	# to push.
	&lt;Perl&gt;
		#!/usr/bin/perl
		my $location = "/hg/pub";
		my $hg_url = "norrs.no/hg/pub";
		my $repos_path = "/var/hg/repos/pub";
		my $auser = "/etc/hg/users";
		my $agroups = "/etc/hg/groups";
		my $debug = 0;

		my $repos = `find $repos_path/ -name .hg`;
		$repos =~ s/^$repos_path\/(.+)\/\.hg/$1/mg;
		my @tmp = split("\n",$repos);

		foreach (@tmp) {
			if ($debug) {print "Found HG-repo: $_\n";}
		        $Location{"$location/$_"} = {
		                AuthType =&gt; "Basic",
		                AuthName =&gt; "\"HG authentification for $_ @ $hg_url\"",
		                AuthUserFile =&gt; $auser,
		                AuthGroupFile =&gt; $agroups,
		                Limit =&gt; {
		                        "POST PUT" =&gt; {
		                                require =&gt; "group $_",
		                        }
		                },
		        };
		}
		__END__
	&lt;/Perl&gt;
	# private hg restriction, need to be in project group to be able to view and push.
	&lt;Perl&gt;
		#!/usr/bin/perl
		my $location = "/hg/priv";
		my $hg_url = "norrs.no/hg/priv";
		my $repos_path = "/var/hg/repos/priv";
		my $auser = "/etc/hg/users";
		my $agroups = "/etc/hg/groups";
		my $debug = 0;

		my $repos = `find $repos_path/ -name .hg`;
		$repos =~ s/^$repos_path\/(.+)\/\.hg/$1/mg;
		my @tmp = split("\n",$repos);
		foreach (@tmp) {
		        if ($debug) {print "Found HG-repo: $_\n";}
		        $Location{"$location/$_"} = {
		                AuthType =&gt; "Basic",
		                AuthName =&gt; "\"HG authentification for $_ @ $hg_url\"",
		                AuthUserFile =&gt; $auser,
		                AuthGroupFile =&gt; $agroups,
		                Require =&gt; "group $_",
	        	};
		}
		__END__
	&lt;/Perl&gt;
&lt;/VirtualHost&gt;
&lt;VirtualHost 158.38.48.16:443&gt;
	ServerAdmin use_contact@page
	ServerName projects.norrs.no

	ProxyPreserveHost On

	ProxyPass / http://localhost:3000/
	ProxyPassReverse / http://localhost:3000/
	&lt;Proxy http://localhost:3000&gt;
		Order allow,deny
		Allow from all
	&lt;/Proxy&gt;
	ErrorLog /var/log/apache2/error-norrs.no.log
	TransferLog /var/log/apache2/access-norrs.no.log
&lt;/VirtualHost&gt;
&lt;VirtualHost 158.38.48.16:80&gt;
	ServerAdmin use_contact@page
	ServerName projects.norrs.no
	Redirect permanent / https://projects.norrs.no/
&lt;/VirtualHost&gt;

&lt;VirtualHost 158.38.48.16:80&gt;
	ServerAdmin use_contact@page
	DocumentRoot /var/websites/planet.norrs.no/public_html/
	ServerName planet.norrs.no
	ErrorLog /var/log/apache2/error-norrs.no.log
	TransferLog /var/log/apache2/access-norrs.no.log
	&lt;Directory /var/websites/planet.norrs.no/public_html&gt;
	&lt;/Directory&gt;
&lt;/VirtualHost&gt;</pre>
</blockquote>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.roysindre.no/a/2008/12/02/public-and-private-mercurial-repositories/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sixense TrueMotion 3D Controller, next generation WiiMote?</title>
		<link>http://www.roysindre.no/a/2008/11/26/sixense-truemotion-3d-controller-next-generation-wiimote/</link>
		<comments>http://www.roysindre.no/a/2008/11/26/sixense-truemotion-3d-controller-next-generation-wiimote/#comments</comments>
		<pubDate>Wed, 26 Nov 2008 15:02:47 +0000</pubDate>
		<dc:creator>norrs</dc:creator>
				<category><![CDATA[/dev/random]]></category>
		<category><![CDATA[electromagnetics]]></category>
		<category><![CDATA[fun]]></category>
		<category><![CDATA[gaming]]></category>
		<category><![CDATA[sixense]]></category>
		<category><![CDATA[TrueMotion 3D Controller]]></category>

		<guid isPermaLink="false">https://www.roysindre.no/?p=23</guid>
		<description><![CDATA[I&#8217;ll let the video describe itself, and visit Engineering TV for more details directly from the C.E.O. of Sixense.
[There is a video that cannot be displayed in this feed. Visit the blog entry to see the video.]
]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ll let the video describe itself, and visit <a href="http://engineeringtv.com/blogs/etv/archive/2008/11/24/sixense-truemotion-3d-controller.aspx">Engineering TV</a> for more details directly from the C.E.O. of <a href="http://www.sixense.com/">Sixense</a>.</p>
<p>[There is a video that cannot be displayed in this feed. <a href="http://www.roysindre.no/a/2008/11/26/sixense-truemotion-3d-controller-next-generation-wiimote/">Visit the blog entry to see the video.]</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.roysindre.no/a/2008/11/26/sixense-truemotion-3d-controller-next-generation-wiimote/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
