Index ¦ Archives ¦ RSS > Category: hacking ¦ RSS

Navigation in big if-then-else code chunks

Estimated read time: 1 minutes

So when trying to understand others' code, and they use large while/for/if blocks, it's hard to see where one if ends, unless it's on the same page so vim highlights it. I remembered already once that there is a char to jump to the start { of such a block from its end } and vica-versa, but I forgot it, so now I had to look it up again. It's '%'. :-)

read-only s/mime support in mutt

Estimated read time: 1 minutes

So my problem was that I already set up PGP, and I use it for sending / receiving signed (and sometimes crypted) messages. Today I received an S/MIME signed message and I had to verify it.

First mutt just bailed out with "Can't verify S/MIME signature", but that was because S/MIME was not configured. Here is what I did:

cd ~/.mutt
cp /usr/share/doc/mutt-ng/samples/smime.rc .
# edit muttrc to source it

I thought that will be enough, but that was too aggressive.

First, it disabled my PGP support. I had to put 'unset smime_is_default' to the top of smime.rc.

Second, it tried to verify the whole damn cert chain, which is simply something I can't really care, as the cert is a self-signed cert anyway. To do this, I had to uncomment the last two lines in smime.rc (set smime_verify_command/smime_verify_opaque_command).

So far it works just like I wanted it! :)


freenx server fontpath

Estimated read time: 1 minutes

I wasted some hours debugging till I found out how to set the fontpath of a freenx-server if not using XFS.

Basically just need to fine-tune /etc/nxserver/node.conf:

DEFAULT_FONT_PATH=$(echo $(grep -v '^ *#' /etc/X11/xorg.conf | grep FontPath | awk \
'{print $2}' | sed -r "s/^[\"']|[\"']$//g") | sed 's/ /,/g')
AGENT_EXTRA_OPTIONS_X="-fp $DEFAULT_FONT_PATH"

Based on this post.


scooter rss

Estimated read time: 1 minutes

I just noticed that scootertechno.com has no RSS, so I wrote one. Available here, or in "binary form", here.

Project-specific vim settings

Estimated read time: 1 minutes

So swig uses two spaces instead of tabs, horrible. But I'll get used to it - just I don't want to fuck up my vimrc just because of their idiotic settings.

Here is the trick:

au BufRead */swig*/* set tabstop=8 | set shiftwidth=2 | set softtabstop=2 | set expandtab " SWIG
au BufRead */swig*/Source/* set tabstop=8 | set shiftwidth=2 | set softtabstop=2 | set noexpandtab " SWIG Source
au BufNewFile,BufRead *.i set filetype=swig
au BufNewFile,BufRead *.swg set filetype=swig

The swig syntax file is here.


libblkid meets hal 0.5.11

Estimated read time: 1 minutes

So upstream recently released hal 0.5.12 and it's maintained by crazy who seem to be a bit busy currently, and I don't really wanted to bump his pkg (actually I tried and I failed), but I bumped our udev pkg yesterday so we no longer has libvolume_id. So I backported the relevant patch from git and it seems to work. ;)

(Actually the header is informative, but fake as I created the patch from scratch, based on the one which was in git.)


Writing ppt presentations from asciidoc

Estimated read time: 1 minutes

Okay, this is a crazy idea, but I love asciidoc. So the pipeline is the following: asciidoc -> docbook -> latex -> pdf -> odp -> ppt.

The fun part is that docbook is XML and then later I convert the stuff back to XML again (odp), but that's necessary as latex adds the nice themes and layout to the text.

Also the method is semi-automated as I generate latex from asciidoc, then copy&paste it to a latex-beamer document with some manual fixup, then I can convert the rest in a more or less automated way. Time to package odfpy and other affected, but not yet packaged components. ;-)


bitlbee segfault fix

Estimated read time: 1 minutes

Here. I have no idea if this one will be ignored as well - since two of my reports (here and there) are already ignored.. :/

nokia free space trick

Estimated read time: 1 minutes

I hit this issue a few times, but now I took the time to Google it out. So when I download lots of music to my Nokia 3110c phone, I keeps restarting because the Nokia version of OOM killer terminates the music indexer process. Given that it's a vital process (I don't know the proper term for this), the phone is restarted. It does this sequence about 5 times, then it just switches off.

The trick is to delay indexing, if it does so a bit later after the phone boot is already done, it can succeed properly. The hack is to limit the internal memory free space, that will trigger this delay:

Now Keep ur free Phone memory space [Not the memory card's free space] between 470kb - 499kb

The style is horrible, but the info is useful, after setting free space like this, it can really handled large amount of music fine. ;)


Rotating pdf pages

Estimated read time: 1 minutes

So I wanted to rotate each page in a pdf file clockwise using pdf2ps, pstops and ps2pdf. Actually I haven't figured out how to do so, even if I already used pstops (which is cryptic for the first time) multiple times so far.

Sure, I know ideally how to do it, but then I just got blank pages.

But pdftk seem to do it properly:

pdftk in.pdf cat 1-endE output out.pdf

© Miklos Vajna. Built using Pelican. Theme by Giulio Fidente on github.