← Back to team overview

kicad-developers team mailing list archive

Re: OSX Installer debate


On Sep 13, 2010, at 16:13 PM, Dick Hollenbeck wrote:

> On 09/13/2010 10:01 AM, Martijn Kuipers wrote:
>> On Sep 13, 2010, at 15:20 PM, Dick Hollenbeck wrote:
>>> On 09/13/2010 08:53 AM, Martijn Kuipers wrote:
>>>> How do we want the OSX packages to look like (installer) ?
>>>> At the moment we have a DMG-generated from scripts and one generated with CPack (I patched my CMakeList.txt with the patch from Jerry floating around on the list).
>>>> Neither are satisfactory, in my opinion.
>>>> Let me explain:
>>>> If we add docs and libraries to the DMG file, then it is no longer Drag&Drop. 
>>>> Normally you drag the application (on our case the Kicad folder with all applications) to the Applications link, which are both shown by the installer in the finder. However, if we also include libraries in the DMG, then these need to be installed in /Library/Application Support/kicad or in $HOME/Library/Application Support/kicad (according to Marco). We don't want the user to drag them into the applications.
>>>> I see 2 posible solutions:
>>>> 1. Use packagemanager, which allows more complex installs. Disadvantage is that you have no clue what is installed where and since there is no uninstall I think it's rather messy.
>>>> 2. Split the libraries and applications in separate DMGs. I personally like this option, since it allows you to easily update either Kicad or the Libraries. Not sure what to do with docs. Can we put them in a sub-folder in the Kicad folder under applications? Same with scripts ?
>>>> I would love to hear your opinions on this. 
>>>> /Martijn
>>> There are two classes of users:
>>> 1) those that install from a pre-built package.
>>> 2) those that install by building the source themselves.
>>> In the linux world there is a package manager person for each distro,
>>> and he is responsible for users in class 1) on his distro.
>>> So I actually think you should be talking to those people for that
>>> category of user.
>> Sure. For Kicad who is the OSX package manager? I hope (s)he is reading this list. As for Linux, I think Kicad ought to provide a static-version (should fit most distros). Of course, if someone wants to add deb, rpm, etc., then that is fine with me, it is just more work because of the version dependancies between the different components. Wrapping a static-package inside deb or rpm is not a good solution (my personal opinion).
>>> For category 2) users, I see no reason why cmake and/or one of its
>>> sibling programs cannot be used.  This makes it easier for those of use
>>> that do not use OSx to stay in the conversation.
>> I don't object to cmake at all. I think the DMG is not as nice as it could be, but I have not spend much time looking at all the options CPack gives you.
>> If there is an area where Win/Linux/OSX can be different, it is in the installers. And my questions were solely related to the OSX installer, where I don't think the split I mentioned is so different from what we have now.  I don't think there are libraries included in the kicad source, they are in kicad-lib-committers/kicad/library. 
>> My suggestion would be to create 2 installers;
>> - Kicad application
>> - Libraries (with Libraries I mean eeschema components, footprints, packages3d and modules). The name is confusing, but I did not mean things like wxWidgets, Boost, etc.
>> I am a "User 1" type, if I can find a recent enough version, otherwise I am "User 2". But even as "User 2" I prefer to create packages and then install those. 
>> /Martijn
> Sorry, I still don't understand what problem you are trying to solve. 
> Maybe one problem at a time would be best in your communications.
Sorry, I'll try to be more clear. It is one problem only, really.
> Have you looked at the debian package maintainer strategy?  I think you
> can download the debian package builder scripts.  It was Richard Burton
> who was maintaining that package and we had heard he wanted out because
> of medical school demands.
> He splits up the entire project into a number of "packages" like you
> suggest.  But he uses some shell scripts and cmake scripts to do it.
You are right, this is very similar to what I suggested. 

> I think if you clarify and shrink down the specif problem you are trying
> to solve, then maybe you will get more helpful feedback from others.
Perhaps you are not familiar with the OSX installation process. It is extremely simple. You drag the application into the Applications folder and you are done. Uninstalling is simply done by deleting the application. OSX does not have the wonderful install/uninstall/upgrade/solve dependencies of Debian (I am huge fan of Debian and it is my only OS next to OSX). 
However, its simplicity only works for single programs, where everything is in one place. Not something like Kicad, where the libraries (components, footprints, etc) are shared among the programs.  Why? Because you would need to move the different parts to different locations manually. The new package-system solves this, by automatically installing things to the various locations. But without an uninstall, I really think this is rather messy. You somehow have to know where the things get installed to be able to delete them.

> I also like to install from a package when I can, because of course it
> updates the package management database on my system.  That is an
> attractive thing.  But Kicad is one of those areas where I make an
> exception and simply use
>   $ sudo cmake install
> because I need to use the latest stuff always.  If I am not using the
> latest stuff I cannot fix it or enhance it.
Sure, that makes sense. For all others there are the PPAs created by Philip Axer (nightly snapshots).

The debian (Ubuntu) approach seems to be:
kicad - the programs
kicad-common - the libraries
kicad-doc-XX - the docs for each language

I will try to follow that. 


Follow ups