ZH version is available. Content is displayed in original English for accuracy.
Advertisement
Advertisement
⚡ Community Insights
Discussion Sentiment
73% Positive
Analyzed from 3475 words in the discussion.
Trending Topics
#desktop#things#more#windows#raycast#app#don#stuff#plugins#need

Discussion (46 Comments)Read Original on HackerNews
Here's an idea that I believe I read in HN as "the original purpose of the desktop": add a Desktop Manager that manages which icons are on your desktop and makes it easy to switch.
The desktop is kind of weird, in the sense that it's prime real estate but, at the same time, there's an expectation that you shouldn't put too much stuff there, and then it ends up cluttered anyway. I think it's worth trying a stronger separation between "Desktop" and any other regular folder, emphasizing that the Desktop is where you place links to the files you need right now, but with a mechanism to clear it completely (without losing data) and another to switch which icons you see right now, kind of like browser tab groups. That way, when you're working on a project you place the files you need on the desktop and when you're done you clean it up.
If we go further into the metaphor of a desktop, there would be sections for tools and sections for pending work. The inkwell versus the blotter, if you will.
But then, well, what difference is there between a designated permanent zone of the desktop for non-tools, versus a regular window showing some contents of a folder, which the user has chosen to position above an empty area?
It's also a perfect use for local System One models that can classify prompts and forward them to the right module - calculator for math, distrobox for shell commands, LLM for natural language questions and normal search for everything else. Not using a fixed classifier because plugins should be able to add their own question types.
The article mentioned WinFS and relational filesystems. That's another good idea, integrate metadata so you can support use cases like finding all pictures of your dog or all playlists with Ed Sheeran songs (to remove them). Everything bound to the file entries instead of ID3 tags inside the file or app specific databases. It would be a lot more reliable and probably faster.
IIRC bcachefs is already a relational database but I don't know how good the query APIs are. If we can't do full extendable tags then at least add user defined groups/tags like Work and Games and Photos to make finding things easier. People remember what a file is better than where it's stored.
So I’m looking at the Raycast web site, and aside from the UI being a little different, Raycast seems like it is itself a clone of the already long-existing KDE Plasma start menu (Kickoff) and KRunner? I guess the only thing missing from the KDE one is “AI”. Is there something I am missing about how Raycast is some innovation not already realised in the Linux desktop?
> If we can't do full extendable tags then at least add user defined groups/tags like Work and Games and Photos to make finding things easier. People remember what a file is better than where it's stored.
Extended attributes[0] already exist if you want. But, as the linked wiki page indicates, filesystem attributes are fragile. And what is the tangible benefit? In practice, users can already just dump all their files into a random directory and use Baloo or whatever. Which is probably better anyway since it’s easier to have a D-Bus API with multiple user-space implementations than having to wipe and reformat to use a different filesystem if you have some problem with it.
[0] https://wiki.archlinux.org/title/Extended_attributes
KDE krunner has plugins. But there is not afaik a big tent ownership system like Raycast. And krunner is only going to attract KDE users. Raycast is mainly mac, but also, there's Vicinae which runs on a lot more systems, and it can run >50% of the Raycast plugins without a sweat, is designed to be drop in compatible.
It's also absurdly easy to write Raycast extensions. It uses web platform technologies that "just work", that don't have ornery toolchains and need lots of dev libraries installed. With KRunner you can probably use whatever library you want to do whatever you want, which is good, but hard, where-as with Raycast there's a pretty comprehensive and powerful API that offers a ton, that is well defined, and that other plugins will show you the way on. https://developers.raycast.com/
I can search and enter my search, and expect same results everytime, so muscle memory friendly. Gnome's search does calculation in search just fine, or search files, no need of any models. And app can provide their own search endpoint that gnome uses, to search in the app. Repetable, simple, and light.
Its boring, but hey, your everyday thing that is your starting point of the day do not need random behavior, or getting dependent on some 3rd party app that suddenly pulls the rug from under you.
This everything AI is so tiring.
I'd love to see an agentic OS where the OS and apps can both talk in terms of MCP things like resources, tools, skills. Yes these are primarily geared towards agents, but they are also acceptable machine-to-machine interfaces to script against too (so long as the type signature remains compatible).
Android's Intents feel related, similar-ish. It's a pity no one bit on PK's WebIntents. That could have been an interesting way to create abstractions for intents, for activities, for stuff happening on the computer. Notably the xopc actually had activities and a journal that let apps contribute meaningful intent to the OS as a whole. But mostly it just ended up as a history viewer there. Android mostly uses intents as a launcher. But this idea of having the activities of the system as available abstractions could go much further.
I feel this so much.
I think that there's a "better" windowing system where all of your stuff sticks around way more than it used to. Clipboard history, but also just "oh you have these windows open while working on this task".
People have really leaned into coding harnesses + chat windows as a way of grouping together work. I think there's a more general idea in this space. Don't make me explicitly keep track of things, just hold onto it all for me!
There's some universe where my desktop is basically a Notion-like thing, and I can just throw things into semi-persistent workspaces (that I close out when I'm done). Desktop Environments that make this work nicely will be quite cool IMO
(A simple and dumb version of this is the BeOS "group various windows together, even though they aren't from the same application" stuff. Very cool stuff IMO
I feel this. When I first got to learn what a workspace was (in Eclipse, of all things), and I really drilled down into the English meaning of it (I'm Dutch), I thought about exactly what you're describing right now.
There's also a thing of wanting "http referer"-style things but at the desktop. I want things that tell me _from where_ I clicked into a page in the browser (like "oh you got here from Slack (at this spot)"
Desktop history, clipboard history... all associated to certain contexts. Would be quite nice IMO
Yeah, this can be a little extreme, and I feel we can benefit from being a little more open to trying new things.
The part about designing specifically for large displays and widescreen monitors was interesting. We can also reverse it, though: right now I'm away from home, and I only have this old laptop which is mostly great but has a shitty touchpad as the mouse, and I have to think this must be really common. However, this situation seems to be completely ignored by all desktop UX design. We seem to be pretty good at coming up with ways to use the mouse in our programs, but when the mouse is hard to control and unreliable, it causes pain. I guess I can use ratpoison or something, but that seems to be giving up too much.
Regarding the AI going deep into the filesystem and organizing my data...I'm extremely skeptical of inserting any kind of inherent unpredictability into how I interact with the computer. Giving a command or input should produce a well-defined and predictable (in principle) action. Getting rid of that paradigm fundamentally changes the relationship between the user and the computer in a way that, in my opinion at least, greatly diminishes its usefulness as a tool.
What we need (and to some extent we get in web, i.e. gmail is different based on resolution) is different UIs based on the interface one is using. a single app that can switch between UIs.
I strongly believe the lack of this is why convertibles have remained more of a gimmick than anything else, as in practice you either keep using the app the same way you always did as you switch usages or you use different apps in the the different usage scenarios because they are tailored to that specific usage scenario. Neither are things that really sell the convertible as something with strong usage.
The closest we've gotten is things like DeX on samsung and perhaps what google is rolling out with android.
True revolution in UX will come from making customisation accessible, so everyone can decide what's best for them without losing their minds in endless customisation rabbit holes or having to rely on big and clumsy organizations.
I actually agree about customization, but that's only part of it, and seems to be pretty orthogonal to what the article is talking about. You can only customize to features that are actually implemented by the system, and coming up with those seems like the harder problem.
...like it was back in the days when Windows actually had a very customisable UI[1], and then the "skinnable" UIs of the early 2000s (most of which were extremely gaudy, but then again, maybe that was what the majority of the population wanted.) Now it has devolved into little more than this: https://support.microsoft.com/en-us/windows/experience/perso...
[1] and one of the included color schemes was indeed crazy, but a good demonstration of what was available: https://news.ycombinator.com/item?id=46247605
What I do find is really lacking is UX inside of many foss apps. So many of them feel like windows xp programs with toolbars that look like junk drawers.
I want boring consistency.
And especially when it’s multiple layers of toolbars like a 2006 Internet Explorer.
Over the last decade we have seen programs like libreoffice and gimp not really do anything while others like Blender have had massive overhauls pushing the frontier of UI.
I hope Scott keeps spreading the good word and inspiring others to take different perspectives
As I recall X11 doesn't really support that at all so there was no way to implement that on Linux. Doing it on mouse up seems sensible though. I couldn't find my bug report but I bet it was met with "I like it broken".
[Agent: Fetch cat pictures from the internet] >GetFromFolder> [Agent: Filter for Calicos] >> [Agent: in Gimp paint Cat-Ears on Cats ] >> [Agent: Generated Videos] >> [Agent: Reupload to Youtube]
If you can make a "Explorer" with zero code and which allows to store and share building blocks and pipes, congrats.
https://arcan-fe.com/about/
personally I think we need to shift from the 'file location' paradigm to tagging (thinking xattr).. that will solve many problems with UI (also raise some for sure).
My own Linux desktop experience peaked with Compiz, and I have been on macOS ever since.
Even if the desktop turns out to be done though, UX polish like that drag thing is still a good idea. Like why does no major desktop let you just put icons on your desktop the way classic Windows does?
KDE doesn't let you do it either. You can only put desktop widgets on your KDE desktop.
Some backdrop, a thesis: tech used to be exciting because there was apparent motion, things changing. The dread hadn't set in, and I think that dread set in because tech shifted from close intimiate and touchable technologies we could touch, to far off systems running in some cloud data center/keep. Change was fun when we got to be on for the ride and feel some ownership but change happening to us was annoying.
So lately, it's hard for anyone to know what their preferences really are. We aren't trying a ton of human empowering things. The organizational systems Scott talks about here? We see some absolutely ferverously dedicated people enjoying Niri, enjoying new infinite space tiling systems. That's a rare example though! A couple people stumble their way into it. There's not that WinCustomize era where it's apparent people are active and busy and rebuilding, remixing their world on and on. People aren't in a receiving trying mode, because in part there's not a ton to try, and because there's no scene, people aren't kicking out new things either. The social poverty of the area & lack of things to look forward to mean people aren't looking, and people trying stuff are lucky to get traction, even when it's good.
This admits some of the "don't touch my stuff." Because we haven't been seeing as much upside to change. But also: it's pathetic! These peole have had their spirits crushed and have no peers out there who are having fun, so they can just wallow in their grumpiness. And we need to kind of ignore these users, because they don't know: they think they want not even faster horses but merely horses that stop breaking down or which start only turning left unless you pay premium. Let these naysayers and grumps alone. But more than anything: show the people you can reach good stuff! Activate interests! Try to restore a sense of motion & exciting change! Create more powerful, richer, more beautiful systems!
Agents help though. Change sucks when it gets in the way. The downsides though are lower than ever, if you have systems flexible enough to let agents work them. If something changes in a way you don't like, an agent may well be able to make quick work of it! Tell it, and it'll go fix it.
Last: the granularity of build it yourself systems is not great. Downloading Sway, a desktop shell atop it,then a launcher, then a host of other small utilities to cobble together is a lot of decision making to do, and most of these options for these roles have lots of competitors with little interoperability. The tools that makeup the desktop stand alone, small pieces, and it's up to you to pick each one and loosely couple it, with it's bespoke means of doing so. These patterns of assembly suck. There's significant money heading towards a new omakase system, and I don't think it's necessarily the authoritarianism/fascism per se, the desperation for authority to make sense of the world, but given how scattered the pieces are, I have some sympathy for why they want someone to say they've built the beautiful well hewn omakase thing. And that your agent can customize it.
One of my favorite examples for a system that does compose nicely is astronvim on neovim. It takes some well known very great core plugins for nvim, and builds a little zellij like mini-framework to nvim's tmux atop that: a visual leader key, with menu system builtin. It creates a framework for more to plug into. And then the community has lots and lots of plugins or packs of plugins that it takes from upstream plugins everywhere, and it packages them for astronvim. Hundreds if not thousands of plugins. Most require not that much extra to hook in nicely in to the framework, to make them more apparent, visual, seen in the broader system. The system composes capabilities into itself nicely, integrates. Where-as when you get a regular nvim plugin, it usually can assume either nothing or way too much about what kind of nvim it runs on. It has to define it's own world. I think astronvim is an incredible model for making common layers for assembly, and it's packs show something inbetween a single plugin and an app: it's a unit of software that aggregates a couple other modules, yet is shy of being a full app. That kind of composability of experiences is unique and special: not having to assemble every piece ourselves, and yet not having an entire massive system dropped on us. Figuring out how to deliver better units of capabilities, composable subsystems, is really missing on the desktop and is much needed.