I recently switched to Unity 6.3, as 6.2 reached end-of-support. I am running Linux Mint, which is a flavor of Ubuntu, so it should be supported.
After updating, I have found that the auto-refresh feature for assets has stopped working. If I change any asset outside of Unity (this includes scripts and image files), an asset refresh is no longer triggered.
I have already gone through all the common solutions. I made sure auto-refresh hadn’t somehow been switched off (it was still on), I checked the console for errors (there were none), I deleted the Library folder and .csproj files to trigger a cache rebuild, and I made sure VSCode was still set as my external script editor. I also checked on file permissions for my Unity project, and they don’t require root to access.
I went back to 6.2 to verify it was an issue with the new Unity version and not caused by a change to some other part of my system. The auto-refresh was still functional in 6.2.
I am aware that I can manually trigger a refresh with Ctrl+R, but I would really like for auto-refresh to work, as a manual refresh is just another thing for me to forget to do and wonder why my code changes aren’t working.
Edit: added Nition’s workaround as a solution for now, until Unity devs address this.
Officially no, Mint is not supported. Ubuntu 22.04 and 24.04 are, and those are the only ones. Flavors or “based on” don’t count, it only increases your chances of Unity running without issues but ultimately, you never know as they’re still different and untested by Unity.
btw, this used to be a problem in previous versions too, just less so. sometimes I needed to deactivate/activate the unity window before it caught on. this is still the case, it has just gotten way worse.
I’ve started running into a problem with this where it will sometimes detect that a script was updated (the message about forcing a refresh is printed), but fail to trigger a recompile. In this case, Ctrl+R won’t make it recompile either. The only way I can get a recompile when this happens is to manually reimport the script I updated.
I’ve found similar cases, or even worst, sometimes, for some reason the compilation is triggered several seconds afterwards, producing all sort of daily workflow annoyances.
So what I ended up doing was to just add a couple buttons to the Unity toolbar, one of which is a manual recompile call (CompilationPipeline.RequestScriptCompilation()). For convenience, I also added the refresh as well.
So those are my fallback options, because in vscodium the Unity extension signals the recompile on save, so most cases get automatically handled anyway, but I got ready tools for hard cases.
It looks like the workaround script is triggering an assembly lock.
When the recompile fails to trigger, a lock icon appears in the bottom right of the main Unity window. When I hover over it, a tooltip appears that says assemblies are locked. After waiting a couple seconds, I can click on the lock icon to make it go away, and then the scripts recompile.
Restarting Unity does not solve this.
Edit: This only occurs while the assembly is in debug mode. In release mode, it works as expected.
Edit 2: After installing the latest version of VSCode, this no longer occurs, so it must have been a problem caused by that.