Rhino on Linux?

It takes about 20 -30 seconds. Subsequent runs are sligthly faster. I do not know why, I have fairly new computer.

I learned that if you click the toolbar selection box and then press spacebar you can select the desired toolbar.

Yup, I can confirm. Great catch !

Do you get the popups disappearing when tooltips show up ?

1 Like

I’m getting that as well, but only when OBStudio is running. Strange, are you on gnome?

1 Like

I’m on Mint 21.3 Cinamon

interesting, I guess it has to do with the way wine handles this specific windowing. I think Mint still uses X11? (could be checked with loginctl show-session $(awk '/tty/ {print $1}' <(loginctl)) -p Type

That didn’t return anything on my end, so I looked around and someone suggested using echo $XDG_SESSION_TYPE … it says x11

oh, sorry about that. got it from this fairly popular stack exchange. Anyway, it’s X11, so my three cents would be on something being mishandled on wine side. It’s really strange. First of all these popups don’t get rendered within rhino window, but get displayed as new windows (both popups and tooltips). Perhaps popups don’t disappear as much as get placed underneath the main window.

Also it isn’t persistent. After some trial and errors hints get displayed without popups disappearing:

I’m not quite sure what in wine is responsible for ordering such windows, but that’s where I’d look for the bug.

By the way, how passionate do you feel about this bug? I personally haven’t used buttons in Rhino for almost a decade.

I don’t use any of the Rhino default workspace, but have a custom popup that is invoked via the F12 key that I rely on about 50% of the time. One thing I notice is the tooltips keep showing for various buttons even when the popup disappears, so it means it’s still there, just not visible.

1 Like

Yes, I also think that the window is still there, it may be just pushed under the main window. On KDE you can set window rules, e.g. to “keep above other windows” for example, which I suspect would prevent this window from hiding. Maybe there is something similar on Mint? If not chatgpt suggests trying devilspie2 that might be able to set such a rule as well (but I’ve never tried it).

In general there is something extraordinary about Rhino windows and “disappearing subwindows”. Some such issues I’ve experienced on wine came up also when using komorebi window manager on windows (haven’t spotted this one in particular though). It may have something to do with that old MFC framework Rhino is using?

1 Like

Automated install

I have published a set of scripts to download, install and run Rhino on Wine. You can grab them at smola/wine-rhino3d. I intend to keep this updated with any workarounds for Rhino 6, 7, 8 and WIP. If you test them, let me know if they work for you (or if they don’t and how they fail).

Status

My tests so far:

  • Rhino installers, especially for Rhino 8 and WIP are currently broken with recent Wine versions. See Wine bugs #56703, #57248, #57250. If you hit any crash in the installer, you may workaround them by using the automated installer provided above.
  • Rhino 6 and 7 currently install and run with some workarounds, at least on Wine 9.17 and 9.18.
  • Rhino 8 and higher can be installed with some workarounds, but crash on start.
  • Best version so far appears to be Rhino 7, where basic functionality and Grasshopper work.
7 Likes

It is great to see users coming up with solutions to run Rhino on Linux.

3 Likes

Fantastic, thank you for sharing - I’ve been looking forward to this. Just to confirm were you able to complete installation of Rhino 8 on wine (it was mentioned so in README on github).

1 Like

Yes. Rhino 8 can be installed, but it just crashes on startup.

1 Like

If you are interested in getting Rhino working on Wine, and you have a WineHQ AppDB account, you may vote for the Rhino (more info on app voting). You can find the Vote button at the Rhinoceros 7.x and Rhinoceros 8.x, which are probably the ones that make the most sense fixing (7 because it’s the closest to working, and 8 because it’s the latest). You can vote up to 3 app/versions. For example:

rhino-votes

(Please, be mindful of volunteers working at Wine and do not do any kind of vote-spam)

3 Likes

what’s Wine though :thinking:

“Wine (short for “Wine Is Not an Emulator”) is a compatibility layer that allows you to run Windows applications on Unix-like operating systems, such as Linux or macOS, without needing to install a copy of Windows. Wine works by translating Windows system calls into native system calls of the host operating system. It essentially acts as an interpreter, enabling you to run many Windows applications directly on Linux without a virtual machine or dual boot.”

:thinking:

Reminds me of when I ran CATIA on a macbook pro in 2004 with “virtual pc” I think it was called.

So, it’s like runnning on linux but not really running on linux, kinda like it was like virtual pc but not really a pc. :coffee:

" so it’s ‘virtually’ running on linux but not really running on linux.

Yes, you could say that. It’s “virtually” running on Linux in the sense that it’s not a native Linux application—it still requires Wine to act as a middleman. So, Rhino is running on Linux through Wine’s compatibility layer, but it doesn’t have direct, native support for the Linux OS. It’s functioning as if it’s on Windows, but Wine makes Linux think it’s just fine with that.

So, while Rhino is technically running on Linux, it’s not a fully “native” Linux experience."

I’m pretty sure all actively involved understand what that means. No need to highlight that. Lets keep the discussion focused on the solutions proposed etc.

2 Likes

solution being native compatibility.

:face_holding_back_tears: sry I’m still tryna catch up. but sounds like they don’t want us to know they have a plan. they testing internally but don’t want us to know they will have a gui in maybe 5 yrs. :innocent:

windows 10 will be unsupported oct 2025. some customers might pay a fee for 3 more yrs support after that. so a 5 yr plan isn’t too bad. :wink:

:magic_wand:

Status update

The only fully working combination I got is Rhino 7 (7.37.24107.15001) on CrossOver Linux 24.0.4. The setup process is fairly simple (but tedious):

  1. InstallInstall an unlisted application.
  2. Select a new bottle. I chose Windows 11.
  3. Select the Rhino 7 for Windows .exe installer.
  4. In Advanced options, add the following software to install: Core Fonts, Microsoft .NET Framework 4.8 and Microsoft Visual C++ 2015 (14.0) Redistributable Runtime (64-bit).
  5. Click Install, and just go through all installers, accepting EULAs, etc.

Troubleshooting

To fix black tooltips you can do one of these:

  1. Open Wine Configuration (or run the winecfg command), Desktop Integration tab, and in Theme dropdown, select (No theme).
  2. Or run: reg add 'HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ThemeManager' /v ThemeActive /t REG_SZ /d 0 /f.

If Rhino opens, but Windows are all black or fail to be drawn, you might have an issue with OpenGL (I guess this depends on the graphics drivers, the default might be just ok for you). This can be fixed by changing Wine’s Direct3D renderer to vulkan (or no3d). By editing the registry on key HKEY_CURRENT_USER\Software\Wine\Direct3D and adding a string key named renderer with value vulkan (some valid values are gl, vulkan, gdi, no3d).

Other versions

  • I tested Rhino 8 with wine 9.0 (stable) and wine 9.18 and 9.19 (devel). The installer both GUI and unattended (using -quiet) breaks at several steps. A partial install can be achieved with some workarounds, but it crashes on start.
  • Rhino 7 and 8 GUI installers are broken on wine 9.16 and later, and on latest CrossOver Preview too, because of a wine regression (Wine bug #57248).
  • Rhino 6 and 7 can be installed in a few Wine versions, especially if you avoid the GUI installer. But I did not get anything truly functional. Best case, models could be opened, Grasshopper could be opened, but mouse input was severely broken.

With respect to wine-rhino3d, given this status, it’s not truly functional. Unless someone describes workarounds to get Rhino 7 working with Wine, I plan to pause work on this until Wine bugs affecting the installer are solved. Then it’ll make sense to do another round of testing.

5 Likes

to keep it short…
wine - OS level - library that translates native function calls (e.g. open files, render 3d graphics) from windows to linux
emulators - hardware level - translate CPU instructions in software - slow
virtual machines - hardware level - translate CPU instructions in hardware - fast

1 Like