Thoughts on Rails

Riding the Train of Thought

Archive for the ‘UNIX’ Category

Picasa 2 works on PCBSD!

with 2 comments

Good news!

There has been a long long wait for Google’s Picasa on FreeBSD / PCBSD. And the wait is now over… if you are running PCBSD, just go get the latest Wine 0.9.32

Step 1: Install Wine – double click on the .pbi file and follow on-screen instructions.

Step 1.1: Install arial.ttf in c:\Windows\Fonts ( /home/username/.wine/drive_c/windows/fonts )

Step 2: Install Picasa – start up konsole, navigate to the directory where your Picasa installer is located ( cd /home/username/Desktop/ ) and run the installer by typing ( wine picasa2-current.exe )

Step 3: Thank the Wine Team and enjoy!

Written by hiway

April 5, 2007 at 5:36 am

Mute Master Volume – Script for FreeBSD/PCBSD

with one comment

For the FreeBSD users, there’s a bit of a problem when using laptops -
the special volume buttons are usually not automatically recognized.
The following page helps in configuring that:

http://blackk.union.edu/~black/freebsd/

For configuring the keypress/command association, we use the following port:

x11/xbindkeys

You might want to install the following port for making configuring
xbindkeys easier:

x11/xbindkeys_config

Now, there’s only one issue – the volume cannot be muted and unmuted
to its original setting automatically, here’s a small shell
script that resets volume to 60
[http://blackk.union.edu/~black/freebsd/xbindkeysrc]

I wrote a python script that uses commands from above file and
adds persistence of volume setting while automatically muting or
unmuting each time the script is called, also it relies heavily on
UNIX commands – since this script is necessary only on UNIX/FreeBSD.
It will not work under windows.

It also has a nice feature – soft fade-in / fade-out (configurable via script). Especially useful when you mute at high volume and forget it… then play some loud music and unmute – if done using this script, it might not shock with you with sudden loudness. :-)

All configuration is kept inside the script to keep usage of the script as easy as possible – just a call:

./mutetoggle.py

Hope it is useful to anyone looking to solve this or similar issue…

Here’s the file: mutetoggle.py.txt

Written by hiway

March 5, 2007 at 6:53 pm

Mounting samba share with write permissions for regular users

with 4 comments

I have tried looking for this information on the Internet but have successfully managed to make myself look dumb. I found nothing for three consecutive days (nights, actually – mostly I sleep in the day, work at night!) I proudly say this – “I may not know everything, but I know where to find it.” But these three days left me increasingly frustrated at the inability to solve a simple problem. Recent trends are showing that I am finding less and less relevant information in my searches. I’m afraid… am I losing the search-fu skillz?

So anyway, rants aside – this is what I was facing:

I have set up samba on my computer named Jaguar, it runs PCBSD 3.3, I wish to access the samba share from Panther, which also runs PCBSD 3.3. I can simply point Konqueror to “smb://192.168.0.2″ (the IP address belongs to Jaguar) and I am able to read and write to the share.

Trouble begins when I try to mount the share using mount_smbfs command. I have configured the share to be public, writable and also allowed guests – also, security is on share basis – so no passwords are required. I add the “-N” switch to my mount_smbfs command to disable password prompt.

mount_smbfs -N -I 192.168.0.2 //guest@192.168.0.2/shared /home/harshad/shared

It mounts the samba share, I am able to read the files… but I cannot write to them. And trying to solve this problem took a good amount of time. I know – it should be simple. And trust me – it is simple. You only have to know how to use two simple switches – “-g” and “-u”.

They tell mount what should be the group id and user id for the mounted filesystem. So, go ahead, look up your user id (uid) from /etc/passwd and group id (gid)for whichever group you wish to allow write access to and substitute in the following command:

mount_smbfs -N -u 1002 -g 10 -I 192.168.0.2 //guest@192.168.0.2/shared /home/harshad/shared

That sure fixed my problem – and I hope it can help you too.

Thanks to: ##FreeBSD channel on freenode.net (IRC)

Written by hiway

March 2, 2007 at 5:24 am

Open Source Photography Workflow Management Software

with 2 comments

A few days ago, I stumbled upon a nice application. From the website it looks nice and might soon contain every feature that I want – I haven’t been successful in making it run on my system (yet).

First of all, it is a Java application… and FreeBSD/PCBSD isnt exactly Java paradise. Yes the support is improving fast, and I’m happy about it :-) So, after downloading the “jar” file, I tried double clicking in Konqueror file explorer – which promptly opened the archive and showed me the files inside. Hmm… not exactly what I wanted to do.

So I fired up Konsole and issued the command

jar blueMarine-0.8.6-setup-linux.jar

For which is gave a rather confusing reply:

Exception in thread “main” java.lang.NoClassDefFoundError: blueMarine-0/8/6-setup-linux/jar

Yes folks, I am an outsider to the Java world. I usually am clueless about how things work here. So I searched on the Internet and found nothing that said somebody had the exact same problem and how they solved it. So, I realized that I was probably on my own for generalizing the problem, finding out a generic solution and then applying it here. So after searching a bit, I found out that Java was unable to find the “classpath” for the given jar file and it makes no assumptions that the classes might just be in the same jar file… and so we have to tell it exclusively – it’s in the same file dangit!… well, for a computer to understand that, the command is:

java -jar blueMarine-0.8.6-setup-linux.jar

Finally, (wait, its not really finally) it worked! The interface loaded and complained that I have Java 1.5.0 while it needs 1.5.0_05! So until I make up the mind to try and upgrade Java (which isn’t a lovely process on this Operating System) I’m going to do something else (which includes having a cup of tea or sleeping). I need to make my mind up soon! :-D

*sigh* sometimes, I really dislike softwares. Whoever said that computers make life easy, hasn’t really ever used one.

Oh, and if you are curious, here’s the link to blueMarine: http://bluemarine.tidalwave.it/

Written by hiway

February 26, 2007 at 4:43 pm

Beagle on PCBSD / FreeBSD – I tried… :’-(

leave a comment »

UPDATE: I have successfully installed Beagle on PCBSD 1.3.3 / FreeBSD 6.1

NOTE: Later install http://en.opensuse.org/Kerry for KDE integration

1. Got Beagle sources, decompressed, run ./configure
It complains that I don’t have mono installed… right…

2. Installed lang/mono

3. Installed x11-toolkits/gtk-sharp20

Packages NOT found in the ports tree:
gnome-vfs-sharp-2.0′
gconf-sharp-2.0
glade-sharp-2.0

Packages found in the ports tree:
mail/gmime2-sharp
x11-toolkits/gnome-sharp20

4. Installed gmime-sharp

5. Compiling gnome-sharp20

Traceback (most recent call last):
File “/usr/local/bin/xml2po”, line 34, in <module>
import libxml2
File “/usr/local/lib/python2.5/site-packages/libxml2.py”, line 1, in <
import libxml2mod
ImportError: /usr/local/lib/python2.5/site-packages/libxml2mod.so: Undef bol “xmlPathToURI”

Problem seems difference in library version and python wrapper version:

libxml2-2.6.26 XML parser library for GNOME
py25-libxml2-2.6.27 Python interface for XML parser library for GNOME

6. Installing libxml2-2.6.27

7. Back to compiling gnome-sharp20, done.

8. The dependencies that were NOT found, seem to be automatically satisfied now. Good!

9. ./configure in beagle directory is successful

10. Building Beagle:

panther# gmake
gmake all-recursive
gmake[1]: Entering directory `/usr/home/harshad/Programming/beagle-0.2.16′
Making all in po
gmake[2]: Entering directory `/usr/home/harshad/Programming/beagle-0.2.16/po’
file=`echo ar | sed ‘s,.*/,,’`.gmo \
&& rm -f $file && -o $file ar.po
-o: not found
gmake[2]: *** [ar.gmo] Error 127
gmake[2]: Leaving directory `/usr/home/harshad/Programming/beagle-0.2.16/po’
gmake[1]: *** [all-recursive] Error 1
gmake[1]: Leaving directory `/usr/home/harshad/Programming/beagle-0.2.16′
gmake: *** [all] Error 2

11. http://article.gmane.org/gmane.comp.video.thoggen.devel/274
It basically says that msgfmt program on my system could be causing this… but following its steps, I think i see sane output.
panther# grep msgfmt config.log
configure:21975: checking for msgfmt
configure:21993: found /usr/local/bin/msgfmt
configure:22006: result: /usr/local/bin/msgfmt
ac_cv_path_INTLTOOL_MSGFMT=/usr/local/bin/msgfmt
INTLTOOL_MSGFMT=’/usr/local/bin/msgfmt’

12. What is going wrong?

In the file ./po/Makefile
.po.gmo:
file=`echo $* | sed ‘s,.*/,,’`.gmo \
&& rm -f $$file && $(GMSGFMT) -o $$file $<

Now, I’m basically replacing $(GMSGFMT) with the full path of msgfmt ( /usr/local/bin/msgfmt )

For now, YAY! it seems to work.

13. F%*&K. That’s all I can say…

thread-glue.c:30:26: linux/unistd.h: No such file or directory
gmake[2]: *** [thread-glue.lo] Error 1
gmake[2]: Leaving directory `/usr/home/harshad/Programming/beagle-0.2.16/glue’
gmake[1]: *** [all-recursive] Error 1
gmake[1]: Leaving directory `/usr/home/harshad/Programming/beagle-0.2.16′
gmake: *** [all] Error 2

Looks like this bugger isn’t going to run natively… it needs a linux specific library.

http://lists.freebsd.org/pipermail/freebsd-hackers/2003-July/001883.html

The above link practically says that this program cannot run as native under FreeBSD. Or so I understand…

Now backtrack all the way, I don’t feel like uninstalling the applications that I just installed.
Onwards to Plan B: linux binary compatibility layer.

14. Reading about installing commercial linux applications on FreeBSD

http://www.onlamp.com/pub/a/bsd/2006/01/12/Big_Scary_Daemons.html

15. Reading about installing software on FC4 (since I have linux base fc4 on my machine installed and running)

http://www.antezeta.com/beagle-fedora.html

16. Installed rpm (not rpm4) from the ports tree.

17. Oh Boy!

panther# rpm -i –ignoreos –dbpath /var/lib/rpm –root /compat/linux beagle-0.2.1-2.1.fc4.nr.i386.rpm
error: failed dependencies:
/bin/sh is needed by beagle-0.2.1-2.1.fc4.nr
/bin/sh is needed by beagle-0.2.1-2.1.fc4.nr
/usr/bin/pdftotext is needed by beagle-0.2.1-2.1.fc4.nr
chmlib is needed by beagle-0.2.1-2.1.fc4.nr
epiphany >= 1.8.0 is needed by beagle-0.2.1-2.1.fc4.nr
evolution-sharp is needed by beagle-0.2.1-2.1.fc4.nr
gmime-sharp is needed by beagle-0.2.1-2.1.fc4.nr
libICE.so.6 is needed by beagle-0.2.1-2.1.fc4.nr
libSM.so.6 is needed by beagle-0.2.1-2.1.fc4.nr
libX11.so.6 is needed by beagle-0.2.1-2.1.fc4.nr
libXss.so.1 is needed by beagle-0.2.1-2.1.fc4.nr
libatk-1.0.so.0 is needed by beagle-0.2.1-2.1.fc4.nr
libc.so.6 is needed by beagle-0.2.1-2.1.fc4.nr
libc.so.6(GLIBC_2.0) is needed by beagle-0.2.1-2.1.fc4.nr
libc.so.6(GLIBC_2.1) is needed by beagle-0.2.1-2.1.fc4.nr
libc.so.6(GLIBC_2.1.3) is needed by beagle-0.2.1-2.1.fc4.nr
libc.so.6(GLIBC_2.2.3) is needed by beagle-0.2.1-2.1.fc4.nr
libc.so.6(GLIBC_2.3) is needed by beagle-0.2.1-2.1.fc4.nr
libc.so.6(GLIBC_2.3.4) is needed by beagle-0.2.1-2.1.fc4.nr
libcairo.so.2 is needed by beagle-0.2.1-2.1.fc4.nr
libdl.so.2 is needed by beagle-0.2.1-2.1.fc4.nr
libgdk-x11-2.0.so.0 is needed by beagle-0.2.1-2.1.fc4.nr
libgdk_pixbuf-2.0.so.0 is needed by beagle-0.2.1-2.1.fc4.nr
libglib-2.0.so.0 is needed by beagle-0.2.1-2.1.fc4.nr
libgmodule-2.0.so.0 is needed by beagle-0.2.1-2.1.fc4.nr
libgobject-2.0.so.0 is needed by beagle-0.2.1-2.1.fc4.nr
libgtk-x11-2.0.so.0 is needed by beagle-0.2.1-2.1.fc4.nr
libm.so.6 is needed by beagle-0.2.1-2.1.fc4.nr
libpango-1.0.so.0 is needed by beagle-0.2.1-2.1.fc4.nr
libpangocairo-1.0.so.0 is needed by beagle-0.2.1-2.1.fc4.nr
libpng12.so.0 is needed by beagle-0.2.1-2.1.fc4.nr
librsvg-2.so.2 is needed by beagle-0.2.1-2.1.fc4.nr
libwv-1.0.so.3 is needed by beagle-0.2.1-2.1.fc4.nr
libxml2.so.2 is needed by beagle-0.2.1-2.1.fc4.nr
libz.so.1 is needed by beagle-0.2.1-2.1.fc4.nr
mono-core is needed by beagle-0.2.1-2.1.fc4.nr
sqlite2 is needed by beagle-0.2.1-2.1.fc4.nr
zip is needed by beagle-0.2.1-2.1.fc4.nr

OK, at this point, I feel like just throwing this thing away and enjoying a good night’s sleep – it’s already 1:30 am. Frankly, so much hassle for one software is too much. TOO MUCH.

uname -a inside Linux binary compat shell:
Linux panther 2.4.2 FreeBSD 6.1-RELEASE-p13 #1: Mon Feb 12 06:38:43 IST 2007 i686 athlon i386 GNU/Linux

I try installing one software at a time… but it has many other dependencies… sheesh! Creeps me out. I’m not done installing a single software yet – because every rpm that I try to install wants many more rpms… BLAH! I’m giving up for today.

Written by hiway

February 23, 2007 at 1:58 am

PCBSD, Samba and Amarok

leave a comment »

So my computers Jaguar and Panther (nothing to do with MacOS) are running PCBSD for over 50 days now. Cheetah has been on FreeBSD since ages. I’m no sure what I run on, but the BSDs surely have something against me.

It is said that PCBSD makes it easy to share files like in MSWindows… right click on a folder, go to sharing tab… but for me the tab isn’t visible anymore… probably because i recompiled the kernel – because my printer was not going to work without that step, which included downloading the complete source code (FreeBSD comes with this stuff, but I can understand…) anyway… so the sharing tab isnt visible anymore. But when it was, I tried clicking on the settings button which supposedly opens another window… which never opened.

So… after a few deep sighs and a few cups of assam tea, I decided to go the old way – set up smb.conf on Jaguar by hand and using mount_smbfs on other machines. Followed the steps from http://www.freebsddiary.org/samba.php and got it running. I could see the files from Panther in konkueror (smb://10.0.0.4/share) and when I tried to open a file, Konqueror asked me if I wanted to download the file or open it in the related application. That was confusing, and after making up my mind, I decided to open the file instead of downloading it. Well, the file was downloaded to a temporary folder and then opened in the application. Blah! Well, after editing the file, I closed the application and the system asked me if I wanted to upload the file back again. Smart. But not smart enough.

I remembered using mount_smbfs command on FreeBSD and it never bothered me like this. Infact, I remember windows never bothered me with such questions either. For once, I had to accept that that OS is maybe a bit friendly. But then I remebered the horrors of setting up the network under windows… and I felt better. Hehe.

I tried the command but it was not allowing me to connect – authentication error, it barked back. Looked around, could not find anything that would help me, so I went through the smb.conf files available on the internet and came across “security=share” clause under [global] section of the file. Somehow it clicked… I put that in the conf file and restarted smbd… checked mount_smbfs from Panther and voila! it worked!

That’s for the adventure right in the first few hours of my day – who knows what’s left in the day!

Written by hiway

February 21, 2007 at 12:49 pm

Bluetooth on PCBSD 1.3

with one comment

I just installed brand new Altec Lansing surround sound speakers (for my laptop they are just 2.1 channel over 5.1 channel capable system… but whatever… they sound good!) and I was wondering if I could be lazy and listen to some music, especially change tracks and volume as I lay in the bed.

So finally I decided to get bluetooth running on this machine. It’s a Compaq Presario M2000 range laptop with AMD64 Turion (I’m stuck with 32 bits because of PCBSD… but that’s another story). So this is what I did…

Most importantly, it is imperative that any PCBSD (and that ultimately means FreeBSD) user must read through the FreeBSD Handbook before experimenting.

http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/network-bluetooth.html

I installed the required application (obexapp) as given and tried the commands. Most of them seemed to fail but the ping worked. Then I remembered reading something at the bottom of the handbook page – a command to disable role switching. Used that and now things seem like they would probably work!

Kudos to the maintainers of the software and the handbook for keeping things simple enough. However, I’m hoping we do get some automagic/ point-and-click functionality for this too… because typing in more than 3 commands scares any casual user. And yes… PCBSD is bringing a lot more casual users than FreeBSD might have expected, so no more procrastination!

Keep rocking *BSD!

Written by hiway

February 17, 2007 at 10:52 pm

Posted in BSD, FreeBSD, PCBSD, software, UNIX

Follow

Get every new post delivered to your Inbox.