Announcement

Collapse
No announcement yet.

Darling Still Has A Goal Of Running macOS Apps On Linux

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • #21
    Originally posted by oiaohm View Post
    https://en.wikipedia.org/wiki/GNUstep vs https://en.wikipedia.org/wiki/NeXTSTEP
    This is your problem. GNUstep is not about a OSX desktop. GNUstep looks exactly how it meant to look as a NeXTSTEP clone.
    None of this is a problem for me, GNUstep isn't trying to be a NEXTstep or OSX clone, it's trying to be a reimplementation of the Cocoa API, they just decided to skin it to look like NEXTstep as that was what existed when they started the project. I understand this completely. They later decided to expand the API support to try adding support for Apple's newer OSX APIs. I've been following these projects for 15 years now including Etoile. Etoile fell into similar issues that GNUstep did, they decided to move away from desktop applications/desktop environment recreation, and moved into API/weird desktop metaphor ideas and interest in the project waned and died. Lack of developer manpower/interest definitely contributed to that implosion. I disagree with you on Darling's desktop integration. I think fundamentally WINE has an advantage in that Windows Applications generally have their application menus inside their application windows rather than having an Apple Menu like OSX applications do. I'm sure if someone bothers to they could come up with a way to make that work on Linux, or maybe code Darling to draw the menus differently, probably binding them to the top of the Application window, and having the window manager draw the outer decorations, rather than the top of the screen. (GNUstep actually has this problem solved using Preferences to choose a menu style) but I suspect that what most users using the software will want, is a desktop environment that looks/feels like OSX. I've played around with making GNUstep into an osx-alike desktop but my API knowledge of RandR, Pulseaudio, and Network-Manager weren't good enough, and frankly I had other things I was working on that were higher priority to myself. All open source projects are hard to commit to and frankly it's a miracle that we have the tools we currently have let alone the things that some people are working on.

    Comment


    • #22
      Originally posted by DMJC View Post
      None of this is a problem for me, GNUstep isn't trying to be a NEXTstep or OSX clone, it's trying to be a reimplementation of the Cocoa API, they just decided to skin it to look like NEXTstep as that was what existed when they started the project.
      Its more than skin. GNUstep keeps the NEXTstep feature s and keep on expanding forwards. There were a stack of features stripped out of NEXTstep when OS X was made.

      Originally posted by DMJC View Post
      (GNUstep actually has this problem solved using Preferences to choose a menu style)
      This that GNUstep does of providing a Preference to change menu style is in fact a NEXTstep feature that disappears with the start of OS X. So putting the menu under the title bar is just go back in history and use the NEXTstep method for it..

      Originally posted by DMJC View Post
      I disagree with you on Darling's desktop integration. I think fundamentally WINE has an advantage in that Windows Applications generally have their application menus inside their application windows rather than having an Apple Menu like OSX applications do.
      This is simple miss belief. Cocoa if you are using the full API from NEXTstep to current day Apple Menu inside application window is included in the design.

      Reality applications don't know where the menu bar is placed on screen and this comes from NEXTstep. Of course that OS X users don't have the NEXTstep controls any more they make the mistake that this is a issue to porting.

      http://cocotron.org/Examples/ActiveViewer
      Darling is basing on cocotron so the menu bar will be moved under the title bar. Again this is just exploiting what NEXTstep design include and went missing with OS X.

      Originally posted by DMJC View Post
      but I suspect that what most users using the software will want, is a desktop environment that looks/feels like OSX..
      Are you really sure thinking that having the menu bar on top of screen instead of application window results increased mouse travel. Yes it good to make OS X look different but its not productivity.

      Really lot of ways NEXTstep had the right idea on menubar having it as a configurable option if it was in window or top of screen.

      https://en.wikipedia.org/wiki/Darlin...lloWordApp.png
      Yes do take a close look at this picture. With the menubar in the window it closer to where you are working with mouse.


      Originally posted by DMJC View Post
      I've played around with making GNUstep into an osx-alike desktop but my API knowledge of RandR, Pulseaudio, and Network-Manager weren't good enough, and frankly I had other things I was working on that were higher priority to myself.
      Really mostly you would ignore network manager and pulseaudio at first why could you ignore them. Simple http://stalonetray.sourceforge.net/ you have a tray and you can use the standard control applets for other windows managers.

      Yes network manager provides it own Applet that gets expanded as they add new features. Finding out what links are up for applications you can just use the ip command syscall extracted information that not dependant on network manager. Lets say someones system is using networkd from systemd and you expect network manager you are stuffed. If you are depending on information the general ip command or linux syscalls/libc calls can provide it does not matter..

      Wine still as mode of use ALSA and let Pulseaudio users use their ALSA emulation. RandR should have been your highest focus. Pulseaudio and Network-Manager should have been down the road quite a bit. It possible that you may never do a network manager interface and just keep on using the network manager applet.

      This is the problem with attempting to make the desktop too Osx like at first you create yourself way too much workload.

      Comment


      • #23
        Personally, I have no interest in running either Windows apps or PSX apps on Linux, if I wanted to run a Windows app I would install Windows, if I wanted to run an OSX app, I would run OSX.

        I want native ports of some popular apps, like Adobe Premiere or Magix Vegas for Linux, like MainActor used to be available as a native Linux port. or even better I want to see Shotcut get even better (I love that app).

        Comment


        • #24
          Originally posted by ElectricPrism View Post
          I wish WINE would copy from Darling is their OverlayFS to minimize duplicate files
          ZFS with de-dupe is probably a better solution.
          linux addict, got the scars, the grey beard and the t-shirt.

          Comment


          • #25
            Originally posted by oiaohm View Post
            Wine still as mode of use ALSA and let Pulseaudio users use their ALSA emulation. RandR should have been your highest focus. Pulseaudio and Network-Manager should have been down the road quite a bit. It possible that you may never do a network manager interface and just keep on using the network manager applet.

            This is the problem with attempting to make the desktop too Osx like at first you create yourself way too much workload.
            The thinking was to expand System Preferences.app to have RandR, Pulseaudio (The etoile Menu Bar already had a good example of a Volume Control Icon) and Network-Manager for wireless/LAN control control icons. I was going to clone the OSX interface for all of those. I was also trying to resurrect Mantella, since a browser wrapper was all I needed, not a full blown web engine. I was going for a full OSX Desktop-like experience. with the top menu bar GWorkspace dock etc. GNUstep already had email, music player, a terminal and IRC clients. I was hoping to get a wrapped browser, mplayer wrapper cleaned up and the control panel parts done, so I could boot into a desktop that looked something like the etoile concept images.

            Comment


            • #26
              Originally posted by DMJC View Post
              The thinking was to expand System Preferences.app to have RandR, Pulseaudio (The etoile Menu Bar already had a good example of a Volume Control Icon) and Network-Manager for wireless/LAN control control icons. I was going to clone the OSX interface for all of those.
              Problem here is Network Manager is a rabbit hole. RandR and Pulseaudio in system preference app could work as these protocols are fairly stable and not extending that much. Network Manager you have like new VPNs added and new network features.
              If you go into nm-connection-editor you will notice even wired has settings that OS X does not have like Data Centre Bridging. Also linux network manager support multi IP addresses per interface.

              https://access.redhat.com/documentat...on_using_a_gui
              The this above is a bond connection this is a network manager feature. You will find there are a lot of features that OS X does not have and a lot of features get added to network manager all the time.

              Network manager applet is fairly basic but you will notice vpns are included. Lot of ways due to the power of network manager unless you have a lot of time to invest its safer to use the default provided management tools. Lot of ways OS X provided network configuration options is the tip of the iceberg(10% at best) and linux network manager is about 30% of the iceberg at this stage.

              Originally posted by DMJC View Post
              I was also trying to resurrect Mantella, since a browser wrapper was all I needed, not a full blown web engine. I was going for a full OSX Desktop-like experience. with the top menu bar GWorkspace dock etc. GNUstep already had email, music player, a terminal and IRC clients.
              Maintaining a webbrowser even when you don't make the engine consumes a lot of developer resources.
              http://wiki.gnustep.org/index.php/Vespucci.app
              This project is most likely what you are looking for it is webkit based this could be problem in future with lots going the blink engine path now..

              Originally posted by DMJC View Post
              I was hoping to get a wrapped browser, mplayer wrapper cleaned up and the control panel parts done, so I could boot into a desktop that looked something like the etoile concept images.
              I think you have badly underestimated how big the network manager side is and how under optioned the OS X control panel is. Also taking the browser problem way too light. Mplayer wrapper alone under GNUstep has been a major battle that different developers over time have given up on and its simpler than web brower wrapping.

              RandR and Pulseaudio those will take getting you brain around and once done they will remain done for quite some time. Pulseaudio interfaces will need work if/when pipewire replacement that is being worked on comes out. These will not be unlimited resource consuming treadmills.

              Also RandR is not your only problem.
              https://github.com/swaywm/wlroots
              The wayland stuff does have to be considered.

              DMJC basically you have to pick your battles and take on the simpler problems while keeping eye on the big picture. If it means like running chrome or firefox for the web browser and it don't fit the interface it is better to accept this than make a web browser and not be able to maintain it and get known for shipping insecure.

              Same with network manager yes you could make a new interface for it but with the new features being added users will be forced back to the network manager tools at times if you are unable to keep up.

              Yes webbrowser and network manager have the possibility of coming unlimited resource consuming treadmills. If you are a solo developer you don't have the resources to cope with that. These truly need teams of developers.

              I am not trying to rain on you. Its more I am saying you need to be realistic and if something needs a team it needs a team. Target the items that don't need a team that have lighter maintenance and you will progress forwards with more production displayable stuff hopefully able to use that to build a teams to deal with the bigger problems. Also don't split your time too many ways.



              Comment


              • #27
                Originally posted by Spooktra View Post
                Personally, I have no interest in running either Windows apps or PSX apps on Linux, if I wanted to run a Windows app I would install Windows, if I wanted to run an OSX app, I would run OSX.

                I want native ports of some popular apps, like Adobe Premiere or Magix Vegas for Linux, like MainActor used to be available as a native Linux port. or even better I want to see Shotcut get even better (I love that app).
                Idealistically I agree with you, but practically speaking, it is hard for people to stay on a platform if they have to sacrifice way to much. In fact, if it wasn't for Proton, I would consider dual booting Windows again.

                Comment


                • #28
                  We're actually in complete agreement on the web browser. Mantella was just Firefox embedded into a GNUstep Window. I looked at Vespucci and immediately disregarded it, because the API elements needed for it just don't exist in GNUstep yet. Hell it doesn't even have a javascript engine. Much easier to embed Firefox or chrome into a window so it plays nice with the mac style menubar. I think a better window manager that's more mac-like is part of what's needed but I won't be the guy making it. GNUstep's MPlayer wrapper shouldn't be that hard to get going. I started hacking on mplayer-gnome and after my patches got accepted into that project, the popularity of it exploded (added more aspect ratios, support for all language/subtitle options and added TV Tuner support) In my experience with these project sometimes you just need to make things a bit better and then they get popular and a lot of people jump in to finish it off. GNUstep as a desktop always felt like one of those projects to me, but it never reached that tipping point. RandR has a big problem in Gnome/Mate/XFCE/aRandR not just GNUstep in that none of the gui implementations support scaling at the moment. Network-Manager as you say is a big rabbit hole.
                  Last edited by DMJC; 05-05-2019, 01:09 AM.

                  Comment


                  • #29
                    Originally posted by DMJC View Post
                    RandR has a big problem in Gnome/Mate/XFCE/aRandR not just GNUstep in that none of the gui implementations support scaling at the moment.
                    There is a reason why I pointed to wayland. RandR may end up superseded by wayland before it fixed.

                    Comment


                    • #30
                      Originally posted by CuriousTommy View Post
                      I hope you don't mind me asking, but do you have experience with programming? If not, I found Python the easiest to learn. While I have not messed around with Swift, I heard that it is supposed to be similar to python. If you own an iPad, there is a cool app called Swift Playground.
                      Actually yes - been working as a developer for close to 20 years. The issue is that I have not done system level stuff on OS X or linux, and limited experience with objective c and such. I've been digging around their github and follow their issues and such, but so far I don't see any useful way i could contribute. I hope to some day though, very exciting project .

                      Comment

                      Working...
                      X