Jump to content

cnrd

Members
  • Content Count

    38
  • Joined

  • Last visited

Everything posted by cnrd

  1. cnrd

    OpenCore Discussion

    Okay, so apparently the problem with AirportBrcmFixup.kext is related to Catalina. Another 2 questions: 1. How can I set the default boot volume? (Using Startup Disk does not work) 2. Any way to add my Windows 10 volume? (In Clover I just chain-booted \EFI\Boot\bootx64.efi on the Windows SSD)
  2. cnrd

    OpenCore Discussion

    Hi So I got my system booting using OpenCore, everything is working great except for AirportBrcmFixup.kext I get this error on boot: "OC: Prelink injection AirportBrcmFixup.kext - Invalid Parameter" and the kext is never loaded, all my other injected kexts works just fine. I have attached my (scrubbed) config.plist, if anyone could take a look. config.plist
  3. Hope you may be able to help. I have 2 problems: 1. Disabling Unrestricted FS (SIP) causes all USB ports to not work. 2. Disabling CMS Support and using more than one screen causes black screen on both screens. (Have WhateverGreen.kext installed). The attached files are with CMS enabled (Both screens working) and CMS disabled (One screen unplugged to get output). Thanks :-) Send me Colossus.home-CMS enabled.zip Send me Colossus.home-CMS-Disabled-Single-Screen.zip
  4. cnrd

    [pre-release] macOS High Sierra

    Ended up downloading it on my hack, got the full installer there, not sure why. (Macbook is a rMBP late 2013 15", hack is in sig using iMac17,1).
  5. cnrd

    [pre-release] macOS High Sierra

    How do you guys get the full installer to create a USB? Whenever I download it from the Mac App Store, I only get a 5 MB file.
  6. cnrd

    Clover Problems and Solutions

    What about this? #!/bin/bash mkdir -p "/Library/Application Support/Clover/LogoutHook" gLogoutHookf="/Library/Application Support/Clover/LogoutHook/CloverLogoutHook.sh" saveNVMRAM="/Library/Application Support/Clover/LogoutHook/save_nvram_to_efi.sh" if [[ ! $(defaults read com.apple.loginwindow LogoutHook) && -f "${saveNVMRAM}" ]]; then echo "#!/bin/bash" >> "${gLogoutHookf}" echo -e "\"${saveNVMRAM}\"" >> "${gLogoutHookf}" chown root:wheel "${gLogoutHookf}" chmod 755 "${gLogoutHookf}" defaults write com.apple.loginwindow LogoutHook "${gLogoutHookf}" elif [[ "$(defaults read com.apple.loginwindow LogoutHook)" != ${saveNVMRAM} && -f "${saveNVMRAM}" ]]; then rm "${gLogoutHookf}" echo "#!/bin/bash" >> "${gLogoutHookf}" echo -e "\"$(defaults read com.apple.loginwindow LogoutHook)\"" >> "${gLogoutHookf}" echo -e "\"${saveNVMRAM}\"" >> "${gLogoutHookf}" chown root:wheel "${gLogoutHookf}" chmod 755 "${gLogoutHookf}" defaults write com.apple.loginwindow LogoutHook "${gLogoutHookf}" fi It will add the logoutHook in case there is none, if logoutHook is already set, then create a script contaning old logoutHook and the EFI script, meaning that our EFI script will work, while the old logoutHook will also work. (Yes I know it's fugly, too tired to clean it up). EDIT: This won't work, stuck on reboot.
  7. cnrd

    Clover Problems and Solutions

    I edited the post just above yours, what about that idea? (Not overwriting LogoutHook, and letting people add it to their own scripts if they need to).
  8. cnrd

    Clover Problems and Solutions

    I'm pretty sure we'll only have to write this value once, so I don't think we need to run it on each boot, unless someone were to delete it manually, but then we should probably let them do so? We could probably just let clover write the value as a part of the install, if scripts are chosen. EDIT: Or we could do something like: #!/bin/bash gLogoutHookf="/etc/logoutHook/save_nvram_to_efi.sh" if [[ ! $(defaults read com.apple.loginwindow LogoutHook) && -f "${gLogoutHookf}" ]]; then defaults write com.apple.loginwindow LogoutHook ${gLogoutHookf} fi But that would be the same (But not overwriting LogoutHook if people have something else in there. Also I don't think this should be added to 20.mount_ESP.local, as that file is for mounting ESP on boot, not writing extra config for save_nvram.
  9. cnrd

    Clover Problems and Solutions

    I'm not sure that we should keep the 80.save_nvram_plist.local file in rc.shutdown.d folder, as I think that folder should be reserved for scripts that are run at that time, not for a logoutHook, but I'm not really sure where we should place it then? (I'm sorry, not a reply for you directly, but more for the Clover maintainers). Not sure if there is actually a folder we could use, but I'm thinking: "/etc/logoutHook"?
  10. cnrd

    Clover Problems and Solutions

    Looks like it is (very quick test): sudo defaults write com.apple.loginwindow LogoutHook /etc/rc.boot.d/40.load_msdos_kext.local Reboot sudo kextunload com.apple.filesystems.msdosfs To make sure the msdos kext is not loaded. Reboot and nvram.plist in EFI partition was updated. So LogoutHook should be early enough to allow us to load stuff. I used this page for the logoutHook command.
  11. cnrd

    Clover Problems and Solutions

    Yeah I just created my own simple version: $cat 40.load_msdos_kext.local #!/bin/bash kextload /System/Library/Extensions/msdosfs.kext
  12. Hi I have a fully working Sierra system, except for a single annoying problem: Whenever I connect a DP and a Dual Link DVI monitor, both screens go black at second stage of boot. (Like they would without AGDPFix). If I connect a DP or a Dual Link DVI monitor, everything is working just fine. If I use a DP + DP -> Dual Link DVI adapter, everything is working just fine (Except the adapter being unstable, but same thing happens on MacBook). I have not tested a normal DVI monitor + DP monitor. If I connect either DP or DVI monitor after getting to desktop, both work fine until reboot. Both monitors are 27" 2560x1440. I'm injecting my 980 ti as GFX1 using an SSDT with a MacPro6,1 sysdef and I have already tried changing the sysdef to iMac17,1; iMac15,1; and iMac14,1. Both monitors were working fine with El Cap 10.11.6. Anyone have any ideas on what to try to fix this?
  13. cnrd

    Clover Problems and Solutions

    I can confirm that this script also works for my system (Which has had problems with all other scripts), and propose that it is added to Clover. Just one question Syscl: What is the reason you are saving the nvram.plist in both "/" and EFI partition? EDIT: nvram.plist is only saved to EFI partition if I run: sudo kextload /System/Library/Extensions/msdosfs.kext before shutting down. We probably need to load that kext on boot?
  14. cnrd

    Clover General discussion

    Yes that is correct, but if nvram.plist is avaliable in EFI clover will still use that even after the fallback to save it into main partition, meaning that the nvram will not be up to date on the next boot. In my case it will always use the nvram.plist from EFI partition even if the one in main partition is "newer".
  15. cnrd

    Clover General discussion

    I only added that, as that is the path used by "20.mount_ESP.local" to mount the partition on my system. I can use every proposed script if: 1. I run the script manually BEFORE shutting down (Script mounts partition just fine in this case) 2. I mount the EFI partition manually BEFORE shutting down (Script does not mount the partition, but just saves the nvram.plist) 3. I use both "20.mount_ESP.local" and "80.save_nvram_plist.local" (Which is really the same as 2.) (All I did in my scripts is adding a new flag that gives more control, could just as well have used your script and "Clover.MountEFI=Yes"). Bottom line, the "80.save_nvram_plist.local" script won't mount the EFI partition when initiated on SIGTERM. (Which is probably the problem seen in #11981). So I'm pretty sure that we need to do something before SIGTERM as joevt is saying in #11984. What I found is that we can't actually mount on SIGTERM, which is why it's bugging out.
  16. cnrd

    Clover General discussion

    I was experimenting with saving to EFI partition about 2 months ago, and I came to the conclusion, that in the current implementation, we also need "Clover.MountEFI=Yes" as the script is unable to mount the EFI partition on shutdown. I have attached my implementation, which uses a new EFI flag: Clover.SaveNVRAMToEFI=Yes, which uses both "20.mount_ESP.local" and "80.save_nvram_plist.local" (Remove .txt extension) I have the feeling that the reason, the scripts are working for you, is that (at least this is my habit) you enable the EFI partition to auto mount on boot while developing. 20.mount_ESP.local.txt 80.save_nvram_plist.local.txt
  17. cnrd

    Clover General discussion

    I'm starting to think that I may be editing the wrong script. I'm editing the script in "/etc/rc.shutdown.d/80.save_nvram_plist.local" As I tried doing this (Hardcoding disk0s1 if SaveToEFI is set): function findFirstAppleBootDevice { if [[ $SaveToEFI == Yes ]]; then device=disk0 index=1 else local devices=$(LC_ALL=C ls /dev/disk* | sed -n '/\/dev\/disk[0-9]*$/p') # Iterate over all devices for device in $devices; do # Find first partition with Apple Boot partition signature index=$(LC_ALL=C /usr/sbin/gpt -r show "$device" 2>/dev/null | \ awk 'toupper($7) == "426F6F74-0000-11AA-AA11-00306543ECAC" {print $3; exit}') if [[ $index =~ ^[0-9]+$ ]];then break else index= fi done fi # If index found return the device and partition (like diskXsY) [[ -n "$index" ]] && echo "${device##*/}s$index" } And added SaveToEFI as a global variable to the script. This also works, when running it manually, but when shutting down, it still saves to disk0s2 (macOS partition). EDIT: After a lot of debugging, I found that macOS does not like to put the nvram.plist into EFI unless it is mounted before shutdown. (It does not mount it correctly if mounting is done by the script while the system is shutting down). This works (but is a bit ugly): in 80.save_nvram_plist.local (diff): < NVRAMMountPoint=/tmp/NVRAM 29a29,35 > # Should we save nvram to EFI partition? > SaveToEFI=$(GetNVRamKey 'Clover.SaveNVRAMToEFI') > if [[ $SaveToEFI == Yes ]]; then > NVRAMMountPoint=/Volumes/EFI > else > NVRAMMountPoint=/tmp/NVRAM > fi 108c114,118 < local mntpt=$(mountNVRAMDisk "$device" "$NVRAMMountPoint") --- > if [[ $SaveToEFI == Yes ]]; then > local mntpt=$NVRAMMountPoint > else > local mntpt=$(mountNVRAMDisk "$device" "$NVRAMMountPoint") > fi 145c155 < if [[ ! "$NVRAMDevice" =~ ^disk[0-9]*s[0-9]*$ ]]; then --- > if [[ ! "$NVRAMDevice" =~ ^disk[0-9]*s[0-9]*$ || $SaveToEFI == Yes ]]; then in 20.mount_ESP.local (diff): > SaveToEFI=$(GetNVRamKey 'Clover.SaveNVRAMToEFI') > if [[ $SaveToEFI == Yes ]]; then > mountEFIValue='Yes' > fi
  18. cnrd

    Clover General discussion

    EDIT: After a bit of debugging I found that the new findFirstAppleBootDevice function does not return anything on my system when shutting down (I even tried extending diskutil to it's full path). I tried to implement an extension to this commit, allowing us to choose if the nvram.plist should be saved to EFI or macOS partition, but I'm having some problems with it not saving to EFI. When I run it manually: cd /etc/rc.shutdown.d sudo ./80.save_nvram_plist.local I works fine and saves to the EFI partition, but when I shut down, it will still save it to the macOS partition. Here are the lines I added (I did add the nvram variable Clover.SaveNVRAMToEFI=Yes): # Should we save to EFI? SaveToEFI=$(GetNVRamKey 'Clover.SaveNVRAMToEFI') if [[ ! "$NVRAMDevice" =~ ^disk[0-9]*s[0-9]*$ ]] || [[ "$SaveToEFI" == Yes ]]; then Diff here: 145c145,148 < if [[ ! "$NVRAMDevice" =~ ^disk[0-9]*s[0-9]*$ ]]; then --- > # Should we save to EFI? > SaveToEFI=$(GetNVRamKey 'Clover.SaveNVRAMToEFI') > > if [[ ! "$NVRAMDevice" =~ ^disk[0-9]*s[0-9]*$ ]] || [[ "$SaveToEFI" == Yes ]]; then Anyone have any idea about why it correctly saves to EFI partition when run manually, but saves to macOS partition when I shut down?
  19. cnrd

    Bootscreen, Nvidia G-Sync

    Same monitor, have a problem that may be related. Do you happen to have CSM Support disabled (Z87 should support full UEFI chain)? If you do have CSM Support disabled, please try enabling it, that fixes a similar problem where I will get black screen with multiple monitors connected.
  20. cnrd

    GTX 980, Sierra, Dual/Triple monitor support ,

    If you have it disabled, try enabling CSM support (Not sure which motherboard you use, but on my GA-Z170X-UD3, the settings below work). Windows 8/10 features: Other OS Everything below (except LAN): UEFI Only
  21. cnrd

    Clover General discussion

    I'm using AptioFix2 (cannot boot with AptioFix (non-2) on Clover 3895. I hope the attached files are the correct ones (memmap > fs0:\memmap.txt and DarwinDumper -> Firmware Memory Map). Looks to me like the nvram rc script already supports mounting the drive for writing? (This would add a few seconds to shutdown/reboot, but nothing too serious for SSDs). I was just thinking that if we use the EFI partition, then we would have "real" nvram, supporting the same nvram on multiple installs on the same PC, I'm not sure if anyone else would like that, but it is something I could have used while testing Sierra while still having El Capitan installed. memmap.clover.txt memmap.darwindumper.txt
  22. cnrd

    Clover General discussion

    Hi I just setup FileVault2, but now my nvram.plist is not loaded on boot (Which it shouldn't as the disk is encrypted), can I somehow tell 80.save_nvram_plist.local to save the nvram.plist to the EFI partition instead of the root of the boot drive? Also I tested out the EnableHWP flag, it's working great! EDIT: Does anyone know if it is possible to have native NVRAM on Gigabyte Z170? I have been searching high and low, but haven't found anything, as that would fix the nvram.plist problem. (Sorry if this is OT, but I was just thinking that this was bootloader related). Thanks for all your hard work.
  23. Yeah seems like there is something weird going on with the driver? I'm not sure what the problem is but we are now on 2 out of 2, who had the problem and fixed it by just moving screens around. And no you should not need the AGDP.kext edit when using 1Mac 14,2. :-)
×