Sunday, December 27, 2009

Prestidigitation

After an unexpected break I did what I didn't think I could do.

While attempting to build lv2 applications I overloaded and frustrated myself to the point that I had no desire to do anything at all for Ubuntu Studio.  Two weeks or so later after I stopped working on it I find myself reintroducing myself to zynjacku
 
Approaching it with a fresh perspective allowed me to review the problem again and re-evaluate some of the data which proved critical, along with reading the GNU Make manual.  And it now appears that I managed to build it correctly in my Karmic PPA.

I say "appears that I managed to build it correctly" because my testing methods were not extremely conclusive, but satisfactory at this point, consisting of running zynjacku and lv2rack from the command line and adding effects.  This was also tested on a fresh Ubuntu Studio install in VM.  Granted, the one lacking aspect is that I didn't actually run any sound through them to test.  A somewhat disturbing flaw in an otherwise rewarding experience.  Once I have my recording setup resurrected (and improved) I will test it directly.

I would like to push this into REVU but one last, remaining item needs to be addressed: the desktop file.  The desktop file tells the Ubuntu system where to place the application in the menus and provides an icon for it.

Unfortunately, I believe I will need more help than the current documentation (that I have found) can provide to accomplish this.

After I complete the desktop file and submit to REVU I shall document my changes to the upstream version here in this blog.  And most likely will start on either zyn or lv2vocoder since they are by the same developer and should be similar.

Saturday, December 12, 2009

I Я TEH G33K

Today I got my robe and wizard hat, well not really, but I did get my GNU Make book from the Free Software Foundation.



I cannot possibly begin to explain how excited I am to have this book.  There is a critically large amount of information to be learned, just waiting for me to discover it!

Once I have devoured this information I will be powerful!  But of course I will only use my powers for good.

Wednesday, December 9, 2009

Luminescent Invisibility

Documenting the past, present and future...all in less than 144 characters.  Just kidding.

Ubuntu Studio Documentation
The ubiquitous Ubuntu Studio documentation continues.  I'm made some good progress but there are gads more to go.  Progress is cyclic because I find myself focusing singularly on the documentation improvements for a time then I get distracted (hey look, something shiny, huh, did you just say ADHD?) by something else for a while and then I return.

I've made good progress in the over all structure of the documentation and including a few select areas.  For example, defining Ubuntu Studio, contrasting it to Ubuntu and also the installation methods.

But I plan on review some of these items because I feel my understanding has expanded and solidified since I wrote them and that I could improve upon them now.

I also plan to leverage the ease of VM to validate the installation methods, particularly the "upgrade" section.  I would not only like to definitively document the steps required to not only "upgrade" from Ubuntu to Ubuntu Studio (on an applications level) but also present clear and definitive information on the additional required steps to "tune" for audio and video work.

After this I will probably direct my attention to the testing documentation.  This follows what I feel is a trajectory of importance since we already have some (?) documentation showing how to "use" Ubuntu Studio.  Note that the existing documentation for "using" Ubuntu Studio lacks cohesion, consistency and completeness, but it is extant.

The next task after completing the testing documentation should be reporting bugs following the importance trajectory.  But I do have to admit that I look forward to improving documentation showing how to "use" Ubuntu Studio, in particular using JACK and recording with Ardour.

Build It and They Will Come
Well, I'm trying to build it at least.  Several its actually, let me count the ways.

Firstly, I'm helping Eric (stochastic) build the lv2 applications available to us.  You can see our task list here.

I've given a go at zyn, zynjacku and the lv2vocoder, which, quite surprisingly to me, were all developed (or co-developed) by Nedko.  It's not that I question his ability to code (I think he can), rather I found the odds staggering that each successive application I choose to build would be one of his.  That is until I started to realize that he is among a very few developers who developer lv2 applications.  Amazing.  But that is another story arc.

I have had a quite troubling time building zyn, zynjacku and lv2vocoder due to my complete inexperience building applications from scratch.  But I have learned much since I started.

I actually have gotten a build of zynjacku completed with Nedko's help, albeit with a few warnings that hopefully Eric will help me resolve shortly.  If Eric proves too busy (and he is busy) then I should find my way to the -dev mailing list for help.  Or given enough time, I might bother Nedko again.  I bothered him quite intensely for a short period of time so I'm not in a rush to engage him too soon.

But we should see a majority success before Lucid is released.

Pbuilder and chroot
I recently found myself having some difficulties not relating to my ignorance of building applications from scratch but rather from my ignorance of pbuilder and the chroot environment.

I found that my pbuilder builds were not finding dependencies as I thought they should.  geser on #ubuntu-motu helped me understand why.  Apparently my pbuilder environment did not include the lucid universe repository.  The answer?  Log into the environment and add the correct repository, of course.

First step is to log into pbuilder:
sudo pbuilder login --save-after-login
You will need to enter your password to work as root.  Also note the "--save-after-login" flag, that's where some of the magic happens.

Then you add the repository to your /etc/apt/sources.list (but mind the lack of commands due to minimal build environment; no Gedit for you!):
echo "deb http://us.archive.ubuntu.com/ubuntu/ lucid universe" >> /etc/apt/sources.list
 Then "exit" out of the environment.

This adds another line to the minimal build environment's sources.list to include the universe repository for the Lucid (to be) release.  Normally you would just append the word "universe" on the same line as the existing repository which should already include "main".  But this is quicker and less invasive to the environment in my opinion.

I think alternatively you can use the ~/.pbuilderrc file to accomplish this same feat (and possibly more?) but I found the above more direct and intuitive.