April 2007 Archives

2007-04-28

repo url change

I changed the url of my gentoo overlay. If you're using it do
svn switch --relocate svn://svn.nonlogic.org/hawking/gentoo
svn://svn.nonlogic.org/hawking/hawking-overlay

2007-04-12

vimgdb

There are many scripts to use gdb with vim. But the best and most useful implementation is the clewn.It implements full gdb support in the vim editor: breakpoints, watch variables, gdb command completion, assembly windows, etc. Clewn uses netbeans interface to connect to vim and runs concurrently.
There is also the patch vimGdb which is developed by the same people. They share the same base source code set to interface with gdb. The main difference is clewn runs as a seperate process but it has some features vimGdb doesn't have:
  • display of gdb expression values in a balloon
  • gdb run commands do input and output on the clewn terminal, while vimgdb users must use the gdb 'tty' or 'attach' commands to control the debuged program input/output
  • support of $cdir in the gdb directory list, allowing vim to access the names of the source files compilation directories as stored with the program debugging information.

There is an ebuild for clewn in the sunrise overlay. You need to emerge gvim with the netbeans USE flag to use it. I wrote an ebuild for the newest version 1.10 and bumped it, hopefully someone will review it and put it to reviewed/ soon.
I also wanted to try the vimGdb patch so I made some changes to the vim.eclass and added gdb USE flags to vim and gvim. The patch applies cleanly among with other vim patches in the gentoo tree.
To use the vimGdb :call gdb("") when you want to do debugging. You might want to put 'set autochdir' in your vimrc so that vim will change to the working directory and find other source files of the program as well. Here is a screenshot:
vimgdb example
The source code is from app-misc/slmon which has some problems smiley. There is a breakpoint on the blueline. vim and gvim ebuilds with gdb USE flag are in my overlay if you want to try. Emerge it and do
:help gdb
from within vim to learn how to use it. Happy vimming!

2007-04-06

ufs2 write support for linux

I've been booting gentoo/freebsd and gentoo for a while and one problem I've faced is a decent filesystem for the operating systems to share. FreeBSD has read-write support for ext2 and read-only support for reiserfs. ext3 is also supported as it's backwards compatible with ext2.

Well ext3 is a cool filesystem to use but I've been experiencing weird problems with it on FreeBSD. So I went on to check for linux kernel changes today to see if there is any plan to add UFS2 write support anytime in the future. I was shocked :). There are already patches written and it's planned to be added on 2.6.21. I quickly got the git-sources and tried it. It works like charm so far :). I can mount ufs2 partitions r/w on both systems. Many thanks to Evgeniy Dushistov who wrote the patches.

The patches are here:
[RFC] [PATCH 1/3] ufs2 write: mount as rw
[RFC] [PATCH 2/3] ufs2 write: inodes write
[RFC] [PATCH 3/3] ufs2 write: block allocation update

2007-04-06

sun is rising :)

At last I completed my ebuild quiz today - many thanks to jokey - and became a sunrise trusted commiter :). Now I can get stuff into sunrise w/o getting them reviewed. yay!