RehabMan Posted February 6, 2018 Share Posted February 6, 2018 there was a discussion on this probably in late 2016, perhaps since then the behavior has been changed. Yes, definitely new behavior since then. 1 Link to comment Share on other sites More sharing options...
chris1111 Posted February 6, 2018 Share Posted February 6, 2018 bad news the package does not work in Snow Leopard and Lion for UEFI and ESP 4399 and 4400 It installs the EFI folder on the root Disk instead of mounting the EFI partition 1 Link to comment Share on other sites More sharing options...
bronxteck Posted February 6, 2018 Share Posted February 6, 2018 yeah thats the same issue I was having before I had to select and install clover to my first osx partition for it to install clover to EFI volume http://www.insanelymac.com/forum/topic/284656-clover-general-discussion/?p=2580721 Link to comment Share on other sites More sharing options...
Smallersen Posted February 6, 2018 Share Posted February 6, 2018 Also on 10.13.3: Clover 4400 ends with installation error. Install Clover in the ESP does no longer work in 4400. Never had this issue before. Just possible to install EFI folder on the system partition. Updating EFI on EFI partition by hand is kind of risky. 4398 still worked. Link to comment Share on other sites More sharing options...
Zenith432 Posted February 6, 2018 Share Posted February 6, 2018 So would you recommend updating all my older patches to include the full name, for a minuscule boot speed improvement?It's not about speed improvement. It's because some bundle ids are substrings of other bundle ids. This was discovered on AppleIntelKBLGraphics AppleIntelKBLGraphicsFramebuffer So if you want to patch AppleIntelKBLGraphics and use partial name, your patch is also applied to AppleIntelKBLGraphicsFramebuffer and puts you at risk of a spurious incorrect patch (this actually happened). If bundle-id is not a substring of another bundle-id - you can continue to use partial name. If it's a substring of another bundle-id use full bundle name for exact match. 4 Link to comment Share on other sites More sharing options...
RehabMan Posted February 6, 2018 Share Posted February 6, 2018 It's not about speed improvement. It's because some bundle ids are substrings of other bundle ids. This was discovered on AppleIntelKBLGraphics AppleIntelKBLGraphicsFramebuffer So if you want to patch AppleIntelKBLGraphics and use partial name, your patch is also applied to AppleIntelKBLGraphicsFramebuffer and puts you at risk of a spurious incorrect patch (this actually happened). If bundle-id is not a substring of another bundle-id - you can continue to use partial name. If it's a substring of another bundle-id use full bundle name for exact match. Bottom line: it is safer (therefore, recommended) to use the complete bundle-id for Name specifications in KextsToPatch. 1 Link to comment Share on other sites More sharing options...
mhaeuser Posted February 6, 2018 Share Posted February 6, 2018 Bottom line: it is safer (therefore, recommended) to use the complete bundle-id for Name specifications in KextsToPatch.Why is StrStr used rather than StrCmp? Link to comment Share on other sites More sharing options...
apianti Posted February 6, 2018 Share Posted February 6, 2018 Why is StrStr used rather than StrCmp? For partial matches....? Why is it not StriStr or StriCmp? Link to comment Share on other sites More sharing options...
mhaeuser Posted February 6, 2018 Share Posted February 6, 2018 For partial matches....? Why is it not StriStr or StriCmp?I know what the functions do, I asked for the choice... Why support partial matches? Link to comment Share on other sites More sharing options...
apianti Posted February 6, 2018 Share Posted February 6, 2018 I know what the functions do, I asked for the choice... Why support partial matches? That was my point, I don't know. Why would it partially match exact case? No clue, I didn't write it.... I guess to make it easier, but I think it should be StriCmp, to match the full string case insensitive. Link to comment Share on other sites More sharing options...
RehabMan Posted February 6, 2018 Share Posted February 6, 2018 Why is StrStr used rather than StrCmp? StrStr is used if the Name specified does not have any '.' characters. I would bet that was done to enhance backward compatibility. For partial matches....? Why is it not StriStr or StriCmp? Typically, we accept case sensitivity. Link to comment Share on other sites More sharing options...
Zenith432 Posted February 6, 2018 Share Posted February 6, 2018 (edited) Why support partial matches? What difference does it make anymore? It's needed for backward compatibility now. Removing it will break almost all existing config.plist. The case sensitivity I think is dictated because Apple bundle-ids are case-sensitive. Reference for build-ids. Edited February 6, 2018 by Zenith432 Link to comment Share on other sites More sharing options...
apianti Posted February 6, 2018 Share Posted February 6, 2018 StrStr is used if the Name specified does not have any '.' characters. I would bet that was done to enhance backward compatibility. Typically, we accept case sensitivity. I understand, but that doesn't solve the issue. Because as brought up before there are some that don't have '.' characters and are sub-strings of other bundle-ids. I have no problem with backwards compatibility, but this should be deprecated, spit out a warning, and eventually removed. It's not really beneficial to remain backwards compatible at risk of bugs. What difference does it make anymore? It's needed for backward compatibility now. Removing it will break almost all existing config.plist. The case sensitivity I think is dictated because Apple bundle-ids are case-sensitive. Haven't verified this, just guessing. I am not sure if you notice but config.plist is broken by changes constantly. I think it's best to just match the whole bundle-id. I doubt very much they are case sensitive, why would they want two drivers with the same but different cased bundle-id? That would be really confusing. EDIT: Reference for build-ids. So they are case sensitive. Then we should just use StrCmp for all, and deprecate and eventually remove the previous partial matching. Link to comment Share on other sites More sharing options...
Sherlocks Posted February 6, 2018 Share Posted February 6, 2018 @Slice in latest clover package, always force to check. because package always remove this file this driver must be use to boot snow leopard and lion. its important. rehabman also revert this driver in package. no need this before(check) in old package. i always checked before after fresh install can we consider again? https://github.com/RehabMan/Clover/commit/541fa44f4de26b75e32a33d282e90d826288481c my driver list 0:149 0:002 Loading apfs.efi status=Success 0:152 0:003 - driver needs connecting 0:152 0:000 Loading AppleImageCodec-64.efi status=Success 0:152 0:000 Loading AppleKeyAggregator-64.efi status=Success 0:152 0:000 Loading AppleUITheme-64.efi status=Success 0:152 0:000 Loading DataHubDxe-64.efi status=Success 0:153 0:000 Loading EmuVariableUefi-64.efi status=Success 0:155 0:001 EmuVariableUefi Initialize: VariableCommonInitialize = Success, orig services stored, install gEmuVariableControlProtocolGuid = Success 0:155 0:000 Loading Fat-64.efi status=Success 0:155 0:000 - driver needs connecting 0:155 0:000 Loading FirmwareVolume-64.efi status=Success 0:155 0:000 Loading FSInject-64.efi status=Success 0:155 0:000 Loading HFSPlus.efi status=Success 0:155 0:000 - driver needs connecting 0:155 0:000 Loading HPFanReset.efi status=Success 0:246 0:091 HPFanReset: successfully set fan control to BIOS mode. 0:246 0:000 Loading OsxFatBinaryDrv-64.efi status=Success 0:246 0:000 Loading SMCHelper-64.efi status=Success 0:248 0:001 Loading AptioMemoryFix.efi status=Success 0:248 0:000 3 drivers needs connecting ... 0:248 0:000 PlatformDriverOverrideProtocol not found. Installing ... Success 0:248 0:000 HFS+ driver loaded 0:248 0:000 APFS driver loaded package now touch only OsxFatBinaryDrv-64 when install clover. Link to comment Share on other sites More sharing options...
RehabMan Posted February 6, 2018 Share Posted February 6, 2018 @Slice in latest clover package, always force to check. because package always remove this file 스크린샷 2018-02-07 오전 12.48.49.png this driver must be use to boot snow leopard and lion. its important. rehabman also revert this driver in package. no need this before(check) in old package. Yeah, I wasted at least a few hours of my life determining why SL 10.6.8 failed to boot after installing the latest Clover. I didn't see any reason to remove this efi driver as it is needed by Lion/SL (due to kexts being 32-bit/64-bit), so I reverted the change in my Clover build (I don't like breaking things that used to work for no good reason). 1 Link to comment Share on other sites More sharing options...
Sherlocks Posted February 6, 2018 Share Posted February 6, 2018 Yeah, I wasted at least a few hours of my life determining why SL 10.6.8 failed to boot after installing the latest Clover. I didn't see any reason to remove this efi driver as it is needed by Lion/SL (due to kexts being 32-bit/64-bit), so I reverted the change in my Clover build (I don't like breaking things that used to work for no good reason). Right. Me too. I spent some times to find reason.Hope revert this file back. Thank you for reason with commit. 나의 LG-F800S 의 Tapatalk에서 보냄 Link to comment Share on other sites More sharing options...
apianti Posted February 6, 2018 Share Posted February 6, 2018 Yeah, that driver should not have been modified/removed from installer, unless we are saying that there is no longer support below ML? I don't think that's the case quite yet. @Sherlocks or Philip, Can one of you two please revert that change and put the driver back in the installer? Also is there any way to further group the drivers together under more types, like grouping all the AptioFixes and only allowing one to be picked, or drivers needed for SL/Lion, Graphics, Input, etc. Link to comment Share on other sites More sharing options...
RehabMan Posted February 6, 2018 Share Posted February 6, 2018 Right. Me too. I spent some times to find reason. Hope revert this file back. Thank you for reason with commit. 나의 LG-F800S 의 Tapatalk에서 보냄 And that particular change was especially hard to find due to it being buried in an unrelated commit: "Book may have desktop CPU". I *might* have used some four letter words when I found that! 1 Link to comment Share on other sites More sharing options...
apianti Posted February 6, 2018 Share Posted February 6, 2018 And that particular change was especially hard to find due to it being buried in an unrelated commit: "Book may have desktop CPU". I *might* have used some four letter words when I found that! Are you serious???? Jesus. That's a terrible message for any commit, like what on Earth does that mean? There is no commit review feature on sourceforge without implementing very complex hooks methods, at least I don't think. Maybe it may be time to go over to github so commits can be reviewed.... I don't know though, that's a lot of work... EDIT: You can go to a file and click history in the upper right on sourceforge and it will tell you every time the file was changed. That can make it easier to trace a change you know where it is. 2 Link to comment Share on other sites More sharing options...
Philip Petev Posted February 6, 2018 Share Posted February 6, 2018 Yeah, that driver should not have been modified/removed from installer, unless we are saying that there is no longer support below ML? I don't think that's the case quite yet. @Sherlocks or Philip, Can one of you two please revert that change and put the driver back in the installer? Also is there any way to further group the drivers together under more types, like grouping all the AptioFixes and only allowing one to be picked, or drivers needed for SL/Lion, Graphics, Input, etc. Done in r4402. EDIT: sorry, my bad, it's r4403. Forgot that two packages with the same name (identifier) can't exist in the distribution. EDIT2: can't believe I made such stupid mistake... r4404 on the way. Link to comment Share on other sites More sharing options...
smolderas Posted February 6, 2018 Share Posted February 6, 2018 Three commits just for one line in a script!? Are you kidding? Link to comment Share on other sites More sharing options...
Slice Posted February 6, 2018 Share Posted February 6, 2018 @Slice in latest clover package, always force to check. because package always remove this file And now I force to uncheck this driver because I install for 10.11+ systems. It must be optional! We should check it by default but not mandatory. 2 Link to comment Share on other sites More sharing options...
Sherlocks Posted February 6, 2018 Share Posted February 6, 2018 And now I force to uncheck this driver because I install for 10.11+ systems. It must be optional! We should check it by default but not mandatory. So, if user has this driver in folder, can clover package check whether exist? Then if there is file, skip remove.This process shown case "fat-64.efi". I tested this file with package. I have this file and install clover. Still i have fat-64.efi. I didnt touch any uefi64 entry when install clover. Can you consider like fat-64, aptiomemoryfix, aptiofix series process? 나의 LG-F800S 의 Tapatalk에서 보냄 Done in r4402. EDIT: sorry, my bad, it's r4403. Forgot that two packages with the same name (identifier) can't exist in the distribution. EDIT2: can't believe I made such stupid mistake... r4404 on the way. @Philip PetevI have a question. If i select some uefi64 driver in clover package when install clover and installed clover. Next time, clover package again, clover package remember i selected uefi64 driver. If i want to cleanup option like after install fresh macos. Where is store that i selected option in MacOS partition? Thanks in advance 나의 LG-F800S 의 Tapatalk에서 보냄 Link to comment Share on other sites More sharing options...
apianti Posted February 6, 2018 Share Posted February 6, 2018 I'm confused, why is it just not checked by default if there was no previous installation? There is some sort of previous installation information somewhere isn't there? As I recall there is a record of the options selected for the installer in the OS somewhere. If not, would be fairly easy to create one. Then, if there is previous install, check the driver exists, if exists then check the box, and remove the driver if then unchecked. Done in r4402. EDIT: sorry, my bad, it's r4403. Forgot that two packages with the same name (identifier) can't exist in the distribution. EDIT2: can't believe I made such stupid mistake... r4404 on the way. Need that git commit --amend! Haha! Three commits just for one line in a script!? Are you kidding? It happens, I do this all the time. 1 Link to comment Share on other sites More sharing options...
Philip Petev Posted February 6, 2018 Share Posted February 6, 2018 @Philip Petev I have a question. If i select some uefi64 driver in clover package when install clover and installed clover. Next time, clover package again, clover package remember i selected uefi64 driver. If i want to cleanup option like after install fresh macos. Where is store that i selected option in MacOS partition? Thanks in advance 나의 LG-F800S 의 Tapatalk에서 보냄 It's /Library/Preferences/com.projectosx.clover.installer.plist. 1 Link to comment Share on other sites More sharing options...
Recommended Posts