dreamwhite / bugtracker

Bugtracker repository
GNU General Public License v3.0
1 stars 0 forks source link

How do I clone AppleALC and how do I build it? #21

Closed 5T33Z0 closed 2 years ago

5T33Z0 commented 2 years ago

I tried to follow your guide since I need to create a custom Layout so I can get the lineout of my Docking station to work. But I don't understand how to clone the AppleALC repo and how to build it from source.

When I just download the "master" folder from the AppleALC repo I don't see any .command or .cpp or similar to start the compilation process.

Could you expand the description to make it more noveice friendly?

Thanks

dreamwhite commented 2 years ago

Good afternoon and thank you for reaching me on this repo. So I'll try to sum up the operations in order to build AppleALC from source.

I've already explained the building steps here but basically:

dreamwhite commented 2 years ago

@5T33Z0 any update? Can I close this issue?

5T33Z0 commented 2 years ago

Compiling fails. But I am currently on vacation so I can't test it. I'll report details next week.

I am working on a guide for creating Layout-Ids from scratch.

dreamwhite commented 2 years ago

I am working on a guide for creating Layout-Ids from scratch.

Oh wow! I always wanted a guide for this :)

5T33Z0 commented 2 years ago

Hey there, here's the ALC Layout-ID guide I am working on: https://github.com/5T33Z0/OC-Little-Translated/blob/main/L_ALC_Layout-ID/README.md

It's long already but still work in progress. I don't knwo where to add the PinConfig to: does it go into the info.plist of PinConfig.kext, Layout.xml or Platform.xml?

Compiling still fails, but it's not my top priority right now.

dreamwhite commented 2 years ago

Hi, thank you so much for the effort you're putting in maintaining the guide, I really appreciate it! I never created an AppleALC layout-id before, therefore the only resource I'd suggest you is @F0x1c guide despite is badly text formatted :'(

5T33Z0 commented 2 years ago

I did it: ;) 90k

dreamwhite commented 2 years ago

I did it: ;)

90k

Bwoah! So you slimmed also the unnecessary patches?

5T33Z0 commented 2 years ago

I deleted all the layout.xml and platform.xml as well and only kept the ones for the Layout-ID I am using.

Unfortunately, all the entries for all other configurations were still in IOKitPersonalities of the info.plist were still present after compliling so I deleted those manually.

dreamwhite commented 2 years ago

I deleted all the layout.xml and platform.xml as well and only kept the ones for the Layout-ID I am using.

Unfortunately, all the entries for all other configurations were still in IOKitPersonalities of the info.plist were still present after compliling so I deleted those manually.

Aight. I think they can be left there without any prob. After all even if they match something the slimmed kext version won't do anything. Feel free to open a PR here for explaining additional steps for slimming the kext.

From what you wrote above, unused layout-XX.xml and platform-XX.xml needs to be deleted, except the one that is about your layout, right?

5T33Z0 commented 2 years ago

It's not a necessity to delete them, but if you are using a Codec which offers a lot of Layout-IDs (such as ALC269 for example) you can reduce the size even more by deleting the unused layout-XX.xml and platform-XX.xml files. But keep in mind that the resulting AppleALC.kext codec only works with the Layout-IDs you left.