Porting Linux window and tiling managers to HAIKU

I was wondering how can one port Linux window managers to HAIKU. I am fairly good at writing ports from my experience with Gentoo and BSD. But I don’t know what would need to be changed, so I tried to look for some porting documentation but could not find any.

I was thinking of getting e17 and maybe bspwm and xmonad over to here.

Was there any ever attempts to get different window managers over to HAIKU. I looked at HAIKUWARE and could not find a section of ports.

~Thanks for reading this.

May I ask WHY?

One thing I like about Tracker and the variations on it (In BeOS) is that I don’t need to learn a new way to use my computer every year or two. Neither do I have to worry that my old code will stop working because I made an assumption that a certain feature exists in tracker.

Question 1: Are there any reason that a feature(s) you like can not be ported and added to the present Tracker code?

Question 2: What make any of the other windows managers BETTER than Haiku’s Tracker that you would prefer it as your interface?

Please bear with me. I already know of some features I would like to add to Tracker today, I don’t think it is a prefect interface. S/T is a good example of extend Tracker without rewritting the whole thing. When my coding skills get better I do hope the main-line developers look at my ideas, but I don’t expect them to just make changes on my say-so.

Now, on the bright side if you can make your replacement W/Ms look like they are Tracker so all one has to do is replace the present Tracker file with your W/M file more power to you as change your W/M would just need a link to the version to test then I am for one will cheer you and wish you good luck in your tasks.

[quote=Earl Colby Pottinger]May I ask WHY?

One thing I like about Tracker and the variations on it (In BeOS) is that I don’t need to learn a new way to use my computer every year or two.[/quote]

I think you are deeply confused. But I can’t quite figure out whether the problem is that you don’t actually know what a window manager is, or that you don’t know what Tracker is.

Window management is the part of the GUI that deals with the placement, appearance and visibility of windows. In the X Window System this is often a separate program but many other systems, including Haiku’s instead put window management directly into the display service itself. Because the window manager is not a separate program, it is not possible to “just” port a window manager from X to the native GUI of BeOS or Haiku and instead something far more invasive must be done.

Tracker is mainly a file management program but also functions as the graphical shell. This means it has a bunch of anciliary functions unrelated to file management, but such an approach has been commonplace, you will see it in Windows, OS2/, MacOS and even many (though not all) Unix systems. As far back as CP/M making a GUI file management tool serve as the graphical shell was seen as a reasonable choice.

Stack and Tile, which you mention, isn’t in Tracker but in the App server, Haiku’s display server. That’s roughly where any heavy lifting to import features from the a Linux window manager to Haiku would have to be done.

There’s nothing wrong with non-standard ports that people can play around with if they want. Haiku will always be known by its standard interface.

The process of porting is a great way of getting used to how Haiku works.

See! I do make silly assumptions. My bad.

Porting window managers to Haiku is very difficult as Haiku doesn’t use window managers in that sense. You’d need to rewrite most, if not all the code, for Haiku and I’m not sure how much of this our Window decorators support.

I think it would be better to start from scratch and try to achieve similar functionality in Haiku, but even that will probably hit a lot of problems with the current API. So it is complicated.

I think I might hold off on e17 then and just go for getting bspwm over, because it has a lot less code.

It seems quite odd to me that you want to port an X11 window mangaer… to a non X11 desktop.

I would think it more sensible to port only the features into the haiku window management coe as some sort of loadable module… etc… or a configurable option.

What would be handy though is a rootless X server like Xming on windows.

Why not help to port PLib?

http://ports.haiku-files.org/ticket/327

X.org has allready been ported and it is needed to run Konquror and both or on Haikware. Now I would like to see a full port of KDE, Gnome 2, Cinnamon, LXDE, and XFCE. It might be possible to buiild a GUI switcher like Zorin does and have all your desktops and their ported dependacys in a file in the /boot/apps/GUI’s folder and even if you need X.org you can just put it like this /boot/apps/Alt_GUI/X.org and then have all your desktop envionments. I think Elotie and Gnome 2 would be ported over first as their allready docks for Haiku on Haikuware. I personaly hate Haiku’s GUI’s and there should be some thrid party moduler system. It might be cool to see Haiku running Afterstep and Windowmaker. QT has allready been ported and so has X so it means you guys are close. Who knows some day you might have a version of KDE 5 without the need of X.org.

Linux wms are useless, IMHO. Windows shells looks more modern.

For example a SharpEnviro “port” would be great…

…and Emerge looks clean too:

Note: a Reinmeter port would be great too !

Anyway establish some kind of collaboration with these open source projects would be even better than just porting.

Hello! :slight_smile:

I would suggest that, instead of porting X11 W/Ms and F/Ms, why not extend our very own? For example, Haiku as of R1A4.1 has only one Window Decorator. Why not, if we really want another window manager’s looks, just create a Window Decorator and then we could update our Theme Manager(https://github.com/HaikuArchives/HaikuThemeManager)?

EDIT: I was wondering, has anyone ever took a look at this? https://github.com/looncraz/haiku
It seems to me that soon Haiku will have (basic) compositing…

That thing about the file manager becoming the GUI makes sense. A file manager is one of the first things the devs want to create, in terms of a GUI, and so they just build it out from there.

Lordy, don’t bring X into Haiku! That thing has gotten to be such a bloated piece of software. Recently, I initiated a FreeBSD based install of the xorg packages, and it wanted to drag in half of gnome too! I killed the installer, and loaded links instead. To be fair, I think it’s the distribution-specific meta-port that’s causing the trouble, but X has been getting bigger, and was not small to start with.

The Haiku GUI interface is fine. It’s part of what makes Haiku Haiku. Looking forward, though, I wonder what can be done to make it touch screen/tablet friendly without changing its basic look and feel. Yes, I know tablets won’t happen for awhile. This is for down the road … maybe the adapted GUI could be almost identical to what it is now, except that touching an area that might otherwise be too tiny to be touch friendly, would cause a magnifyer to appear at the fingertip, with the menu or other item of interest. Is there such a thing outside of Haiku already?

Given that Haiku is an open source OS, anyone can do any fool thing they want with it, including, if they can figure out how, running an entirely different GUI for Haiku.

That being said, while I can see the “neatness” factor in running a Window Manager in Haiku, I’m with Earl–I don’t see much point in doing it. There’s already a ton of *Nixes that run X-Windows and the various available window managers. I myself like running IceWM in FreeBSD. But personally, I dislike the “*Nixification” (is that a word?) of BeOS/Haiku, and especially replacing the GUI. I would like to see Window decorators on Haiku, like BeOS had, and have more decorators added. I especially liked the AmigaOS decorator on BeOS, not because I had a particular affinity or fondness for Amiga, but because it provided smaller, less obtrusive title bars to BeOS programs. But while I approve of being able to make changes to the gui’s appearance, I’d rather not see radical changes to the functionality of the gui.

But, again, free, open-source OS, do what you like with it. Maybe you’ll discover something useful that could be incorporated into the base system.

I would love to see X.org ported over to haiku. I would love running cinnamon/gtk applications and haiku ones or maby even trinity. Now I know many of you might be going, “Why should we port over that display server”, “that thing is no longer even being used on linux, so why should we port it over to haiku!”, how ever many linux disros are still staying to X.org untill they HAVE to switch to Wayland. If X.org is to old then why not just port over Xfree86 then? It is not as crusty as X11 and not as whell used, so there should be less wholes in it. (my opion) If not X.org then why not Xwin, Xouvert, W.org, Y.org, Wayland, Mir, Cygwin/X, Nano-X, KDrive, or maby they will create one for Haiku. I would love to see Hiaku have a display server like X.org ported over as it might make devlopement or at least basic porting easier.

You can already easily compile and run some of these on Haiku. You could use WeirdX, which is written in Java and may work with OpenJDK, or you could use one of the SDL-based ones.

The result, however, will not be what you expect: these servers will open a window (maybe a fullscreen one), and run your apps (including a linux window manager) inside that window. You could dedicate a workspace for this, and leave the others for native apps.

But, what’s the point? It’s like having a Linux box inside your Haiku, with integration only slightly better than for virtualization. Running most of these apps don’t need just X11 anyway, and soon you will also want to port udev, a,d a lot of the Linux cruft we are trying to avoid by all means.

If getting all the Linux mess is your goal, why not run Linux? It’s a much better fit for the job, there are pleinty of distros available. It would be much simpler to port the Deskbar to run on Linux, if that’s the only thing you like about Haiku?

I really dont get it. I’ve read this thread and still i cant imagine a usecase for X with WM on Haiku. If you had a working X Server and KDE/Gnome/whatever what are you gonna do with it?

Take a look here … :smiley: :smiley: verry old port of x11 … i never tested it
but if you are in love with it just give it a try…

http://haikuware.com/directory/view-details/development/class-libraries/x11

I have never heard most of those, besides Mir and Wayland. What would be cool for someone to port Xquartz, which is under the MIT license to Haiku, because it is based on X11 and I believe Apple has no plans to leave their version of X. So we could use X for ever assuming Apple stays with it.

[quote=Paradoxon]Take a look here … :smiley: :smiley: verry old port of x11 … i never tested it
but if you are in love with it just give it a try…

http://haikuware.com/directory/view-details/development/class-libraries/x11[/quote]

I do not believe it would be to hard to update that port depending on whether or not alot of things has changed.