←back to thread

1080 points mmulet | 1 comments | | HN request time: 0s | source

I made a built-from scratch Wayland Compositor to display any GUI app* in the terminal! I think there is a lot of unexplored potential in custom Wayland compositors, a lot of really cool things you can embed existing applications into! So, I started with embedding apps into the terminal because that is the easiest input/output (output is just utf-8 and I use the great `chafa` library for that, and I just read from stdin for the input).

If you have any other ideas for cool Wayland compositors, let me know. I purposedly wrote 80% the app in Typescript to appeal to the most developers and attract cool contributions (I do all drawing with the familiar Canvas2D api, so if there is interest, I can also fork this out into a cool Terminal canvas, let me know!)

I have a blog post here about how I did it, but it’s pretty high level and non technical, so please ask if you have any questions.

[How I Did It](<https://github.com/mmulet/term.everything/blob/main/resource...>)

*technically only Wayland apps and x11 apps with Xwayland. But on Linux that’s mostly everything.

Show context
nick__m ◴[] No.45200895[source]
That's awesomely useless, it straddles the line between programming and art.

I am sure it was a great and fun learning experience.

Well done !

replies(3): >>45201051 #>>45203027 #>>45204865 #
GTP ◴[] No.45203027[source]
Well, not 100% useless: I can see its use for applications running inside Docker containers. Yes, there are ways to have GUI applications rendered from the inside of a container, but maybe this is easier than getting the Dockerfile right.

EDIT: nevermind, doing this with Docker seems much easier than I expected [0]. I'll try it tomorrow, I'm curious to see if the proposed solution works on Windows as well.

[0] https://medium.com/@priyamsanodiya340/running-gui-applicatio...

replies(1): >>45207471 #
nicce ◴[] No.45207471[source]
Windows had Wayland support before most distros! Rather surprising.
replies(1): >>45208926 #
1. 0points ◴[] No.45208926{3}[source]
> Windows had Wayland support before most distros! Rather surprising.

WSL had non-accelerated wayland support at one point in time.

Was it before "most distros"?

I don't understand what you think that amounts to.

Wayland support in Linux-land typically means that the software supports running in your wayland compositor.

Windows famously is not a wayland compositor, no matter how much you try to bend reality.