Re: [Fink-devel] Binary Installer (0.8.0) not very usable on a non-dev system

2005-10-05 Thread Martin Costabel

David R. Morrison wrote:


On Oct 4, 2005, at 3:09 PM, Max Horn wrote:



Yo folks,

in the following I'd like to tell you a little story that happened  to 
me today... it is, unfortunately, kind of a sad story, but I  hope we 
can turn it into one with a happy ending eventually :-)


[snip]



Hi Max.

I've been aware for some time that we had some problems along these  
lines.  Although we pay lip service to the idea that fink could be  used 
without having the developer tools installed (and relying only  on 
binary packages), in practice -- as you point out -- none of the  fink 
developers do this themselves and so it doesn't get tested very  often.


Looking into this is, unfortunately, rather far down on my own list  of 
priorities for fink-y things to work on.  I'm hoping that your  story 
will motivate someone to step forward who wants to work on this  aspect 
of fink.


I remember having told a similar story here at least a year ago :-(
It is of course rather embarrassing when you just told someone it takes 
5 minutes to install Fink plus Octave and then after two hours you are 
still working on it..


In short: Fink works (and always has) on the basis that as soon as you 
use fink install or fink selfupdate (which may involve an install 
automatically and it may need not only to install a new version of the 
fink package, but also to build new versions of apt, dpkg, gettext 
etc)), you need the developer tools. Installing the make package is 
almost useless, the missing make command is just the first indication 
that the developer tools are needed. The FAQ says this actually rather 
early and clearly in section 6.


If you only use apt-get, you don't need the dev tools. The new 
--use-binary-dist flag in fink rather muddies the waters here, because 
it seems to promise that you can use the binary dist with the fink 
command which is only partly true.


In FinkCommander things are more clearcut: If you stay with the binary 
stuff, you can get away without developer tools (with some exceptions 
like scilab which actually uses make in its postinstall phase), if you 
do anything involving source, you need them.


We should probably state somewhere more prominently that if you want to 
work with Fink, you need a complete installation of MacOSX, and this 
involves

- the BSD tools and X11 from the system installation
- the Xcode developer tools

I don't think there is any serious excuse nowadays (except lack of 
information) for not installing all this. It takes 10 minutes and 2GB of 
disk space.


--
Martin





---
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
___
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/fink-devel


Re: [Fink-devel] Binary Installer (0.8.0) not very usable on a non-dev system

2005-10-05 Thread Martin Costabel

Max Horn wrote:
[]
He then got an error message by the installer, telling him about a  
problem setting up his .profile. Luckily I was around and he knew  that 
I was somehow affiliated with this Fink thingy. And indeed I  managed 
to fix the broken installation by changing his .profile  to .bashrc 
(no idea why this was necessary; interestingly, on my  PowerBook, also 
running 10.4, the exact opposite is the  case: .profile works fine, 
.bashrc apparently is being ignore). Well  I already filed a bug report 
for this (may not be our fault, but we  still have to deal with it, I am 
afraid). 


There has been a bug report on this for a long time (#1020637). The 
problem is that the pathsetup script, when run automatically by the 
installer, sometimes suffers from a split personality syndrome: In the 
middle of its execution, it seems to forget that it runs as $USER and 
starts thinking it is root. Therefore it creates ~/.profile with root as 
owner (but in the correct home directory of $USER) and worse, when it 
tests whether the new setting works, it does the test as root and 
concludes that it doesn't work.


The only thing usually necessary to repair this is to run

  sudo chown $USER ~/.profile

after the installation. Putting the source /sw/bin/init.sh into 
~/.bashrc is not considered good practice, because .bashrc is executed 
in every subshell, but not in a login shell.


I would have repaired the pathsetup script a long time ago (and I have 
an improved version here) if only this problem could be reproduced 
reliably. I can tell you that I ran many hours of tests and have run the 
Fink installer probably a couple of hundred times with all kinds of 
settings, but the problem is that you don't know what exact environment 
the Apple installer runs its postflight script in. In theory it runs 
with root privileges, but with $HOME and $USER set to the user who runs 
the installer. Some other information like the user's login shell is 
imported from netinfo etc, but you don't know what exactly.


In any case, I think we have a lot less complaints now since pathsetup 
is run automatically with the installer compared to the time when we 
recommended to do this after the installation.


--
Martin



---
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
___
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/fink-devel


Re: [Fink-devel] Binary Installer (0.8.0) not very usable on a non-dev system

2005-10-05 Thread Dave Vasilevsky


On Oct 5, 2005, at 2:56 AM, Martin Costabel wrote:
If you only use apt-get, you don't need the dev tools. The new -- 
use-binary-dist flag in fink rather muddies the waters here,  
because it seems to promise that you can use the binary dist with  
the fink command which is only partly true.


Yeah, my instructions to new users has always been install Fink with  
the binary installer, then use apt-get. If it's desirable, we could  
make fink-the-program display a Very Prominent Warning if someone  
tries to run it without the dev tools installed, suggesting that the  
user either install the tools or use apt. Yea or nay?


We may also want to talk with the FinkCommander folks to see if they  
can make FC deal with this situation gracefully.


Dave



PGP.sig
Description: This is a digitally signed message part


[Fink-devel] Re: Binary Installer (0.8.0) not very usable on a non-dev system

2005-10-05 Thread Sebastien Maret
Martin Costabel [EMAIL PROTECTED] writes:

 We should probably state somewhere more prominently that if you want
 to work with Fink, you need a complete installation of MacOSX, and
 this involves
 - the BSD tools and X11 from the system installation
 - the Xcode developer tools

 I don't think there is any serious excuse nowadays (except lack of
 information) for not installing all this. It takes 10 minutes and 2GB
 of disk space.

Moreover, BSD tools, X11 and XCode are now present on Tiger DVD (I
can't remember if it was already the case on Panther).  You don't need
to go to developer.apple.com and create an account anymore as it used
to be. Make it a requirement for a Fink installation sounds reasonable
to me.

Sébastien

 



---
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
___
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/fink-devel


Re: [Fink-devel] Binary Installer (0.8.0) not very usable on a non-dev system

2005-10-05 Thread David R. Morrison


On Oct 5, 2005, at 6:55 AM, Dave Vasilevsky wrote:



On Oct 5, 2005, at 2:56 AM, Martin Costabel wrote:

If you only use apt-get, you don't need the dev tools. The new -- 
use-binary-dist flag in fink rather muddies the waters here,  
because it seems to promise that you can use the binary dist with  
the fink command which is only partly true.




Yeah, my instructions to new users has always been install Fink  
with the binary installer, then use apt-get. If it's desirable, we  
could make fink-the-program display a Very Prominent Warning if  
someone tries to run it without the dev tools installed, suggesting  
that the user either install the tools or use apt. Yea or nay?


We may also want to talk with the FinkCommander folks to see if  
they can make FC deal with this situation gracefully.




How about if instead we actually try to make it work without the dev  
tools?  Things were originally designed that way... And particularly  
if we ever get the project of more frequent bindists off the ground,  
this could be useful.


   -- Dave



---
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
___
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/fink-devel


Re: [Fink-devel] Binary Installer (0.8.0) not very usable on a non-dev system

2005-10-05 Thread Max Horn


Am 05.10.2005 um 09:25 schrieb Martin Costabel:


Max Horn wrote:
[]

He then got an error message by the installer, telling him about  
a  problem setting up his .profile. Luckily I was around and he  
knew  that I was somehow affiliated with this Fink thingy. And  
indeed I  managed to fix the broken installation by changing  
his .profile  to .bashrc (no idea why this was necessary;  
interestingly, on my  PowerBook, also running 10.4, the exact  
opposite is the  case: .profile works fine, .bashrc apparently is  
being ignore). Well  I already filed a bug report for this (may  
not be our fault, but we  still have to deal with it, I am afraid).




There has been a bug report on this for a long time (#1020637). The  
problem is that the pathsetup script, when run automatically by the  
installer, sometimes suffers from a split personality syndrome: In  
the middle of its execution, it seems to forget that it runs as  
$USER and starts thinking it is root. Therefore it creates  
~/.profile with root as owner (but in the correct home directory of  
$USER) and worse, when it tests whether the new setting works, it  
does the test as root and concludes that it doesn't work.


The only thing usually necessary to repair this is to run

  sudo chown $USER ~/.profile


Actually we did that, but it didn't help. Odd...



after the installation. Putting the source /sw/bin/init.sh into  
~/.bashrc is not considered good practice, because .bashrc is  
executed in every subshell, but not in a login shell.

Yeah I know, but in this case it was the only way we got it to work :-/


Bye,
Max



---
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
___
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/fink-devel


Re: [Fink-devel] Binary Installer (0.8.0) not very usable on a non-dev system

2005-10-05 Thread Daniel Macks
On Wed, Oct 05, 2005 at 09:18:12AM -0700, David R. Morrison wrote:
 
 How about if instead we actually try to make it work without the dev  
 tools?  Things were originally designed that way... And particularly  
 if we ever get the project of more frequent bindists off the ground,  
 this could be useful.

What packages (.pkg, not fink) are part of the base system install? Do
we get all the /usr/bin BSD commands, or will we continue to have to
have packages like gzip and tar be essential to make sure dpkg can use
those commands (/me notes ?

As for the case at hand, we could easily make 'make' essential and a
dependency of 'fink'. Or there is a pure-perl implementation of the
make command available we could embed in fink (or at least its build
suite).

If the issue is that fink needs certain things only when not using
bindist, maybe we should have 'selfupdate' give a huge warning iff
those things are not present and user tries to selfupdate using cvs or
rsync.

dan

-- 
Daniel Macks
[EMAIL PROTECTED]
http://www.netspace.org/~dmacks



---
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
___
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/fink-devel


Re: [Fink-devel] Binary Installer (0.8.0) not very usable on a non-dev system

2005-10-05 Thread Daniel Macks
On Wed, Oct 05, 2005 at 09:25:37AM +0200, Martin Costabel wrote:
 
 There has been a bug report on this for a long time (#1020637). The 
 problem is that the pathsetup script, when run automatically by the 
 installer, sometimes suffers from a split personality syndrome: In the 
 middle of its execution, it seems to forget that it runs as $USER and 
 starts thinking it is root. Therefore it creates ~/.profile with root as 
 owner (but in the correct home directory of $USER) and worse, when it 
 tests whether the new setting works, it does the test as root and 
 concludes that it doesn't work.
 
 The only thing usually necessary to repair this is to run
 
   sudo chown $USER ~/.profile
 
 after the installation.

If the file is being created in the correct place, we know $HOME is
not getting corrupted. That means we can check its owner, then chown
the dotfile acordingly and make sure we're running under that user
when doing the test.

dan

-- 
Daniel Macks
[EMAIL PROTECTED]
http://www.netspace.org/~dmacks



---
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
___
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/fink-devel


Re: [Fink-devel] Binary Installer (0.8.0) not very usable on a non-dev system

2005-10-05 Thread David R. Morrison


On Oct 5, 2005, at 9:41 AM, Daniel Macks wrote:



On Wed, Oct 05, 2005 at 09:18:12AM -0700, David R. Morrison wrote:




How about if instead we actually try to make it work without the dev
tools?  Things were originally designed that way... And particularly
if we ever get the project of more frequent bindists off the ground,
this could be useful.




What packages (.pkg, not fink) are part of the base system install? Do
we get all the /usr/bin BSD commands, or will we continue to have to
have packages like gzip and tar be essential to make sure dpkg can use
those commands (/me notes ?



All of the standard BSD commands are there, if the user has installed  
BSD.pkg.  I believe that this may have required a custom install at  
some point in time, but I think its installed by default now.   
Certainly I wouldn't suggest anyone try to use fink without this  
being present, and perhaps fink should test for its presence.





As for the case at hand, we could easily make 'make' essential and a
dependency of 'fink'.



Well, binary-only users shouldn't need 'make'; we should try to  
design things so that they don't.





If the issue is that fink needs certain things only when not using
bindist, maybe we should have 'selfupdate' give a huge warning iff
those things are not present and user tries to selfupdate using cvs or
rsync.



More than just a warning: I would like to see the cvs and rsync  
options as being available only if you have the dev tools installed.   
Binary-only users should be using the point update method.


  -- Dave




---
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
___
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/fink-devel