Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

unable to install on macOS Catalina #102

Open
dehydratedH2O opened this issue Jul 3, 2019 · 94 comments
Open

unable to install on macOS Catalina #102

dehydratedH2O opened this issue Jul 3, 2019 · 94 comments

Comments

@dehydratedH2O
Copy link

HoRNDIS is incompatible with Catalina due to the new read-only system partition. installation via the .pkg or brew will fail.

see the What's New in APFS session from WWDC19: https://developer.apple.com/videos/play/wwdc2019/710/

there may be a workaround by disabling SIP using csrutil in Recovery Mode, but I haven't had a chance to try it yet.

the "right" way to fix HoRNDIS long term is likely to migrate it to using the new DriverKit framework, documented at https://developer.apple.com/documentation/driverkit

@wwwfeng
Copy link

wwwfeng commented Jul 5, 2019

My OS version is 10.15 beat3 it work,it's able work on Catalina. try second times or restart your machine.And if installed contected phone it always not work or can't find your network You just need to copy /Library/Preferences/SystemConfiguration/NetworkInterfaces.plist and /Library/Preferences/SystemConfiguration/preferences.plis delete these file. But if you try this,you may not connect the network anymore.and you just backup these two file,you will find it work.It's amazing. You have to remember to backup before you delete system file.

@d235j
Copy link
Contributor

d235j commented Jul 5, 2019

Is the installer still trying to put files in /System? It should not be doing that.

I don't believe network driver kexts are blocked just yet, but it would not surprise me if that becomes the case in 10.16. NetworkingDriverKit will be the way to go.

@dehydratedH2O
Copy link
Author

In 10.16 basically anything not in /Users or /Applications is write protected. The installer is attempting to write to protected locations. Using an old .kext won't work without disabling SIP, which should not be required for users.

DriverKit should be adopted before Catalina is released if this project wants to support it. If I find time to do it myself, I will, but until then if anyone has a chance to do it, it's the "right way".

@wwwfeng
Copy link

wwwfeng commented Jul 5, 2019

image

@hacker1024 hacker1024 mentioned this issue Oct 8, 2019
@lutnos
Copy link

lutnos commented Oct 9, 2019

I now have HoRNDIS installed and working on the release 10.15 Catalina.

The process:

  • Shutdown
  • Hold command+R and press power
  • Launch terminal
  • csrutil disable
  • Reboot
  • Launch terminal
  • mount -uw /
  • Run the HoRNDIS 9.2 installer
  • Shutdown
  • Hold command+R and press power
  • Launch terminal
  • csrutil enable
  • Reboot

Ultimately, DriverKit is the way too go.

But for now I hope that this helps others

@d235j
Copy link
Contributor

d235j commented Oct 9, 2019

Can one of you provide a copy of the Installer log from a failed installation, with all logs enabled, not only errors? (Keep SIP enabled and everything else on defaults.)

I'm not on Catalina yet so I can't test.

@ghost
Copy link

ghost commented Oct 9, 2019

installer[28945]: Product archive /usr/local/Caskroom/horndis/9.2/HoRNDIS-9.2.pkg trustLevel=350
installer[28945]: -[IFDInstallController(Private) _buildInstallPlanReturningError:]: location = file://localhost
installer[28945]: -[IFDInstallController(Private) _buildInstallPlanReturningError:]: file://localhost/usr/local/Caskroom/horndis/9.2/HoRNDIS-9.2.pkg#HoRNDIS-kext.pkg
installer[28945]: Set authorization level to root for session
installer[28945]: Administrator authorization granted.
installer[28945]: Will use PK session
installer[28945]: Using authorization level of root for IFPKInstallElement
installer[28945]: Starting installation:
installer[28945]: Configuring volume "Macintosh HD"
installer[28945]: Preparing disk for local booted install.
installer[28945]: Free space on "Macintosh HD": 453.09 GB (453093011456 bytes).
installer[28945]: Create temporary directory "/var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T//Install.289452ieUJ2"
installer[28945]: IFPKInstallElement (1 packages)
installd[507]: PackageKit: Adding client PKInstallDaemonClient pid=28945, uid=0 (/usr/sbin/installer)
installer[28945]: PackageKit: Enqueuing install with framework-specified quality of service (utility)
installd[507]: PackageKit: ----- Begin install -----
installd[507]: PackageKit: request=PKInstallRequest <1 packages, destination=/>
installd[507]: PackageKit: packages=(
	    "PKLeopardPackage <id=com.joshuawise.kexts.HoRNDIS, version=0, url=file://localhost/usr/local/Caskroom/horndis/9.2/HoRNDIS-9.2.pkg#HoRNDIS-kext.pkg>"
	)
installd[507]: PackageKit: Set reponsibility for install to 18666
installd[507]: PackageKit: Extracting file://localhost/usr/local/Caskroom/horndis/9.2/HoRNDIS-9.2.pkg#HoRNDIS-kext.pkg (destination=/Library/InstallerSandboxes/.PKInstallSandboxManager/603D0B6A-6DB4-4042-B0B8-020C5A71589D.activeSandbox/Root, uid=0)
installd[507]: PackageKit: prevent user idle system sleep
installd[507]: PackageKit: suspending backupd
installd[507]: PackageKit: Using trashcan path /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/PKInstallSandboxTrash/603D0B6A-6DB4-4042-B0B8-020C5A71589D.sandboxTrash for sandbox /Library/InstallerSandboxes/.PKInstallSandboxManager/603D0B6A-6DB4-4042-B0B8-020C5A71589D.activeSandbox
install_monitor[28946]: Temporarily excluding: /Applications, /Library, /System, /bin, /private, /sbin, /usr
installd[507]: PackageKit: Shoving /Library/InstallerSandboxes/.PKInstallSandboxManager/603D0B6A-6DB4-4042-B0B8-020C5A71589D.activeSandbox/Root (1 items) to /
installd[507]: PackageKit: Executing script "./postinstall" in /private/tmp/PKInstallSandbox.tN75vt/Scripts/com.joshuawise.kexts.HoRNDIS.qKEa0q
installd[507]: ./postinstall: touch: /System/Library/Extensions: Read-only file system
install_monitor[28946]: Re-included: /Applications, /Library, /System, /bin, /private, /sbin, /usr
installd[507]: PackageKit: releasing backupd
installd[507]: PackageKit: allow user idle system sleep
installd[507]: PackageKit: Cleared responsibility for install from 28945.
installd[507]: PackageKit: Install Failed: Error Domain=PKInstallErrorDomain Code=112 "An error occurred while running the script for the package "HoRNDIS-9.2.pkg"." UserInfo={NSFilePath=./postinstall, NSURL=file://localhost/usr/local/Caskroom/horndis/9.2/HoRNDIS-9.2.pkg#HoRNDIS-kext.pkg, PKInstallPackageIdentifier=com.joshuawise.kexts.HoRNDIS, NSLocalizedDescription=An error occurred while running the script for the package "HoRNDIS-9.2.pkg".} {
	    NSFilePath = "./postinstall";
	    NSLocalizedDescription = "\U8fd0\U884c\U8f6f\U4ef6\U5305\U201cHoRNDIS-9.2.pkg\U201d\U7684\U811a\U672c\U65f6\U51fa\U9519\U3002";
	    NSURL = "file://localhost/usr/local/Caskroom/horndis/9.2/HoRNDIS-9.2.pkg#HoRNDIS-kext.pkg";
	    PKInstallPackageIdentifier = "com.joshuawise.kexts.HoRNDIS";
	}
installd[507]: PackageKit: Running idle tasks
installer[28945]: install:didFailWithError:Error Domain=PKInstallErrorDomain Code=112 "An error occurred while running the script for the package "HoRNDIS-9.2.pkg"." UserInfo={NSFilePath=./postinstall, NSURL=file://localhost/usr/local/Caskroom/horndis/9.2/HoRNDIS-9.2.pkg#HoRNDIS-kext.pkg, PKInstallPackageIdentifier=com.joshuawise.kexts.HoRNDIS, NSLocalizedDescription=An error occurred while running the script for the package "HoRNDIS-9.2.pkg".}
installd[507]: PackageKit: Removing client PKInstallDaemonClient pid=28945, uid=0 (/usr/sbin/installer)
installd[507]: PackageKit: Done with sandbox removals
installer[28945]: Install failed: The installer encountered an error that caused the installation to fail. Please contact the software manufacturer for assistance.

@d235j
Copy link
Contributor

d235j commented Oct 9, 2019

The post-install script needs to be changed.

sudo touch /System/Library/Extensions was deprecated a while ago for rebuilding the kextcache. The currently supported method is sudo kextcache -system-prelinked-kernel.

Since that command is trying to write to /System, it is failing and causing the Installer to throw an error — even though the kext is already installed in /Library/Extensions.

@jwise @mikhailai can you take a look? The kext and package will also need notarization. I can do some testing once I have a Catalina install set up.

@d235j
Copy link
Contributor

d235j commented Oct 11, 2019

Here's a version packaging the exact same binary-identical .kext together with a modified install script. This does mean the .pkg is unsigned (so you'd have to trust me and bypass Gatekeeper with the right-click-and-open method). I'll try to get a PR to the project in place soon.
HoRNDIS-9.2-catalina_install.pkg.zip

@cheyennerhap
Copy link

Thanks so much, this update worked perfectly!

@ice-cream-headache
Copy link

It works perfect.Thanks a lot.

@alexandrehuat
Copy link

Here's a version packaging the exact same binary-identical .kext together with a modified install script. This does mean the .pkg is unsigned (so you'd have to trust me and bypass Gatekeeper with the right-click-and-open method). I'll try to get a PR to the project in place soon.
HoRNDIS-9.2-catalina_install.pkg.zip

Wonderful! It works. Thank you. Great job.

@mongezik19
Copy link

Thank you so much @d235j

@jadonk
Copy link

jadonk commented Nov 7, 2019

@d235j any updates on a PR? Catalina has a regression related to BeagleBone's USB configuration, which includes a composite adapter including Mass Storage Class, CDC-ACM (serial), RNDIS and CDC-ECM (networking, previously supported by OS X). It appears to get the CDC-ECM working, we have to disable the RNDIS support (or perhaps enumerate it after RNDIS?). Therefore, we are considering just removing CDC-ECM, which otherwise breaks the latest Windows 10 if included in the composite adapter before RNDIS. Proprietary OS vendors. :-(

@whao
Copy link

whao commented Nov 28, 2019

@d235j I tried your binary and it worked well! Thanks so much for your job! But there is a small issue. Every time I reconnect my phone to mac, it creates a new interface in Preference -> Network. And the interface number increases. For example, it creates Ethernet Adapter (en6), after plugging out and in, it creates Ethernet Adapter (en7), and en6 is still there. Now it is alreay en15 on my laptop and I don't know how to delete old ones. Deleting in the Network panel doesn't work.

@mabdullahsari
Copy link

Catalina 10.15.2 straight up forbids the whole installation even when you bypass Gatekeeper because of "incompatibility".

@suru1994
Copy link

not working in 10.15.2 update

@marcocursi
Copy link

not working in 10.15.2 update

Unfortunately...

@johanf85
Copy link

johanf85 commented Dec 16, 2019

not working in 10.15.2 update

It's working on my 10.15.2. Did had to accept something on a privacy and safety popup

@marcocursi
Copy link

not working in 10.15.2 update

It's working on my 10.15.2. Did had to accept something on a privacy and safety popup

Really?! I try again.

@marcocursi
Copy link

not working in 10.15.2 update

It's working on my 10.15.2. Did had to accept something on a privacy and safety popup

Really?! I try again.

No problem on 10.15.1 updated 10.15.2.
New Mac with 10.15.2 no working.
Error “
Contact software developer “.

@aivils
Copy link

aivils commented Dec 20, 2019

I go to system preferences -> security & privacy. I see - System software from developer "Joshua Wise" was blocked from loading.
unblock it by pressing "Allow"
it's working under 10.15.2

@svalab-hatci
Copy link

Here's a version packaging the exact same binary-identical .kext together with a modified install script. This does mean the .pkg is unsigned (so you'd have to trust me and bypass Gatekeeper with the right-click-and-open method). I'll try to get a PR to the project in place soon.
HoRNDIS-9.2-catalina_install.pkg.zip

Thank you so much, you just saved my life !

@air2terre
Copy link

Here's a version packaging the exact same binary-identical .kext together with a modified install script. This does mean the .pkg is unsigned (so you'd have to trust me and bypass Gatekeeper with the right-click-and-open method). I'll try to get a PR to the project in place soon.
HoRNDIS-9.2-catalina_install.pkg.zip

Works perfectly for me and the DJI application on Catalina. Thank you very much !

@gmcinalli
Copy link

@d235j I tried your binary and it worked well! Thanks so much for your job! But there is a small issue. Every time I reconnect my phone to mac, it creates a new interface in Preference -> Network. And the interface number increases. For example, it creates Ethernet Adapter (en6), after plugging out and in, it creates Ethernet Adapter (en7), and en6 is still there. Now it is alreay en15 on my laptop and I don't know how to delete old ones. Deleting in the Network panel doesn't work.

Happens to me too.

@Adriano-A3
Copy link

Here's a version packaging the exact same binary-identical .kext together with a modified install script. This does mean the .pkg is unsigned (so you'd have to trust me and bypass Gatekeeper with the right-click-and-open method). I'll try to get a PR to the project in place soon.
HoRNDIS-9.2-catalina_install.pkg.zip

MVP TRIGGERED

@liho98
Copy link

liho98 commented Feb 15, 2020

Here's a version packaging the exact same binary-identical .kext together with a modified install script. This does mean the .pkg is unsigned (so you'd have to trust me and bypass Gatekeeper with the right-click-and-open method). I'll try to get a PR to the project in place soon.
HoRNDIS-9.2-catalina_install.pkg.zip

Hi @d235j, I am using your version, and it works. However, each time I disconnect and connect my device for USB tethering, it created a new network interface (en2-en8 shown in screenshot below), which is quite annoying. I realised that it doesn't recognised my phone model (Xiaomi Pocophone F1). Can you help me solve this issue, thanks in advance!

WhatsApp Image 2020-02-15 at 7 08 52 PM

@dragfly
Copy link

dragfly commented Feb 23, 2020

Thanks @d235j, your version does get correctly installed on Catalina.

@liho98 I'm experiencing the same issue: this is due to Android generating a new MAC address every time the USB tethering is enabled. It's called MAC Randomization and is considered an official security feature

@anquegi
Copy link

anquegi commented Aug 15, 2020

Thanks @d235j, your version does get correctly installed on Catalina.

@Nightless54
Copy link

Will there be updates for Big sur?

@Belcarra
Copy link

Belcarra commented Aug 18, 2020 via email

@BluesChien
Copy link

Thanks d235j, use this version "HoRNDIS-9.2-catalina_install"
Can work on Catalina 10.15.6

Install ,restart, and make sure allow "Joshua Wise" working.
Security & Privacy-> General-> Allow apps downloaded from

@Leterel
Copy link

Leterel commented Aug 23, 2020

Here's a version packaging the exact same binary-identical .kext together with a modified install script. This does mean the .pkg is unsigned (so you'd have to trust me and bypass Gatekeeper with the right-click-and-open method). I'll try to get a PR to the project in place soon.
HoRNDIS-9.2-catalina_install.pkg.zip

Holy mother of god. Thank you for this. This fixed the issue.

@Wiaf
Copy link

Wiaf commented Aug 25, 2020

I now have HoRNDIS installed and working on the release 10.15 Catalina.

The process:

* Shutdown

* Hold command+R and press power

* Launch terminal

* csrutil disable

* Reboot

* Launch terminal

* mount -uw /

* Run the HoRNDIS 9.2 installer

* Shutdown

* Hold command+R and press power

* Launch terminal

* csrutil enable

* Reboot

Ultimately, DriverKit is the way too go.

But for now I hope that this helps others

works on 10.15.6

@remotezygote
Copy link

When I reboot after the csr disable, I get this when trying to run mount -uw /:

mount_apfs: volume could not be mounted: Operation not permitted
mount: / failed with 77

Is this possibly because of encrypted volumes?

I've tried every which way, and nothing seems to work. Is there some issue with ending up at a USB-C port, perhaps? Can't get this to work at all on Catalina, and I've tried everything.

@LouisCAD
Copy link

I personally just installed the official version which shows a warning at the end of the installation, and I ran this in the terminal:

sudo kextcache -i /

After that (and maybe a reboot, I don't recall), it worked despite the OS warning that the kernel extension will stop working in future macOS versions.

@aybiz1
Copy link

aybiz1 commented Sep 4, 2020

HoRNDIS-9.2-catalina_install.pkg.zip completed install. Network shows ethernet is connected when I plug in the USB cable. But there still cannot access any website. Does anyone have the same problem? Running 10.15.2

@aybiz1
Copy link

aybiz1 commented Sep 5, 2020

HoRNDIS-9.2-catalina_install.pkg.zip completed install. Network shows ethernet is connected when I plug in the USB cable. But there still cannot access any website. Does anyone have the same problem? Running 10.15.2

In Network, I changed the DNS server for the Ethernet Adapter which is the USB tethered phone to 8.8.8.8 and it was able to access the internet. But it failed again the next time I logged in the Mac. I am not able to get it to work again. I must be missing something in the Ethernet Adapter settings. Any help is appreciated.

@wbinder1
Copy link

wbinder1 commented Sep 6, 2020

I couldn't get it to work on 10.15.6. I tried the installer like normal and the installer with disabling csrutil (Wiaf's comment). When I tried Wiaf's way,I got an error when I did mount -uw /. It successfully installs with the installer but nothing happens.

I also couldn't get it to install on my 2007 MBP running El Capitan.

Has any experienced this before? Any suggestions?

@Gydunhn
Copy link

Gydunhn commented Sep 8, 2020

Here's a version packaging the exact same binary-identical .kext together with a modified install script. This does mean the .pkg is unsigned (so you'd have to trust me and bypass Gatekeeper with the right-click-and-open method). I'll try to get a PR to the project in place soon.
HoRNDIS-9.2-catalina_install.pkg.zip

Thanks, this works fine for me !

@owsinla
Copy link

owsinla commented Oct 6, 2020

The Catalina install package seems to have installed without any problems. However the program does not appear to be running because there is no addition to the Network display. Are there any system permissions that need to be granted for the program to run?

@herbastar
Copy link

herbastar commented Oct 7, 2020

Tried HoRNDIS-9.2-catalina_install.pkg.zip on Catalina 10.15.7 unfortunately after a restart my phone isn't listed.
Hopefully a new version is coming soon from HornDIS @jwise

@hadees
Copy link

hadees commented Nov 6, 2020

Here's a version packaging the exact same binary-identical .kext together with a modified install script. This does mean the .pkg is unsigned (so you'd have to trust me and bypass Gatekeeper with the right-click-and-open method). I'll try to get a PR to the project in place soon.
HoRNDIS-9.2-catalina_install.pkg.zip

Thanks I would just like to point out y'all can use SuspiciousPackage to check out this kind of stuff.

@ffxluca
Copy link

ffxluca commented Nov 17, 2020

Here's a version packaging the exact same binary-identical .kext together with a modified install script. This does mean the .pkg is unsigned (so you'd have to trust me and bypass Gatekeeper with the right-click-and-open method). I'll try to get a PR to the project in place soon.
HoRNDIS-9.2-catalina_install.pkg.zip

Not working on Catalina 10.15.7

@merlek
Copy link

merlek commented Dec 11, 2020

I have it working on Catalina 10.15.7

I used the install file from above: HoRNDIS-9.2-catalina_install.pkg.zip

Then after installation, I ran the following:
sudo kextcache --clear-staging
sudo kextcache -i /

Then under System Security, I allowed the System software from Joshua Wise.

@Ch667
Copy link

Ch667 commented Dec 15, 2020

�It's work!! Thank you @merlek

@KashifHK123
Copy link

I now have HoRNDIS installed and working on the release 10.15 Catalina.

The process:

  • Shutdown
  • Hold command+R and press power
  • Launch terminal
  • csrutil disable
  • Reboot
  • Launch terminal
  • mount -uw /
  • Run the HoRNDIS 9.2 installer
  • Shutdown
  • Hold command+R and press power
  • Launch terminal
  • csrutil enable
  • Reboot

Ultimately, DriverKit is the way too go.

But for now I hope that this helps others

It work. Thank you 😊

@Atalus
Copy link

Atalus commented Jan 19, 2021

Here's a version packaging the exact same binary-identical .kext together with a modified install script. This does mean the .pkg is unsigned (so you'd have to trust me and bypass Gatekeeper with the right-click-and-open method). I'll try to get a PR to the project in place soon.
HoRNDIS-9.2-catalina_install.pkg.zip

It works for me too :)

@chuchothecat
Copy link

I have it working on Catalina 10.15.7

I used the install file from above: HoRNDIS-9.2-catalina_install.pkg.zip

Then after installation, I ran the following:
sudo kextcache --clear-staging
sudo kextcache -i /

Then under System Security, I allowed the System software from Joshua Wise.

Works for me on Catalina 10.15.7!

@johnnyfivedev
Copy link

Here's a version packaging the exact same binary-identical .kext together with a modified install script. This does mean the .pkg is unsigned (so you'd have to trust me and bypass Gatekeeper with the right-click-and-open method). I'll try to get a PR to the project in place soon.
HoRNDIS-9.2-catalina_install.pkg.zip

Screenshot 2021-04-02 at 19 18 34

How to deal with this (No disk seen)? I have a Windows installed on same MacMini via bootcamp, might this be an issue?

@dayuba
Copy link

dayuba commented Apr 12, 2021

Here's a version packaging the exact same binary-identical .kext together with a modified install script. This does mean the .pkg is unsigned (so you'd have to trust me and bypass Gatekeeper with the right-click-and-open method). I'll try to get a PR to the project in place soon.
HoRNDIS-9.2-catalina_install.pkg.zip

this worked

@ElanVB
Copy link

ElanVB commented Jul 9, 2021

I have it working on Catalina 10.15.7

I used the install file from above: HoRNDIS-9.2-catalina_install.pkg.zip

Then after installation, I ran the following:
sudo kextcache --clear-staging
sudo kextcache -i /

Then under System Security, I allowed the System software from Joshua Wise.

Thanks! This also worked for me!
macOS Catalina 10.15.4 (19E287)

@FellonCem
Copy link

Here's a version packaging the exact same binary-identical .kext together with a modified install script. This does mean the .pkg is unsigned (so you'd have to trust me and bypass Gatekeeper with the right-click-and-open method). I'll try to get a PR to the project in place soon.
HoRNDIS-9.2-catalina_install.pkg.zip

I created a github account for thanking to you. It worked properly. Thank you man ❤️

@Thisguyisamajoridiot
Copy link

Here's a version packaging the exact same binary-identical .kext together with a modified install script. This does mean the .pkg is unsigned (so you'd have to trust me and bypass Gatekeeper with the right-click-and-open method). I'll try to get a PR to the project in place soon.
HoRNDIS-9.2-catalina_install.pkg.zip

It works for me too :)

It didn't work for me tho ;(

@tomirimayoga
Copy link

working on Catalina 10.15.7

type

sudo kextcache --clear-staging

then enter your password
type

sudo kextcache -i /

wait for a minute

then go to Security and Privacy, You should find and allow software from Joshua Wise
restart your system and connect your usb tethering

@NALAWALAMURTUZA
Copy link

it's not work in macOS Venture.please share solution if any one have.

Thank in advance.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests