Ylianst / MeshCentral

A complete web-based remote monitoring and management web site. Once setup you can install agents and perform remote desktop session to devices on the local network or over the Internet.
https://meshcentral.com
Apache License 2.0
4.24k stars 568 forks source link

macOS 15 / Sequoia Installation Fails with "The installer could not install the software because there was no software found to install" #6398

Open cvoisey opened 1 month ago

cvoisey commented 1 month ago

Describe the bug When trying to install the agent on my Sequoia macs, I am getting the following error:

image

This is an Intel mac and I have tried both installers (x86 & Universal). Installs on other, older macOS from this server works fine.

si458 commented 1 month ago

you need to install the latest version and download the new installers for osx 1.1.30 is the latest version

cvoisey commented 1 month ago

I am already running on the latest: image

si458 commented 1 month ago

oh right ok, well ur bug report says 1.0.48, is it ARM or intel you are using? did you download the universal from the web ui OR the actual version for your device?

cvoisey commented 1 month ago

Oh, sorry, I started filling that all out and submitted it without finishing. My bad.

I am on an Intel Mac, and I tried the Universal and the x86 versions. Neither have worked.

si458 commented 1 month ago

hmmm im guessing apple have change something! as it works on sonoma intel macbook pro here! might need to do some more testing :(

si458 commented 1 month ago

just updating my mac mini arm from ventura to sonoma, once thats done, i can upgrade xcode to 16, then i can get UTM to run sequoia! and if the arm doesnt work, then intel wont work

i dont want to upgrade my macbook pro sonoma to sequoia as its my daily driver and i dont want things to break!

si458 commented 1 month ago

ok this might be a pain Contents/Packages/internal.pkg not supported by PK Unable to use PK session due to incompatible packages. Terminating. full logs attached from my arm 15 vm but its the exact same issue 👎 Installer_Log_20-Sep-2024.txt

cvoisey commented 1 month ago

I wish I could give you a more detailed answer on this, but it sounds similar to something one of my developers recently encountered. I'll talk to them on Monday, but I don't think they resolved it yet. They were checking the stricter notarizations that are required with macOS Sequoia.

si458 commented 1 month ago

@cvoisey notarizations isnt required (just really really really recommended!)

i have been able to use an app called Packages which generates PKGs (both flat and bundle) and get it to copy over the meshagent and enable startup etc with no problems!

its something with the way the .pkg is generated/built that im guessing Sequoia just doesnt like anymore

sadly the app Packages makes the PKGs in a different way for me so i cant just extract it, then build a zip for windows/linux machines to then rebuild!

cvoisey commented 1 month ago

Are you doing the current release in bundle format? What about trying to do it in flat? That should work better with newer macOS

si458 commented 1 month ago

@cvoisey ive tried both, flat and bundle, both types from the packages app work a treat! i just cant explore/extract the pkg and thats the issue

its because its saving it asXAR archive format

simon@simonlappy build % file MeshAgent.pkg 
MeshAgent.pkg: xar archive compressed TOC: 867, SHA-1 checksum, contains  zlib compressed data

but the old .pkg we have create returns it as a directory?

simon@simonlappy ~ % file /Users/simon/Downloads/myremoteagent\ 2.mpkg/Contents/Packages/internal.pkg
/Users/simon/Downloads/myremoteagent 2.mpkg/Contents/Packages/internal.pkg: directory

so unless im doing something wrong, this could be why Sequoia no longer works as they need it in xar format

cvoisey commented 1 month ago

I've been trying to figure out something as well and have been coming to similar conclusions. I have to put it down for now, but I have a few more ideas I'll try to get to tomorrow. I'd love it if I could contribute. You've done a great job with this project.

si458 commented 1 month ago

@cvoisey thats great! if you have any look do reply/let us know!

si458 commented 1 month ago

mad idea 💡 why dont we create a DMG, include the meshagent as binary format, BUT we hide it, and just display a script file and the background is like

DOUBLE CLICK THIS SCRIPT FILE BELOW TO INSTALL
PLEASE NOTE, YOU WILL BE ASKED FOR YOUR PASSWORD IN A BLACK POP UP WINDOW

EDIT: we could also include the Uninstall.command as well! so then the end user can also uninstall the meshagent if they wanted!

it would basically be be the same as how the binary version gets installed using meshagent -install

cvoisey commented 1 month ago

From a short term perspective, to get it installed on newer OSs, I could see that. From a longer term though, I'm thinking about the UX.

Personally, I want to still dive into the whole build experience in my hosting and make sure I sign everything and ensure it is trusted, as that will look better to my customers.

si458 commented 1 month ago

@cvoisey fully agree im having problems now creating the dmgs on linux and most importantly windows! why apple has to make everything difficult i will never understand

carlosndiaye commented 1 month ago

Hello. Thank you very much for your work. I have the same problem. I managed to install it with the binary on the terminal but I get a black screen when I try to connect in Remote Desktop. I can't access certain directories via the shell either.

si458 commented 1 month ago

@carlosndiaye, before u connect, u need to go into the settings app, then privacy and security, then screen recording and allow the application

Also, go into accessibility and allow ur app there, too

As for files, u need to allow ur app inside the full disk access

All options are inside the privacy & security

https://ylianst.github.io/MeshCentral/meshcentral/faq/#mac-clients

carlosndiaye commented 1 month ago

Thanks. Apparently, when I allow the settings as mentioned, the desktop is displayed and you can interact with it. However, when I reconnect, the black screen comes back even though the permissions are still active. What could be the cause of this?

si458 commented 1 month ago

@carlosndiaye I'm not sure? That seems weird? Can u open a separate issue please for that? Follow the bug report too plz 🙏 🙂

appatterson commented 1 month ago

Running into this same issue. How are you using Packages to reformat the .pkg?

si458 commented 1 month ago

@appatterson it was very difficult

I had to basically add all the files in and msh and then tell it to run the script from inside the mpkg to place them where they need to be

Ill show screenshots 2moz of it :)

appatterson commented 1 month ago

@si458 that would be much appreciated, thanks!

si458 commented 1 month ago

@appatterson hope these screenshots help! basically create the folder where stuff goes in payload, then add all the files from inside the pkg thats inside the mpkg from meshcentral then set the payload file to the payload.sh file but you need to modify the file slightly!

Screenshot 2024-10-05 at 00 15 39 Screenshot 2024-10-05 at 00 14 42 Screenshot 2024-10-05 at 00 15 16 Screenshot 2024-10-05 at 00 15 45 Screenshot 2024-10-05 at 00 16 09
DaanSelen commented 4 weeks ago

@appatterson hope these screenshots help! basically create the folder where stuff goes in payload, then add all the files from inside the pkg thats inside the mpkg from meshcentral then set the payload file to the payload.sh file but you need to modify the file slightly! Screenshot 2024-10-05 at 00 15 39 Screenshot 2024-10-05 at 00 14 42 Screenshot 2024-10-05 at 00 15 16 Screenshot 2024-10-05 at 00 15 45 Screenshot 2024-10-05 at 00 16 09

This is a fix?

si458 commented 4 weeks ago

@DaanSelen sadly the agent doesnt work with Sequoia when running in background mode so even if we fixed the mpkg, it wont work properly for background use

without a developer who specialises in mac applications and knows C++ and can look through our code and work out whats wrong, it wont work correctly

HOWEVER i have noticed that the app works all the time if you use the binary app in forground mode! meshagent -connect

but oversally this means the app would have to be running 24/7 on the desktop in terminal 👎

johnnyq commented 2 weeks ago

@si458 Maybe the new MacOS 15.1 Update coming out later this month will fix the issue, fingers crossed. I have held my Mac clients back from updating to 15.0