Linux switchover musings

What initially started as a reply to this topic got quite long, so posting separately.

It’s nice that this topic has resurfaced at this time, as Windows has been frustrating me more and more as time passes. I’ve been using Debian as the under the hood server OS for my servers, as packages like OpenMediaVault run on Debian, and it is rock solid in my experience.

My main daily desktop computer runs Windows 10 still, and I consider Windows 11 unusable. For the past few months I have been taking incremental steps to try to get away from Windows as much as possible. I also have a Macbook Pro which is my “not at my desk” and “not at home” computer.
There’s a lot of engineering software that is Windows-only, and a bunch of other software that is Windows and Mac but no Linux support, which makes things a bit challenging.

I have some other computers of mine now running on Kubuntu - I really like KDE with Plasma, as this feels the most familiar to me as a long time Windows user, and it was suggested to me that Ubuntu base would have the widest range of supported applications.
It is rock solid on a 14 year old ThinkPad i420 which I got from a friend and swapped the HDD for an SSD (btw I love how easily repairable that thing is, 1 screw to get the bottom door open, another screw there and the keyboard pops out and I have full access to all RAM, wireless cards, etc…) That ThinkPad is playing 1080p videos over network on its 720p screen perfectly, as a test of sorts. I’m amazed and happy that 10+ year old computers, which I have quite a few of, still work so well.
I’m still open to other distros under the hood as long as I can put KDE/ Plasma on top of them, and maintenance is low effort/ things remain stable.


Anyways, I’m thinking about setting up more self-hosted services for myself, if I can get things like OnlyOffice Docs / NextCloud going, as well as Kasm (or similar) application containers for OS specific apps, all with a central network shared file location, then it really doesn’t matter what OS I’m running or what device I want to work on, I can just connect to the server and go to town.
This is a medium term goal of mine that I want to start looking at. It would also be cool to run slicer software out of a docker container as that would make it easy to keep a central set of projects and printer settings, instead of the -datadir approach with Prusa or Orca slicers. (I found docker instructions for Orca, while the Prusa docker project appears to be a few years stale.)
Thankfully, I am fully in KiCad now, which supports all OS including Linux.

I do need Fusion360 for work, and I did not succeed with the Wine attempt of running it back in the fall. I could use a Mac for this if I have to. I have a Mac Mini at my desk that I barely use, and there’s also a possibility where I switch over to it, although to be fair the desktop it would be competing with has 128gb of RAM and 2TB of SSD, and is running 4 x 1440p monitors.
I want to explore FreeCAD and see if I can make that the CAD software I use for my personal projects.

I do think it would be hilarious if I, as someone who does lots of technical and engineering work, became a majority of the time MacOS user …with the Linux servers providing the application infrastructure to work around Mac limitations, that is.


On a final note, the issues I’ve run into with Kubuntu so far are:

  • On an identical copy of my powerful self built desktop, I have a Logitch MX Keys Keyboard and MX Master 3 mouse, each with a USB unifying receiver. If the computer goes to sleep of its own accord, I can press a key or jiggle the mouse and the computer will wake up, however then it does not receive input from any of those, ie: I cannot move my mouse cursor or type in my password, I have to hold the power button to force power off and then on a fresh power up things work again. This is a major issue as I cannot afford to lose work I have open constantly.
    Iirc (and it has been a little while, so memory hazy), I think using the Sleep button in the OS forces a deeper sleep that requires the power button to wake up, and this seemed to avoid the no mouse/ keyboard input issue described above.
  • I just installed Kubuntu on XPS 15 7590 and there is quite a bit of online chatter about whether the Goodix fingerprint reader in it is supported in Linux. Someone has a a python script from 3 years ago which might work and they say it requires at least Python3.10, but the instructions with current Python3.12 fail and produce errors when trying to install the requirements. Fun times. I don’t know how to get around those issues.
  • The ongoing conversations about Wayland vs not, and how even if it is better, that some/ many applications have not properly implemented support for it yet so things might not work as smoothly until everyone catches up?
2 Likes

If you want to run Linux graphical applications over a network (and they aren’t 3d apps) then X11 is probably your best bet. Wayland is more secure and performant locally. I like the security. I don’t expect that running slicers over the network will be a good experience.

If you haven’t done much with FreeCAD, I recommend FreeCAD for Makers — not updated for 1.0 at this time, but good for understanding the operating model. Also, MangoJelly just posted a long video introducing 1.0 that is worth watching. In 1.0 I no longer miss the SolidWorks sketcher — it’s now amazing in FreeCAD and getting better. If you would like links to those resources, I can find them easily.

1 Like

Understood. In this case I was still talking about local apps and saying that some applications don’t play nice with Wayland yet, or so I hear? It has come up in the KiCad discord recently but I don’t have enough testing yet to know if it plays nice.

Perfect, thank you for the recommendations. I saw MangoJelly’s 1 hour video on 1.0 the other day and downloaded it. There was 1 other YouTube channel with a 1.0 tutorial. Thanks for confirming that MangoJelly is the way to go.

FreeCAD for Makers looks wonderful from a first glance.

I am brand new to it, a friend has been a user of it for a while; I installed it for the first time yesterday :slight_smile:

1 Like

I get the “frustrating part” you mentioned :slight_smile:

I am using Linux for the past 7 years on my laptop. I started with ms-dos in the early eighties and switched to windows NT4 when that came available.

I got annoyed more and more because much functionality was removed from windows, with each new version and it seemed that the whole operating system became more tuned for secretaries and bureaucrats instead of technicians.

The first Linux versions had what I missed in windows and 7 years ago I was pleased with Lubuntu with LXDE. I would have preferred to install Debian Linux but that did not support my new NVMe solid state drive at the time. A few years later I switched to LXQT but it never performed the way I really like it. I am working with LXQT for about 4 years now and it is time for an update again. In the past weeks I saw the latest Linux mint on a friends pc and I am planning to install that soon.

I never could leave windows completely because I had to maintain programs for customers. For that purpose I created virtual computers using Oracle virtual box. An additional advantage of that was that I could mimic the customers environment for the most part.

My LaserGRBL software works perfect with PlayOnLinux.
Eagle PCB design has a Linux version.
Sketchup works best in a virtual machine
Arduino and STM32CubeIDE have linux versions
LTspice works well in PlayOnLinux

I wrote above: “The first Linux versions had what I missed in windows”, but that changed!

What I often did in both windows and Linux was looking for the current directory by just clicking on “Save as”. Early versions showed the complete path and I was able to copy that to the clipboard. Try that with the latest versions! Some applications don’t even show the path.

2 Likes

I run Wayland exclusively. It’s been transparent for me. It’s possible that Fedora just has everything set up properly.

I haven’t been doing a lot in KiCAD recently but the times I have, I haven’t noticed any problems. Doesn’t mean there aren’t issues, just haven’t run into them.

The only problem I have with FreeCAD is that they have been kind of stuck on some outdated versions of various dependencies, including for a long time the port to Qt6 being incomplete, which meant that at least about a year ago when I moved to building my own from source, it wouldn’t build on current Fedora. I used distrobox to build a Debian container to build it in and run it from; Debian isn’t as aggressive about updates. There is a bug somewhere (possibly Wayland) that means that maybe once per month, my system becomes non-responsive only when using FreeCAD. I haven’t been able to pin it down enough to report a bug though. My suspicion is that once I can build FreeCAD on current Fedora and not have to run it in a Debian container, that problem is likely to go away. I should try Fedora 41 and see if it builds successfully for me with Qt6; I think that is supposed to work now. I’ve just been in the habit of running it in the debian container. Containers being easy is such a convenience!

My preference for MangoJelly is not that others are terrible; it’s that he is particularly good at not assuming you have watched all his videos in sequence. If he depends on a prior video, it’s a short series and he’s explicit about it. He’s not teaching you how to work fast in FreeCAD — e.g. he basically never recommends hotkeys. He goes out of his way to show multiple ways to get to the same functionality.

Learning the hotkeys for the few things you do all the time is a game-changer in FreeCAD. Especially in the sketcher. At least that’s my experience.

Jo Hinchliffe told me on Mastodon that he’s trying to get an agreement for him to update FreeCAD for Makers to cover FreeCAD 1.0 — though with the improvements going into the development branch I suppose targeting 1.2 might make a lot of sense. :grinning: The long time it took to get the “TNP mitigations” in place was an anomaly; they had more frequent stable releases before that. But even without the update, the things you’d learn in it aren’t thrown away — just some things get easier in 1.0.

If you would like a container-first KDE-based OS, you might find Aurora interesting. It’s a batteries-included immutable OS (updates like an android or chromebook in the background, just reboot to get the upgrade that happened in the background) with rollbacks (if you don’t like an upgrade, reboot and choose the older “deployment” and you are back in the previously-running software). It is built on top of Fedora Silverblue (which I and a few of my kids run) but adds lots of stuff that many folks would then install on top of it. In particular, since you are likely to be working with both Mac and Linux, it ships with Brew, which means that for software you build and run locally, you can build and update it the same way on Linux and Mac. Distrobox and toolbox are both there and integrated into the terminal so you just select a container from a drop-down in your terminal and you are working in it. (You would want the developer edition, Aurora-DX)

5 Likes

(This post has been sitting in drafts for a while)

Initial reply sitting from the several weeks ago:

Michael,
I want you to know that I took your suggestion very seriously and have been exploring this area in depth. I started with your mention of Silverblue, and now understand the strong benefits of Atomic Linux. I tried out Fedora Kinoite first, and then once I understood how things were meant to work, switched over to Aurora. I think it’s as you/ others say, if you just want to use apps that are available as flatpaks, then you are golden. KiCad, Freecad, Vivaldi… all available as flatpaks.

I am still struggling with how to deal with things that are not flatpaks. I understand that I can layer with rpm-ostree but that I should try to keep it to a minimum.
For example, the project to install Fusion360 on Linux:

More info from now:

I now have 2 computers now running on Aurora: a Dell XPS 15 7590, and the near identical hardware copy of my main desktop. Fedora in general, and these atomic variants, all feel way more stable than Kubuntu did (on the very same machines, both had Kubuntu installed on them before). On Kubuntu I got certain error messages related to ibus, while on Fedora, I get no such errors. Again, identical hardware, different OS.

I have become more comfortable with using rpm-ostree when needed.
OrcaSlicer has a 3rd party flatpak build and it’s now showing up in the nightly builds (first party release) as well.

I found that the Fusion360 project above has a flatpak install method that uses bottles and I was able to wrangle correct enough settings in bottles to get Fusion installed and running, but hit a roadblock with actually conveying the browser sign in credentials back into the virtual environment/ application.

I am still not there with VM’s - for example using the WinApps project with dockur/windows - I got the virtualized windows install running, I have not yet been able to actually install any Windows only applications inside it like those CAD/ engineering programs, and maybe MS Office just in case.

So, still some stumbling blocks to work through, but Fedora just feels better, you know? :slight_smile:

1 Like

I currently have 42 packages explicitly layered (not counting all the many many packages required for dependencies!) and updates do take longer. On the other hand, those updates run in the background and I just update into the updated system regardless of whether I updated one package or went to an entirely new Fedora release. I think that the advice to avoid layering like the plague is a bit over-blown.

A bigger reason to avoid layering packages is that you can do updates like your OrcaSlicer nightly builds without a reboot. :smiling_face: I use a Fedora 41 toolbox container on Fedora Silverblue 41 to run almost all my ham radio apps; I’m one dnf update away from updates there. (One ham radio program, 4nec2 for antenna simulation, is a Windows app I run under Wine.)

Since I last wrote that, I now build FreeCAD in that same Fedora 41 container as my ham apps. It has a weird bug where some menus are invisible if I’m using Wayland; if I export QT_QPA_PLATFORM=xcb then it works fine.

So close and yet so far; that sounds frustrating. I’m not expert in bottles nor wine; I have to wonder if you can run a (windows?) browser in the same flatpak container to avoid crossing the security boundary.

Hmm, have you seen this?

Anyway, those links are interesting; and I’m happy to learn about them. And I’m glad that the Fedora-based OSes are running smoothly for you! :smiling_face:

2 Likes

For my part, I picked up a 16GB Raspberry Pi 5, and am hoping that it will work well in a Pilet case (which just funded on Kickstarter), and that this will then allow use with a Wacom display as a second screen when connected — we’ll see.

1 Like