James, On Thu, Oct 30, 2014 at 12:16 AM, James Carthew <[email protected]> wrote: > Just to add a bit to my previous post. What is the "correct" way to handle > System Preferences.app? is it to make a different plugin for each OS for > video/audio/networking and have the user choose hich bundle to install? or > is it to make wrapper libraries for Sound/Video/Networking and have a common > interface to the System Preferences bundle?
The SystemPreferences.framework is actually an implementation of the one on the Mac so the interface is the same. What I would recommend is to implement one plugin for each thing you want to add to preferences: audio, resolution, etc. In those plugins you should implement the operating system specific stuff either with #ifdefs or by compiling different files (via the makefile) on different platforms to handle the platform specifics. > On 30 October 2014 15:12, James Carthew <[email protected]> wrote: >> >> Realistically GNUStep is not ready to replace OSX by a long way. I was >> experimenting with doing so for a long time, but there hasn't been enough >> changes to the core components of the system yet, a lot more focus is on API >> features than application features. (System Preferences exists but lacks >> everything useful: Screen Resolution >> Changing/multimonitor/Wireless/Networking(Network manager or equivalent, >> wrapped)/Sound(Pulseaudio Wrapper)). >> The GWorkspace application is quite good, but could be tweaked to be more >> like the Mac Finder. It already has everything you really need. >> >> The big dealbreaker for me is Vespucci.app, realistically a web browser is >> critical to using gnustep on a daily basis, and right now it just doesn't >> have one. There used to be Mantella under Etoile which wrapped Firefox into >> a gnustep window which was pretty decent. But the subsystem of firefox it >> used has been deprecated so the code no longer works. >> >> A multi-tabbed terminal.app would also fix a lot of the frustration in >> using GNUStep as a standalone desktop system. >> >> I think GNUStep is going to remain a useful tool for porting Mac apps to >> Linux/other platforms, but outside of that, is going to remain very niche as >> a desktop system because it hasn't got the desktop system in place yet. >> Also, I know that my above post looks like I favor Linux as the underlying >> system giving examples such as PulseAudio/Network Manager, but I would >> actually prefer if the System Preferences area was able to wrap Windows/Mac >> and Linux systems equally. >> >> On 29 October 2014 09:56, Matt Rice <[email protected]> wrote: >>> >>> On Mon, Oct 27, 2014 at 2:39 PM, David Chisnall <[email protected]> >>> wrote: >>> > On 27 Oct 2014, at 21:04, Asiga Nael <[email protected]> wrote: >>> >>> >> Regarding app bundles, that's a desktop thing, not an OS thing, so >>> >> that can be done from GNUstep. >>> > >>> > Well, kind of. To really do it properly, you also want framework >>> > bundles, and that requires some rtld patching to allow looking for >>> > libraries >>> > in the correct place (not just lib/*.so, but following the symlinks inside >>> > the framework bundles). GNUstep implements framework bundles in a fairly >>> > hacky way. >>> >>> In theory its possible to do without changing some rtld implementations >>> (glibc almost, and solaris definitely) by using an rtld-audit library, >>> glibc's rtld needs to be extended to support DT_DEPAUDIT I have a >>> patch somewhere for this if someone really wants to take a go at it... >>> >>> then you can throw the framework support inside a dynamically loaded >>> shared lib... >>> >>> there is this here i threw together a number of years ago, not sure if >>> it all still compiles >>> >>> https://gitorious.org/framework-plugin-4gcc >>> >>> _______________________________________________ >>> Discuss-gnustep mailing list >>> [email protected] >>> https://lists.gnu.org/mailman/listinfo/discuss-gnustep >> >> > > > _______________________________________________ > Discuss-gnustep mailing list > [email protected] > https://lists.gnu.org/mailman/listinfo/discuss-gnustep > GC -- Gregory Casamento Open Logic Corporation, Principal Consultant (240)274-9630 (Cell) http://www.gnustep.org http://heronsperch.blogspot.com _______________________________________________ Discuss-gnustep mailing list [email protected] https://lists.gnu.org/mailman/listinfo/discuss-gnustep
