Contribute
Register

[Guide] Lenovo Legion Y520/Y720 using Clover UEFI

Status
Not open for further replies.
Apparently it was including LiluHelper itself in the .plist, excluding those 2 lines fixed it

Yeah... you don't want to self-refer.

The script that I wrote (from which the-braveknight version is based) has a special case to exclude LiluFriend/LiluFriendLite.

Note also that if OSCompatibleBundleVersion is not available/not present, the script should use OSBundleVersion.

relevant snippets from my original script:
Code:
function check_bundlelibraries
# $1 Info.plist to check OSBundleLibraries for as.vit9696.Lilu dependency
{
    local check=$(get_plist_property "$1" ":CFBundleIdentifier")
    if [[ "$check" == "__property_not_found__" ]]; then echo "NO" && exit; fi
    if [[ "$check" == "as.vit9696.Lilu" ]]; then echo "YES" && exit; fi
    if [[ "$check" == "com.apple.security.LiluFriend" || "$check" == "com.apple.security.LiluFriendLite" ]]; then echo "NO" && exit; fi
    check=$(get_plist_property "$1" ":OSBundleLibraries:as.vit9696.Lilu")
    if [[ "$check" != "__property_not_found__" ]]; then echo "YES"; else echo "NO"; fi
}

Code:
function add_dependency
# $1 kext path with Lilu dependency
# $2 LiluFriend kext path
{
    local plist="$1"/Contents/Info.plist
    local version=$(get_plist_property "$plist" ":OSBundleCompatibleVersion")
    if [[ "$version" == "__property_not_found__" ]]; then
        version=$(get_plist_property "$plist" ":CFBundleVersion")
    fi
    if [[ "$version" != "__property_not_found__" ]]; then
        local bundleid=$(get_plist_property "$plist" ":CFBundleIdentifier")
        if [[ "$bundleid" != "__property_not_found__" ]]; then
            echo " $kext: $bundleid $version"
            set_plist_string_property "$2/Contents/Info.plist" ":OSBundleLibraries:$bundleid" "$version"
        fi
    fi
}
 
Last edited:
What lines are you referring to?
Well, the script didn't only input wrong versions it also included LiluHelper.kext itself which is why even after correcting the versions I ran into the same problem.
 

Attachments

  • Screenshot at Nov 01 3-29-09 PM.png
    Screenshot at Nov 01 3-29-09 PM.png
    134.9 KB · Views: 82
Yeah... you don't want to self-refer.

The script that I wrote (from which the-braveknight version is based) has a special case to exclude LiluFriend/LiluFriendLite.

Note also that if OSCompatibleBundleVersion is not available/not present, the script should use OSBundleVersion.

relevant snippets from my original script:
Code:
function check_bundlelibraries
# $1 Info.plist to check OSBundleLibraries for as.vit9696.Lilu dependency
{
    local check=$(get_plist_property "$1" ":CFBundleIdentifier")
    if [[ "$check" == "__property_not_found__" ]]; then echo "NO" && exit; fi
    if [[ "$check" == "as.vit9696.Lilu" ]]; then echo "YES" && exit; fi
    if [[ "$check" == "com.apple.security.LiluFriend" || "$check" == "com.apple.security.LiluFriendLite" ]]; then echo "NO" && exit; fi
    check=$(get_plist_property "$1" ":OSBundleLibraries:as.vit9696.Lilu")
    if [[ "$check" != "__property_not_found__" ]]; then echo "YES"; else echo "NO"; fi
}

Code:
function add_dependency
# $1 kext path with Lilu dependency
# $2 LiluFriend kext path
{
    local plist="$1"/Contents/Info.plist
    local version=$(get_plist_property "$plist" ":OSBundleCompatibleVersion")
    if [[ "$version" == "__property_not_found__" ]]; then
        version=$(get_plist_property "$plist" ":CFBundleVersion")
    fi
    if [[ "$version" != "__property_not_found__" ]]; then
        local bundleid=$(get_plist_property "$plist" ":CFBundleIdentifier")
        if [[ "$bundleid" != "__property_not_found__" ]]; then
            echo " $kext: $bundleid $version"
            set_plist_string_property "$2/Contents/Info.plist" ":OSBundleLibraries:$bundleid" "$version"
        fi
    fi
}
Oh I see now. At first it wasn’t obvious to me what your code was doing. I will be excluding LiluHelper ( and maybe LiluFriend, LiluFriendLite) from LiluHelper OSBundleLibraries.
 
Yeah... you don't want to self-refer.

The script that I wrote (from which the-braveknight version is based) has a special case to exclude LiluFriend/LiluFriendLite.

Note also that if OSCompatibleBundleVersion is not available/not present, the script should use OSBundleVersion.
...
[/code]
Fix pushed.
 
Hi @MoShaikhon.

Glad to know you were success with the installation in your Lenovo Y720. Please, I would like to know:
  • Are you using the voodooPS2controller.kext or are you using voodooI2C.kext for your trackpad and keyboard?
  • Is your keyboard's numbers keypad working with the NumLock functionality?
Thanks in advance.
- I'm using the voodooPS2controller.kext.
- No, it's not working (I had to check, as I never really use the numpad)
Sorry for the late reply.
 
Last edited:
Um... one small issue, sleep isn't working in windows or linux (it did before). The computer goes to sleep, but the cpu stays on, which drains the battery. I think this might be because of clover ?
 
All of a sudden Windows 10 won't boot from Clover and its boot entry is gone from BIOS.
 
Last edited:
I'm trying to install Mojave to my Lenovo y520-IKBN as per your guide and the linked bootable installer guide but sadly i ran into troubles. I cannot reach the installer because i get a panic at the black loading screen before it. I tried to figure out the verbose text myself, but i have no understanding of what it means. Is there anything i can do? I hope i edited my profile as per rules and provided the required files (Image of the verbose text and my EFI/Clover). Thank you!
 

Attachments

  • EFI, Clover.zip
    2.8 MB · Views: 68
  • IMG_0251.JPG
    IMG_0251.JPG
    6.4 MB · Views: 98
I'm trying to install Mojave to my Lenovo y520-IKBN as per your guide and the linked bootable installer guide but sadly i ran into troubles. I cannot reach the installer because i get a panic at the black loading screen before it. I tried to figure out the verbose text myself, but i have no understanding of what it means. Is there anything i can do? I hope i edited my profile as per rules and provided the required files (Image of the verbose text and my EFI/Clover). Thank you!

You will get a better panic report with the KernelToPatch entries from guide plists:
https://www.tonymacx86.com/threads/guide-booting-the-os-x-installer-on-laptops-with-clover.148093/
 
I'm trying to install Mojave to my Lenovo y520-IKBN as per your guide and the linked bootable installer guide but sadly i ran into troubles. I cannot reach the installer because i get a panic at the black loading screen before it. I tried to figure out the verbose text myself, but i have no understanding of what it means. Is there anything i can do? I hope i edited my profile as per rules and provided the required files (Image of the verbose text and my EFI/Clover). Thank you!

You should probably try removing these kexts from the Clover EFI and try again:

ACPIBatteryManager.kext (not necessarily needed for setup)
AppleALC.kext (not needed for setup)
RealtekRTL8100.kext (RealtekRTL8111.kext is used for ethernet on the Y520)
SATA-unsupported.kext (I don't see a reason for using this kext)
USBInjectAll.kext (All USB ports are supposed to be working using the config_install.plist and later complete config.plist from the guide/github)

You don't necessarily need them for booting the setup and some aren't even used in the guide at all.
 
Status
Not open for further replies.
Back
Top