kicad-developers team mailing list archive
-
kicad-developers team
-
Mailing list archive
-
Message #16289
Re: PATCH: Setting OS X KISYSMOD value in bundle
Hi Adam, hi all,
that IMHO could be problematic (depends on what you intend to have).
For a single-user environment this might be OK, but it then forces
modules to be in a machine specific folder common to all users. In a
multi-user environment you probably might not want to have that. And, I
never read somewhere that you can override this setting of the bundle
somehow, so this could be a once and for all decision (as long as you
don't fiddle around with the Info.plist) and you wouldn't need an
environment variable at all...
Further, I think I tried once to use "~" or "$HOME" in Info.plist but it
doesn't expand such variables. So, you obviously can't set the path to
something in user home with this method.
Last, I don't know if always any (non-root) user is allowed to write
into /Library/Application Support/kicad?
In my opinion, the old concept of search paths did fit such hardcoded
paths much better than it is currently with environment variables. If
environment variables are too hard to set, then probably a configuration
setting directly from some "Settings" menu would be better.
My opionion: I wouldn't want to have it that way, but since I am the
only one using KiCad on my machines I can also live with some links
pushing things into the spot I want to have it.
This altogether is somewhat inconsistent, because eeschema will *always*
look in <base>/library with <base> being (in that order):
* $KICAD
* ~/Library/Application Support
* /Library/Application Support
* <kicad.app>/Contents/SharedSupport
So, if the path should be fixed for pcbnew, I would at least expect
eeschema to behave the same way (i.e., removing all the other paths and
also pointing it to the one global
/Library/Application/Support/kicad/library).
Regards,
Bernhard
PS:
I just had a brief look at the Apple docs and did see here
https://developer.apple.com/library/mac/documentation/General/Reference/InfoPlistKeyReference/Articles/LaunchServicesKeys.html#//apple_ref/doc/uid/20001431-106825
that obviously the environment set in the Info-plist is only valid when
launching via an icon, but not via command-line:
<<<
These environment variables are set only for apps launched through
Launch Services. If you run your executable directly from the command
line, these environment variables are not set.
>>>
So, another issue that already now with the KIGITHUB variable might lead
to confusion...
On 2015-01-08 06:52, Adam Wolf wrote:
> Hi folks,
>
> As you may know, it's harder than it seems to set an environment variable on a bundle in OS X as a user.
>
> I have a patch here for the OS X bundle that sets KISYSMOD to /Library/Application Support/kicad/modules
>
> Please let me know if there are any questions or comments.
>
> Thanks!
>
> Adam Wolf
> Cofounder and Engineer
> W&L
>
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers [1]
> Post to : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers [1]
> More help : https://help.launchpad.net/ListHelp [2]
Links:
------
[1] https://launchpad.net/~kicad-developers
[2] https://help.launchpad.net/ListHelp
Follow ups
References