<?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>Scarabeus&#039; blag</title>
	<atom:link href="http://blogs.gentoo.org/scarabeus/feed/" rel="self" type="application/rss+xml" />
	<link>http://blogs.gentoo.org/scarabeus</link>
	<description>Random stuff you probably never wanted to hear about</description>
	<lastBuildDate>Fri, 08 Mar 2013 13:57:44 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>Prague Installfest results</title>
		<link>http://blogs.gentoo.org/scarabeus/2013/03/08/prague-installfest-results/#utm_source=feed&#038;utm_medium=feed&#038;utm_campaign=feed</link>
		<comments>http://blogs.gentoo.org/scarabeus/2013/03/08/prague-installfest-results/#comments</comments>
		<pubDate>Fri, 08 Mar 2013 13:37:52 +0000</pubDate>
		<dc:creator>scarabeus</dc:creator>
				<category><![CDATA[Gentoo Stuff]]></category>

		<guid isPermaLink="false">http://blogs.gentoo.org/scarabeus/?p=700</guid>
		<description><![CDATA[Last weekend (2.-3.3. 2013) we had a lovely conference here in Prague. People could attend to quite few very cool talks and even play OpenArena tournament :-) Anyway that ain&#8217;t so interesting for Gentoo users. The cool part for us &#8230; <a href="http://blogs.gentoo.org/scarabeus/2013/03/08/prague-installfest-results/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Last weekend (2.-3.3. 2013) we had a <a href="http://installfest.cz/if13/program">lovely conference</a> here in Prague. People could attend to quite few very cool talks and even play OpenArena tournament :-) Anyway that ain&#8217;t so interesting for Gentoo users. The cool part for us is the Gentoo track that I tried to assemble in there and which I will try to describe here.</p>
<h2>Setup of the venue</h2>
<p>This was easy task as I borrowed computer room in the dormatories basement which was large enough to hold around 30 students. I just carried in my laptop, checked the beamer works. Ensured the chairs are not falling apart and replaced the broken ones. Verified the wifi works (which it did not but the admins made it working just in time). And for last brought some drinks from main track so we do not dry out.</p>
<p>The classroom was in bit different area than the main track I tried to put some arrows for people to find the place. But when people started getting in and calling me where the hell is the place I figured out something is wrong. This pointy was then adjusted but still it shows up that we should rather not split of the main tracks or ensure there are HUGE and clear arrows pointing in directions where people can find us.</p>
<h2>Talks</h2>
<p>During the day there were only three talks, two held by me and one that was not on the plan done by Theo.</p>
<h3>Hardened talk</h3>
<p>I was supposed to start this talk at 10:00 but given the issue with the arrows people showed up around 10:20 so I had to cut back some informations and live examples.<br />
Anyway I hope it was interesting hardened overview and at least Petr Krcmar wrote lots of stuff so we maybe will se some articles about it in czech media (something like &#8220;How I failed to install hardened Gentoo&#8221; :P).</p>
<h3>Gentoo global stuff</h3>
<p>This was more discussion about features than talk. The users were pointing out what they would like to see happening in Gentoo and what were their largest issues lately.</p>
<p>From issues people pointed out the broken udev update which rendered some boxes non-bootable (yes there was message but they are quite easy to overlook, I forgot to do it on one machine myself). Some sugesstions went for genkernel to actually trigger rebuild of kernel right away in post stage for user with the enabled required options. This sounds like quite nice idea, as since you are using genkernel you probably want your kernel automatically adjusted and updated for the cases where the apps require option additions. As I am not aware of the genkernel stuff I told the users to open bug about this.</p>
<p>Second big thing we were talking about were binary packages. The idea was to have some tinderbox which produce generic binary packages available for most useflag variants. So you could specify -K and it would use the binary form or if not provided compiled localy. For this the most work would need to be done on portage side because we would have to somehow figure out multiple versions of the same package with different enabled uses.</p>
<h3>Infra talk</h3>
<p>Theo did awesome job explaining how infra uses puppet and what services and servers we have. This was on-demand talk which people that were on-site wanted.</p>
<h2>Hacking &#8212; aka stuff that we somehow did</h2>
<p>Martin &#8220;plusky&#8221; Pluskal (SU) went over our prehistoric bugs from 2k5 and 2k6 and created list of cantfix ones which are no longer applicable or are new pkg requests with dead upstream. I still have to close them or give him editbugz privs (this sounds more like it as I am lazy like hell, or better make him developer :P).<br />
Ondrej Sukup (ACR) attending over hangout worked on python-r1 porting and I commited his work to cvs.<br />
Cyril &#8220;metan&#8221; Hrubis (SU) worked on crossdev on some magic avr bug I don&#8217;t want to hear much about but he seems optimistic that he might finish the work in near future.<br />
David Heidelberger worked first on fixing bugs with his lappy and then helped on the bug wrangling with Martin.<br />
Jan &#8220;yac&#8221; Matejka (SU) finished his quizzes and thus he got shiny bug and is now in lovely hands of our recruiters to became our newest addition to the team.<br />
Michal &#8220;miska&#8221; Hrusecky (SU) worked on update of osc tools update to match latest we have in opensuse buildservice and he plans to commit them soonish to cvs.<br />
Pavel &#8220;pavlix&#8221; Simerda (RH) who is the guy responsible for latest networkmanager bugs expressed his intentions to became dev and I agreed with him<br />
Tampakrap (SU) worked on breaking one laptop with fresh install of Gentoo, which I then picked up and finished with some nice KDE love :-)<br />
Amy Winston helped me a lot with setup for the venue and also kept us with Theo busy breaking her laptop, which I hope she is still happily using and does not want to kill us, other then that she focused on our sweet bugzie and wrangling. She seems not willing to finish her quizzes to became full developer, so we will have work hard on that in the future :-)<br />
And lastly I (SU) helped users with issues they had on their local machines and explained how to avoid those or report directly to bugzie with relevant informations and so on.</p>
<p>In case you wonder SU = SUSE ; RH = RedHat; ACR = Armed forces CR.</p>
<p>For the future events we have to keep in mind that we need to better setup those and have prepared small buglists rather then wide-range ones where people spend more time picking ideal work than working on those :-)</p>
<h2>Lunch/Afterparty</h2>
<p>The lunch and the afterparty were done in nice pub nearby which had decent food and plenty of beer so everyone was happy. The only problem was that it take some waiting to get the food as suddenly there were 40 people in the pub (I still think this could&#8217;ve been somehow prepared so they had only limited subset of foods really fast so you can choose between waiting a bit or picking something and going back fast).</p>
<p>During the night one of Gentoo attendees got quite drunk and had to be delivered home by other ogranizers as I had to leave bit early (being up from 5 am is not something I fancy).<br />
The big problem here was with the location where one should put him, because he was not able to talk and his ID contained residency info for different city. So for the next time when you go for linux event where you don&#8217;t know much put into your pockets some paper with the address. It is superconvenient and we don&#8217;t have to bother your parents at 1 am to find out what to do with their &#8220;sweet&#8221; child.</p>
<h2>Endword</h2>
<p>I would like to say huge thanks to all attendees for making the event possible and also appologize for everything I frogot to mention here.</p>
]]></content:encoded>
			<wfw:commentRss>http://blogs.gentoo.org/scarabeus/2013/03/08/prague-installfest-results/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Libav going to be default provider for your codec experience</title>
		<link>http://blogs.gentoo.org/scarabeus/2013/01/15/libav-going-to-be-default-provider-for-your-codec-experience/#utm_source=feed&#038;utm_medium=feed&#038;utm_campaign=feed</link>
		<comments>http://blogs.gentoo.org/scarabeus/2013/01/15/libav-going-to-be-default-provider-for-your-codec-experience/#comments</comments>
		<pubDate>Tue, 15 Jan 2013 17:28:32 +0000</pubDate>
		<dc:creator>scarabeus</dc:creator>
				<category><![CDATA[Gentoo Stuff]]></category>

		<guid isPermaLink="false">http://blogs.gentoo.org/scarabeus/?p=682</guid>
		<description><![CDATA[UPDATE: Added some basic migration instructions to the bottom. UPDATE2: Removed mplayer incompatibility mention. Mplayer-1.1 works with system libav. As the summary says the default media codec provider for new installs will be libav instead of ffmpeg. This change is &#8230; <a href="http://blogs.gentoo.org/scarabeus/2013/01/15/libav-going-to-be-default-provider-for-your-codec-experience/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>UPDATE: Added some basic migration instructions to the bottom.<br />
UPDATE2: Removed mplayer incompatibility mention. Mplayer-1.1 works with system libav.</p>
<p>As the summary says the default media codec provider for new installs will be libav instead of ffmpeg.</p>
<p>This change is being done due to various reasons like matching default with Fedora and Debian, or due to fact that some projects which are high-profile (eg sh*tload of people use them) will be probably libav only. One example being gst-libav which is in return required by libreoffice-4 which is due release in about month. To go for least pain for the user we decided to move from default ffmpeg to default libav library.</p>
<p>This change won&#8217;t affect your current installs at all but we would like to ask you to try to migrate to the libav and test and report any issues. So if stuff happen in the future and we are forced to throw libav as only implementation for everyone you are not left in the dark screaming for your suddenly missing features.</p>
<h2>What to do when some package does not build with libav but ffmpeg is fine</h2>
<p>There are no such packages left around if I am searching correctly (might be my blindness so do not take my word for it).</p>
<p>So if you encounter any package not building with libav just open bugreport on bugzilla and assign it to media-video team and add lu_zero[at]gentoo.org to CC to be sure he really takes a sneaky look to fix it. If you want to fix the issue yourself it gets even better. You write the patch open the bug in our bugzie and someone will include it. Also the patch should be sent to upstream for inclusion, so we don&#8217;t have to keep the patches in tree for long time.</p>
<h2>What should I do when I have some issues with libav and I require more features that are on ffmpeg but not on libav</h2>
<p>Its easier than fixing bugs about failing packages. Just nag to lu_zero (mail hidden somewhere in this post ;-)) and <a href="http://libav.org/bugreports.html">read this</a>.</p>
<h2>So when is this stuff going to ruin my day?</h2>
<p>The switch in the tree and news item informing all users of media-video/ffmpeg will be created at the end of the January or early February, unless something really bad happens while you guys test it now.</p>
<h2>I feel lucky and I want to switch right away so I can ruin your day by reporting bugs</h2>
<p>Great I am really happy you want to contribute. The libav switch is pretty easy to be done as there are only 2 things to keep in mind.</p>
<p>You have to sync your useflags between virtual/ffmpeg and the newly-to-be-switched media-video/libav. This is most probably best to do just edit your package.use stuff and replace the media-video/ffmpeg line with media-video/libav one.</p>
<p>Then one would go straight away for emerge libav but there is one more caveat. Libav has split libpostproc library while ffmpeg still is using the internal one. Code wise they are most probably equal but you have to take account for it so just call emerge with both libraries.<br />
<code>emerge -1v libav libpostproc</code></p>
<p>If this succeeds you have to revdep-rebuild the packages you have or use @preserved-rebuild from portage-2.2 to rebuild all the RDEPENDS of libav.</p>
<p>Good luck and happy bug hunting.</p>
]]></content:encoded>
			<wfw:commentRss>http://blogs.gentoo.org/scarabeus/2013/01/15/libav-going-to-be-default-provider-for-your-codec-experience/feed/</wfw:commentRss>
		<slash:comments>32</slash:comments>
		</item>
		<item>
		<title>Libreoffice 4.0 and other cool stuff</title>
		<link>http://blogs.gentoo.org/scarabeus/2012/12/01/libreoffice-4-0-and-other-cool-stuff/#utm_source=feed&#038;utm_medium=feed&#038;utm_campaign=feed</link>
		<comments>http://blogs.gentoo.org/scarabeus/2012/12/01/libreoffice-4-0-and-other-cool-stuff/#comments</comments>
		<pubDate>Sat, 01 Dec 2012 12:47:33 +0000</pubDate>
		<dc:creator>scarabeus</dc:creator>
				<category><![CDATA[Gentoo Stuff]]></category>

		<guid isPermaLink="false">http://blogs.gentoo.org/scarabeus/?p=675</guid>
		<description><![CDATA[During the following week there will be hard feature freeze on libreoffice and 4.0 branch will be created. This means that we can finally start to do some sensible stuff, like testing it like hell in Gentoo. This release is &#8230; <a href="http://blogs.gentoo.org/scarabeus/2012/12/01/libreoffice-4-0-and-other-cool-stuff/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>During the following week there will be hard feature freeze on libreoffice and 4.0 branch will be created. This means that we can finally start to do some sensible stuff, like testing it like hell in Gentoo.</p>
<p>This release is packed with new features so let me list at least some relevant to our Gentoo stuff:</p>
<ul>
<li>repaired nsplugin interface (who the hell uses it :P) that was fixed by Stephan Bergmann for wich you ALL guys should sent him some cookies :-)</li>
<li>liblangtag direct po/mo usage that ensures easier translations usage because the translations are not converted in to internal sdf format</li>
<li>liborcus library debut which brings out some features from calc to nice small lib so anyone can reuse them, plus it is easier to maintain, cookies to Kohei Yoshida</li>
<li>bluetooth remote control that allows you to just mess with your presentations over bluetooth, also there is android remote app for that over network ;-)</li>
<li>telepathy colaboration framework inclusion that allows you to mess with mutiple other people on one document in semi-realtime manner (it is mostly tech preview and you don&#8217;t see what is the other guy doing, it just appears in the doc)</li>
<li>binfilter is gone! Which is awesome as it was huge load of code that was really stinky</li>
</ul>
<p>For more changes you can just <a href="http://wiki.documentfoundation.org/ReleaseNotes/4.0">read the wiki article</a>, just keep in mind that this wiki page will be updated until the release, so it does not contain all the stuff.</p>
<h2>Build related stuff</h2>
<ul>
<li>We are going to require new library that allows us to parse mspub format. Fridrich Strba was obviously bored so he wrote yet another format parser :-)</li>
<li>Pdfimport is no longer pseudo-extension but it is directly built in with normal useflag, which saves quite a lot of copy&#038;paste code and it looks like it operates faster now.</li>
<li>The openldap schema provider is now hard-required so you can use adresbooks (Mork driver handles that). I bet some of you lads wont like this much, but ldap itself does not have too much deps and it is usefull for quite few business cases.</li>
<li>There are also some nice removals, like glib and librsvg are goners from default reqs (no-suprise for gnomers that they will still need them). From other it no longer needs the sys-libs/db, which I finally removed from my system.</li>
<li>Gcc requirement was raised to 4.6, because otherwise boost acts like *censored* and I have better stuff to do than just fix it all the time.</li>
<li>Saxon buindling has been delt with and removed completely.</li>
<li>Paralel build is sorted out so it will  use correct amount of cpus and will fork gcc only required times not n^n times.</li>
<li>And last but most probably worst, the plugin foundation that was in java is slowly migrating to python, and it needs python:3.3 or later. This did not make even me happy :-)</li>
</ul>
<h2>Other fancy libreoffice stuff</h2>
<p>Michel Meeks is running merges against the Apache Openoffice so we try hard to get even fixes that are not in our codebase (thankfully allowed by license this way). So with lots of efforts we review all their code changes and try to merge it over into our implementation. This will grow more and more complex over a time, because in libo we actually try to use the new stuff like new C++ std/Boost/&#8230; so there are more and more collisions. Lets see how long it will be worth it (of course oneliners are easy to pick up :P).</p>
<h2>What is going in stable?</h2>
<p>We at last got libreoffice-3.6 and binary stable. After this there was found svg bug with librsvg (see above, its gone from 4.0) so the binaries will be rebuilt and next version bump will loose the svg useflag. This was caused by how I wrote the detection of new switches and overlook on my side, I simply tried to just launch the libreo with -svg and didn&#8217;t dig further. Other than that the whole package is production ready and there should not be much new regressions.</p>
]]></content:encoded>
			<wfw:commentRss>http://blogs.gentoo.org/scarabeus/2012/12/01/libreoffice-4-0-and-other-cool-stuff/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Open build service client tools are fully available in Gentoo</title>
		<link>http://blogs.gentoo.org/scarabeus/2012/11/17/open-build-service-client-tools-are-fully-available-in-gentoo/#utm_source=feed&#038;utm_medium=feed&#038;utm_campaign=feed</link>
		<comments>http://blogs.gentoo.org/scarabeus/2012/11/17/open-build-service-client-tools-are-fully-available-in-gentoo/#comments</comments>
		<pubDate>Sat, 17 Nov 2012 13:54:49 +0000</pubDate>
		<dc:creator>scarabeus</dc:creator>
				<category><![CDATA[Gentoo Stuff]]></category>

		<guid isPermaLink="false">http://blogs.gentoo.org/scarabeus/?p=671</guid>
		<description><![CDATA[Few days ago I finished fiddling with open build service (obs) packages in our main tree. Now when anyone wants to mess up with obs he just have to emerge dev-util/osc and have the fun with it. What the hell &#8230; <a href="http://blogs.gentoo.org/scarabeus/2012/11/17/open-build-service-client-tools-are-fully-available-in-gentoo/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Few days ago I finished fiddling with open build service (obs) packages in our main tree. Now when anyone wants to mess up with obs he just have to emerge dev-util/osc and have the fun with it.<br />
<span id="more-671"></span></p>
<h2>What the hell is obs?</h2>
<p>OBS is pretty cool service that allows you to specify how to build your package and its dependencies in one .spec file where you can deliver the results to multiple archs/distros and not care about how it happens (Debian, SUSE, Fedora, CentOS, Archlinux).</p>
<p><a href="https://build.opensuse.org/">Primary implementation</a> is running for SUSE and it is free to use by anyone (eg. you don&#8217;t have to build suse packages there if you don&#8217;t want to :P). It has two ways how to interact with the whole tool, one is the web application, which is really PITA and the other is the osc command line tool I finished fiddling with.</p>
<h2>Okay so why did you do it?</h2>
<p>Well I work at SUSE and we are free to use whatever distro we want while being able to complete our taks. I like to improve stuff I want to be able fix bugs in SLE/openSUSE while not having any chroot/virtual with the named system installed, for such task this works pretty well :-)</p>
]]></content:encoded>
			<wfw:commentRss>http://blogs.gentoo.org/scarabeus/2012/11/17/open-build-service-client-tools-are-fully-available-in-gentoo/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Why I don&#8217;t like Android so much</title>
		<link>http://blogs.gentoo.org/scarabeus/2012/10/10/why-i-dont-like-android-so-much/#utm_source=feed&#038;utm_medium=feed&#038;utm_campaign=feed</link>
		<comments>http://blogs.gentoo.org/scarabeus/2012/10/10/why-i-dont-like-android-so-much/#comments</comments>
		<pubDate>Wed, 10 Oct 2012 10:47:41 +0000</pubDate>
		<dc:creator>scarabeus</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blogs.gentoo.org/scarabeus/?p=661</guid>
		<description><![CDATA[Or better why I don&#8217;t like basically all phone/tablet OSes. But as I am having most stuff on droid I have most issues with it. So lets take look why I don&#8217;t like the thing and what annoys me a &#8230; <a href="http://blogs.gentoo.org/scarabeus/2012/10/10/why-i-dont-like-android-so-much/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Or better why I don&#8217;t like basically all phone/tablet OSes. But as I am having most stuff on droid I have most issues with it.</p>
<p>So lets take look why I don&#8217;t like the thing and what annoys me a lot.<br />
<span id="more-661"></span></p>
<h2>Vendor support</h2>
<p>Nowadays when you buy your computer or anything else it gets more often morally old rather than out of scope. This means your HW is capable of doing all taks you would expect from it, but you are upgrading anyway for some small advantage (usually less watt consumption and so on). If you would decide to keep your old hardware and not to upgrade you should be pretty fine with getting all the fancy and shiny updates both for features and security fixes.</p>
<p>Just for simple test you can grab some old P4 1GHz cpu and give it latest Windows and it will install and boot (and probably behave way better than the Windows ME you bought with it in first place :D) the same applies here with running latest linux distros. So what am I proving here is that when you take computer hw from year 2000 you still get it running with most of the stuff secured and supported if you want to.</p>
<p>With the Android the situation is completely different. Each vendor (HTC, Samsung, Motorola) has its own branded version of Android where they are providing their updates only. By providing I mean you get lucky if you get one year of some semi-updates and maybe even one version bump if you are super lucky (eg 1.6 -> 2.2). This leaves you with hardware which have more computing power than the above mentioned P4 first generation without any chance to use software that can ensure your safety (malware, viruses, etc.) and usefulness (bugfixes, meh for restarting tablet every 2 hours when watching youtube). So you as consumer are in situation when you HAVE to buy a new phone if you want to be safe.</p>
<p>One can always buy the Google branded phones/tablets where the support is bit better, those machines get the updates for 2 years before you have to throw them away for new model (which is most ideal for american customer that gets new phone every two years for contract renewal) but still compared to laptops and PCs its huge waste of working resources.</p>
<p>The vendor not providing support is not such big deal by default if all their patches were included into the android core and drivers so anyone (eg. Cyanogenmod) would be able to just pick up where they stop and provide you support with their release. But on quite some HW it is not possible. Samsung does not provide drivers, Motorola locks bootloader (Yay and they are even bought by Google!)&#8230;</p>
<h2>Multiuser support</h2>
<p>Or actually no multiuser support at all.</p>
<p>On a phone it is not such biggie as you mostly don&#8217;t allow other people to mess with your phone but on tablet the situation is completely different. You want your kids or other relatives to mess with the thing and play some angry birds or whatever else they have full access to your contacts, history, credit card (if you used the play to buy something).</p>
<p>So basically the user management situation is similar to time around Windows 98 where there was just one login on the computer and everyone in family used that.</p>
<p>Instead of having nice and contained space for your own browsing history, naughty photos of your girlfriend, credit card data, contacts, &#8230; everything is meshed up together and you can&#8217;t ensure your own privacy there.</p>
<p>The only way out of this is probably looking forward to Vivaldi tablet (the KDE one, not sure if this is still the name) or buy one tablet per person.</p>
<h2>Mutitasking</h2>
<p>Android basically does not work in normal mutlitasking environment one is used to know from desktop computers. The core reason for this used to be not having enough RAM (really pointless at the point the devices have 1-2GB+).</p>
<p>So normaly everything you start is opened and runs in your background where you can switch between those up to the point you get out of memory. Then the unused processes start to be closed. This can be worked around by using some task manager to kill the apps you want to kill and not those least used, but it is external app and not system solution.</p>
<p>Also in some cases as android is separating the term app and process and multiple launched apps can share one process if you hang one you shoot down everything :-)</p>
<h2>Summary</h2>
<p>So that are the 3 itches I personaly have on Android. Let me know how do you feel about the platform in comments as I am interested how it is perceived by others. Maybe I am just paranoid or something&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://blogs.gentoo.org/scarabeus/2012/10/10/why-i-dont-like-android-so-much/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Running owncloud on Gentoo stable</title>
		<link>http://blogs.gentoo.org/scarabeus/2012/08/26/running-owncloud-on-gentoo-stable/#utm_source=feed&#038;utm_medium=feed&#038;utm_campaign=feed</link>
		<comments>http://blogs.gentoo.org/scarabeus/2012/08/26/running-owncloud-on-gentoo-stable/#comments</comments>
		<pubDate>Sun, 26 Aug 2012 18:51:02 +0000</pubDate>
		<dc:creator>scarabeus</dc:creator>
				<category><![CDATA[Gentoo Stuff]]></category>

		<guid isPermaLink="false">http://blogs.gentoo.org/scarabeus/?p=651</guid>
		<description><![CDATA[As I migrated to clean data layout (see previous post) I decided to be cool&#038;trendy guy and fire up my own lovely cloudy service. First my thinking was bit off regular setup, because even if we have in-tree ebuild of &#8230; <a href="http://blogs.gentoo.org/scarabeus/2012/08/26/running-owncloud-on-gentoo-stable/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>As I migrated to clean data layout (see previous post) I decided to be cool&#038;trendy guy and fire up my own lovely cloudy service.</p>
<p>First my thinking was bit off regular setup, because even if we have in-tree ebuild of owncloud it hard-requires apache, which I find overkill here.</p>
<p>So I introduce you to secret approach how to make it work with ngnix and sqlite3. Before you say that I should use *insertothercooldbname* please think of that my deployment is only for handfull users and I tested it with 5 users connected at once each of them having access to 1 tb shared datastore and it proven fast enough.</p>
<h2>Preparing keywords/useflags/etc</h2>
<p>Well owncloud is testing, so unmask it:</p>
<pre>scarabeus@htpc: /etc/portage $ cat package.keywords/own-cloud
www-apps/owncloud</pre>
<p>We need dav for direct access and php stuff for the setup (some useflags might be useless or redundant):</p>
<pre>scarabeus@htpc: /etc/portage $ cat package.use/own-cloud
dev-lang/php pdo sqlite3 curl xmlwriter gd truetype cgi force-cgi-redirect fpm
www-servers/nginx nginx_modules_http_dav</pre>
<p>Now silently punt the apache away as we love nginx:</p>
<pre>scarabeus@htpc: /etc/portage $ cat make.profile/package.provided
virtual/httpd-php-5.4</pre>
<p>And put all this to good use by emerging required stuff:</p>
<pre>emerge -v www-servers/nginx www-apps/owncloud</pre>
<h2>Setting up the stuff</h2>
<p>As nginx does not have any fcgi we will use the fpm from php directly. For that we need to add it to runlevel <code>rc-update add php-fpm default</code> and set up a bit default number of spawned servers (config is in <code>/etc/php/fpm-php5.4/php-fpm.conf</code>). Also remeber to set there proper user/group there, or you won&#8217;t be able to store content in your cloud, just read from it.</p>
<p>Then we set up the nginx (<code>/etc/nginx/nginx.conf</code> and <code>/etc/nginx/fastcgi_params</code>). To keep this short and easy I will just post the config I used and let you to google for other nginx variables.<br />
First the conf file:</p>
<pre>        server {
                listen 80;
                server_name hostname;
                rewrite ^ https://$server_name$request_uri? permanent;  # enforce https
        }

        server {
                listen 443;
                server_name hostname;

                ssl on;
                ssl_certificate /etc/ssl/nginx/nginx.crt;
                ssl_certificate_key /etc/ssl/nginx/nginx.key;

                access_log /var/log/nginx/htpc.access_log main;
                error_log /var/log/nginx/htpc.error_log info;

                root /var/www/htpc/htdocs/owncloud/;

                client_max_body_size 8M;
                create_full_put_path on;
                dav_access user:rw group:rw all:r;

                index index.php;

                location ~ ^/(data|config|\.ht|db_structure\.xml|README) {
                        deny all;
                }

                location / {
                        rewrite ^/.well-known/host-meta /public.php?service=host-meta last;
                        rewrite ^/.well-known/carddav /remote.php/carddav/ redirect;
                        rewrite ^/.well-known/caldav /remote.php/caldav/ redirect;
                        rewrite ^/apps/calendar/caldav.php /remote.php/caldav/ last;
                        rewrite ^/apps/contacts/carddav.php /remote.php/carddav/ last;
                        rewrite ^/apps/([^/]*)/(.*\.(css|php))$ /index.php?app=$1&#038;getfile=$2 last;
                        rewrite ^/remote/(.*) /remote.php/$1 last;

                        try_files $uri $uri/ @webdav;
                }

                location @webdav {
                        fastcgi_split_path_info ^(.+\.php)(/.*)$;
                        fastcgi_pass 127.0.0.1:9000;
                        include fastcgi_params;
                        fastcgi_param HTTPS on;
                }

                location ~* ^.+.(jpg|jpeg|gif|bmp|ico|png|css|js|swf)$ {
                        expires 30d;
                        access_log off;
                }

                location ~ \.php$ {
                        fastcgi_split_path_info ^(.+\.php)(/.*)$;
                        fastcgi_pass 127.0.0.1:9000;
                        include fastcgi_params;
                        fastcgi_index index.php;
                        fastcgi_intercept_errors on;
                        try_files $uri =404;
                }
        }
</pre>
<p>For the fcgi we also need some params to make the webdav work:</p>
<pre>fastcgi_param   SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param   SCRIPT_NAME     $fastcgi_script_name;
fastcgi_param   PATH_INFO       $fastcgi_path_info;</pre>
<p>That should be it, now we just deploy the owncloud to our webserver by webapp-config:</p>
<pre>/usr/sbin/webapp-config -I -h htpc -u root -d /owncloud owncloud 4.0.7</pre>
<p>After we start up the webserver and fcgi provider, we should be up and running to open the stuff in web browsers.</p>
<h2>Few issues I didn&#8217;t manage to sort out in owncloud</h2>
<ul>
<li>External module to load all system users into it does not pass the auth</li>
<li>Google sync just timeouts everytime I try it (I maybe have just damn huge content here)</li>
<li>External storage support from within owncloud didn&#8217;t work for me, I just symlinked the data folder to the proper places under each user and logged into them in browser, then waited for 3 hours (1tb of data to index) and they were able to access everything.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blogs.gentoo.org/scarabeus/2012/08/26/running-owncloud-on-gentoo-stable/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Migrating disk layout from mess to raid1</title>
		<link>http://blogs.gentoo.org/scarabeus/2012/08/23/migrating-disk-layout-from-mess-to-raid1/#utm_source=feed&#038;utm_medium=feed&#038;utm_campaign=feed</link>
		<comments>http://blogs.gentoo.org/scarabeus/2012/08/23/migrating-disk-layout-from-mess-to-raid1/#comments</comments>
		<pubDate>Thu, 23 Aug 2012 11:46:13 +0000</pubDate>
		<dc:creator>scarabeus</dc:creator>
				<category><![CDATA[Gentoo Stuff]]></category>

		<guid isPermaLink="false">http://blogs.gentoo.org/scarabeus/?p=641</guid>
		<description><![CDATA[Imagine you are dumb guy like me, first what I did was to set up 3 1TB disks into one huge LVM copied data on it and then found out that grub2 needs more free space before the first partition &#8230; <a href="http://blogs.gentoo.org/scarabeus/2012/08/23/migrating-disk-layout-from-mess-to-raid1/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Imagine you are dumb guy like me, first what I did was to set up 3 1TB disks into one huge LVM copied data on it and then found out that grub2 needs more free space before the first partition to be able to load the LVM module and boot. For a while I solved this with external USB token plugged in the motherboard. But I said no more!</p>
<p>I bought two 3TB disks to deal with the situation, and this time I decided to do everything right and add UEFI boot instead of normal good old booting.</p>
<h2>Disk layout</h2>
<pre>Model: ATA ST3000VX000-9YW1 (scsi)
Disk /dev/sda: 3001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system  Name     Flags
 1      17.4kB  512MB   512MB   fat32        primary
 2      512MB   20.0GB  19.5GB               primary
 3      20.0GB  30.0GB  9999MB  xfs          primary
 4      30.0GB  3001GB  2971GB  xfs          primary</pre>
<p>So as you can see I created 4 partitions. First is special case and it must be always created for EFI boot. Create it larger than 200 megs, up to 500, which should be enough for everyone.</p>
<p>The disk layout must be set up in parted as we want GPT layout (just google how to do it, it is damn easy to use), It accept both values like 1M, 1T and percetage like 4% to specify the resulting partition size.</p>
<h2>Setting up the RAID</h2>
<p>We just create simple nodes and plug /dev/sda2-4 and /dev/sdb2-4 to them. Prior creating the RAID make sure you have RAID support in your kernel.</p>
<pre>for i in {2..4}; do mknod /dev/md${i} b 9 ${i}; mdadm --create /dev/md${i} --level=1 --raid-devices=2 /dev/sda${i} /dev/sdb${i}; done</pre>
<p>After these commands are executed we have to watch mdstat until it is prepared (note that you can work with the md disks in the meantime, just the setting of the RAID will be slower as you will be writting on the named disks.</p>
<p>After we check the mdstat and see that all the disks are ready for play:</p>
<pre>croot@htpc: ~ # cat /proc/mdstat 
Personalities : [linear] [raid0] [raid1] [raid10] [raid6] [raid5] [raid4] [multipath] [faulty] 
md4 : active raid1 sda4[0] sdb4[1]
      2900968312 blocks super 1.2 [2/2] [UU]
      
md3 : active raid1 sda3[0] sdb3[1]
      9763768 blocks super 1.2 [2/2] [UU]
      
md2 : active raid1 sda2[0] sdb2[1]
      19030679 blocks super 1.2 [2/2] [UU]</pre>
<p>we can proceed with data copying.</p>
<h2>Transfering the data and setting up the system</h2>
<pre>mkfs.ext4 /dev/md2 ; mkfs.xfs /dev/md3 ; mkfs.xfs /dev/md4 # create filesystems
mkdir -p /mnt/newroot/{home,var} # create the folder struct (home and var are actually the md3 and md4 so prepare the folders for them
mount /dev/md2 /mnt/newroot
mount /dev/md3 /mnt/newroot/var
mount /dev/md4 /mnt/newroot/home</pre>
<p>Now that we are ready we will use rsync to transfer living system and data (WARNING: shutdown everything that temper with data (like ftp/svn/git services). Only thing we are going to loose is few lines of syslog and other log services.</p>
<pre>rsync -av /home /mnt/newroot/home # no -z as we don't need to compress
rsync -av /var /mnt/newroot/var
rsync -av / --exclude '/home' --exclude '/dev' --exclude '/lost+found' --exclude '/proc' --exclude '/sys' --exclude '/var' --exclude '/mnt' --exclude '/media' --exclude '/tmp' /mnt/newroot/ # copy all relevant stuff to newroot
mkdir -p /mnt/newroot/{dev,proc,sys,mnt,media,tmp}
</pre>
<p>After the transfer you need to edit /etc/fstab to reflect new disk layout. Update kernel (if needed to support new RAID layout) and update /etc/defaults/grub if you did RAID like me to contain domdadm line for default command.</p>
<h2>Preparing new boot over UEFI</h2>
<p>On your machine you need to create usb dongle which supports UEFI boot (you need to be uefi booted to setup UEFI [fcking hilarious]).</p>
<p>We need to download <a href="http://archlinux.mirror.dkm.cz/pub/archlinux/iso/archboot/">latest archboot iso 64bit</a> (gentoo minimal didn&#8217;t contain this lovely feature).<br />
Grab some usb disk and plug it into our machine. We will format it to 32b fat: mkfs.vfat -F32 /dev/[myusb] , mount somewhere and copy the ISO image content to the usb folder (you can enter it in mc and just F5 it if you are lazy like me, but it is working with tar, p7zip or whatever else). Shutdown the computer, unplug old disks and with manic laughter turn the machine again on.</p>
<p>To boot the uefi just open boot list menu and select the disk which has UEFI around its name. It will open grub2 menu where you just select first option. We should be then welcomed by lovely arch installer. Not caring about it switch to another console and open terminal. Setup again the arrays using mdadm &#8211;assemble.</p>
<pre>for i in {2..4}; do mknod /dev/md${i} b 9 ${i}; mdadm --assemble /dev/md$i /dev/sda${i} /dev/sdb${i}; done</pre>
<p>Then just proceed with mounting them somewhere to /mnt and chroot like you would do new gentoo install. Exact steps:</p>
<pre>modprobe efivars # load the efi tool variables
mkdir -p /mnt/newroot/{home,var} # create the folder struct (home and var are actually the md3 and md4 so prepare the folders for them
mount /dev/md2 /mnt/newroot
mount /dev/md3 /mnt/newroot/var
mount /dev/md4 /mnt/newroot/home
mount -o rbind /dev /mnt/newroot/dev
mount -o rbind /sys /mnt/newroot/sys
mount -t proc none /mnt/newroot/proc
chroot /mnt/newroot /bin/bash
. /etc/profile
env-update
</pre>
<p>Now that we are in chroot we just install grub2 with GRUB_PLATFORMS=&#8221;efi-64&#8243;. After that we proceed easily by following <a href="http://wiki.gentoo.org/wiki/GRUB2#UEFI.2FGPT">wiki article</a>.</p>
<p>Unmount the disk, reboot the system, unplug the flasdrive, &#8230;, profit?</p>
]]></content:encoded>
			<wfw:commentRss>http://blogs.gentoo.org/scarabeus/2012/08/23/migrating-disk-layout-from-mess-to-raid1/feed/</wfw:commentRss>
		<slash:comments>20</slash:comments>
		</item>
		<item>
		<title>AOO and Libreoffice standing next to each other</title>
		<link>http://blogs.gentoo.org/scarabeus/2012/08/13/aoo-and-libreoffice-standing-next-to-each-other/#utm_source=feed&#038;utm_medium=feed&#038;utm_campaign=feed</link>
		<comments>http://blogs.gentoo.org/scarabeus/2012/08/13/aoo-and-libreoffice-standing-next-to-each-other/#comments</comments>
		<pubDate>Mon, 13 Aug 2012 19:31:27 +0000</pubDate>
		<dc:creator>scarabeus</dc:creator>
				<category><![CDATA[Gentoo Stuff]]></category>

		<guid isPermaLink="false">http://blogs.gentoo.org/scarabeus/?p=629</guid>
		<description><![CDATA[Well not by its intentions and goals as the situation is still not perfect in cooperation between these nice projects but as applications on our beloved Gentoo. Today I wasted bit of my time to write wrappers in openoffice-bin package &#8230; <a href="http://blogs.gentoo.org/scarabeus/2012/08/13/aoo-and-libreoffice-standing-next-to-each-other/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Well not by its intentions and goals as the situation is still not perfect in cooperation between these nice projects but as applications on our beloved Gentoo.</p>
<p>Today I wasted bit of my time to write wrappers in openoffice-bin package and it can be installed next to libreoffice or libreoffice-bin.</p>
<p>Insane how few bash lines can solve stuff :-)</p>
<pre>	# remove soffice bin
	rm -rf "${ED}${EPREFIX}/usr/bin/soffice"

	# replace all symlinks by bash shell code in order to nicely cope with
	# libreoffice
	cd "${ED}${EPREFIX}/usr/bin/"
	for i in oo*; do
		[[ ${i} == ooffice ]] &#038;&#038; continue

		rm ${i}
		cat >> ${i} << EOF
#!/usr/bin/env bash
pushd "${EPREFIX}/usr/lib64/openoffice/program" > /dev/null
./${i/oo/s}
popd > /dev/null
EOF
		chmod +x ${i}
	done</pre>
<p>The portage can&#8217;t handle the blockers without revbumps/rebuilds so I updated it in live/branch ebuild and with next releases (3.5 next week, 3.6 2 weeks) there won&#8217;t be any collisions and you can enjoy comparing these two suites against each other. For binary I was just too lazy so just reemerge 3.5.5.3 if you want to enjoy this.</p>
<p>Note: the plugin install and handling is still not fully tested in situations when you have both implementations around, but the eclass was writen with it on my mind so just try it and report bugs if it does not work. Altho there is one case I didn&#8217;t test at all -> What happens when one removes one the implementations and try to reinstall the extension. It should properly register itself under the only remaining one, but still the files will be kept in /usr/lib64/IMPLEMENTATION/&#8230;/extensions/install/ and registred in user config dir. Maybe we could run this deregister on package uninstall (portage can detect those)&#8230;</p>
<p>Picture to replace last paragraph and to show up how nicely it works:<br />
<a href="http://dev.gentooexperimental.org/~scarabeus/scrots/aao_lo_together.png"><img width="600px" src="http://dev.gentooexperimental.org/~scarabeus/scrots/aao_lo_together.png" alt="lo and aoo together"></a></p>
]]></content:encoded>
			<wfw:commentRss>http://blogs.gentoo.org/scarabeus/2012/08/13/aoo-and-libreoffice-standing-next-to-each-other/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Slowly going nuts</title>
		<link>http://blogs.gentoo.org/scarabeus/2012/07/24/slowly-going-nuts/#utm_source=feed&#038;utm_medium=feed&#038;utm_campaign=feed</link>
		<comments>http://blogs.gentoo.org/scarabeus/2012/07/24/slowly-going-nuts/#comments</comments>
		<pubDate>Tue, 24 Jul 2012 08:24:17 +0000</pubDate>
		<dc:creator>scarabeus</dc:creator>
				<category><![CDATA[Gentoo Stuff]]></category>

		<guid isPermaLink="false">http://blogs.gentoo.org/scarabeus/?p=622</guid>
		<description><![CDATA[Gentoo dictionaries are slowly making me loose it&#8230; I got to 31 transfered myspell dictionaries which use upstream versioning scheme and have proper homepages. It still leaves behind 15 of those I didn&#8217;t find out anywhere or didn&#8217;t sort out &#8230; <a href="http://blogs.gentoo.org/scarabeus/2012/07/24/slowly-going-nuts/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Gentoo dictionaries are slowly making me loose it&#8230; I got to 31 transfered myspell dictionaries which use upstream versioning scheme and have proper homepages. It still leaves behind 15 of those I didn&#8217;t find out anywhere or didn&#8217;t sort out the complexity of availale resources (eg 3 different tarballs to fetch from 3 different sites with insane versioning).</p>
<p>As it takes around 1-2 hours to just figure this s*it for one mutation PLEASE if you speak any of the following crazy languages help me out by figuring it for me and sending me ebuild (enough inspiration in the tree on how to write that darn ebuild) or at least instructions how to obtain the dict/hyph/thes set. The only help that I won&#8217;t be able to use is the one that uses the extensions.openoffice.org as the screwed up the downloads to have fancy IDs (i think I explained that in one of my previous blags) so it is not possible to track updates nor verify that we are downloading proper file (putting the version number into the provided files is for pussies right?).</p>
<p>Note that the English is a bit special friend. It has various mutations and each have its special versioning and homepage, so I will have to split that one out when I have free afternoon someday.</p>
<pre>app-dicts/myspell-cy
app-dicts/myspell-en
app-dicts/myspell-ga
app-dicts/myspell-hr
app-dicts/myspell-hu
app-dicts/myspell-ia
app-dicts/myspell-mi
app-dicts/myspell-mk
app-dicts/myspell-ms
app-dicts/myspell-pl
app-dicts/myspell-ru
app-dicts/myspell-sw
app-dicts/myspell-tn
app-dicts/myspell-zu</pre>
<p>Now for the more fun stuff. Libreoffice 3.6 is shaping up nicely and the 3.6.9999 ebuild should be safe to consume now as the 3.6.0 release is imminent (around 5th August). Try it with your unholy CFLAGS combos and report if something explode for you. There is still time to merge some build fixes. Remember that the test phase is still not fixed (I should just disable it for this release as I won&#8217;t prolly have time to fix it before 3.7) so run with FEATURES+-test if you enable those by default.</p>
]]></content:encoded>
			<wfw:commentRss>http://blogs.gentoo.org/scarabeus/2012/07/24/slowly-going-nuts/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>libreoffice nsplugin will have to leave us</title>
		<link>http://blogs.gentoo.org/scarabeus/2012/06/19/libreoffice-nsplugin-will-have-to-leave-us/#utm_source=feed&#038;utm_medium=feed&#038;utm_campaign=feed</link>
		<comments>http://blogs.gentoo.org/scarabeus/2012/06/19/libreoffice-nsplugin-will-have-to-leave-us/#comments</comments>
		<pubDate>Tue, 19 Jun 2012 09:27:06 +0000</pubDate>
		<dc:creator>scarabeus</dc:creator>
				<category><![CDATA[Gentoo Stuff]]></category>

		<guid isPermaLink="false">http://blogs.gentoo.org/scarabeus/?p=616</guid>
		<description><![CDATA[As time goes I spent quite time making the nsplugin work on 3.4 release. My fix was not optimal enough and it caused various regressions (like launching libreoffice everytime you launched browser and so on). In the end we managed &#8230; <a href="http://blogs.gentoo.org/scarabeus/2012/06/19/libreoffice-nsplugin-will-have-to-leave-us/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>As time goes I spent quite time making the nsplugin work on 3.4 release. My fix was not optimal enough and it caused various regressions (like launching libreoffice everytime you launched browser and so on). In the end we managed to sort this out around 3.5beta2, it was a great shot, it worked perfectly with firefox-3.6 and we were happy.</p>
<p>But now with 3.5.4 it is building the plugin and it fail to register itself in the firefox-10 itself again. And with 3.6 release the plugin even fails to show up in the list of extensions in firefox.</p>
<p>As I never did working plugin for firefox I have no damn idea what is wrong in there. Same applies for the the rest of the developers whom don&#8217;t even care much about that extension. So if you are one of those who really like the idea of embedding your documents within browser and you understand (or at least want to work on) the plugins please poke me, or send me some patches right away. As of now you can grab even 3.5 code to hack on because the extension does not work anywhere.</p>
<p>Otherwise I will just drop the useflag from 3.6 on.</p>
]]></content:encoded>
			<wfw:commentRss>http://blogs.gentoo.org/scarabeus/2012/06/19/libreoffice-nsplugin-will-have-to-leave-us/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>
