# New PC, New Journey: Distro/DE Hopping and Local AI

*November 13, 2026*

Well, since I received my new, more powerful PC to run local AI, I had a pretty wild ride, I have a lot to share, so I decided to write down my experiences in a long form article.

## Distro/DE hopping

My "journey" started on the good old Debian I've been using for a while, with installing Ollama (basically a must have for local AI), downloaded the Qwen 3.6 35B model, which is said to be the best performing model, and checked whether it runs from GPU. But nah, it ran from CPU. It wasn't super slow for simple chatting, as my CPU is also pretty strong, but when tried a coding agent (more on this later), it was extremely slow. Also tried Strata, to see whether it's an Ollama specific issue, but nah, it didn't recognize my GPU either. I thought, ok, well, I'm left with no other choice than trying to get the latest proprietary NVIDIA drivers working somehow. I've already tried it years ago and I failed all the time, no matter what tutorial I followed, and now it was the same, after trying for more than one whole frickin day, I failed again. Linus said it right: "So NVIDIA, f\*ck you."

And there we go, I decided to distrohop (escaping from the problems, typical me, I can't help it lol). First I went with Zorin OS, as it has an option during first boot from USB drive to start in NVIDIA compatibility mode, and also automatic driver installation in its installer, but nah, still not working (at least not the AI stuff). Ok, I thought it's probably because of older driver version, things are old on the Debian/Ubuntu side, so let's go over to the Fedora side. I installed Fedora Workstation (it was still version 44, as I was a bit impatient to wait for 45 to release) alongside Zorin OS to try out whether I can get the NVIDIA crap working, and there you go, I added the RPM-Fusion Non-Free repo and installed NVIDIA driver and CUDA with only a few simple commands, waited 5 minutes as the documentation suggested, rebooted the system, and it worked! I was actually surprised, as NVIDIA used to be just as problematic on Fedora as on Debian a few years ago, but seems like they actually managed to tackle it. Now, I'm not a big fan of Red Hat as a company, they are just as greedy as other corps, but it isn't really possible to escape their influence anyways, their hands are basically everywhere within the Linux ecosystem, just look at Flatpak, Systemd, Pipewire, Wayland, XDG Desktop Portal, or the Linux kernel itself, so switching to Fedora wasn't that big of a compromise imo. Project leader Jef Spaleta talking about implementing age attestation is a bit concerning though, especially that one of his suggestions includes the usage of (cr)Apple APIs, making it basically the worst implementation idea I've seen so far, but I mean it isn't a closed down Winslop or macOS, so there will probably be some (relatively) easy ways to remove that crap if it ever gets added, and there will probably be a few forks which remove it.

However, when I wanted to install the Forge extension on Fedora, I hit a wall: Forge isn't ported yet to GNOME 50, only to 49, and its development became really slow recently (actively looking for a new maintainer), so who knows how long it will take to port it (ironically, it has a vibe coded fork which is also falling behind in supporting new GNOME releases lol), I was basically left without without dynamic auto-tiling and window tabbing, which are essential parts of my workflow, so I was left with no other choice, but to yolo a bit, and switch to the much less mature COSMIC desktop, installed Fedora COSMIC Spin to replace Zorin OS, rather than Workstation, so that I can have those features.

Actually, it isn't a bad experience overall. It does the auto-tiling and window tabbing stuff much much better than GNOME + Forge, with basically no bugs (or at least not as noticable bugs as in case of Forge, which often thought that two windows opened in two different workspaces are in the same workspace, for some reason, no such issue here on COSMIC), and it can also move around whole tab groups on the screen, which isn't an option in Forge. Also, some KDE apps I use (e.g. Haruna) had broken theming on GNOME (black icons on dark grey background), but not here on COSMIC, so another plus to COSMIC. Same with GNOME apps. As I noticed, they try to solve basically all major issues GNOME is criticised for, e.g. there's built-in tray icon support (not a necessity for me, but it's still nice to have I guess), dock appearing by default, with auto-hide option (although latter isn't customizable yet, unlike with the Dash To Dock extension of GNOME), traditional menu bar instead of GNOME-style hamburger menu, and option to switch to traditional Winslop-like layout, with only a bottom panel; all of these without installing any extension, plus it seems like Flatpak apps have somewhat better performance. Not everything is perfect though, there are some things which don't work, like some apps (e.g. Pika Backup) being unable to run in background, due to immature desktop portal implementation, login screen not respecting keyboard layout (the layout chooser button shows Hungarian layout for me, but it actually seems like US layout), although luckily there's a [way to fix it](https://github.com/pop-os/cosmic-greeter/issues/519#issuecomment-5947270175), and there used to be some issue with OBS screen recording source freezing on Fedora 44 (COSMIC 1.0.0), although this OBS issue seems to be fixed now on 45 (COSMIC 1.10.0). After upgrading to 45, there was also a Fedora + COSMIC specific issue that they changed the system keyring to oo7 which broke some programs like Gajim (which said that authentication failed, asked for my password each time I opened it), so I had to install the GNOME keyring to fix it. Also, preinstalled apps are a bit mixed, as the COSMIC ecosystem doesn't have an app for everything yet, so there are some GNOME and KDE apps too, which isn't a problem for me personally, but it might be for some, who prefer full visual consistency. Also, some COSMIC apps might not have all the features that their GNOME or KDE counterparts have, e.g. the text editor doesn't have the option to preserve previously opened files on close, so I decided to install the GNOME one to have that option, because why not, I guess. Also, the video player doesn't have customizable left/right mouse click events, and doesn't automatically open all videos located in the given directory, when opening a video, unlike KDE's Haruna, so I use that instead of the preinstalled one. But on the other hand, the software center of COSMIC is actually way better than GNOME's, it doesn't load infinitely after installing/uninstalling an app, can handle multiple parallel operations. So yeah, some things better, some things worse than on GNOME, although overall I'd say there are a bit more of the better things, and I'm pretty sure things will improve over time, System76 seems to actually care about making a good DE, which doesn't overwhelm users with too many options, but at the same time, provide many things ootb, without the need for extensions. It's basically a "better GNOME" (or at least it will be, once the issues are resolved). The only thing GNOME does better imo is the merged workspace overview and desktop search features, both accessible via Super key, here on COSMIC, I have to use two different keyboard shortcuts for those. But other than this, COSMIC does most other things better. It's quite ironic, how GNOME was created as an alternative to KDE back in the 90s when KDE still had licensing issues, and recently COSMIC was created as an alternative to GNOME, to address the issues GNOME failed to address.

So yeah, I'm no longer a farty gnome, I became an astronaut 😎

## AI experience

### LLM chat with web search

Well, I though this will be the easiest thing to get working, since I want nothing extra, just a simple AI chat which can search the web, so I can use it to occasionally troubleshoot some issues, look for alternatives to software/tools, and similar things, but it turned out, that it isn't that easy to achieve.

As I mentioned, I started with [Ollama](https://ollama.com/) and the Qwen 3.6 35B model. Then after I solved the NVIDIA issue by distrohopping, I continued experimenting with the options. I tried [Moose](https://moooossee.github.io/) (not to confuse with Meta's Muse), which I recently heard about from the news. It's a pretty nice, simple one, does what it aims to be: a simple AI chat. The only thing missing is the web search option. Then I tried [Ensu](https://ente.com/ensu/), because its extra features sounded kinda interesting based on the description, but as I gave it a go, it turned out that it's pretty limited, it doesn't let to choose the model to use, and it also lacks web search. Then I thought, I give [Alpaca](https://flathub.org/en/apps/com.jeffser.Alpaca) another go, which I already tried earlier on my previous machine, I had a pretty poor experience with it, it rendered Markdown formatting of AI answers pretty poorly, with broken code block elements, and also crashed a few times, while the model generated the answer, and the generation didn't continue after I reopened the app, but I thought that maybe it had been fixed since then, but nah, still the same. Tried out its web search feature too, but it's basically useless, it opens a sidebar with an embedded WebKit web viewer, types a search query to the search engine chosen in the settings, and that's it, it hangs there, and does nothing more.

At this point, I was like: ok, let's just search for local AI chat apps with web search functionality directly. Well, there aren't many. Most of them are specialized research tools, "answer engines" and the like, not generic AI chats. I tried [Vane](https://github.com/ItzCrazyKns/Vane) which actually had functional web search, but it wanted to do deep research on everything, gave useless answers when I asked it to solve a technical problem, because it isn't really meant for that. Can be good later for some academic work at university though, to search for resources and extract the relevant parts from research papers, will see. It would actually be pretty neat to have a local AI instead of the proprietary freemium tools the uni recommends.

But I continued to look for regular AI chat options, tried to get [LibreChat](https://www.librechat.ai/) working with Ollama and SearXNG, but setting up an AI chat app with Ollama integration using Docker Compose is a pain, if I want to use Ollama with multiple AI apps. The multiple local instances have conflicting ports, and in some cases, if I change the port of one of them, it won't connect properly to the desired AI chat app. I wasted a lot of time getting it to work, then came the search thing with SearXNG, but I couldn't manage to get it work (maybe I followed the wrong tutorials, or I'm just too dumb to understand Docker Compose stuff, idk). I just decided to move on to something else, wanted to delete the cloned LibreChat repo, but it doesn't let me do that, even as a superuser, some directories stay there no matter what I do. Is it malware, or what? lmao

Ok, whatever, let's just move on to [Open WebUI](https://openwebui.com/), which unfortunately isn't FOSS, only source-available (used to be FOSS, but they changed it to some custom license), but I thought, frick it, I just want a frickin local LLM with web search, if there's no other way, I'll use a source-available software. It's said by many people that it's the most user-friendly to set up. Good joke, it's my beloved Docker again, yay... Unfortunately I didn't document most of the setup and troubleshooting process, and I don't remember much, because I just looked at dozens of sources, asked Proton's purrrrple furbeast, etc., to get Ollama and SearXNG working with it, and just tried a dozens of "fixes" until I got it up and running (at least seemingly), but then the Qwen model installed via Ollama just said that it doesn't have web access, despite Open WebUI showing that web search is working, I spent a few more hours troubleshooting, until I (or more precisely, Lumo) figured it out, that it's a Qwen specific thing, I had to go to Settings > Models > \[model name\] > Advanced Params in Open WebUI, and set Function Calling to Legacy (whatever it means), then it finally worked... or did it? Nah, it gave useless answers, e.g. if I asked about FOSS Gemini Notebook alternatives, it answered that there aren't any (which isn't true at all, I asked Lumo the same question, and it recommended quite a few alternatives), so I looked further, tried many things (raise web search result count, set web loader engine to Playwright, raise top-K to 10, set embedding model to BAAI/bge-m3, set a system prompt to adjust how the model should answer, etc.), but nah, nothing worked, in fact setting the embedding model even broke the whole frickin Open WebUI, had to reset the config and try again, but it broke again, and I'm like: why the heck does Open WebUI have so poor error handling, that it accepts invalid values, then craps itself, with no clear error message? User friendly, right? RIGHT?

Then I tried [Odysseus](https://odysseus-dev.github.io/odysseus/), it also had problems with Ollama connection, but I couldn't bother anymore to spend more hours getting it to work. I just gave up at this point, I can't waste more time on this crap, I have many other things to do, so I'm done with local LLM chat for now, maybe will try again later.

I also tried some online options, to at least get away from Lumo after the recent Proton controversy (in case you missed the news, Proton CEO Andy Yen went crazy, called conscious AI use and careful manual testing "loser thinking", added in the company's Software Engineering Manifesto, that employees should work for AI, and not the other way around), but unfortunately the other options aren't any better either.

[Apertus](https://chat.publicai.co/auth?redirect=%2F) has models which are usually pretty great for thing like searching for tools for a specific task, or looking for alternatives, but are pretty bad at solving technical problems, so not a full Lumo replacement. Also, they say that they share my conversations with researchers, unless I write an email to them to exclude me, but who knows if they actually respect my decision. Also they emphasize, that they don't allow researchers to contact me. This sound to me like they share my personal data too with them, otherwise, why would they need to explicitly say they don't allow researchers to do that, if they don't hand over that data in the first place?

[Euria](https://www.infomaniak.com/en/euria) would be pretty good in terms of usability, because it offers multiple models, so it could be suitable for everything, but I have a bit of bad feeling about Infomaniak, the company behind it. Euria is part of their wider kSuite ecosystem, which is quite similar to Proton's ecosystem, and they require a phone number for registration, so nah, I'm not gonna bother with it.

Some recommend the online service of Ollama, but nah, it also has a phone number requirement for registration, so it's also a no-go for me.

[xPrivo](https://www.xprivo.com/) is an interesting one, it's an anonymous AI chat, without a registration, chats are only stored in cookies even the paid version works with a special key instead of an account. Interestingly, it also supports local models served via Ollama. Its Privacy Policy seems really good, with no log policy. It has some ads though which interestingly aren't blocked by uBlock Origin by default, Proton is one of their sponsors. Idk how to feel about this... Also, storing chats only in cookies isn't very reliable.

So yeah, I decided to stick with Lumo, and move on to the coding agent stuff.

### Coding agent

This was actually the easiest one to pull off, I just installed [Zed](https://zed.dev/) from [Flathub](https://flathub.org/en/apps/dev.zed.Zed), like any other regular program, and connected Ollama in the settings to Zed's built-in agent (it also has support for Llama.cpp and LM Studio, plus many online providers). There it is, no Docker frickery, just a few clicks, and I have a functional coding agent inside an IDE, which is also automatically sandboxed inside the opened project directory, so it can't just go outside the project directory and do some undesired arbitrary stuff. (I haven't tested how good the Qwen 3.6 35B model is at coding more serious applications, just asked it to write a simple HTML hello world page, and a Python todo app, which it did perfectly without any issues, but if it won't be good enough, at least I can always download another model via Ollama.)

### Gemini Notebook replacement

Well, just like LLM with web search, this one also seemed easy at first, but it actually isn't. I don't need every single feature of Gemini Notebook, just the podcast, mind map, and flashcard generation, for my studies, but even this is too much to ask from a offline / self-hosted alternative, it seems like.

I tried out [SurfSense](https://www.surfsense.com/) first, which is said to be the best, although most creators on YouTube talk about its online version as a "Gemini Notebook killer", which was recently shut down (it killed the wrong target: itself instead of Gemini Notebook lmao), but the offline version is still actively developed, has basically all features Gemini Notebook has, in fact, even more, so it could truely be a Gemini Notebook killer if it actually worked. But nah, it's broken. At first use, it had a setup wizard which looked really nice, it prompted me to choose LLM, video, image, audio-generation, etc. models (with Ollama connection option), but then, if I tried to give it a source and generate stuff, it just threw error for everything, except for regular chatting (at least if Ollama provides the model for it) and flashcard generation, but even latter was pretty crappy, only generated 3-4 flashcards even if I prompted it to generate 50. It looks really good on the surface, but it fails to do basically everything it aims to do. I mean it's good for regular chatting based on the provided sources, but that can be done by regular AI chat apps too, so it's kinda useless in its current state.

I tried other options like [Cortex](https://cortexos.study/) and [NotebookLM-Lite](https://github.com/LRriver/NotebookLM-Lite), but those didn't work, Cortex failed to open (both the RPM and AppImage) and NotebookLM-Lite failed to build. Then I looked at [LibreNote AI](https://librenote-ai.vercel.app/), but that one isn't really local, just the app itself, but it requires OpenRouter integration, so it just routes my request and personal data to a privacy invasive cloud AI, how wonderful. Who the heck wants a self-hosted AI with cloud models? What's even the point here?

I'm at the point that I might just write a small Python util myself, using some modules for generating stuff, without any fancy UI, and use an existing LLM chat app like Moose for asking about the course book (luckily I don't need web search for this). There's a university project where I'm required to do a project with AI to solve a specific problem I have, and document the process, so I guess it will be a suitable project idea for that, maybe I can actually vibe code something useful which just works as I want it to work (or not). At least I have the coding agent working, to get it done. Or if it won't come together, I'll just use Moose to prompt LLM to write stuff in textual form, then paste podcast script to a TTS tool like Speech Note (I used that one earlier a lot when recording TTS for my videos), mind map text to something like Markmap (haven't heard of this one before, Lumo recommended it), and flashcards CSV file to Anki (which I'm using on a daily basis anyways for my studies, a great and powerful tool).

### Image/video/music generation

This isn't really a necessity for me, I probably won't use it much, but it's nice to have, just in case I need it.

While I was searching for LLM chat, I came across [LocalAI](https://localai.io/) (creative name, I know lol), which can do all sorts of stuff: LLM, image, video, music, TTS, 3D generation, etc., has an extensive model library, accessible right within the app, with models of all sorts. It shows the VRAM requirement, file size, license, short description, inference engine used (Llama.cpp, Strata, vLLM, etc.) for each model, lets to show only the ones which fit to the GPU, etc. It also has a studio interface for content generation, with options like reference image, negative prompt, steps and seed for image generation; start/end image, avatar audio, resolution, FPS, duration, negative prompt, steps, etc. for video generation; instrumental toggle, duration, BPM, etc. for music generation, and more. And all of this is free, unlike in [ComfyUI](https://comfy.org/download/), the other option I considered, where basically more than half of the presets are paid! Pretty cool stuff.

It's also really easy to set up, I just downloaded the AppImage of LocalAI Launcher, it detected no server installed, so it offered a one-click option to install the server, and that's it, no Docker frickery. It just works.

I played around around with image and music generation (video generation seems to require much more hardware capacity than what I have). Well, local model (at least the ones I can run) aren't as good as some of their online, proprietary counterparts (especially AceStep models for music generation, which can't properly generate music in many electro music genres like phonk, trance, hardcore techno, splittercore, extratone, etc., fall back to some jazz-like thing, or just recognize the "techno" part of hardcore techno lol), but I mean it can be decent for generating an image for some work where the image isn't the key thing, just a little extra, or generating some background music for a video. Also, the generation was really fast, when I tried music generation earlier on my previous machine, it took like 30-60 minutes to generate a track (in fact, sometimes, generation just stopped because there was no memory left), and now it takes like 5-10 seconds (that's right, seconds!) to generate one.

### Back to LLM chat

And while I was writing this article, seems like Moose devs read in my thoughts and [added web search](https://moooossee.github.io/changelog/0-8-0/), with support for SearXNG, along with DuckDuckGo and Brave Search, even though public SearXNG instances seem to rate limit it (might be a wider Ollama issue), or provide no JSON response, tried like 15-20 different instances with no success, and there's no support for self-hosted SearXNG instances running on localhost yet, hopefully it will also get added in a future release, until then, I'll just stick to the DuckDuckGo option (Brave Search requires API key, I didn't bother creating a Brave account). Nonetheless, it's still great to have web search in an "it just works" type regular desktop app. So finally, Lumo ditched.

## Conclusion

So yeah, it seems like I achieved (almost) everything I wanted. I have an offline coding agent thanks to Zed, and while searching for LLM chat options, I found Vane for deep research and academic stuff (which I didn't even plan originally, but it's a great bonus), and LocalAI for generating media content like image and music. Also, while LLM chat seemed hopeless, it finally also came together, thanks to Moose devs, shoutout to them (and of course to the devs of all other tools I chose). I didn't manage to replace Gemini Notebook yet, but maybe I'll be able to put together a Python util, or just use Moose, complemented with other separate tools, to get the job done.

As for the distro and DE switching, I'm not super happy about switching to Fedora because of the reasons I mentioned, but it is what it is. COSMIC though, I'm really impressed with its window management, and even though there are still some minor issues related to other aspects of the DE, it still feels like an upgrade from GNOME.
