Bruce,

GNUStep supports Ojbc2.0 with libobjc2.0 and clang but the versions packaged 
with Debian or Ubuntu are compiled with the old runtime.

https://repo.gnustep.ch/ can help you to install "gnustep2" which pulls in 
versions compiled with clang and libobjc2.
I use this combination since years under Debian and Ubuntu on x86_64 and arm64 
for my own applications as I need ARC for my peace of mind.

How to build from source I have documented here:

https://github.com/andreasfink/ulib/blob/master/doc/README-Debian12-bookworm.txt
https://github.com/andreasfink/ulib/blob/master/doc/README-Ubuntu-22.txt

However the graphical artefacts you stated are for sure not in relation to 
libobjc2 because this is gui stuff. And thats in gnustep-gui.
The only version which is not up to date on repo.gnustep.ch is currently 
Ubuntu22 on Intel as I run into a strange error with configure of gnustep-base 
as it does not want to detect my libiconv-1.17 version for some reason. The 
same version I compiled and used under Ubuntu22 on arm64 and on Debian worked 
just fine. (if anyone has a hint on how to convince ./configure to just use my 
libiconv I pass, let me know. --with-libiconv-library=/usr/local/lib/libiconv.a 
 was not enough).


> On 17 Dec 2023, at 14:43, bruce <darkoverlordofd...@gmail.com> wrote:
> 
> That's the version of Obj-C. Linux is stuck on 1.9. Obj-c 2.0 released in 
> 2006, as I'm sure you are aware.
> I can use this build https://github.com/plaurent/gnustep-build to create 2.1 
> on Linux. The FeeBSD is stuck at 2.0, as they no longer have a maintainer of 
> their gnustep port.
> 
> On Sun, Dec 17, 2023 at 1:15 PM Gregory Casamento <greg.casame...@gmail.com 
> <mailto:greg.casame...@gmail.com>> wrote:
>> Bruce,
>> 
>> On Sun, Dec 17, 2023 at 7:57 AM bruce <darkoverlordofd...@gmail.com 
>> <mailto:darkoverlordofd...@gmail.com>> wrote:
>>> Something clicked (about 3 this morning) about version 1.9. I’ve assumed 
>>> this was the version in the Linux repos due to their typical bureaucracy. 
>>> But more research tells me that 2.1 cannot compile using gcc. I never 
>>> choose gcc myself. But the linux repo maintenance tools such as Launchpad 
>>> depend on it. So they are stuck on 1.9, which is generally referred to as 
>>> obsolete. It’s a reason people tell me they don’t use gnustep. So I 
>>> installed Ubuntu on my backup this morning, and instead of building 
>>> gnustep, I installed 1.9, and the artifact issue goes away.
>>> 
>> 
>> Where are you getting these version numbers from?   The current releases of 
>> gnustep libraries are as follows:
>> 
>> gnustep-base: 1.28.0
>> gnustep-gui: 0.30.0
>> gnustep-back: 0.30.0
>> gnustep-make: 2.9.1
>> 
>> I don't know what 1.9 and 2.1 are referring to.  If you could clarify that 
>> would be immensely helpful.
>> 
>>> Now I see the problem. 1.9 works, but few people use it. I’m not going to 
>>> base a new project on something that is old and deprecated past 
>>> obsolescence. FreeBSD uses a port of 2.0.
>>> 
>>> My renewed interest in gnustep is due to a conversation with @gcasa on 
>>> github. He was complaining that helloSystem didn’t consult with the gnustep 
>>> project. He has a point, helloSystem is a reworking of the osx style 
>>> desktop on freebsd. But I chimed in, and told him I didn’t think gnustep 
>>> was viable. He took that personally, and it was the passion of his response 
>>> that convinced me that gnustep was not dead. And I decided to either prove 
>>> he was right or wrong. Unfortunately, I still think he’s wrong.
>> 
>> It isn't, but you're going about this entirely the wrong way.  I still KNOW 
>> that you're wrong.  Again, you haven't consulted anyone, asked for ANY help 
>> on anything.  Made assumptions and gone off in the wrong direction.   So you 
>> have proved NOTHING.  Given GNUstep's use, as I have pointed out, both 
>> commercially and many other places absolutely proves you incorrect.
>> 
>>> Originally, I looked at ObjFw. It uses Gtk or Qt for gui. But now I 
>>> understand this:
>>> 
>> 
>> Again, if you're looking for the ability to build macOS apps, ObjFw is NOT 
>> the way.
>>  
>>> ‘It supports all modern Objective-C features when using Clang, but is also 
>>> compatible with GCC ≥ 4.6 to allow maximum portability.’
>> 
>> As is GNUstep.  We are a GNU project (it's in the name) we still support 
>> GCC.  Your failure to build with GCC is also something you never talked to 
>> anyone about.   You simply jumped to the conclusion that because you ran 
>> into an issue on your system, it MUST not work.  Please check on GitHub we 
>> have CI running for every commit.  It works fine with clang and gcc.  Clang 
>> is recommended since it fully supports ObjC2.0.  This is a compiler thing, 
>> not a framework thing.
>> 
>>> The main issue I have with ObjFw is lack of documentation. I have 
>>> complained about this with gnustep as well, but then I found old O’Reilly 
>>> books at the local thrift store that finally explained how that era of 
>>> Cocoa worked, and I was able to move forward on gnustep. Until I started 
>>> looking at more complex gui constructs, which is where it breaks down on 
>>> Linux/FreeBSD.
>>> 
>>> I’m back to the thought that gnustep is dead. Maybe not on the Mac or 
>>> Windows. But on Linux/FreeBSD gnustep is effectively dead. And I’m back to 
>>> csharp.
>> 
>> Good for you, you're welcome to your own opinion even though it is wrong.
>> 
>> As I mentioned in my previous email.  All you have done here is come onto 
>> our forum with the SAME statements you made previously in our discussion 
>> regarding helloSystem on Git Hub.  What you have failed to do as I pointed 
>> out there and in my previous email is to properly engage the community.  
>> This is a mistake many developers make (not just with us but with many 
>> projects).   I remain open to working with helloSystem, but as I detailed 
>> previously, you need to do it constructively.  Coming onto the mailing list 
>> and complaining is not going to help your case.
>> 
>> You are welcome to your (incorrect) opinion that GNUstep is "dead".  I, 
>> personally, don't know anyone who uses helloSystem so... I guess it's dead. 
>> ;) 
>> 
>> GC
>> 
>>> 
>>> On Sun, Dec 17, 2023 at 1:23 AM bruce <darkoverlordofd...@gmail.com 
>>> <mailto:darkoverlordofd...@gmail.com>> wrote:
>>>> Yes, I’ve tried that. It doesn’t look good on any of the themes I’ve 
>>>> found. I’d try making my own theme if I could find documentation…
>>>> 
>>>> 
>>>> But it does not address the bigger issue of artifacts. And it creates the 
>>>> issue of menu confusion. I always look to the top corner of my screen - no 
>>>> searching for menus. Then I would have to look for them on only certain 
>>>> gnustep apps. Not a great interface. 
>>>> 
>>>> I’m mainly interested in creating apps for Linux/FreeBSD. I’m not certain 
>>>> my screen lock program would even work on either Mac or Windows. The same 
>>>> with other desktop oriented apps, such as a shortcut editor. I haven’t 
>>>> used a Mac or Windows in 12 years since I left Microsoft. 
>>>> 
>>>> I agree that abandoning Cocoa seems wrong. But these bugs have been there 
>>>> for a decade without getting fixed, and what I’m starting to think is that 
>>>> this is just a linux issue. Until recently I had expected to hear that 
>>>> gnustep was dead. The web site is half dead links, it was offline for a 
>>>> while, and freshports shows that there is no longer a maintainer for 
>>>> FreeBSD. The version on the Linux repos is considered dead because it’s 
>>>> the old 1.9, so you have to build it manually to get the current version. 
>>>> Maybe it only makes sense for Linux devs to use gtk. Or maybe they just 
>>>> continue not using gnustep and I’m just the odd one out.
>>>> 
>>>> 
>>>> On Sat, Dec 16, 2023 at 10:07 PM Daniel Boyd <danieljb...@icloud.com 
>>>> <mailto:danieljb...@icloud.com>> wrote:
>>>>> Bruce,
>>>>> 
>>>>> Have you tried
>>>>> defaults write NSGlobalDomain NSMenuInterfaceStyle 
>>>>> NSWindows95InterfaceStyle
>>>>> 
>>>>> That will put the menus at the top of each window. 
>>>>> 
>>>>> Abandoning cocoa doesn’t make much sense. What I think is absolutely a 
>>>>> good idea would be someone adopting the gtk theme and giving it some 
>>>>> love. 
>>>>> 
>>>>> Sent from my iPhone
>>>>> 
>>>>>> On Dec 16, 2023, at 15:28, bruce <darkoverlordofd...@gmail.com 
>>>>>> <mailto:darkoverlordofd...@gmail.com>> wrote:
>>>>>> 
>>>>>> 
>>>>>> Here are some examples
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> Notice how the scroll bar splits as well. It also happens in prepackaged 
>>>>>> binary SystemPreferences.app:
>>>>>> 
>>>>>> 
>>>>>> You can also see how the menu collides with a linux style global menu. 
>>>>>> This is on helloSystem. On GhostBSD-xfce, the scroll list artifacts are 
>>>>>> less pronounced, looking more like heavy underlines, but the menu 
>>>>>> collision still happens. Menu theme doesn’t align with the desktop. It’s 
>>>>>> jarring. What is more jarring is the ‘blip’ I get, a small rectangle 
>>>>>> that pops up momentarily, suspiciously the same size as the big icon, 
>>>>>> and then disappears when the main window appears. Xfce is the only 
>>>>>> desktop environment this ‘blip’ does not happen on.
>>>>>> 
>>>>>> 
>>>>>> On Sat, Dec 16, 2023 at 8:10 PM Gregory Casamento 
>>>>>> <greg.casame...@gmail.com <mailto:greg.casame...@gmail.com>> wrote:
>>>>>>> Bruce,
>>>>>>> 
>>>>>>> I admit I looked at the mailing list and did see where you have made 
>>>>>>> comments both recently and a couple of years back regarding certain 
>>>>>>> things of interest.  My apologies that you didn't get the response that 
>>>>>>> you felt you needed on some of these issues...
>>>>>>> 
>>>>>>> On Sat, Dec 16, 2023 at 2:34 PM bruce <darkoverlordofd...@gmail.com 
>>>>>>> <mailto:darkoverlordofd...@gmail.com>> wrote:
>>>>>>>> Gregory, respectfully, I’ve been trying gnustep for the last decade, 
>>>>>>>> waiting for it to be ready, and getting frustrated. During that time 
>>>>>>>> I’ve had 5 different computers, and used about 10 linux distros, and 
>>>>>>>> the place I find gnustep working tolerably is on freebsd-xfce. Not too 
>>>>>>>> many artifacts, themes are working, but it still doesn’t integrate to 
>>>>>>>> the desktop - that’s a design issue , and I’m not asking you to change 
>>>>>>>> that, just consider an alternative.
>>>>>>> 
>>>>>>> I use GNUstep on Debian Linux at home (I have since Debian 9) and 
>>>>>>> Ubuntu 16-22 at work as well as Windows at work.  All are tolerable 
>>>>>>> work environments.   I use the Ubuntu and Windows instances mostly for 
>>>>>>> Keysight.  On the windows side we use the Windows theme and it has 
>>>>>>> never been a problem for any of the clients that Keysight has using the 
>>>>>>> Eggplant software.  Windows makes up approximately 90+% of their 
>>>>>>> user-base.
>>>>>>> 
>>>>>>>> The artifact problems I refer to have been there all along, and I’ve 
>>>>>>>> talked on several forums to other users that run into them too. If no 
>>>>>>>> one on the project has ever noticed these issues, I don’t know what to 
>>>>>>>> say.
>>>>>>> 
>>>>>>> I am familiar with some of the issues you mention.  There are ways to 
>>>>>>> get around them.  If you would like to discuss that I suggest you ask 
>>>>>>> about which ones specifically.  I may go back and answer some of your 
>>>>>>> previous emails.
>>>>>>> 
>>>>>>>> I bring up the archaic menu and there are 2 camps - one says use 
>>>>>>>> WindowMaker, and the other longs for something more modern - so i’m 
>>>>>>>> suggesting that you can kill 2 birds with one stone by using 
>>>>>>>> CoreGTK.framework
>>>>>>> 
>>>>>>> Well.  Here is the thing.  You may be under the misconception that 
>>>>>>> GNUstep is intended as a Desktop Environment.  It isn't or, at least, 
>>>>>>> it hasn't been.   GNUstep's major focus over these many years has been 
>>>>>>> to be as cross-platform as humanly possible.   Arguably it has achieved 
>>>>>>> that... GNUstep currently runs on any POSIX-compliant OS, as well as 
>>>>>>> Windows on both MSYS2 and MSVC.   
>>>>>>> 
>>>>>>> The issue is that the project has left worrying about the "Desktop" to 
>>>>>>> other projects... (examples of this are Etoile -- defunct, GSDE, 
>>>>>>> NEXTSPACE, etc).   As such GNUstep is perceived as being "reluctant" to 
>>>>>>> change the default theme from the one many people claim is "Ugly".  I 
>>>>>>> find that ironic given that many OSs modeled their look AFTER 
>>>>>>> NeXTSTEP/OPENSTEP (Windows 95 being the most prominent of these, as 
>>>>>>> well as AmigaOS 2+).
>>>>>>> 
>>>>>>> One of the things that has been discussed recently has been the 
>>>>>>> creation of a "Reference Distribution" on Linux and, possibly, other 
>>>>>>> *BSD platforms to allow us to better demonstrate what GNUstep is 
>>>>>>> capable of doing.
>>>>>>> 
>>>>>>> What I can tell you will never happen is throwing out gnustep-gui in 
>>>>>>> favor of a replacement.  Let's consider your suggestion of CoreGTK.  If 
>>>>>>> we moved to that we would no longer have compatibility with macOS, also 
>>>>>>> we would not be able to use libs-xcode to build projects from macOS on 
>>>>>>> GNUstep platforms.   Additionally, the framework you suggest lacks many 
>>>>>>> of the widgets we already have so, while on the surface, it might seem 
>>>>>>> like a good move it is simply not a viable solution.   So, any notion 
>>>>>>> of replacement is not one that we will consider under any 
>>>>>>> circumstances. 
>>>>>>> 
>>>>>>> NOW, all of that being said... it is perfectly acceptable and possible 
>>>>>>> for you to port that framework to work with GNUstep.  You don't have to 
>>>>>>> use gnustep-gui if you don't wish to.  That would be fairly awesome.  
>>>>>>> There is nothing that says you can't use any framework you wish in 
>>>>>>> conjunction with GNUstep.  The more the merrier. :)
>>>>>>> 
>>>>>>> Yours Sincerely, GC
>>>>>>> 
>>>>>>>> On Sat, Dec 16, 2023 at 6:14 PM Gregory Casamento 
>>>>>>>> <greg.casame...@gmail.com <mailto:greg.casame...@gmail.com>> wrote:
>>>>>>>>> Hi Bruce,
>>>>>>>>> 
>>>>>>>>> On Sat, Dec 16, 2023 at 10:34 AM bruce <darkoverlordofd...@gmail.com 
>>>>>>>>> <mailto:darkoverlordofd...@gmail.com>> wrote:
>>>>>>>>>> I love gnustep objective-c and Foundation. But the UI is pretty 
>>>>>>>>>> ugly. Theming fixes it cosmetically, but it doesn’t fix the real 
>>>>>>>>>> issues. The menu and main icon don’t really fit on any modern 
>>>>>>>>>> desktop. And the GUI itself is buggy, and leaves artifacts strewn 
>>>>>>>>>> all over the window. 
>>>>>>>>> 
>>>>>>>>> I am not sure what you mean by this.   Instead of making general 
>>>>>>>>> statements like the above filing bug reports on github 
>>>>>>>>> (https://github.com/gnustep) would be more useful as they would 
>>>>>>>>> provide more context to the actual issues you are referring to and 
>>>>>>>>> also help us address the problem you seem to be seeing.   I have been 
>>>>>>>>> lead for many years and use GNUstep every day, including with LARGE 
>>>>>>>>> customers...
>>>>>>>>> 
>>>>>>>>> Please see https://eggplant.io <https://eggplant.io/> (Keysight) they 
>>>>>>>>> have 1000s of clients and their product is using GNUstep's master 
>>>>>>>>> branch.
>>>>>>>>> 
>>>>>>>>> Additionally, there are some very attractive themes for GNUstep... 
>>>>>>>>> namely...
>>>>>>>>> <gnustep-narcissus.png>
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> And...
>>>>>>>>> <nesedah.png>
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> As well as the Windows theme... (on windows of course)...
>>>>>>>>> <WinSavePanel_Full.jpg>
>>>>>>>>> 
>>>>>>>>>  
>>>>>>>>>> So tbh, I’ve been investigating GtkSharp, since dotnet8.0 is now 
>>>>>>>>>> available on linux, and is in ‘beta’ on freebsd. While investigating 
>>>>>>>>>> that, I discovered gtkcore, a gtk binding for gnustep. It has some 
>>>>>>>>>> minor issues, but not the magnitude of the issues with cocoa, and 
>>>>>>>>>> gtk is well known territory.
>>>>>>>>> 
>>>>>>>>> There is a GtkTheme for GNUstep...
>>>>>>>>> <55085-1.png>
>>>>>>>>> 
>>>>>>>>> https://github.com/gnustep/plugins-themes-Gtk/
>>>>>>>>> 
>>>>>>>>> Gtk is not my favorite toolkit, I would prefer a working cocoa, or 
>>>>>>>>> even qt. But the freebsd desktop uses it in xfce, and with gnustep 
>>>>>>>>> cocoa so unusable, I’m thinking that gtkcore is now the only way 
>>>>>>>>> ahead to develop gui applications with gnustep. Or, I suppose you 
>>>>>>>>> could fix cocoa - but that gets so much push back I’ve given up hope.
>>>>>>>>>  
>>>>>>>>> The best way to cooperate with the community is to file bugs and give 
>>>>>>>>> useful feedback -- which you have NOT done here.  Simply saying "it 
>>>>>>>>> doesn't work" or "it's ugly" is not going to help because people need 
>>>>>>>>> SPECIFIC feedback to make things better.
>>>>>>>>> 
>>>>>>>>> PS.  The Gtk and Windows themes both use NATIVE widgets from those 
>>>>>>>>> environments.
>>>>>>>>> 
>>>>>>>>>>  --
>>>>>>>>>> 
>>>>>>>>>> Bruce Davidson
>>>>>>>>> 
>>>>>>>>> Yours Sincerely, GC
>>>>>>>>> --
>>>>>>>>> Gregory Casamento
>>>>>>>>> GNUstep Lead Developer / OLC, Principal Consultant
>>>>>>>>> http://www.gnustep.org <http://www.gnustep.org/> - 
>>>>>>>>> http://heronsperch.blogspot.com <http://heronsperch.blogspot.com/>
>>>>>>>>> https://www.patreon.com/bePatron?u=352392 - Become a Patron
>>>>>>>>> https://www.openhub.net/languages/objective_c - OpenHub standings
>>>>>>>> 
>>>>>>>> 
>>>>>>>> --
>>>>>>>> 
>>>>>>>> Bruce Davidson
>>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> --
>>>>>>> Gregory Casamento
>>>>>>> GNUstep Lead Developer / OLC, Principal Consultant
>>>>>>> http://www.gnustep.org <http://www.gnustep.org/> - 
>>>>>>> http://heronsperch.blogspot.com <http://heronsperch.blogspot.com/>
>>>>>>> https://www.patreon.com/bePatron?u=352392 - Become a Patron
>>>>>>> https://www.openhub.net/languages/objective_c - OpenHub standings
>>>>>> 
>>>>>> 
>>>>>> --
>>>>>> 
>>>>>> Bruce Davidson
>>>>>> 
>>>> 
>>>> 
>>>> --
>>>> 
>>>> Bruce Davidson
>>>> 
>>> 
>>> 
>>> --
>>> 
>>> Bruce Davidson
>>> 
>> 
>> 
>> --
>> Gregory Casamento
>> GNUstep Lead Developer / OLC, Principal Consultant
>> http://www.gnustep.org <http://www.gnustep.org/> - 
>> http://heronsperch.blogspot.com <http://heronsperch.blogspot.com/>
>> https://www.patreon.com/bePatron?u=352392 - Become a Patron
>> https://www.openhub.net/languages/objective_c - OpenHub standings
> 
> 
> --
> 
> Bruce Davidson
> 

Reply via email to