Readit News logoReadit News
agentkilo commented on Kernel: Introduce Multikernel Architecture Support   lwn.net/ml/all/2025091822... · Posted by u/ahlCVA
yalogin · 6 months ago
It’s not clear to me but do these kernels run directly on the hardware? If so how are they able to talk to each other, DMA? That could open up some security flaws, hopefully they thought through that
agentkilo · 6 months ago
IIUC, yes, all the kernels involved run directly on the hardware, in a "cooperative" way, i.e. they must agree on not touching others' memory regions.

I think the architecture assumes all loaded kernels are trusted, and imposes no isolation other than having them running on different CPUs.

Given the (relative) simplicity of the PoC, it could be really performant.

agentkilo commented on Writing a basic Linux device driver when you know nothing about Linux drivers   crescentro.se/posts/writi... · Posted by u/sbt567
ahartmetz · 9 months ago
> I also thought I’d message the vendor and ask them if they could share any specifications or docs regarding their protocol. To my surprise, Nanoleaf tech support responded to me within 4 hours, with a full description of the protocol that’s used both by the Desk Dock as well as their RGB strips.

How cool is that? Too many vendors still think that they have valuable intellectual property in such relative trivialities. And that handing out the specs freely helps their competitors more than themselves.

agentkilo · 9 months ago
Yeah that part of the article put a big smile on my face.

I did the same thing back in college, when I was in a lab. We wanted to do some research on Wi-Fi signals, and I happened to own a bunch of Wi-Fi adaptors produced by SomeSmallTech Co. Ltd., which featured relatively new Atheros chips and didn't have Linux drivers at the time.

So I sent an email to the company's public email address, asking for some datasheets, "for science". To my disappointment, presumably a PR person replied that they "don't have a company policy to collaborate with academic research". (But they did send a quick reply, kudos to that.)

Funnily enough, years later I ended up working for said company. Naturally, when I first logged into the company network, I searched for the datasheets I asked for. There were "classified" watermarks all over the PDFs :)

agentkilo commented on Homegrown Closures for Uxn   krzysckh.org/b/Homegrown-... · Posted by u/todsacerdoti
agentkilo · 9 months ago
Built on top of Owl Lisp[1]. TIL about this dialect, and it looks interesting! Instead of native threads, it has continuation-based threads[2], and it seems the whole VM architecture is based on that.

[1]: https://haltp.org/posts/owl.html

[2]: https://haltp.org/posts/owl.html#heading26

agentkilo commented on Show HN: A Tiling Window Manager for Windows, Written in Janet   agent-kilo.github.io/jwno... · Posted by u/agentkilo
weeb · 10 months ago
Thanks, that's it. I really like 'gradually walk the UI tree', though I'm struggling a bit with the thing I want being obscured by the label (and me not remembering what was there). An offset would be nice, though I'm sure it's not easy to define a heuristic that works in all places.

The first thing I tried was in my browser, I asked for all the buttons and it labelled the 'x' to close each tab, but where the labels were laid out it just looked like an inviting right-aligned label on the clickable tabs themselves. Lost a few tabs before I realised, because you also don't see any feedback on the click since any UI feedback is hidden by the label. Hmm. Food for thought.

agentkilo · 10 months ago
> An offset would be nice, though I'm sure it's not easy to define a heuristic that works in all places.

I agree. I considered dynamic offsets, in an effort to declutter the labels, but found it even more confusing. Maybe I should do more experiments on this.

> but where the labels were laid out it just looked like an inviting right-aligned label on the clickable tabs themselves

The labels are left-aligned by default (except in `frame-hinter`). I think you can try some combinations of the `:anchor` and `:show-highlights` options[1] to see if they work better for you.

[1]: https://agent-kilo.github.io/jwno/ref/built-in-modules/jwno-...

Edit: Wrong link

agentkilo commented on Show HN: A Tiling Window Manager for Windows, Written in Janet   agent-kilo.github.io/jwno... · Posted by u/agentkilo
weeb · 10 months ago
Yes! transforming the top level frame sounds like the way to go.

I ran jwno with example-config and pressed RAlt and RAlt+K a few times, each time trying one of the onscreen shortcut keys (b, c, d, etc). Log at the bottom of this comment. At the end of the process I was left in a state where pressing Space triggered a context menu in my title bar, and I couldn't type space in the app (e.g. in Notepad or Terminal) which I think is due to one of the Alts ending up being held down? It persisted after leaving Jwno

Log: https://ctxt.io/2/AAB4W5O7Fg

agentkilo · 10 months ago
It seems your right alt key is actually the AltGr key. I didn't explicitly support AltGr in Jwno, so it freaked out.

Sorry for the confusion. I think switching to another leader key, such as LAlt or RCtrl, should fix the issue.

agentkilo commented on Show HN: A Tiling Window Manager for Windows, Written in Janet   agent-kilo.github.io/jwno... · Posted by u/agentkilo
weeb · 10 months ago
Yes! transforming the top level frame sounds like the way to go.

I ran jwno with example-config and pressed RAlt and RAlt+K a few times, each time trying one of the onscreen shortcut keys (b, c, d, etc). Log at the bottom of this comment. At the end of the process I was left in a state where pressing Space triggered a context menu in my title bar, and I couldn't type space in the app (e.g. in Notepad or Terminal) which I think is due to one of the Alts ending up being held down? It persisted after leaving Jwno

Log: https://ctxt.io/2/AAB4W5O7Fg

agentkilo · 10 months ago
Thanks! I created a tracking issue here: https://github.com/agent-kilo/jwno/issues/12

Meanwhile you can try to change leading `RAlt` to something else, like `Win + H`, and see if it works. There may be a bug that gets triggered when only modifier keys are mapped.

agentkilo commented on Show HN: A Tiling Window Manager for Windows, Written in Janet   agent-kilo.github.io/jwno... · Posted by u/agentkilo
weeb · 10 months ago
This looks to have great potential for accessibility! I work with individuals who use eye gaze input, where a significant part of the screen is taken up by an on-screen keyboard (including various shortcut/macro keys as well as for typing). Having tiling options that fit within a smaller part of the screen (e.g. still allow side by side or top/bottom split, but in a smaller total region) would be great. Particularly as Windows 11 has broken vertical docking of appbars.

The UI hints also look promising, but I can't get them working. Using example-config.janet I tried pressing RAlt or RAlt+K and I get the UI hint shortcuts list coming up, but none of them seem to do anything, except in Notepad where I sometimes get the standard UI hints (that always come up here with a long press of left alt)

Fwiw, as a newbie I found it a bit intimidating/off-putting that it doesn't work out the box without choosing a config file. That's quite a lot of extra cognitive effort and link-clicking before you can try it out. And I'm left quite unsure what I'm missing out on. Am I able to access the different documented features with the config file I have? It's not clear.

agentkilo · 10 months ago
> Having tiling options that fit within a smaller part of the screen (e.g. still allow side by side or top/bottom split, but in a smaller total region) would be great.

Do you mean reserving screen space for the on-screen keyboard? If that's the case, you can try to "transform" the top-level frame (a frame that tracks a monitor's screen area), either in the REPL or in your config: https://agent-kilo.github.io/jwno/cookbook/adjust-top-level-...

> Using example-config.janet I tried pressing RAlt or RAlt+K and I get the UI hint shortcuts list coming up, but none of them seem to do anything

Can you please file a bug report and attach relevant logs? You can write logs to a file by starting Jwno like this:

jwno.exe --log-file C:\jwno.log --log-level debug --no-console your-config.janet

There should be some interesting logs when you press one of the UI hint shortcuts.

> Fwiw, as a newbie I found it a bit intimidating/off-putting that it doesn't work out the box without choosing a config file. That's quite a lot of extra cognitive effort and link-clicking before you can try it out.

I totally understand. But I chose to not include a default config in the executable, because I thought a window manager is a... personal thing. It should evolve with your habits and workflows, so the default config will most likely get changed to something dramatically different anyway. I can be wrong though.

agentkilo commented on Show HN: A Tiling Window Manager for Windows, Written in Janet   agent-kilo.github.io/jwno... · Posted by u/agentkilo
TeMPOraL · 10 months ago
Long-time StumpWM user, before I switched back to Windows a few years ago. This is super-exciting to see, and I'm going to take it for a spin. It might just address my major frustrations with arranging windows and switching between them; my monitor seems just the right shape/resolution for the standard Windows splits to be suboptimal.

(Browsers, in particular, I use full-screen less and less. That annoying trend of squeezing everything into short lines "because readability" is just wasting too much screen space; zooming in makes everything too big, and I'm getting tired of writing userstyles or userscript to fix it for every other page I open, so I'm back to keeping 2 or 3 columns of windows running.)

Also, any excuse to use more Lisp is good in my book. Based on the screenshots, it looks stellar; if it works half as well as it comes across, I'll switch over instantly.

agentkilo · 10 months ago
A fellow StumpWM user!

My StumpWM is heavily customized though, and I mostly modeled Jwno's behavior after my own config, so it may not be what you expected at all.

But that's one of the reasons I like Lisp and things built in Lisp: They are so flexible, you can sometimes build something based on the original thing, while it feels completely different from the original.

> my monitor seems just the right shape/resolution for the standard Windows splits to be suboptimal

Do you use an ultra-wide? In that case, Jwno has no OOTB ultra-wide support, but there's a section for adjusting it in the cookbook[1].

[1]: https://agent-kilo.github.io/jwno/cookbook/adjust-top-level-...

agentkilo commented on Show HN: A Tiling Window Manager for Windows, Written in Janet   agent-kilo.github.io/jwno... · Posted by u/agentkilo
entropie · 10 months ago
I recently tried hyprland after using xmonad for like 10+ years and wondered about the decision to bind workspaces to displays. I didnt like that. How does Jwno handle multiple monitors? I have looked at the docs and didnt see it mention anywhere.
agentkilo · 10 months ago
Sorry for the confusion. Multi-monitor support is only briefly mentioned in the docs[1] and the interactive tutorial[2].

Jwno's internal data structure has these levels (higher-level comes first):

Root - Virtual Desktops - Monitors - Normal Frames - Windows

So monitors are part of a virtual desktop, and every virtual desktop has the same layout that reflects your physical monitor arrangement. When you switch virtual desktops, all monitors switch to the new desktop at the same time.

[1]:https://agent-kilo.github.io/jwno/frame-tree/frame-nodes.htm...

[2]: https://github.com/agent-kilo/jwno/blob/master/example/tutor...

agentkilo commented on Show HN: A Tiling Window Manager for Windows, Written in Janet   agent-kilo.github.io/jwno... · Posted by u/agentkilo
behnamoh · 10 months ago
> I find the REPL and interactive development workflow invaluable. A window manager is a long-running background service by nature, and has a lot of accumulated runtime states. The ability to peek inside and debug while the process keeps running helped me a lot when building Jwno.

Sure, but any particular reason you picked Janet over Common Lisp? They both support images, REPL, hot-code-reloading, etc.

agentkilo · 10 months ago
TBH I dived right in when I decided I should build something with Janet, and didn't really consider any alternatives. Now you mentioned it, I think Janet's simplicity and conciseness played a large part in attracting me to it, comparing to Common Lisp at least.

u/agentkilo

KarmaCake day254November 20, 2024
About
https://github.com/agent-kilo
View Original