I want to switch from Windows to Linux for my office PC.
I will be using multiple Windows VM because in the office we use multiple software that runs only on Windows (maybe we’ll switch to something else, but right now I need the VMs) and because i like to snapshots and go back in time when I test new software.
I thought about Ubuntu because it seems to be the most user friendly.
I always work with a tons of opened windows (mainly Firefox) and I like to have a place for each of them, Right now on Windows I use DisplayFusion that creates multiple virtual screens (7, 4 or the 32" horizontal monitor and 3 on the 28" vertical one, both 4K), I’ve attached the configuration.
So, the question: is there a software that works kinda like DisplayFusion? (virtual screen each with it’s own taskbar, maximize in each of them, remember the position of each window, …).
P.s. Can I pass only some USB port to a Windows VM using KVM?
Pp.s. Is it possible to use Premiere on a Windows VM? Would it run smooth?
Not exactly what you’re asking for but you should look into tiling window managers, if I’m understanding correctly they do almost exactly what you want
For example on my laptop if I open Firefox it opens in full screen, if I open a terminal it resizes Firefox to half the screen and opens the terminal in the other half, a third and it splits whichever window I’m focused on vertically etc etc
You could achieve what you want by having the VMs in windowed mode and just using a tiling wm
You get the added bonus of virtual desktops that you can flick through with mouse buttons/keybinds/3 finger swipe if you want multiple layouts of different windows
Not exactly like DisplayFusion, but virtual desktops have been a thing forever on Linux. There’s a ton of options in that department. They don’t work the same in each DE, so if it doesn’t work in yours try another. I believe COSMIC supports this already, otherwise in the tiling department you might like Sway or Hyprland. KDE and Gnome are a bit weird with per-monitor virtual desktops, and KDE at least is working on it.
USB Passthrough: yes, either the device node itself or the entire controller via PCIe passthrough.
Premiere, I believe so but you will need GPU passthrough for that to work to any degree of smooth. GPU passthrough is super nice when it’s all set up, worth the spend for a second GPU. Performance is near identical to native, it’s really great. Been gaming in a VM for years… out of convenience.
Try to use the standard virtual desktop functionality. It’s not going to behave the exact same way but you might find a workable adaptation.
You can pass through USB to VMs.
You can use Premiere in a VM. Depending on what you want to do and how fast your CPU is, you might be able to use it without any special config. If you need to pass through a GPU, you can buy the config isn’t trivial. Definitely doable though.
Generally you’d want to use KVM (with virt-manager) for virtualization but it doesn’t support any 3D acceleration in Windows yet. The result is that the Windows UI in a VM is not “smooth.” It’s usable but not smooth. If you need acceleration you’d have to do GPU passthrough. There’s some ongoing work to get basic acceleration without passthrough but it isn’t done yet. Both VirtualBox and VMware have basic 3D acceleration for Windows VMs. They have other pros and cons but if you find that one of them works better than KVM for your use case, go ahead and use that. We use both VirtualBox and VMware for different purposes at work. I know of people who use all sorts of engineering CAD software in VMware.
VFIO GPU Passthrough for Premiere is a must. While not trivial to set up, it’s not too bad if you know what to do. It took me some trial and error but didn’t spend too much time on it. Main issue is making sure your PC has enough PCIe lanes.
ETA: look into LookingGlass for capturing the framebuffer from a GPU accelerated VM into your Linux host. I haven’t tried getting this to work personally but I have used Moonlight which adapts Nvidia game streaming tech for your desktop apps.
Most of the “software that runs only on Windows” runs perfectly on Linux with wine, including the installation software, and the integration into the app launcher on all of the Linux distribution that I know.
For a widow manager, I don’t use one, i have many virtual desktop and as it’s smoother than in Windows, I use only that (i don’t remember how virtual desktop works on ubuntu)
Première run really badly in VM, and run it with wine is highly messy, do to poorly designed Windows install soft and plenty of missing dependencies, there are linux alternatives that do nearly the same job : KDEnLive, Shotcut and Openshot.
That all I can tell for now, I hope it will help you a bit. Ps: try other linux distribution before doing an installation to find the desktop manager that you prefer.
Thanks for your kind response!
I’ll definitely try using Wine and the Premiere alternatives.
About the virtual screen, I mean…screen, not desktop. I’ve added a screenshot in the OP. I know that there are tons of Linux distributions, but I don’t have much time to try them. I’ve been using Ubuntu for my servers and I’ve seen that it’s quite nice and user friendly in the desktop version, …but I’ll do some extra search!As the other person said, what you’re doing is pretty much emulating the behavior of tiling window managers. Edit while writing: I’m leaving the rest here because you might find it useful, but I’ve just realized that there’s a tiling extension for GNOME (the desktop environment used by Ubuntu): Tiling Shell. That’s definitely going to be the most painless way for you to try out tiling. There’s also bound to be something similar available for KDE.
I think you will get a much better result than with virtual screens by configuring one to your taste, assuming you’re willing to spend a few hours learning all the ins and outs (it’s absolutely OK if you’re not willing to do that).Here’s links to a few of them, you should be able to install them in whatever distro you prefer:
Hyprland - a tiling WM focused on good out of the box experience and animations (but it’s still very configurable). If you want to get your feet wet with standalone tiling WMs as fast and painlessly as possible, this is IMHO the way
Sway - a more keyboard-centric tiling WM that leaves out the fancy stuff (for example I don’t think there’s any way to do window shadows or animations for all the window manipulation) and focuses on just being fast and efficient if you learn its concepts. This is the only one I’ve ever used for longer periods of time.
SwayFX - “Sway, but with eye candy!” - I don’t think I can write a better description - has some graphics effects like window blurring or shadows.