Jump to content
janek202

Kext Wizard - Easy to use Kext Installer and more

272 posts in this topic

Recommended Posts

Not sure if this has been mentioned yet, but a built-in KEXT repository would be the bees knees. -_-

 

I'm not a web developer. Adding all kexts using mails and dropbox, means too much work.

I won't add every single kext manually into my dropbox. I don't know how to create site for that.

 

And I'm working on a new project. New wizard. More info soon.

Share this post


Link to post
Share on other sites
Advertisement
Not sure if this has been mentioned yet, but a built-in KEXT repository would be the bees knees. :(

 

-Stell

 

Uhhh... Wow. Do you have any idea how much work that would be? Might I suggest going over to kexts.com?

Share this post


Link to post
Share on other sites

Since Lion by default doesn't have a kernel cache, and Chameleon by default does not load a manually created kestcache, I think you should add an option in the maintenance section to add a "UseKernelCache" to the boot.plist if the user selects the option to create a kernel cache.

Share this post


Link to post
Share on other sites

Yes but that would load kexts only from S/L/E...

We need to create combo cache from both /E/E and S/L/E and use it at startup. Is it possible? How?

Share this post


Link to post
Share on other sites
Yes but that would load kexts only from S/L/E...

We need to create combo cache from both /E/E and S/L/E and use it at startup. Is it possible? How?

 

just copy the kext from e/e to s/l/e and your good to go

Share this post


Link to post
Share on other sites

I just want to give my big thanks for your work on this tool :)

 

...I think it needs some exposure in the community so it can become more widely adapted, as it deserves!!

 

This is a great community... so exchange, share, help out others to pay thanks to those who helped you out, and always say thank you. Lets keep it alive !

Share this post


Link to post
Share on other sites
Post me a terminal commands how to do that.

this the command that creat kernel cache for my kernel (cyrus_kernel):

sudo kextcache -system-prelinked-kernel -K /cyrus_kernel

 

may the option that specty the kernel name be good.

thanks

Share this post


Link to post
Share on other sites

Hi Janek202. As per "Please report me any bugs or ideas for new features" (I did NOT read through the pages, so a duplicate submission is well possible), here's some *constructive* feedback:

 

- when installing new kexts to E/E, as of now the mkext there does NOT get rebuilt automatically. I basically consider this a bug because it might lead to the kext which got installed to E/E and is not included in the mkext might not get loaded correctly. So now, after installing kexts to E/E, one has to click onto Maintenance, activate 'Extra/Extensions', rebiult mkext. Those extra steps should not be necessary. It would be great if you could fix that. If there is some kind of pro for not auto-rebuild E/E mkext, then please at least ad an option field "Auto-Rebuild mkext", which is *activated by default*; whoever does for some reason *not* want the mkext rebuilt can toggle it off.

 

- please have "Backup kexts that will be replaced" *activated* by default! In times of terrabytes HDs, looking at the tiny size of almost all kexts, and noting the security aspect of backups in general I don't see *any* reason why this option shall not be active by default. Thank you

 

- again regarding kext backups: when I first utilized your tool I was totally startled because even though I had ticked "Backup kexts that will be replaced" I did not find them! I installed to a different volume, and after booting into that volume and realizing I had to restore one kext, first looked into the extension folder there, being used to Kext Utility's approach to simply rename existing.kext --> existing.bak. Then I remembered having read something about a folder 'Kext Backup' being created. Analog to what Kext Helper (and I think OSX86Tools) used to do, I looked on / of the volume to which I had installed kexts to, but to my disappointment did not find any like folder there. After finding and reading your ReadMe I was very amazed that the default backup path is the Desktop of the user account one installed FROM, not the / of the volume on installs TO. That is very awkward, esp. if one installed from as root user (...), and also makes much less sense than backing up to the actual volume. Reason is evident I dare say: when, after running an install for a while, one realizes one has to revert to an older kext, it would be easy to do so just looking on / of that particular volume. The backup on the desktop of some user folder (which might even be on a completely different computer if one installed to a USB volume .....) might simply not be retrievable anymore.

 

Right now I "jerryrig" by, after installing kexts to another volume, MANUALLY creating a folder "Kext backup" on / of that volume, then copy the appropriate date/time folder into folder I created on the other volume.

 

Again, if there is some pro of choosing the current desktop as backup, then, instead of ONE line "Backup kexts that will be replaced" you could change that to "Backup kexts that will be replaced to / of destination", and a 2nd line "Backup kexts that will be replaced to current Desktop". Not too much space lost there, but a highly usable feature addition. And PLEEAASE ;), make "Backup kexts that will be replaced to / of destination" active by default :)

 

- after installing kexts to S/L/E, the option button jumps back onto E/E. Why? That's confusing because (esp. late @ nite .. :) ) I can make one doubt if one really chose the correct destination. This can be considered a bug. I think similar with "Target Disk": if one has chosen "S/L/E" and then changes the target disk, it jumps back to to E/E. But I am not sure about that right now (am not writing from OS X so cannot test)

 

Other than that, awesome tool! Makes deploying h'tosh soooo much easier (and I bet Hagar hates it because he kept on deleting my postings back then when I asked for exactly what you coded, labeling my requests 'forum spam' and eventually even blocked my account - and now look at the popularity).

 

Thank you Janek - RESPECT!

Bugs

Share this post


Link to post
Share on other sites
- when installing new kexts to E/E, as of now the mkext there does NOT get rebuilt automatically.

 

It does. Installation checks if E.mkext exists. If it does it will be updated. I didn't wanted to confuse newbies with new "unknown" files. So basically, if you made an mkext in the Maintenance tab it will be updated after each kext installation.

 

- please have "Backup kexts that will be replaced" *activated* by default!

OK.

 

Reason is evident I dare say: when, after running an install for a while, one realizes one has to revert to an older kext, it would be easy to do so just looking on / of that particular volume. The backup on the desktop of some user folder (which might even be on a completely different computer if one installed to a USB volume .....) might simply not be retrievable anymore.

It shows in your desktop, so you can move it to the location you like. I don't want to keep this kexts like .bak or something, because I think it will be hard to find working kext among others like bak1, bak2, bak3 etc. But I think I will make directory [target disk]/Extra/Backups.

 

- after installing kexts to S/L/E, the option button jumps back onto E/E. Why? That's confusing because (esp. late @ nite .. :blink: ) I can make one doubt if one really chose the correct destination. This can be considered a bug. I think similar with "Target Disk": if one has chosen "S/L/E" and then changes the target disk, it jumps back to to E/E. But I am not sure about that right now (am not writing from OS X so cannot test)

 

It was the simplest way. I had to make something default so after you change partition with Extra and no S/L/E to the partition without Extra but with /S/L/E it won't stay selected on the wrong option. But I will try to make it better.

Share this post


Link to post
Share on other sites
It does. Installation checks if E.mkext exists. If it does it will be updated. I didn't wanted to confuse newbies with new "unknown" files. So basically, if you made an mkext in the Maintenance tab it will be updated after each kext installation.
LOL that's funny - the way I tested it was by DELETING the mkext and see if it gets built. I understand your reasoning - however it will slow down boot and display all these kexts and sub-kexts running down the screen. I think that will confuse nubies even more than a file in a (hidden) directory they will never see anyway.
But I think I will make directory [target disk]/Extra/Backups.
YIPPIE :) The Desktop location could remain as a toggleable option, if you decide to.
But I will try to make it better.
cool, thanks.

 

I also like your other utils and donated from your sig. Solidarności - you Polaks rock :)

 

Bugs

Share this post


Link to post
Share on other sites
this the command that creat kernel cache for my kernel (cyrus_kernel):

sudo kextcache -system-prelinked-kernel -K /cyrus_kernel

 

may the option that specty the kernel name be good.

thanks

hi janek plz add the above command to next wizard

thanks

Share this post


Link to post
Share on other sites

sskwi_en.PNG

 

Hi, is certainly a stupid question but how do I know where should I install the Kext's files?

What is the default location?

 

Many thanks,

 

Vasco

Share this post


Link to post
Share on other sites
Installation and Maintenance can be executed for any OS X partition.

 

Why are my choices: Choose, Item1, Item 2

 

My partitions do not appear.

Share this post


Link to post
Share on other sites

Great.

But does this new utility handle the rights of kext "correct" if i use kext utitlity works but next OS X Diskutility must repair all of them again.

Yes.

Maintenance: First it sets owner (root:wheel) and permissions (755) for the whole System/Library/Extensions. Some system kexts requires other permissions etc. so after that it repairs permissions on whole target disk using: "diskutil repairpermissions".

 

Installation: It sets owner and permissions only for newly installed kexts. Others aren't modified. After that it rebuilds cache.

 

So there's no need to run Disk Utility after using my application.

Don't know if this was addressed in this thread or not, as I haven't read it all. :-P

But, this is an issue I ran into awhile back and I found that the system expects 644 to be applied to the files and 755 to the folders/kext package.

So, running the following commands (or similar) fixes this minor issue:

 

chmod -R 755 /System/Library/Extensions
find /System/Library/Extensions -type f -execdir chmod 644 {} \;

 

It simply applies 755 to all the files/folders/kext packages, then finds just the files and applies 644 to them.

best regards,

MAJ

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By fusion71au
      This is a brief guide on how to create a vanilla El Capitan (also same process for Sierra) OS X Installer USB with an updated prelinked kernel containing FakeSMC.

      It is tailored for those users who want to understand the “nuts and bolts” of how to create an installer and also to help brush up on their terminal skills (rather than have one made for them with the numerous automated “tools” available or even Apple’s createinstallmedia) :
       
       
      Specifically, it is also a “Proof of Concept” which shows that installation is possible without even having to rely on boot loader kext injection.

      Prerequisites
      Existing Yosemite installation (or Mavericks - see post#4 for steps 7,8) “Install OS X El Capitan.app" downloaded to the Applications folder Pacifist FakeSMC.kext - Slice or Kozlek branch Bootloader - Clover or Chameleon 8GB or larger USB drive (16GB recommended), formatted HFS+ (MBR or GUID) named “Installer”  
      Procedure
      1.  Boot into Yosemite with the kext-dev-mode=1 boot flag
      2.  Open OS X terminal and type the following lines, followed by <Enter> after each line.
          The image restore and file copying may take a while to complete, and at the end of the process, the Installer volume is renamed to “OS X Base System"....
       
      sudo -s hdiutil attach /Applications/Install\ OS\ X\ El\ Capitan.app/Contents/SharedSupport/InstallESD.dmg asr restore -source /Volumes/OS\ X\ Install\ ESD/BaseSystem.dmg  -target /Volumes/Installer -erase -format HFS+ -noprompt -noverify rm /Volumes/OS\ X\ Base\ System/System/Installation/Packages cp -av /Volumes/OS\ X\ Install\ ESD/Packages /Volumes/OS\ X\ Base\ System/System/Installation cp -av /Volumes/OS\ X\ Install\ ESD/BaseSystem.dmg /Volumes/OS\ X\ Install\ ESD/BaseSystem.chunklist /Volumes/OS\ X\ Base\ System diskutil unmount /Volumes/OS\ X\ Install\ ESD exit 3.  Right click on the “OS X Base System” Volume and click “Get Info”
       

      4.  Click on the lock icon and untick “Ignore ownership on this volume”
       

      5.  Extract/Copy the El Capitan Kernels folder into /System/Library/ of the USB with Pacifist.  NB It is found in the "Essentials.pkg" in /System/Installation/Packages
       

      6.  Delete or Rename the original /System/Library/PrelinkedKernels/prelinkedkernel —> OG.prelinkedkernel
       

      7.  Copy FakeSMC.kext and other necessary kexts (e.g. VoodooPS2Controller.kext for laptops) into the /Library/Extensions folder of the installer USB using Finder.
       

      8.  Back in terminal, type the following lines, followed by <Enter> after each line to rebuild the prelinkedkernel…..
       
      sudo -s chmod -R 755 /Volumes/OS\ X\ Base\ System/Library/Extensions chown -R 0:0 /Volumes/OS\ X\ Base\ System/Library/Extensions touch /Volumes/OS\ X\ Base\ System/System/Library/Extensions kextcache -u /Volumes/OS\ X\ Base\ System exit Any errors should be noted but the output below is normal e.g.


      9. Install your Bootloader targeting the OS X Base System volume
       
       
       
       
      10.  Boot your system with the USB without injected kexts into the OS X Installer GUI....
       
       
       
       
       
      Post Install
      The original prelinked kernel in a fresh install of El Capitan will also lack FakeSMC ie it will only be linked to Apple signed kexts.  In order to boot into El Capitan the first time around without boot loader kext injection, the PLK needs to be rebuilt for the El Capitan volume like we did for the installer:
       
      1.  Boot into Yosemite with the kext-dev-mode=1 boot flag
      2.  Delete or Rename the original /System/Library/PrelinkedKernels/prelinkedkernel for the El Capitan volume —> OG.prelinkedkernel
      3.  Copy FakeSMC.kext and other necessary kexts (e.g. VoodooPS2Controller.kext for laptops) into the /Library/Extensions folder of El Capitan using Finder
      4.  Back in terminal, type the following lines, followed by <Enter> after each line to rebuild the prelinkedkernel.  In this example, the El Capitan volume is named "El_Capitan" - change if you have named it something else...
      sudo -s chmod -R 755 /Volumes/El_Capitan/Library/Extensions chown -R 0:0 /Volumes/El_Capitan/Library/Extensions touch /Volumes/El_Capitan/System/Library/Extensions kextcache -u /Volumes/El_Capitan exit 5. Install your Bootloader targeting the El Capitan volume.  This step is only necessary if you are installing El Capitan on a new drive without existing boot loader (not required if installing on a disk with existing boot loader beside Yosemite).
      6. Reboot your system without injected kexts into El Capitan!
       
       
      Other links
      The All-In-One Guide to Vanilla OS X for beginners
       
      Updates for Sierra and High Sierra   Custom Prelinkedkernel Generator Tool I have made a custom prelinkedkernel generator "PLK.tool" for Sierra + El Capitan.  Instructions:   1.  Download and extract the attached BaseSystem_PLK.tool.zip into your ~/Downloads folder.   2.  Copy any extra kexts necessary for booting your hack to ~/Downloads/BaseSystem/ExtraKexts (e.g. FakeSMC, VoodooPS2Controller), making sure SIP is disabled. 3.  Copy BaseSystem.dmg to ~/Downloads/BaseSystem  4.  Open terminal and run the following commands... cd ~/Downloads/BaseSystem chmod +x PLK.tool ./PLK.tool ---> supply your admin password ---> will place your new custom prelinkedkernel on the desktop.       macOS High Sierra bypass Firmware and MBR checks in post#13.
      BaseSystem_PLK.tool_ElCap.zip
      BaseSystem_PLK.tool_Sierra.zip
      BaseSystem_PLK.tool_Mojave.zip (need to run in Mojave to avoid dependency errors)
       
    • By ITzTravelInTime
      Hi guys, this thread is to show you a new and open source app, created by me, that I called TINU:
       
      The name means: TINU Is Not #####, the U refers to a popular software that is used to create Mac OS hackintosh installers (that for good reasons is banned on this forum), but the aim of the name is to explain that this app is a totally different thing from that software and works in a totally different way.
       
      This app basically is a graphical interface for the createinstallmedia executable that is inside the Mac OS installer apps, it is capable to create a Mac OS installer on a drive completely vanilla like what you do using the command line method, and also this method is recommended by apple itself. In addition to this, this app provvides also to you some customization features and a better management of the hall macOS isntall media creation process
       
      Allows you to create easily a macOS install media without messing around with command line stuff and without using disk utility, all you need to do is use the app and then install clover on the usb drive once TINU has finished or leave it as is you want to use it on a Mac.
       
      Features:
        - Simple to use UI that allows you to easily start the macOS install media creation process
        - It can work with every Mac OS installer app that has the createinstallmedia executable inside of it's resources folder (including also beta and newly released installers)
        - You can use any drive or partition you want that can be erased and is at least 7 GB of size
        - Works on Mac OS recovery, so you can create a macOS install media from a bootable macOS installer or from the macOs recovery, and you can use TINU to install macOS too.
        - All vanilla, the macOS install medias created with this tool are 100% vanilla, just like you created them using the command line "createinstallmedia" method in the terminal, with also some extra optiona features
        - Open source, you will know what this program does on your computer and also you can create your own version by downloading and playing with the source code
        - Does not requires to do anything of special first, just open the program
        - No need to go in disk utility first, TINU can format your drive for you
        - Uses recent and more modern APIs and SDKs and Swift 3 language
        - Transparent graphics style available (use alt + s on the keyboard or View->Use transparent style)
        - Works using the latest versions of macOS and will also support newer Mac installers out of the box without needing for an update
        - Advanced section, to customize your macOS install media
        - Installer customization: Kernelcache/prelinkedknerel and boot files replacement (a feature that can be handy while dealing with old Macs or with beta installers when you need to mod or change the boot files some times)
        - Clover EFI folder installer
       
        Features that are planned for some future versions:
        - Integrated EFI partition mounter tool (TINU can already mount EFI partitions from version 2.0, but a dedicated section which allows to mount every EFI partition in the system will be added)
        - Install clover and configure clover
        - Install kexts inside the kexts folder of clover
        - Clover drivers customization
        - Use custom dsdt in clover
        - integrated pre-made clover config templates database from a remote and open repository
        - Support for other languages, at least Italian   Rquirements:  - A computer that runs Mac OS X Yosemite or a more recent version (Mac OS X El Capitan is required to use TINU in a macOS recovery or installer)  - A drive or a free partition of at least 7 GB that you want to turn into a macOS/Mac OS X installer  - A copy of a macOS/Mac OS X installer app (Maveriks or newer versions are supported) in the /Applications folder or in the root of any storage device in your machine (excepted the drive or volume you want to turn into your macOS install media)   Note that this app is under the GNU GPL v3 license so any reuse of the source code must follow the license's terms   Latest stable TINU release:   Download the app:                                https://github.com/ITzTravelInTime/TINU/releases   View the source code:                            https://github.com/ITzTravelInTime/TINU/       Frequently asked questions about TINU:  https://github.com/ITzTravelInTime/TINU/wiki/FAQs     NOTE: if you have problems with your USB installer of 10.13.4 or newer version not being detected by clover you have to use the latest clover and if it still does not detectets your usb installer you have to remove the invivible file called .IAPhysicalMedia located into the root of the usb installer. This issue is caused by a changement in the apple's createinstallmedia, don't blame TINU for that, TINU does only uses the installer creation method from apple, which has been changed by appleitself, causing this problem for hackintosh users some times, this issue should be resolved in the latest versions of clover which will no longer require that you do changements to let your usb dive to be detected, a setting to do this fix automatically in tinu is also present TINU in the adavnced settings, starting from the version 2.0 of the app. I leave also some screenshots as well
       
       
       
       
       
       
       
       

    • By bobso
      hi I have this build:
       
      - AMD Athlon X4 631
      - ASRock A75M-HVS (link)
      - AMD HD 6670
      - 8GB DDR3
      - 250GB HDD
       
      Which version of MacOS can I install?
      Which kernel?
    • By tlefko
      macOS-Mojave-XPS13-9350
      Hello, this is a simple guide to get OS X 10.14 working on any XPS 13 9350 model
      This guide uses files from (@syscl) (albeit edited) and full credit to him for the Deploy.sh and DSDT patches. However, his Clover folder is unbootable with Mojave and thus has been redone.
      However, his Deploy is still retained but edited to remove some DSDT patches that break things on Mojave
      I did my best to keep the guide simple and for the most part it is, it's inteded for the 6200U non iris but should work with others. (credit @syscl)
      Issues
      Wake up via lid is hit or miss (sometimes needs key press) SD Card slot Restarts don't work (endless black screen while turning off but still on) Usage Notes
      USB Devices eject upon sleep (USB Patches via Deploy were major issue) Changing board number via Clover Config doesn't work always unless serial is changed (No idea..) Audio is controlled via VoodooHDA however prefpane is not nessacary. Never tested USB C anything. Charging should be fine however I'm not sure about others, don't personally use it) What Works
      Everything else! Setup Notes
      The new AFPS file system must be used, there is no way to avoid it. Has no noticeable adverse effects except slower boot time It is difficult to repartition AFPS drives and resize them, recommend clean install or you could have one partition smaller than your hard drive that can't be increased unless reformatted Although Volumes will be converted, keep drive as GUID BIOS Settings
      Set all SATA operation as AHCI Disable Secure Boot, Fast Boot For Coil Whine improvement disable C-States Enable UEFI Booting (Disable Legacy if easily confused) Recommended: Clean Install (Preinstall steps)
      Download latest Mojave version from Mac App store (Register AppleID as developer, enroll your mac, download the preview from the link onsite or google for detailed instructions. Make Bootable media (google how or download app to do it, it's just a terminal command) Download the Latest Clover revision (currently using r4568) and install it to your USB as UEFI and ESP (no need for drivers) Copy The contents of this Github repository into your EFI folder on the USB (Mount the EFI Partition via clover config, efi mounter, etc.) (No Boot Folder in EFI) If you have the same XPS Model as me you can use stock ACPI patched files (6200u, hd 520, 3200x1800,) if not delete contents of both folders (origin, patched) and will fix later via @syscls modified deploy) Installing Mojave (Clean Install)
      Boot PC off the USB, select your Installer as your Boot drive from clover menu config is currently set to FAKESERIAL and -v. I believe (@syscl's) deploy generates serial # information Once installer is loaded, go to disk utility and format as a GUID Partition Table with whatever partitions you want (Don't format whole drive to afps make sure it's GUID) Run the Mojave installer to the drive wait for it to finish, then turn off) From Clover, select the name of the Mojave Partition (not preboot, recovery, etc.) and not your USB stick either From here the installation will continue. DO NOT CLICK ON MOUSE OR KEYBOARD (crashes installer shortly after at least for me) Post Install (Clean Install)
      Reboot off your USB once again, load up your Mojave drive. First Boot will take long, if your using my ACPI files (from @sysl's deploy, edited) and have same model you should have everything out of box (except wifi) Regardless, run through the installer and set it all up. (without acpi) At this point screen should be fine, mouse, keyboard, no wifi should be present or bluetooth. No brightness control as well. go to terminal to mount EFI or via clover Config, EFI Mounter, etc, of both USB and the internal disk Copy and REPLACE the EFI folder from the USB into your hard drive. Unplug your USB and reboot and you should be able to boot without the USB now Turn off PC, boot into clover. Don't select a drive and press F4 and Fn+F4 a few times, wait a few seconds, then boot back to the drive Plug back in the USB, mount it's EFI, and run the modified Deploy Script on your Hard Drive EFI partition After deploy is finished, there will be VoodooI2C error as I deleted it from Kexts, for me it breaks Trackpad and Keyboard. For now will be using VoodooPS2. After Modded Deploy
      You should have no Internet at this point, the following next steps should resolve that. However, your Brightness, lidsleep, USB, bluetooth should be working Using your favourite Kext Installer (Put it on a USB or something to get it on the PC), install (credit @Rehabman's) FAKEPCIID and FAKEPCIID_Broadcomm texts that are included in the ManualKexts Folder Then run "Sudo kextcache -i /" from terminal, reboot, then run it again. By this point your wifi should be fixed, and everything should be done Post Install Notes
      Your welcome to transfer whatever other kexts you want to S/L/E, personally I leave them in the CLOVER Folder injected. Doing upgrade via mac app store is similar, just partitioning hard drive is harder. Apart from that same process essentially, not recommended Credits
      Credit Hackintosher.com for basic patches (although @syscl) covered some Credit to @syscl (clearly...) Credit to @Rehabman Credit to @syscl Kexts, and his contributers. ex. Lidwake.kext (although not fully compatible) Support
      Your welcome to open any issues on this thread, I personally have little DSDT knowledge so I will do my best to help! Thanks for Reading!
      - This is a clone from my GitHub, the link to the repository is below with all files
       
      https://github.com/tlefko/macOS-Mojave-XPS13-9350
       
      - I would really like to hear everyone's experience trying this guide so please let me know in the comments how it worked for you, if you plan to try it, etc.
×