Autodesk-Fusion-360-for-Linux: FUSION_IDSDK doesn't work anymore *Solved*
It looks like the FUSION_IDSDK flag doesn’t work anymore with the January 2024 version of Fusion. With FUSION_IDSDK=false passed it shows WebView login screen.
Can anyone confirm that?
FYI, they have new admin installer link! Info here #380.
About this issue
- Original URL
- State: closed
- Created 5 months ago
- Reactions: 4
- Comments: 37 (14 by maintainers)
We have lift off 🚀, Mime type desktop definition is now up and running ^_^
Complete code Proof Of Concept (Minimal clean code, re-run does a clean re-install/update, customize install location by changing the top line, but No UI) to get a Working up to date install with Login below, Tested to work on Ubuntu, running Wine 9.0 (you need at least 8.14, the script will check and warn, though it should probably raise an error to stop the install in the future)
@cryinkfly Working proof of concept to get the latest Fusion installed and allowing logins. Still need to get the link association working for the link callback. Thank you for making me aware that Wine had fixed the bug we reported. It looks like Wine 8.14 or above are all safe to use (Currently I’m using Wine 9.0)
Edited: to fix Mimetype issues, Fully working install script and login
Latest Fusion install as of 4th Jan 2024 on Wine 9.0
The only thing left to do is get the .desktop file setup for the Mime Type association, something like this, but still not working quite right
Autodesk can’t even update fusion without problems…
I still hold out hope - and do my own tinkering to solve the various issues when I can. Fuion360 is the only reason I still use Windows, and this project lets me untether from that sometimes, which I deeply appreciate.
Somehow I can’t shake the feeling that every workaround that the community and I find here to get this program running under Linux will be invalidated with every new update. When I imagine how well the program ran at the beginning or when it was founded with this project here on Github and what was broken by all these updates… It’s kind of a shame… Because it just takes more and more time…
Maybe someone should write a temporary warning in the README of this project so people trying to install f360 don’t go through the pain I went through
But all in all I’m so glad this community exists that’s fighting the idiosyncrasy of MS
Victory! I have the latest 2024 release running (v.2.0.18220).
(Disclaimer: All of these shenanigans can break easily on different systems. Things mentioned here may be outright incorrect for your system, so you may have to fiddle around ~a bit~ a lot.)
There are three potential problems along the road to getting the new login flow (AdskIdentityManager) to work, which come up in this order:
CAPIPRIVATEBLOBin thebcrypt.dllimplementation in older Wine versionsAdskIdentityManager.exe1. CAPIPRIVATEBLOB
Symptom: You click the login button in the Autodesk Fusion GUI, but absolutely nothing else appears except for the text near the button telling you to look at your web browser.
Resolution: Use a Wine version that is new enough to include this commit.
When resolved: A small dialog now pops up telling you that Edge WebView2 is not installed when you click the login button.
2. WebView2
Symptom: The small dialog tells you that Edge WebView2 is not installed. You try to use the Evergreen Standalone Installer from Microsoft’s website, but the newest version (121.0.2277.98 currently) hangs indefinitely on the “installing” phase.
Resolution: Use version 109.0.1518.78 of the Evergreen Standalone Installer, from before Microsoft broke something around fall 2023. It should hopefully run and succeed.
When resolved: A web browser (native Chromium for me!?!) should pop open with the login window upon clicking the login button in the Fusion GUI.
3. Login response
Symptom: Clicking the button in the browser that is supposed to “return you to the Fusion application” after login does nothing.
Resolution:
Right-click on that button in the browser, copy the URL, and notice that it’s a custom protocol which is meant to be handled by
AdskIdentityManager.exe. It has the formatadskidmgr:/login?code={bunch of base64}.Usually, the Windows registry key
HKEY_CURRENT_USER\Software\Classes\adskidmgr\shell\open\commandwould tell the system to invokeAdskIdentityManager.exeand pass it that exact URL as an argument. But since this link is in a native Linux browser (at least for me), of coursexdg-openhas no idea what to do with the custom URL protocol.The proper way to handle this is to use a
.desktopfile to define theadskidmgr:protocol, and getxdg-opento start up Wine forAdskIdentityManager.exe. In my case, to quickly prove that it works, I just manually-executedAdskIdentityManager.exewith that copied URL, while Fusion was open and waiting for the login to complete.This looked something like the following:
When resolved: The open Fusion GUI window instantly changes to the logged-in splash screen when you run that
AdskIdentityManager.execommand “behind its back”.Footnote: I don’t know how we’ve gotten to the point where applications install a whole 100MB+ web browser just to make some call that pops open an existing browser installed on the machine…
Alright so it turns out that the .desktop file that @alextrical made doesn’t work, so to login I inspected the login button and got the URL:
adskidmgr:/login?code=kfeIty8io0Wr-SCPg7Pi2sXFbNkCCHXj0XxQOKvc&state=VzRPelVCUnJDVXRsVlJJZ0FSYnY1clJJS01IZTdkWHAuM3hURTF2dW5sbWJueWRCeS1MdElBQWh5VEFaN0FqM3pSRlh1LUswV29Lby51c2VyLXByb2ZpbGUlM0FyZWFkJTIwdXNlciUzQXJlYWQlMjB1c2VyJTNBd3JpdGUlMjB2aWV3YWJsZXMlM0FyZWFkJTIwZGF0YSUzQXJlYWQlMjBkYXRhJTNBd3JpdGUlMjBkYXRhJTNBY3JlYXRlJTIwZGF0YSUzQXNlYXJjaCUyMGJ1Y2tldCUzQWNyZWF0ZSUyMGJ1Y2tldCUzQXJlYWQlMjBidWNrZXQlM0F1cGRhdGUlMjBidWNrZXQlM0FkZWxldGUlMjBjb2RlJTNBYWxsJTIwYWNjb3VudCUzQXJlYWQlMjBhY2NvdW50JTNBd3JpdGUlMjBvcGVuaWQlMjBkZXZpY2Vfc3NvLnVzZV9hbHRlcm5hdGl2ZV9wcm9kdWN0X3BhdGg=
Which i then manually ran adskIdentityManager.exe with:
env ROOTFOLDER=~/.fusion360 WINEPREFIX=/home/farouk/.fusion360/wineprefixes/default WINEDEBUG=fixme-all wine /home/farouk/.fusion360/wineprefixes/default/drive_c/Program\ Files/Autodesk/webdeploy/production/99249ee497b13684a43f5bacd5f1f09974049c6b/Autodesk\ Identity\ Manager/AdskIdentityManager.exe “adskidmgr:/login?code=kfeIty8io0Wr-SCPg7Pi2sXFbNkCCHXj0XxQOKvc&state=VzRPelVCUnJDVXRsVlJJZ0FSYnY1clJJS01IZTdkWHAuM3hURTF2dW5sbWJueWRCeS1MdElBQWh5VEFaN0FqM3pSRlh1LUswV29Lby51c2VyLXByb2ZpbGUlM0FyZWFkJTIwdXNlciUzQXJlYWQlMjB1c2VyJTNBd3JpdGUlMjB2aWV3YWJsZXMlM0FyZWFkJTIwZGF0YSUzQXJlYWQlMjBkYXRhJTNBd3JpdGUlMjBkYXRhJTNBY3JlYXRlJTIwZGF0YSUzQXNlYXJjaCUyMGJ1Y2tldCUzQWNyZWF0ZSUyMGJ1Y2tldCUzQXJlYWQlMjBidWNrZXQlM0F1cGRhdGUlMjBidWNrZXQlM0FkZWxldGUlMjBjb2RlJTNBYWxsJTIwYWNjb3VudCUzQXJlYWQlMjBhY2NvdW50JTNBd3JpdGUlMjBvcGVuaWQlMjBkZXZpY2Vfc3NvLnVzZV9hbHRlcm5hdGl2ZV9wcm9kdWN0X3BhdGg=”
And finally it worked !!
Thanks to @alextrical you’re great
I’m currently rebuilding the script! 😅
Update: @alextrical I have added your code in an adapted form! 🥇
And then the whole thing flows into the Python installer version.
Somehow, Wine was complaining a nonsense error (saying that
WINEPREFIXwasn’t an absolute path, while it definitely was). I ended up changing the mime-type association to justExec=echo %u, and start my browser in a console, so that I could see the argument passed toAdskIdentityManager.exe. Then I started the latter by hand with that argument. Worked like a charm!@cryinkfly Credit also should go to @aedancullen without their posts I wouldn’t have been able to create the proof of concept script.
I’m glad that you where able to use that as a basis to merge into the main repo
Good point, Possibly an idea to put in the discussion, some sort of health check when the install is run, for when outages like this inevitably happen again in the future.
Edit: I’m pretty much of the M$ platform, at least for personal use and collaborative community projects (I work with M$ Azure for a Day job) The only tools left that keep me using a remote workstation in the loft running Server 2019 (was Fusion 360) Some data recovery tools, the odd hardware/HDD configuration tool that only works with windows, STL repair tools such as Prusa Slicer(For repair via Autodesk Netfabb) and Photoshop, on the days I cant quite get Kritta to behave for my needs. (still trying to move over to fully FLOSS aplications)
Its not going to work due to this crap is trying to download something and it fails to do so. I am trying to integrate cab version but have to recreate register entries.
Imagine 273mb installer which still needs to download something while cab is litter smaller and theoretically have everything. Only microsh*t can do stuff like that.