Email or username:

Password:

Forgot your password?
Top-level
Devine Lu Linvega

I've been thinking for a while that I would like my own window manager, all I ever do is write in little uxn windows anyways, I don't want to rely on Unix's pipes for routing information between programs, Uxn has wider bandwidth for program comms that allows for something like a node-based programming system. So I guess I'm writing an OS now.

85 comments
flaeky pancako

@neauoire working on an os now? shock and surprise ! /s

rostiger

@neauoire I figured it really was only a matter of time. And who knows, some day it might actually become an alternative for people like me. Then I'll be there, jumping the ship

Devine Lu Linvega

@rostiger I doubt it will ever replace a real computer, but it will allow to make systems without a linux subsystem, like: merveilles.town/@tbsp/11146148

rostiger

@neauoire Sure, that's what you say now... šŸ˜‰

āœØjesāœØ

@neauoire @rostiger itā€™s giving ā€œjust a hobby, won't be big and professional like gnuā€ energy

Devine Lu Linvega

@j3s @rostiger well, if someone other than a handful poor souls ever have to rely on such a madness system, I apologize in advance.

Tendigits

@neauoire this is fun. What will you call it? Uxnxu feels like a good option. How is this related to Potato?

Devine Lu Linvega

@tendigits it's called porporo, it's a varvara multiplexer(?), potato is probably not the right way to doing this sort of thing, there's already an application API, potato was adding an extra application API to make something like Left possible to load, while varvara already has all that's needed, so this will be adding just the extra stuff that allows for multitasking, so I don't need to open 10 instances of varvara while I work.

Tendigits

@neauoire thank you for indulging my questions! So Uxnemu is a C version of Varvara, and Porporo will be a Uxn based OS you can run inside it (or other Varvara) to multitask across roms? Whereas Potato was like a Varvara enhancer for certain device scenarios?

Devine Lu Linvega

@tendigits Varvara runs 1 rom at a time.
Porporo runs as many roms as needed and allows you to connect them with each other.

Porporo is a emulator or varvara emulators, it's written in C, like Varvara.

Tendigits

@neauoire oh! Gotcha. Thanks so much for explaining.

Devine Lu Linvega

@tendigits I'm adding window drawing at the moment, once you see Left connected to the assembler with a line and the result in the third node, it'll make more sense.

Tendigits

@neauoire ooo that sounds like a slick rom making workflow. Looking forward to checking it out!

Devine Lu Linvega

Passing data between uxn roms via the emulated console device.

Devine Lu Linvega

Each program loaded in the uxn system can draw its own pixels to the screen!

bouncepaw šŸ„

@neauoire what do the lines do? Do they pipe output between subwindows? If so, then cool! I imagined something like that before, happy to see it actually existing.

Devine Lu Linvega

@bouncepaw yeah, that's what it does, in this example, I'm piping the hello world program in another program that just forwards each character, and the porporo.rom is just printing it to the terminal out.

bouncepaw šŸ„

@neauoire would it be possible to run a host system's command? There are uxn terminals, right?

bouncepaw šŸ„

@neauoire hot. With some clever routing, I can see how a simple web browser can be implemented. There's a loop: curl wrapper, html renderer, buttons (a very simple program).

I wonder if control flow can be done somehow...

Devine Lu Linvega

@bouncepaw it can, once I'm done with mouse-picking with windows, I'll make you a little video demo!

DELETED

@neauoire this is awesome. I wonder what your host OS is

DELETED

@neauoire for some reason I would've believed it was 9front

Devine Lu Linvega

@stilla I use vanilla plan 9 from time to time, but this is all uxn, it definitely has a certain plan9 vibe. :glenda:

Devine Lu Linvega

@arbe well right now it's using an int, but I might make it loop around an unsigned short for good measure :)

Devine Lu Linvega

Built the stack-machine operating system(or, a kind of livecoding playground) of my dreams this afternoon. Where's that factor raptor with sunglasses emoji

Lizbeth

@neauoire that's insane, really makes me want to setup a little uxn shortcut on the desktop to get into there, it really makes computer stuff looks fun again

Devine Lu Linvega

@ritualdust Once it's a bit more fleshed out, I'll make you a launcher that does exactly that ^^

Helvetica Blanc

@neauoire @ritualdust OMG please! I cannot seem to get it running on MacOS, but I also get lost at the terminal quite easily.

Devine Lu Linvega

@helveticablanc @ritualdust it's really not in a state that can be used easily, gimme a bit of time and it'll be usable.

The advantage of this is that it's easier to use than uxnemu which expects that you give it a rom path, this, you open it, and start playing.

Helvetica Blanc replied to Devine Lu Linvega

@neauoire @ritualdust Oh yeah, I'm in no rush! Its so cool to watch you develop it tho!

Devine Lu Linvega

The wm is basically 100 lines of code, but it does pretty much all I need.

Kiƫd Llaentenn

@neauoire Oh wait, the wm is uxn? how?

Btw, have you seen sowm? Tiny X11 window manager written by the Neofetch guy. github.com/dylanaraps/sowm

Devine Lu Linvega

@unlkfp yeah I came across it a little while back :)

What I'm going for is rio meets puredata

Devine Lu Linvega

The window manager's dropdown menu is its own little Uxn program connected to the main OS node, that will spawn new program nodes.

Devine Lu Linvega

I don't know why I didn't do all this sooner, I wasted so much time trying to contend with i3 and unix's bullshirt.

Alexander Ilyin

@neauoire What do you consider UNIX's bs in this context?

Devine Lu Linvega replied to Alexander

@creitve having only stdin/stdout/stderr for program communication, and the pain of forking routing, and in this case, one thing I really like, is allowing one program to poke() at another program's running memory as a form of pipe.

As well, as all this is stored as an image, recovering state is going to be really easy, it's not tangled into any parts of the subsystem.

Jack Rusher

@neauoire Iā€™m also surprised you didnā€™t, especially given Plan9 :)

Devine Lu Linvega

Routing the menu directly into Left makes Left work as a sort of debugger for message passing.

efelbar

@neauoire this really reminds me of some of the things @prahou was scripting in ratpoison, but ohmygod your ui looks elegant! crazy what you can come up with if you leave the constraints of existing software :)

(side note: i've been thinking about a low-power portable computer system for ages now and this looks like the dream wm/os for it! do you know what the current state of running uxn close to metal is?)

[DATA EXPUNGED]
David JONES

@neauoire yay Display Postscript! I'm not sure if it worked anything like this but it's what this reminds me of.

Tendigits

@neauoire amazing! Itā€™s funny, I assumed from earlier posts you were diagraming architectural plans for the system, I didnā€™t realize the boxes and lines would literally be floating interconnected roms. Iā€™m enjoying how itā€™s so visually intuitive.

wvs

@neauoire This message passing part and the wm is exciting... Several moons ago I was working on a project (posix-y though, I think we even chatted on it) that got about this far but cratered. Canā€™t wait to see how these parts evolveā€¦

Job

@neauoire this image makes me imagine that you can zoom in on these "patches" to open them (vispally), kind of like the interface of A2. Don't know if that's the plan but that's what it evokes
en.m.wikipedia.org/wiki/A2_(op

Devine Lu Linvega

@vanderZwan well it'll depends what the node is, but yeah, that's pretty much the plan :)

Go Up