integralpro / nosleep

The MacOS X kernel extension, preventing sleep when you close the lid.
GNU General Public License v2.0
876 stars 45 forks source link

kernel module does not load auomatically #53

Open ObiWahn opened 2 years ago

ObiWahn commented 2 years ago

Hi,

I have trouble to have the module automatically loaded. I think I confirmed everything the Applications asks for. But on re-installation it does not even ask me for new permissions. So I assume that is should work. Unfortunately I still need to run kextload -v /Library/StagedExtensions/Applications/NoSleep.app/Contents/Resources/NoSleep.kext I found it hard do find good documentation on this topic.

I am not sure if this is a duplicate of https://github.com/integralpro/nosleep/issues/45 or not. As it is able to load.

chadify commented 2 years ago

I'm facing the same issue. When opening NoSleep I'm getting "Kernel extension no loaded" error.

drewjc75 commented 2 years ago

I'm facing a similar issue on Monterey 12.3.1, but what's weird about my issue is that NoSleep has suddenly decided it won't even work WITH the kext loaded. It won't even launch the app until I manually run sudo kextload -v /Library/StagedExtensions/Applications/Utilities/NoSleep.app/Contents/Resources/NoSleep.kext, and even then, if I close the lid, it goes to sleep anyway. AND, if I just let the screen time out on my Macbook, it locks the screen even though the configuration is set not to. Essentially, it seems like the app is loading but not actually doing anything. What's more, if I quit NoSleep, I can't load it again until I re-run the kextload command again. A kmutil showloaded will show that the module is in memory, but it doesn't seem to do anything with it, and if I close the application, it no longer shows the module as loaded.

Calorion commented 2 years ago

Is there any timeline on fixing the "Kernel extension not loaded" error?

draftpin commented 2 years ago

For some reason module works but does not load automatically on latest Mac OS (current is Mac OS Mojave) My workaround is to add it to crontab:

sudo su
crontab -e

# Add this string to the end 
@reboot sleep 120 && kextload -v /Library/StagedExtensions/Applications/Utilities/NoSleep.app/Contents/Resources/NoSleep.kext

After reboot it should work correctly (you can modify 120 seconds of sleep to lower, did not test)