Hi, On Wednesday 21 May 2003 17:33, jay s wrote:
I started using Linux recently and I fell in love with it. I am learning a lot of stuff but I have a lot of questions.
1) I am also trying to learn system programming. Where I can find the source codes for the command line tools like ls, cp, mv, mount and other hundreds of commands.
I have Suse 8.1 on my laptop. I could only find the kernel source code, which I am not interested in right now. Does the Suse CDS have it?
You can determine the RPM package of a file with: $ rpm -qf /bin/ls coreutils-4.5.8-11 Thus your desired source code might be in coreutils-4.5.8-11.src.rpm. The source RPMs are normally on the SuSE source CD.
2) Another nagging question is, where do I install a new software? /usr/local, /opt or home dir? Until now, I have intalled all the software in my home dir. How do I make them available to other users? Who do I install them as, "root" or a "reqular user"? Do I have to differentiate between system software and application software? for eg: a new browser for every user; a build tool like "ant" just for me.
Usual places are /usr/local and /opt. You need write permissions for these directories.
3) How do I keep track of the software I installed?
RPM
I mean, some applications are tar balls, others are rpms (binary and source). "rpm" system has a database of its own. What about the tarballs? What if I Install an rpm of an application and try to install the same application again using a tarball?
$ rpm -V mypackage will tell you the something corrupted your installation.
eg: I installed a new orinoco wireless driver, packaged as a tarball. I had to toil, to install it in the right place, to bakup the old module, to document what I have done etc.
Too many questions, I guess. I actually have a lot more! (mapping special keys, micro-phone not working, audio-cds cannot be ripped ....)
Ciao Sebastian