Archives for: May 2005, 15
05/15/05
(Thumbnail is link to original image)
Needs no comment I guess :-)
Still some problems left:
- Files with spaces in the filename (ie almost every file in this case) don't work :-( This shouldn't be too hard to solve though (edit: fixed)
- Read-only
- No VCard as output. This can be easily solved though (edit: fixed)
- The init func creating a Node tree from your contacts is blocking, which is bad
- The Icon issue. Looks like vcards can contain picture information, so I could just write a vcard-thumbnailer and add it to Nautilus.
Now guess what the problem was... Not my code, but the fact I use autotools to compile the thing. Autotools seems to add some fancy compiler flags which made the module crashy as hell, just using "gcc -Wall $(pkg-config --cflags --libs gnome-vfs-module-2.0 libebook-1.2) -shared -fPIC ContactFS.c -o libContactFS.so" worked fine. Guess I'll have to tweak my Makefile.am somehow. (edit: this wasn't autotools fault, but (of course) mine. I added some flags to Makefile.am I got from an official GnomeVFS module's Makefile.am, looks like those weren't nice)
Huge thanks to "gicmo" for all the help.
Oh, and XNest rocks :-)
[update]
Never buy D-Link, it sucks ;-) Configuring is hell and when you backup the configuration and want to restore it after a firmware upgrade, it won't work. Stupid thing. And now suddenly, linux clients can't connect to the wireless D-Link AP. Big trouble, spent few hours to find out. When I tried to connect, the init-script tells me it's connected to the AP, but can't recieve an IP from DHCP. Now I fixed the whole bitch and upgraded security from WEP to WPA.
First of all: despite of the positive comment of Rohan, ifplugd didn't work for me on the wired interface. When I plugged in the network cable, the deamon did nothing. When I manually brought up the interface, ifplugd took it down. Stopping ifplugd and bringing up the interface again worked of course. Rohan, did you have good experiences with ifplugd? Maybe my configuration of ifup/ifdown is wrong, but I don't think so. If you have some ideas, please leave a comment.
As I previously told, I gave wpa_supplicant a try today. There's no much online documentation available for it, but everything is explained very well in the example configuration file. Seems that piece of software has very much capabilities! I configured the AP to use WPA-PSK and modified my wpa_supplicant.conf to that. This is the configuration:
network={
ssid="my_essid"
proto=WPA
key_mgmt=WPA-PSK
pairwise=CCMP TKIP
group=CCMP TKIP WEP104 WEP40
psk="my very secure password"
priority=2
}
Don't forget, if you have an Intel Pro WLAN card (IPW 2100 or 2200) to uncomment the line ARGS_eth1="-Dipw"
in your /etc/conf.d/wpa_supplicant file or modify it to the driver you use. I also commented everything out in /etc/conf.d/wireless. Don't forget this step, because /etc/init.d/net.eth1 (or your other interface) and /etc/init.d/wpa_supplicant would fight :-) After stopping all network stuff and starting wpa_supplicant, it seemed wpa_supplicant found the wlan but didn't request an IP. After a dhcpcd, everything worked just fine. Of course, first I had to find out some things, like I had to use the group-option and so on, before it worked. Now I just have to find a way to make wpa_supplicant or some other script requesting an IP when I bring up the device or when I start the service.
Conclusion: wpa_supplicant seems to be a very nice piece of software. I think its functionality or the use of it should be integrated in the gnome network configuration tool to make linux more user friendly for mobile users. I don't know why it isn't now. It's not fine for starting users to read the whole sample configuration and all that technical stuff: they just want to fill in some WEP-key or WPA-password (or eventually a username/password or so on).
Screenshot shows some progress I made with ContactFS. If I "browse" to contact:/, I get 2 "directories", Personal and Test, which are my 2 Evolution address books. I can "cd" into "Test", "ls" all "files" (contacts) in there, and if I try to "cat" one of them, I get some information on that contact (just plaintext for now, this should become a FOAF or VCard formatted string).
In GnomeVFS' test-shell application the module works fine, but if I try to open contact: in Nautilus, it crashes. Maybe I should send an email to Alex to beg for a little help here ;-)
I'll also need his help on how to set file thumbnails once it works in Nautilus (the actual file is just plain text, but I'd like to have the contact's picture as icon in Nautilus, or if no picture is set, /usr/share/pixmaps/nobody.png).
Moving "files" between "directories" would be nice too, but I don't know whether EDS allows writing, need to figure that out.