Debian

warning: Creating default object from empty value in /home/gwolf/drupal6/modules/taxonomy/taxonomy.pages.inc on line 33.

Back home, keys signed and all

Submitted by gwolf on Mon, 08/03/2009 - 13:02

After leaving DebConf on the much uncomfortable 06:45 train last Friday (uncomfortable not because of the seats but because of the timing — It basically meant not sleeping at all in order to spend a last full night of socialization+Mao), I stopped by two dear friends' houses near Madrid (Adriano+Nuria at Alcobendas, María+Borja at Alovera) and came back to Mexico. I must say I was... Really, really, really tired most of the time. On Friday, I met my friends slightly past 5PM, and all the time in between was spent walking to get some things done in Madrid. I would not call this sight-seeing as I was mostly in places I had already been before, but crossing out to-do items from my checklist (i.e. getting a much needed second suitcase, getting some music for Nadezhda's brother, finding good cheap food and so on). Every now and then, when I was not walking (i.e. while on the Cercanías trains), I would doze out - And it was common, for this couple-of-seconds dozing-out, that I would hear or even see any random person of DebConf speaking about any random topic. Quite close to a hallucinative thing! Anyway, my brain has finally understood it does not have to carry you guys around at all times, and I'm just back to (jetlagged and tired) normality.

I got home at ~21:30, unpacked a couple of things, and fell asleep right away. Woke up at around 6AM. That is great, if I can sustain the trend, I will have defeated jetlag!

Today, I got to work, only to find an unresponsive computer — During some update I did from .es, dbus was left on a semi-installed state. No dbus means no HAL, and no HAL means X won't know which input devices to use. Of course, easy to fix, but as I didn't have any other computer handy, instead of ssh'ing my way in, I had to do a couple of reboot cycles until I found the culprit (bah…)

First thing I did upon getting my machine in a workable state is to sign the keys I had left, and to fix those that were probably not signed with SHA256. Some people asked me what was BDale's post about, so I'll summarize, hoping that more explanations might not be better, but contain the same information worded differently, and gets best in everybody's brain. One of the instructions at Ana's great post regarding what to do to get a SHA256 key mentions setting up the following lines in your .gnupg/gpg.conf file:

  1. personal-digest-preferences SHA256
  2. cert-digest-algo SHA256
  3. default-preference-list SHA512 SHA384 SHA256 SHA224 AES256 AES192 AES CAST5 ZLIB BZIP2 ZIP Uncompressed

Thing is, those lines are not added to .caff/gnupghome/gpg.conf, which is an independent copy. I was missing such file, and I don't really know the defaults, so I am not sure this was really needed, but followed BDale's instructions: Delete my signatures on all the affected keys, and run them again through caff (in signing-party). Of course, hand-processing a handful of keys is not exactly fun — But given that signatures are stored in .caff/keys/ ordered by date, it was quite easy to get them all. Yes, some manual shuffling was required, but quite minor all in all. First of all, edit each of the keys, removing your signature from each of the UIDs. This is the user-interaction-heavy part, as gnupg does not like to be driven by piping commands to it (understandably). I wanted to do this on all the keys I had signed during July 2009, so:
  1. $ for i in $(find .caff/keys/2009-07* -type f|cut -f 2 -d .|cut -f 4 -d / |sort|uniq)
  2. do
  3. gpg --homedir=~/.caff/gnupghome/ --secret-keyring=~/.gnupg/secring.gpg \
  4. --no-auto-check-trustdb --trust-model=always --edit-key $i
  5. done

So, for each key, I would do:

  • uid 1
  • delsig
  • Delete all of my signatures (not that it matters deleting others', but it is easy to set your brain to grep for yourself ;-) ) It is very important to note if any of the keys does not have your signature on — That would mean that, for whatever reason it happened, you would need to remember that key to be skipped in the caff step.
  • If the key has more than one UID, repeat for all others

After this, go through each of those keys again, re-signing them. I could have included this step in the previous block, but I... didn't ;-)

  1. $ for i in $(find .caff/keys/2009-07* -type f|cut -f 2 -d .|cut -f 4 -d / |sort|uniq)
  2. do
  3. caff --no-download $i
  4. done

Note that by specifying --no-download, I am not getting it from the keyserver but using the copy I already had on my directory, without the weak signature. And, as I checked I had already signed each of them, it was no longer necessary to triple-check the signature (as I had discarded several of the paper snippets people had given me). I trust well enough this computer, where I had done the initial signatures (and which is not accessible from teh intarwebs without compromising an intermediate server).

As a last bit of caff goodness: Many people will remember only the last eight bytes of their signature. As an example, my new and shiny key information reads:

  1. pub 4096R/C1DB921F 2009-07-09
  2. Key fingerprint = AB41 C1C6 8AFD 668C A045 EBF8 673A 03E4 C1DB 921F
  3. uid Gunnar Eyal Wolf Iszaevich <gwolf@debian.org>
  4. uid Gunnar Eyal Wolf Iszaevich <gwolf@gwolf.org>
  5. uid Gunnar Eyal Wolf Iszaevich (Instituto de Investigaciones Económicas UNAM) <gwolf@iiec.unam.mx>

Speaking informally, I will tell you my key ID is C1DB921F — A short-enough string to be memorized. However, many people do not note this string is just the final part of the fingerprint. And caff allows for keys for it to work on to be specified in several different formats, being C1DB921F only the shortest one. However, you will find way more comfortable (but only after triple-checking the SHA256sum matches!) to ask caff to do the process based on the whole fingerprint. In this case, if I gave caff as its argument AB41C1C68AFD668CA045EBF8673A03E4C1DB921F, I would not have to hand-check the fingerprint matches what I have on the listing, isn't it great? So I did so both for those that were handed out to me as paper snippets (I typed the whole fingerprint as an argument to caff, as I'd have to check it anyway) and for those in Anibal's list. Good thing on Anibal's list is that it is already electronic, and after comparing the SHA256sum to the string I had hand-written in the paper, and weeding out all the people I had not cross-signed with, I just did:

caff $(cat ksp-dc9.txt |grep Key\ fing|cut -f 2 -d =|sed s/\ //g )
And, ta-da, just answer some prompts (I prefer to always answer to them, checking one more time against my list, just to be sure), produce your passphrase a couple dozen times, and off the mails are sent.

As a final note: I felt much, much more in control and at ease with this edition's key signing process. No more horribly long queues, no more stupid and pointless document checking. Many people just agreed to cross-sign based on the fact that we have known each other's face-to-name relation for long enough to trust it more than any government-issued IDs; other people did request an ID, so I always kept my passport handy. There are several people I engaged in interesting conversations as a result of keysigning request. This year, I did not sign any keys of people whose face I cannot remember (of course, that recalling bound to decrease with time, but it is a much stronger policy than previous years... And I might end up following a stricter one, as several other friends do). And, strangely… Well, there are many people I felt strange of not signing. People I spent long amounts of time working or talkin with, and I ultimately trust their identity. However, seems we didn't ask each other for signatures, or I didn't have a pen handy, or something like that… Anyway, that only leaves me with one more excuse to see you all guys next year in New York!

( categories: )

About to leave Cáceres

Submitted by gwolf on Thu, 07/30/2009 - 15:46

Ufff...

This has been a great two weeks. DebCamp was -of course- followed by DebConf. My blog postings were kept silent to an absolute minimum, just as my measurable productivity. Of course, this does not mean I have been scratching my belly or anything. Orga team work is HARD and tiring. But it is great fun. And sitting at the front desk means you get to interact with everybody. For $DEITY's sake, it is the best way to get to know people,

Anyway... The last session of Mao is about to start. I am closing the computer. GREAT TIME!

( categories: )

Smelling dead

Submitted by gwolf on Sun, 07/26/2009 - 08:57

DebConf9. Assassins. Nomeata has been killed. So have I. Now, the rules say the sock that kills you should be clean, and by that, I understand it should be not smelly — I guess I could have complained that I was killed in the presence of very smelly cheese. Does that still count?

( categories: )

The world is not enough

Submitted by gwolf on Thu, 07/23/2009 - 14:06

As many of you are aware, I am the owner of the universe. Let me correct, the proud owner of the universe. This little bugger has got me a good time in Nicaragua and, although it was a bit sick during the first couple of days, I do expect to use it several times in Cáceres. It is always good to have a bike - a reason _and_ a way to move, faster than walking, getting good views and, basically, drawing bystanders' attention.

But today, thanks to Axel, a permanent impression has entered my mind.

I rode a Brompton. Shortly, for less than a kilometer... But, WOW. And I do mean it. <blink>W-O-W</blink>.

One day, when I grow up, I will get my own Brompton. And the Universe will truly be mine.

( categories: )

Encodings, fonts, PDF and pain

Submitted by gwolf on Sun, 07/19/2009 - 10:37

I volunteered to work on producing the DebConf nametags, and worked on it closely with César (cek) for most of the afternoon. The process clearly shows no database is comprehensive enough to base DebConf on it - All in all, we managed a very good advance percentage, integrating the data on who sleeps where, how each person eats, and so on. And slightly before lunchtime, we had the final listing. Joy!

…Until I asked César what script would we use for turning the data into nice, printable nametags. He plainly replied, «none that I know of». Ok, so on to produce the layout. The first idea was, as it has been done at other DebConfs, to make a LaTeX layout - but both our LaTeX-fu is heavily limited. Well, to the hell with it, that's why I recently packaged and uploaded Prawn, which is currently sitting in the NEW queueFast, Nimble PDF Generation For Ruby. Prawn has two main characteristics which are making me migrate some systems away from PDF::Writer into it:

  • Proper UTF8 support
  • Cool, easy relative positioning in bounding boxes

So, yes, populating the page with the ten nametags each will take is quite simple:

  1. pdf = Prawn::Document.new(:page_size => 'A4')
  2. pdf.font '/usr/share/fonts/truetype/arphic/uming.ttf'
  3. while !people.empty?
  4. 5.times do |row|
  5. 2.times do |col|
  6. person = people.delete(people.keys.sort.first)
  7. next if person.nil?
  8. pdf.bounding_box([pdf.bounds.left + (col) * 8.6.cm,
  9. pdf.bounds.top - (row) * 5.4.cm],
  10. :width => 8.6.cm, :height => 5.4.cm) do
  11. generate_nametag_for(person, pdf)
  12. end
  13. end
  14. end
  15. end

Yay, nice, isn't it? Of course, inside generate_nametag_for() we have all the needed magic to position the text, resize the images and so on. All in all, a cute and nice library, even with Ruby's often strangely idiosincratic culture.

Until we started checking for correctness. First, we hit Eddy Petrişor — The ş was showing as an unknown character. Of course, even though Prawn correctly understands UTF8, the built-in font does not handle Eastern European alphabets. No worries, pdf.font "/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf" got us out of the predicament. But then, Andrew Lee (李健秋) appeared as a second case of undisplayable characters. And yes, Andrew has all the right in the world to expect his name, a proper UTF8 encoded string, to appear on the nametag!

…The problem is that all the fonts we could find that work for CJK fail for non-US-ASCII Latin characters. Isn't Unicode supposed to solve this? Yes, fonts need to properly implement the correct encoding… Jonas explained that Prawn (as well as any libraries dealing with fonts) should really use Fontconfig so multiple fonts can be specified, falling back in case some codepoints are not specified in them. But Prawn does not support Fontconfig.

To make matters worse, most Asian fonts (the Arphic family) are now shipped as TrueType Collections (TTC) instead of TrueType Fonts (TTF), in order to save space due to the tremendous similarity they have. And, you guessed it, Prawn does not yet understand TTCs (or I couldn't find how to).

All sorts of ideas were brought up. After playing a bit trying to change the font being used when detecting Asian encoding (and failing at it), I threw up my hands and decided I'd just change the font whenever the name contained the "Andrew Lee" string. Dirty and ugly idea, yes, but would work.

Just as I was about to do it, Andrew came back jumping with joy — He gave me an Arphic font which contains TTF files. And, lo, it properly renders Eastern European characters. All set, yay!

Honestly. What a pain. I hope humanity loses alphabets forever and goes back to the stone age. That's the only sane way to leave all the multialphabet, multiencoding, multifont, multipain behind.

¡Cáceres!

Submitted by gwolf on Sat, 07/18/2009 - 08:54

My flight was scheduled to leave at 18:35 UTC-5 from Mexico. It left around 20:30. I took my friend Toño Malpica's newest book, Siete Esqueletos Decapitados, to have a nice reading for the road.

I was worried I would miss my 17:30 bus from Madrid to Cáceres, but I had plenty of time, and everything turned out just fine.

Just as I was reading the last page of Toño's book, when the bus was about to leave, Rhonda and Weasel boarded the bus — Great! Instead of five boring hours on my own (if possible, take the train — The traffic to leave Madrid is really really not fun), I had five boring hours with good company.

After some strange repositioning of my clothes and other contents of my bag (read: My bike!) in several grossly underoptimal configurations, we arrived at Residencia Universitaria Muñoz Torrero around 23:00. We greeted some people. About 90 minutes later, and after a verrry nice and needed shower, I was already deep asleep.

...Today, I woke up shortly after 10AM. Rushed for breakfast (and still got some! ☻), and headed to the first presential orga-team meeting for me this year.

¡DebCamp has started!

( categories: )

ftp.mx.debian.org back online

Submitted by gwolf on Tue, 05/19/2009 - 14:39

You might have noticed that during last week the Mexican Debian mirror, nisamox.fciencias.unam.mx (a.k.a. ftp.mx.debian.org, a.k.a. debian.unam.mx), went offline. The motherboard died on us, and Facultad de Ciencias was kind enough to give us a brand new one. So, excuse us for the blackout, but we are back – Meaner and badder than ever before!

Now, Sergio (nisamox's main admin) prefered to rebuild the whole mirror, as there was a shadow of doubt regarding the data integrity. So, rsync was pulling as fast as he could for the whole weekend (leading to some people scratching their heads regarding the 404 for the missing files; sorry, we should have left Apache shut down until the mirror was complete!). After three days of sustaining a 10-20Mbps download from the main mirrors, all 364GB of Debian are finally installed and –as you can clearly see– we are back to normality, with small, regular mirror pulses and a nice sustained 5-10Mbps (with some up to 40Mbps peaks — We have seen up to 100Mbps peaks in the past, and I doubt with the current network infrastructure we won't top that).

You can see we have currently plenty of disk space still to fill up. Among our plans is to host the most popular ISOs, which are a common request, and... What else? Well, ask us and we shall do so (quite probably).

Ethernet usage over the last week

Disk space usage over the last week

So, if you switched away from ftp.mx.debian.org due to our downtime, readjust your mirror settings. Nisamox is back!

( categories: )

I used to be color blind...

Submitted by gwolf on Fri, 04/24/2009 - 12:05

I was contacted today via private e-mail by Rafal Czlonka, as the hackergotchi I use (at least) in Planet Debian is wrongly rendreed by his WebKit-based web browser, Arora. So, in order to get more people to notice the bug if it exists: This is my hackergotchi (copied from Planet Debian, so I can update it and this post still shows a valid one):

And this is the sample he sent me on how it is rendered by Arora - Pay no attention to the horizontal lines (those are taken from the background where it is rendered):

So, is the first image correctly rendered? (I usually have my skin in a pinkish tone, and I was wearing a blue shirt). But, yes, that makes understanding the PNG encoding a bit more interesting. I guess PNG defines hues (as neither of those colors is completely uniform, they both vary slightly depending on the section of the picture)... And for some reason, my hackergotchi (generated by the Gimp) confuses the renderer and makes it switch the hue areas?

(Note that I am tempted to use the corrected version as my hackergotchi.. It looks more interesting!)

[update] I could not resist it... and have uploaded my blue hackergotchi to planet.debian.org - Yes, I'm a smurf now, it's no longer a rendering error.

( categories: )

So it's "me too" time?

Submitted by gwolf on Wed, 03/11/2009 - 22:19

Wouter and Christian have started bragging about their travel arrangements to attend DebConf, with probably insane amounts of toxic substances aimed at making DebConf9 the smelliest DebConf ever. So, it is time for me to announce my intentions as well.

I have booked my ticket to travel MEX-MAD, leaving on Thursday 16/07/2009 and arriving to Spain on Friday 17. That means I will be getting to Cáceres Friday evening. And I am flying back on Sunday 02/08/2009, which only means that I'll be jetlagged on Monday at work :-P

Buying plane tickets when your country's currency has lost 50% of its worth against any other major currency in the world (US dollars are now at ~MX$15.50, and Euros are quickly approaching MX$20), let me tell you, is no fun. Even less if the plane tickets have increased their cost in absolute terms as well, due to the decrease in demand. But, yes, the good news do stand: See you in Cáceres!

( categories: )

Yay for Lenny! (But nay for installation media)

Submitted by gwolf on Tue, 02/17/2009 - 12:58

Yay!

This blog post is not strictly speaking news anymore - But for those who don't know it yet, three days ago Debian 5.0 «Lenny» was released, after 22 months of work (plus fun, plus flamewars, plus everything that makes a Free Software lover tick). And, of course, that makes us all very happy and proud. As always, upgrading is a breeze. Hats off specially to Wolfgang and everybody who worked towards the great release notes - No, it is not a simple task, by far. And I _do_ feel ashamed I didn't even beep that way :-(

So, many of us are in the middle of planning/executing our servers' migrations. So far, I'm amazed for good. Even hairy issues such as firmware removal are magically and beautifully taken care of - i.e. my firewall kindly informed me during update that I would need to install the non-free firmware for my BNX2 (Broadcom) network interfaces, and I was just a package away from absolute happiness. Lets see what happens next Friday, as I will be upgrading our storage+application server (which is _way_ more complex than the servers I've dealt with so far).

Anyway... But what good is a blog post if you are not ranting?

Many people recognize me as one of the most Debian-connected people in Mexico, and that's very good. And yes, besides being a Debian Developer, I am a co-sysadmin for the main Debian mirror in Mexico. Some people have already asked me for CD-ROMs and DVDs. Of course, if I had a BluRay drive, I'm sure I'd also get requests for it.

People: Do you really want such media? Think again... Do you really want 31 CDs or five DVDs for your favorite architecture? Ok, maybe many will say "nah, just give me the first one" - Then, do you want to limit your Debian experience to just the software that lives on the first 1/31th (or 1/5th) of it all?

Of course there are many situations where it is desirable. Low bandwidth users, or people with no regular connectivity, will be much better served by suitable media from which to install. However, most of us (computer geeks living in Mexico City - Yes, that's the people contacting me) have at least a 1Mbps connection at home. People, just get the Netinst or Businesscard (180 or 40MB) images and download whatever is left via the network. Debian is extremely network-friendly. And, believe me, even if packages are sorted by popularity (and that's why most people will be happy with the first DVD if needed), you never know if you will want precisely a package that sits towards the lonely tail of popularity.

And, yes, I did have my CD images handy for the Potato, Woody and Sarge cycles - but increasingly, it became easier for me just to ask apt-get to fetch stuff from the web (which is done without me moving from my comfy chair while I do anything else) than asking apt-get to ask me to go search for the f.*ing CD which I left dont-remember-where.

Anyway... I'm not saying I won't burn your CDs - If you want them, please tell me in advance and come to my office, I'll be glad to give you some Debian disks. But spare the environment. We don't need to burn more and more disks. Use the network, be a better human being!

( categories: )

dh-make-drupal - Easily debianize Drupal modules, themes

Submitted by gwolf on Tue, 02/10/2009 - 14:51

I have spent a couple of days working into dh-make-drupal. Yes, you guessed right: An idea based on the wonderful dh-make-perl, but applied to the Drupal Content Management System.
Drupal's greatest strengths, IMHO, are:

  • Drupal offers a huge number of modules and themes
  • Drupal has an amazingly sane configuration handling, where -contrary to what usually happens in PHP-land and, in general, among webapps- you set up the code only at a single place, with only the site-specific configuration (usually a single file) handling all of the differences

Yup, even though I am quite fond of its flexibility and power, I fell for Drupal in no small part because of its sysadmin-friendliness.

Now, I hate having non-Debian-packaged files spilled over my /usr/share partition. Drupal modules want to be installed in /usr/share/drupal5/modules/module_name (or s/5/6/ for Drupal6, to which I have not yet migrated). For that reason, over the last year I have been growing my personal apt repository of Drupal stuff. Yes, it is still on, and I don't plan on taking it off. You can access it by adding deb http://www.iiec.unam.mx/apt/ etch drupal to your /etc/apt/sources. However, you can now also do the process locally. Do you fancy the wonderful Biblio module? Or the very nice Abarre theme? Great!

  1. 0 gwolf@mosca『4/tmp$ ~/code/dh-make-drupal/dh-make-drupal --drupal 5 biblio
  2. 0 gwolf@mosca『5/tmp$ cd drupal5-mod-biblio-1.16/
  3. 0 gwolf@mosca『6/tmp/drupal5-mod-biblio-1.16$ debuild -us -uc >& /dev/null
  4. 0 gwolf@mosca『7/tmp/drupal5-mod-biblio-1.16$ cd ..
  5. 0 gwolf@mosca『8/tmp$ su
  6. Password:
  7. 0 root@mosca[1]/tmp# dpkg -i drupal5-mod-biblio_1.16-1_all.deb
  8. Selecting previously deselected package drupal5-mod-biblio.
  9. (Reading|> database ... 275110 files and directories currently installed.)
  10. Unpacking drupal5-mod-biblio (from drupal5-mod-biblio_1.16-1_all.deb) ...
  11. Setting up drupal5-mod-biblio (1.16-1) ...

Yay!

Yes, still many more things to come (i.e. including the debuild call and whatnot), but... Enjoy!

BTW, this piece of software owes a couple of beers to Why the lucky stiff, author of Hpricot. You are insane (but we are all well aware of that). You deserve to go to the webscraping heaven. Yes, besides the programming-languages-teaching-cartoon heaven. You find out how to split the time between them.

[Update]: Of course, ITP bug #514786 has been filed, and I will soon be uploading this into Debian.

( categories: )

DebGem is on its way

Submitted by gwolf on Mon, 01/05/2009 - 18:15

This morning, I got a mail that made me very happy. I followed it up a bit, and some hours later, echoed it over the pkg-ruby-extras list. And, yes, a blog posting won't hurt :)
I have done some rantings on why it is so painful to integrate cultures such as Debian and Rails. Those rants were part of quite a large rant-net and attracted a fair share of traffic/comments over here. Flamefesting over your blog is fun! :-) but anyway, I am delighted to say that at least some people worth their weight in code were watching, interested.
The mail I got this morning (yes, follow the links above!) was from Hongli Lai, one of the very nice people at Phusion - The people behind Phusion Passenger (a.k.a. mod_rails) and Ruby Enterprise Edition. Yes, people with a very different mindset to mine (specially when it comes to being a 100% Free Software person).
Hongli invited me to try their new DebGem service (still in Beta, although quite usable as it is). They are offering an auto-built full repository of Rubyforge, translated to Debian packages. They are currently supporting Debian 4.0 (Etch) and Ubuntu 8.04 and 8.10 (Intrepid and Hardy). And, yes, installing any arbitrary Ruby module is now just as easy as aptitude install libsomething-ruby. For over 20,000 Gems.
There is a catch, yes. The service is currently free, while they finish the public beta period. Their pricing is available.
Best luck to you guys. And... Shall you enjoy fierce competition from Debian proper! ;-)
[Update]: They just posted the official Beta announcement for DebGem

( categories: )

My git tips...

Submitted by gwolf on Sat, 12/13/2008 - 19:35

Ok, so a handy meme is loose: Handy Git tips. We even had a crazy anatidae requesting us to post this to the Git wiki whatever we send on this regard to our personal blogs.
Following Damog's post, I will also put my .bashrc snippet:

  1. parse_git_branch() {
  2. branch=`git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/\1/'`
  3. if [ ! -z "$branch" ]
  4. then
  5. if ! git status|grep 'nothing to commit .working directory clean' 2>&1 > /dev/null
  6. then
  7. branch="${branch}*"
  8. mod=`git ls-files -m --exclude-standard|wc -l`
  9. new=`git ls-files -o --exclude-standard|wc -l`
  10. del=`git ls-files -d --exclude-standard|wc -l`
  11. if [ $mod != 0 ]; then branch="${branch}${mod}M"; fi
  12. if [ $new != 0 ]; then branch="${branch}${new}N"; fi
  13. if [ $del != 0 ]; then branch="${branch}${del}D"; fi
  14.  
  15. fi
  16. fi
  17. echo $branch
  18. }

This gives me the following information on my shell prompt:

  • The git branch where we are standing
  • If it has any uncommitted changes, a * is displayed next to it
  • If there are changes not checked in to the index, M (modified), N (new) or D (deleted) is displayed, together with the number of files in said condition. i.e.,

    Sometimes, entering a very large git tree takes a second or two... But once it has run once, it goes on quite smoothly.
    Of course, I still have this also in .bashrc - but its funcionality pales in comparison:
    1. get_svn_revision() {
    2. if [ -d .svn ]
    3. then
    4. svn info | grep ^Revision | cut -f 2 -d ' '
    5. fi
    6. }

    I am sure it can be expanded, of course - but why? :)
( categories: )

githubredir.debian.net - Delivering .tar.gz from Github tags

Submitted by gwolf on Wed, 12/10/2008 - 14:03

There is quite a bit of software whose upstream authors decide that, as they are already using Git for development, the main distribution channel should be GitHub - This allows, yes, for quite a bit of flexibility, which many authors have taken advantage of.

So, I just registered and set up http://githubredir.debian.net/ to make it easier for packagers to take advantage of it.

Specifically, what does this redirector make? Given that GitHub allows for downloading as a .zip or as a .tar.gz any given commit, it suddenly becomes enough to git tag with a version number, and GitHub magically makes that version available for download. Which is sweet!

Sometimes it is a bit problematic, though, to follow their format. Github gives a listing of the tags for each particular prooject, and each of those tags has a download page, with both archiving formats.

I won't go into too much detail here - Thing is, going over several pages becomes painful for Debian's uscan, widely used for various of our QA processes. There are other implemented redirectors, such as the one used for SourceForge.

This redirector is mainly meant to be consumed by Debian's uscan. Anybody who finds this system useful can freely use it, although you might be better served by the rich, official GitHub.com interface.

Anyway - Enough repeating what I said on the http://githubredir.debian.net/ base page. Find it useful? Go ahead and use it!

( categories: )

Apt-get and gems: Different planets, right. But it must not be the war of the worlds!

Submitted by gwolf on Mon, 12/08/2008 - 23:57

Thanks to some unexplained comments on some oldish entries on my blog, I found -with a couple of days of delay- Rubigem is from Mars, Apt-get is from Venus, in Pelle's weblog. And no, I have not yet read the huge amount of comments generated from it... Still, I replied with the following text - And I am leaving this blog post in place to remind me to further extend my opinions later on.
Wow... Quite a bit of comments. And yes, given that the author wrote a (very well phrased and balanced) post, I feel obliged to reply. But given that he refered to me first, I'll just skip the chatter for later - I'm tired this time of day ;-)
Pelle, I agree with you - This problem is because we are from two very different mindsets. I have already said so - http://www.gwolf.org/soft/debian+rails is a witness to that point.
But I do not think the divide is between sysadmins and developers. I am a developer that grew from the sysadmin stance, but that's not AFAICT that much the fact in Debian.
Thing is, in a distribution, we try to cater for common users. I have a couple of Rails apps under development that I expect to be able to package for Debian, and I think can be very useful for the general public.
Now, how is the user experience when you install a desktop application, in whatever language/framework it is written? You don't care what the platform is - you care that it integrates nicely with your environment. Yes, the webapp arena is a bit more difficult - but we have achieved quite a bit of advance in that way. Feel like using a PHP webapp? Just install it, and it's there. A Python webapp? Same thing. A Perl webapp? As long as you don't do some black magic (and that's one of the main factors that motivated me away from mod_perl), the same: Just ask apt-get to install it and you are set.
But... What about installing a Rails application? From a package manager? For a user who does not really care about what design philosophy you followed, who might not even know what a MVC pattern is?
Thing is, distributions aim at _users_. And yes, I have gradually adopted a user's point of view. I very seldom install anything not available as a .deb - and if I do, I try to keep it clean enough so I can package it for my personal use later on.
Anyway... I will post a copy of this message in my blog (http://gwolf.org/), partly as a reminder to come back here and read the rest of the buzz. And to go to the other post referenced here. And, of course, I invite other people involved in Ruby and Debian to continue sharing this - I am sure I am not the only person (or, in more fairness, that Debian's pkg-ruby-extras team is not the only team) interested in bridging this huge divide and get to a point we can interact better - And I am sure that among the Rubyists many people will also value having their code usable by non-developers as well.

( categories: )
Syndicate content