discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: GNUstep Live on OSnews


From: David Chisnall
Subject: Re: GNUstep Live on OSnews
Date: Mon, 31 Jul 2017 15:22:54 +0100

On 31 Jul 2017, at 14:56, Liam Proven <lproven@gmail.com> wrote:
> 
> On 31 July 2017 at 15:20, David Chisnall <theraven@sucs.org> wrote:
>> On 31 Jul 2017, at 12:58, Xavier Brochard <xavier@alternatif.org> wrote:
>>> 
>>> I don't think it's a loosing battle as long as it is kept light. LXDE, LXQt,
>>> and XFCE are successful while they offer far less "fun" than the big ones.
>> 
>> There’s one thing that these all have in common: they’re completely unlike 
>> GNUstep.  They all use mature toolkits that are also used by larger desktop 
>> environments, making it trivial to substitute GNOME or KDE applications when 
>> they don’t have a native one.
> 
> Considering GNUstep *as a desktop*, then I do not see any important 
> difference.

Considering GNUstep *as a desktop* is like considering Linux *as a toaster*.  
GNUstep is not a desktop, GNUstep is a set of libraries, which you could use to 
build a desktop (and which three projects that I’m aware of have tried).

> Seriously. I run XFCE on my low-end machines, and also sometimes LXDE;
> I used to run Crunchbang.

And these are window managers that conform to fd.o specifications and play 
nicely with GNOME and KDE applications.

> All have fairly lightweight minimal desktops with limited sets of
> apps. If I add a new app from a different desktop, it appears in the
> menus, I can launch it, it can cut'n'paste from other apps, it appears
> in the window list, etc. It's just another app. It may look a little
> different but it's just another app.

Now try doing the same with GNUstep apps.

> Users don't care if it has a different object model or was written in
> a different language, as long as it works and the default keystrokes
> are more or less the usual ones and the menu bar is in the usual
> place.
> 
> The main concern is if installing a 5MB app sucks in 500MB of
> dependencies and thrashes the disk for 10sec when you load it.

Have you even looked at the set of dependencies for GNUstep recently?  It only 
looks small if they’re already installed, but even ICU and Cairo bring in a 
fairly big dependency chain (ICU itself is around 50MB) and libxml2, gnutls, 
and so on all add up.  It might be a bit less than 500MB, but it’s not far off.

> None of that would be massively hard to arrange for
> GNUstep-as-a-desktop. App missing from the portfolio? Fine, stick in
> the most popular lightweight equivalent and its libraries. Job done.

Unless you want that app to look, feel, or behave like any of your other apps.

> 
>>> Even EDE (http://equinox-project.org/) has success in the small FLTK world.
>> 
>> If your goal is a desktop environment that enjoys success in the small 
>> GNUstep world, that’s one thing.  If your goal is one that encourages new 
>> developers to use (and, ideally, contribute to) GNUstep, that’s a completely 
>> different thing.
> 
> Why?
> 
> Please explain this. It is only the 2nd that interests me. Why is it 
> different?

Because the second requires that you demo things that people care about.  If 
you want a user to switch to a new DE, it has to be at least as good as the one 
that they're using.  Some will settle for almost as good but with the potential 
to become a lot better if they contribute.  Just saying ‘look, here’s a DE 
that’s ugly, missing important features, but it’s based on some really neat 
tech’ doesn’t cut it.

If you want to create something that existing die-hard GNUstep supporters might 
use, then being based on GNUstep is a selling point.  For everyone else, being 
based on GNUstep is irrelevant and is the thing that you’re trying to convince 
them is good.  

>>> Without forgetting Enlightenment…
>> 
>> Life is much better if you forget Enlightenment.  The person who wrote the 
>> Daily WTF article was far more kind than the design deserves.
> 
> I had not seen this. I googled.
> 
> Do you mean this?
> 
> https://what.thedailywtf.com/topic/15001/enlightened
> 
> That's rather amusing. I had long wondered why it remained so obscure.
> Now I am less puzzled.

Yes, that’s the one.  I talked to some of the devs at FOSDEM a few years ago 
about their reinvent-the-wheel IDL.  The idea that ‘char*’ wasn’t enough 
information for a non-C language to use to call their APIs hadn’t occurred to 
them (is it a string or binary data?  Is it null terminated, or is the length 
specified elsewhere?  Who is responsible for freeing it?).


>>> Also, remember that many distribs offer
>>> GNUstep as a desktop install option.
>> 
>> Do they?  I can’t remember the last time I saw one.
> 
> No, me neither!
> 
>> I can talk for a long time about why Étoilé failed, but the key problem was 
>> that we didn’t provide an incremental adoption path.  This is partly my 
>> fault: I was opposed to making it too easy to run our stuff on OS X, which 
>> meant that we never tapped into a large pool of Mac and iOS developers who 
>> would write code that could have then been easily ported to a developing 
>> Étoilé system.
> 
> I can no comment on that.
> 
> My take is much simpler:
> 
> The project never released anything.

Actually, we did.  We didn’t release an entire Étoilé thing, but we released a 
bunch of things, and many of them were packaged.

> Any instructions that begin "download the source and run MAKE" and I
> walk away, basically. Life is too short.

Normal users don’t follow those instructions, packagers do.  Not sure about 
other platforms, but packaging Étoilé stuff on FreeBSD was no harder than 
packaging any other GNUstep app (e.g. 
https://svnweb.freebsd.org/ports/head/archivers/freetar/Makefile?revision=397315&view=markup
 ).

>> KDE with the right theme will get a lot closer than a GNUstep-based desktop 
>> at the moment.
> 
> Only in trivial cosmetic ways, which don't really matter.

Except to end users, who are the ones that are going to be seeing it.

>> Source compatibility with the same APIs?  We can give them that (to a 
>> degree), but it doesn’t sound like that’s what they want.
> 
> Bingo. There is 1 answer that gets a "yes", but you dismiss it. Why?

Because source compatibility is not a selling point for a DE.  First you have 
to sell the DE, then you can sell the technology that it’s built on.  It *is* a 
selling point for an app though.  A decent app that works on macOS and 
integrates cleanly with a GNOME or KDE desktop using GNUstep is a good 
advertisement for GNUstep.  

> What GNUstep could provide, it seems to me, boils down to these things:
> 
> [1] A NEXTstep-like desktop for Linux (and other free Unices)
> 
> As a clean, attractive, lightweight desktop, and a re-creation of one
> of the most widely-admire desktops ever, this has clear appeal.

Your email has already pointed to a bunch of clean, lightweight, DEs that fill 
this niche - it’s saturated.  Adding GNUstep brings nothing to this that end 
users care about.

> 
> [2] A rich, clean set of libraries and programming tools for app development
> 
> Something that few other desktops can offer and a selling point to
> FOSS developers.

It’s a great selling point, but only if you can showcase something that’s 
written using them that they care about.

> [3] Tools for building cross-desktop and cross-platform apps
> 
> A clear message that the tools do not limit you to the GNUstep
> desktop, but will run on other desktops as well as Windows and Mac.

And a GNUstep desktop takes away from this message.  Should I use Qt and have a 
native KDE app that integrates cleanly with GNOME, use GTK and have a native 
GNOME app that integrates cleanly with KDE, or use GNUstep and have a native 
GNUstep app that barely integrates well with WindowMaker?

> [4] Tools for building apps against both native macOS and Linux.
> 
> If 4 selling points aren't enough, what are?

If I don’t care how ugly my app is, why not use Qt which has working (albeit 
horrible) Mac support?  If I do care, then working on Linux isn’t enough, 
working on KDE/GNOME is important.

> But first, there must be something to show people, and the obvious
> candidate, ISTM, is to show working code. And the way to show working
> code is to show an installable distro that you can use for your whole
> computing life, with a whole set of apps.

Which would impress you more: 

1. A well-polished app that integrates well with the environment that you’re 
used to.
2. A half-arsed DE that has a bunch of small apps that kind-of work.

> And, just like macOS, as an _optional install_ for the 1% of users who
> also program, dev tools and libraries.

An open source project is only successful if it gets that 1% engaged.

David




reply via email to

[Prev in Thread] Current Thread [Next in Thread]