Go Back   The macosxhints Forums > OS X Help Requests > UNIX - General



Reply
 
Thread Tools Rate Thread Display Modes
Old 02-20-2002, 12:57 AM   #1
Titanium Man
Guest
 
Posts: n/a
OSXGNU vs. FINK?

Hi everyone, I was just wondering what your thoughts are on which is a better place to get my Unix fix. Osxgnu.org or through fink? I have fink installed already, does it matter if I mix and match? I installed bash from osxgnu and no problems so far but... Are there any advantages to installing precompiled packages over compiling them yourself, or is it best to take the time and compile them? Thanks, and greetings to all!
  Reply With Quote
Old 02-20-2002, 01:53 AM   #2
sjoshi
Triple-A Player
 
Join Date: Jan 2002
Location: California
Posts: 113
Binary/Source package

If the capabilities (i.e., features) of a binary package satisfy your
requirements, then installing it in the binary form is sufficient.
The installation is simpler, faster, and occupies less disk space.

If you are on the bleeding edge of the development for a package
and are trying to keep up with every new patch that is released
for it, then it makes sense to download the source and compile it
on your own machine. It creates a source code control system
on your disk and downloads all the sources up to the level that you
specify. Then it compiles it and installs it. This is also automated,
but takes up more disk space, and takes longer to install.

I expect that typically I would have most packages installed as binaries.
A few packages where I need the latest features or bug fixes being
released frequently, I will install in the source format. (Like right now
I wish I could take care of the incompatibility between the latest OS
release 10.1.3 and PHTclock by recompiling the source with a patch
to fix it. :-)
sjoshi is offline   Reply With Quote
Old 02-20-2002, 02:07 AM   #3
mervTormel
League Commissioner
 
Join Date: Jan 2002
Posts: 5,536
TiMan, great question. how do these things co-exist? as for which is better, it depends on the implementation and the job you need to accomplish. and some sources let you compile with certain flags that alter the binary, like LESSSECURE for less, for instance. it's a matter of assesing need and determining requirements...

from a mgt point of view...

well, fink has the distinct advantage of doing all its dirty business in the /sw world. i like that. i can keep my vanilla OSX install clean and refer to it directly.

it's easy to compare installed commands with vanilla versions by temporarily swapping my PATH with a PATH that puts /sw at the end. the man/info pages is a different animal that causes me some consternation; i can't find the OSX man pages for the OSX mv command.

but i dislike package installs that put themselves in /usr

why? hard to trace. i have no audit of what went where. did it ask for authentication so it could stomp all over what was rightfully there to begin with?

i usually try and tell those package installs to put themselves in a benign place, offworld, so i can examine them and place them myself either in ~/bin or somewhere else in my PATH with copious documentation somewhere explaining where they came from. it's a real life saver in the long run.

also, i want to examine these things for trojan horses. i trust nothing and want to examine all the code for sanity.

i think you can mix and match all the distributions, as long as you have some management of what's what. that's the tricky part. hmmmm, good idea for a song.

(obSong: Oh How It Hurts; Skeets McDonald; Don't Let The Stars Get In Your Eyes)

Last edited by mervTormel; 02-20-2002 at 02:09 AM.
mervTormel is offline   Reply With Quote
Old 02-20-2002, 02:36 AM   #4
sao
Moderator
 
Join Date: Jan 2002
Location: Singapore
Posts: 4,237
Timan,

from the fink FAQ:

<<How is Fink different from the BSD port mechanism (this includes OpenPackages and GNU-Darwin)?

It's written in Perl, not make/shell. Thus it doesn't rely on special features only found in BSD make. There is no need to flag packages that need GNU make to build.

dpkg provides sophisticated management for binary packages - smooth updating, special handling for configuration files, virtual packages and other advanced dependencies.

Fink doesn't install into /usr/local unless explicitly requested and doesn't require fiddling with /usr/bin/make or other system-provided commands. That makes it safer to use and reduces interference with Mac OS X and third-party packages to a minimum.>>

MerTormel explained it very clearly, but just to make it official, again quoting the fink FAQ:

<<Why doesn't Fink install into /usr/local?

There are several reasons, but the common line is "because breakage will occur".

Reason One: Third-party software. /usr/local is the well-established place to put software that is not part of the system shipped by the original vendor. This means that it is a good place to put stuff. However, it also means that other people will put stuff there, too. Most install routines will just overwrite what's there - this also applies to dpkg. One can, of course, choose not to install third-party software in /usr/local. Unfortunately, most installers don't tell you beforehand what they will install where.

Reason Two: /usr/local/bin is in the default PATH. This means that your shell will find the install programs without additional measures. But it also means that you do have to take additional measures if you do not want to use the programs. In extreme cases, this can also affect the system itself - many parts depend on shell scripts.

Reason Three: The compiler tool chain searches /usr/local by default. The compiler searches /usr/local/include for header files and the linker searches /usr/local/lib for libraries. Again, this is sometimes a welcome convenience, but it's very hard to disable should the need arise. You can easily disable the compiler by putting a garbage file called stdio.h into /usr/local/include.

All that said, it is possible to install Fink into /usr/local. The installation script will warn you explicitly, but proceed once you acknowledge that you're doing this at your own risk.>>

I prefer to install from source using fink.

By the way fink has a package for installing Bash version 2.05a.
I actually installed it myself a couple of days ago.

Cheers...

Last edited by sao; 02-20-2002 at 02:39 AM.
sao is offline   Reply With Quote
Old 02-20-2002, 11:34 PM   #5
Titanium Man
Guest
 
Posts: n/a
Hi everyone, and thanks for the info! I figured there must be a good reason to sit around and watch screenfulls of gobledy-gook pass by for hours but I just didn't know what it could be. Sao, I had originally installed bash from fink as well, but since I wanted to make it my default shell, I got the precompiled version that puts it in /bin where the other shells are. The documentation was much better for that version too. But, as usual, I bet there was better way that just didn't occur to me
  Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump



All times are GMT -5. The time now is 06:20 PM.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2014, vBulletin Solutions, Inc.
Site design © IDG Consumer & SMB; individuals retain copyright of their postings
but consent to the possible use of their material in other areas of IDG Consumer & SMB.