Serious Geek RoR newbie: wishes to know EXACTLY what/where all is installed by packages. Tnx!

[TOP lINE: is there a linux program that will tell me where all the installed files went?]

Hi all....great to be here... i'm pretty relentless yet very new to RoR and fairly new to Linux [went with ubuntu 7.10 for the time being - learing pure Deb and/or Slack/BDS for the future]

anyhooo.. So... Coming from my highly understood XP install [frankly it feels yuk these days] i'm wishing to know the Linux way of finding out EVERYTHING that a package installs and WHERE it installs.

I'm having a great time with nix and simply can't find the utility that's best for telling me where ALL is as far as directories and even dependencies goes.

So... i've install: [have played successfully with manual installs as well]

ruby/rubygems/rails/mongrel/lighttpd/ and as well, apache2/mySQL etc etc etc

I'm not comfortable that they all simply work.... I wanna know where EveryThing IS...!!!

Can any guru tell me the BEST way/app to learn with..?

big thanks!

yvonney

hehere thanks Ryan... after posting I realized I coulda been clearer and that I was technically off topic...

OK.... so I install ruby and everything goes somewhere... on my XP box I know what goes where.. I LIKE to know...it's led me to be good enough at making apps portable/ fixing them etc etc etc...

Then I install the other programs [currently on ubuntu 7.10] and ...well, does it make sense to want/need to know where things are installed? Maybe I've missed something about linux/

I mean I'm such a RoR newbie [nix as well actually] I don't know what's what.... so... I thought.. hey, there must be a program or site that can tell me EXACTLY where everything goes...

I mean at a RoR level I'm having trouble figuring out what basic tutorials don't have the right directories.. AND I'll read a mac tutorial [or win] and I'd like to have knowledge to be able to translate even the smallest differences between OS's and distros.

I'm just not happy installing a bunch of apps without knowing where everything is...

:)))))) thank you

y

Sounds like obsessive compulsive disorder to me :slight_smile:

Gurus either just know or just have confidence.

*NIX,like Rials, is about conventions. Things are in conventional places: /etc/ /home, /usr/bin, /usr/sbin/ /usr/share/man/, all depending on context.

Of course all this can be overridden. You can set PATH, NLSPATH, MANPATH, TIMEFORMAT, TMOUT, TMPDIR, MAILPATH, CDPATH and others to affect how the shell behaves; you can override the default configuration file locations of programs by environment variables and parameters. See documentation on LD_PRELOAD, LD_LIBRARY_PATH, and other LD_* variables influence the behaviour of the dynamic loader/linker; LANG (and its children that affect the print formatting libraries - LC_COLLATE, LC_CTYPE, LC_MESSAGES, LC_MONETARY, LC_NUMERIC, LC_TIME, cf. locale(5)); TERM, The terminal type for which output is to be prepared; PAGER, the user's preferred utility to display text files; EDITOR/VISUAL, the user's preferred utility to edit text files. The TZ and TZDIR environment variables affect how time is formatted and displayed.

There are then application specific variables. You might them in your shell start-up or in scripts. Ones that might be of interest to ruby/rails include

RUBY_VERSION, which determines the path under /usr/lib/ruby GEM_PATH

The last if on use if you are on hosted machine and don't have root permission to install gems. You can create a directory ~/rubygems and install them there and set GEMPATH to search there before the system gems.

Try running various programs with "--help" on the command line to see what options exist. Red the manual pages or the developers pages.

Try running the 'env' command to see what environment settings are current.

In many ways *NIX is simpler to understand than Windows. The configuration files are usually text files, one for each application, and the settings have text documenting them; the settings not employed are also documented there.

Of course there will always be programmers who roll out applications that fail to follow the conventions. Some are just arrogant, some have come form other environments (not just Windows) and aren't familiar with the conventions yet.

Rails claims to favour convention over configuration. In reality it had followed the *NIX Way of the configuration is in the convention.

Ah, it was all so much easier 30 years ago ....

Ryan Bigg said the following on 10/12/07 06:23 PM:

Here's a quick *nix tip for you. If you know a command (say ruby) and want to know for sure which program your are running (where it's called from) use the command:

which ruby /usr/bin/ruby

If you want to know what your path looks like: echo $PATH /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/usr/local/ mysql/bin

You can of course execute any executable from anywhere if you specify the full path, but usually you command will live in one of the bin folders of your path environment variable.

If you want to know the location of a particular installed gem you can use: gem which mongrel /Library/Ruby/Gems/1.8/gems/mongrel-1.1.1/lib/mongrel.rb

Hope that helps a bit.

hehehe! yes, definitely a 'healthy OCD'... just reading replies now.. thank you thank you um, 1) I have no problem running as root. 2) I don't fear in the slightest altering the text files as root.

Maybe cause it's not critical what I'm doing

3) At some point I'd love to see portable apps for linux be a big thing and if that's not likely, wanna find out, why.

anyways... I will eventually need to be able to build all files from source or, um.. I won't have a life! :slight_smile: Attempts at humor aside... writing as an appreciation here... much.

[TOP lINE: is there a linux program that will tell me where all the installed files went?]

Depends on the distro since they all have different packaging systems. Read the packaging docs for your distro of choice.

Ubuntu is based on Debian so the Debian APT guide should help.

anyhooo.. So... Coming from my highly understood XP install [frankly it feels yuk these days] i'm wishing to know the Linux way of finding out EVERYTHING that a package installs and WHERE it installs.

I'm having a great time with nix and simply can't find the utility that's best for telling me where ALL is as far as directories and even dependencies goes.

man locate