--OUT OF DATE--submitted by CrayCJ to hackintosh [link] [comments]
OpenCore AMD DualBoot Hackintosh! This would absolutely not have been possible without this community and especially Khronokernel! Many, many thanks - this is my first Hackintosh and self-built PC!! :D
ComponentsSee also: OpenCore config below!
Not tested yet
Advice for interested people
My Hackintosh configuration
My process (only successful part)(You'll need 3 USB sticks! 2 with at least 4GB, 1 with at least 8GB. I am not sure, whether the Linux Part is really necessary, or if the partitioning can also be done from the macOS or Win10 stick...)
A) The basic build
B) Creating the OpenCore Stick
C) Created bootable Linux stick and made partitions on my internal SSD for dual boot (I was recommended this procedure here), install macOS:
E) Created Windows:
My setup!submitted by Shirt_Shanks to hackintosh [link] [comments]
Introduction:I realise build guides are a dime a dozen, but it’s always reassuring to see one by someone who’s used a combination of components as similar to yours as possible, and even more so when that someone happens to be a newbie. So here I am, with the steps I followed to get macOS Catalina up and running on the tower I’d built.
I’ll take this step by step, and will make an effort to avoid confusing language. Of course, if you have any questions, feel free to ask, after you’ve read the whole thing! Just bear in mind that I, too, am a novice.
Moreover, I have next to no experience with Ryzen builds, or prebuilt machines like laptops, so again, this guide is specific to modern Intel builds and chipsets. If you need help selecting components, look no further than this brilliant, concise primer by Mykola. My guide is by and large limited to the processes I followed, though I’ll try to include alternative steps for anyone that may need them.
Lastly, this guide may be extra handy for Indian Hackintosh enthusiasts — all my components were purchased in in India itself. So if you’re a fellow Indian interested in building one of these for yourself, there’s a good chance these components are readily available for you without having to import anything. But first, some vanity shots:
My old faithful 1080p ASUS monitor, I hope to replace it with a better 1440p 100% sRGB one soon!
Pretty low-end as far as cases go, but very practical! NZXT cases are quite expensive in my country...
The innards! It's actually a lot better cable-managed than it looks here.
The innards! It's actually a lot better cable-managed than it looks here.
Before You Get Started:
You HAVE to be a computer enthusiast, and have basic knowledge of how computers work. It’s crucial that you understand that there are no shortcuts to this.
Morgonaut’s videos on YouTube are an example of what not to do — if you blindly follow what someone spoonfeeds you without truly understanding why something works the way it works, you’re setting yourself up for failure, and we won’t be able to help you because you wouldn’t be able to tell us what you’ve done.
This also applies to tonymacx86 tools like Unibeast; they take user-intervention and transparency out of a process that absolutely depends on both of those to work reliably.
Hackintoshing is a precise process to begin with, and what works for someone else may not necessarily work for you. Take the time and effort to read through every line of the more specific guides I’ll be linking further ahead, and toggle exactly what is specific to your hardware. What you don’t get, Hackintosh and its Discord channel will be happy to lend you a hand with.
Don’t be anxious! It’s an intimidating prospect when you’re doing it for the first time, but once you’ve got everything up and running, you’ll realise that the process is actually pretty straightforward.
The Hardware:The first thing you’ll need to do is, of course, build a computer, so build a computer, I did. Here are my components:
The parts that will affect your Hackintosh setup:
The Z390 motherboards don’t have native NVRAM, but there’s a workaround to emulate it. If you’re starting from scratch, this becomes an unnecessary step, so stick with the Z370 series. However if you, like me, weren’t aware of this at the time of buying your components, no stress! The workaround to emulate NVRAM support is a rather easy one.
Besides this, the other oddity you’ll notice is the Fenvi HB-1200. Here’s the deal: MacOS normally plays well only with very specific Broadcom cards for perfect WiFi and Bluetooth connectivity. So if you want AirDrop and Handoff to function properly on your Hackintosh build, you’ll need one of these things. Installing them is very easy, though, and if you’re unable to find one locally, AliExpress sells these in great abundance. It’ll take about 2-3 weeks to reach you, though. Until then, your only option for internet connectivity is via Ethernet. A more high-end alternative of the same is the Fenvi T919.
Finally, macOS has no built-in framework for controlling the RGB lighting in your system. If you want to control the lighting via your motherboard’s RGB header, you’ll have to do it via BIOS. If even this option isn’t available, a hardware remote is your best bet*, I’m using this one.
*You can mess with your RGB settings via Windows and have your settings persist when you reboot into macOS, but for this, Windows will have to be installed on a partition in the same disk as macOS. This often causes a number of complications and is generally not recommended.
We now move on to the nitty and the gritty, the part of this process that puts the “Hack” in Hackintosh:
Setting up macOS Catalina:Prerequisites:
The recommended method for getting started with a Hackintosh build — the vanilla method — involves having an actual Mac device around. It gives you the simplest, most reliable, and trustworthy way to download a fresh copy of macOS Catalina, straight from Apple’s own App Store. The download itself is free and won’t cost you anything. If you don’t own a Mac, borrow a friends’ — this way, you can also natively format your Catalina USB drive to a Mac-compatible format using macOS’ built-in tools, rather than having to rely on third-party methods.
With this in mind, the guide I’d followed is the OpenCore Vanilla Desktop Guide, once again by the brilliant Mykola. I’ll be referring to this multiple times, and will straight up link directly to it where I don’t have anything specific to my experience to add. Remember, my guide is sort of like an addon to Mykola’s Vanilla guide, and is NOT meant to act as a replacement.
A proven alternative method for those don’t have access to a Mac is Midi Jari’s Internet Install method. I have no experience with this, though, so I can’t really comment on what this entails. But it’s also a trusted method and has produced successful results for many folks here, so don’t stress out unduly! It’s just not something that I personally have used, given I simply borrowed my girfriend’s MacBook for this purpose.
The only other hardware you’ll need is a 16GB USB drive. Until macOS Mojave — the previous version — 8GB USB drives were enough to hold macOS, but unfortunately, Catalina is slightly larger than 8GB, so 16GB drives are the new minimum.
A Brief Prologue:
Here’s a grossly oversimplified primer on how macOS (or any OS, really) boots on a Hackintosh system:
BIOS —> Bootloader —> macOS
Similarly, let’s take this step by step.
BIOS:First, your motherboard’s BIOS fires up. This is normally where the “Gigabyte” or “Asus” or whichever else company’s logo pops up, depending on your motherboard’s make. Here, repeatedly tapping on a button — which can vary from manufacturer to manufacturer — should take you to your BIOS’s settings. This is where your setup process begins.
MacOS requires a specific set of BIOS settings to be toggled, which can be a little daunting for first timers. Luckily, Mykola’s got your standard BIOS settings covered in his guide, so simply reset your BIOS to its optimised defaults, and make the necessary changes he’s highlighted here.
Once this is done, we move on to the big one:
The Bootloader, OpenCore:The bootloader is the key to achieving a successful Hackintosh build, and this is where most of your efforts will be directed.
Ordinarily, on most Windows computers and actual Macs, the bootloader is invisible; you wouldn’t even know it exists beyond the existence of the loading screen. Given we’re off the beaten path, we will need to use a custom bootloader put together by several smart people in the community. This custom bootloader is what will let us boot macOS on non-Apple hardware.
Until very recently, Clover had been the standard bootloader for all Hackintosh builds. It’s well-documented, has a GUI that you’re used to operating, and comes with thousands upon thousands of guides and years of documented online support. It is also, however, nearing the end of its life. A lot of its code is deprecated, unmaintained, and can break anytime.
This brings us to OpenCore — a spanking new bootloader that many believe is the future of Hackintoshing. It’s designed to be a whole lot more flexible than Clover, and uses more modern protocols to offer a far stronger degree of futureproofiness — and dramatically faster boot times, to boot. There’s certainly a lot about it I don’t fully understand, but it’s been painstakingly documented over here in acidenthera’s GitHub page, so do pop over and give it a read if you’re interested.
It’s in the final stages of beta testing — v0.5.3 at the time of writing this — and aims to be released as a stable, public v1.0 build in the coming weeks. Given it’s so close to release, as long as you’re not running a laptop or a prebuilt, OpenCore will run just fine for you once properly setup. Seriously — if you’re not scared of a more transparent process where you have far more control over what your bootloader will end up doing, OpenCore is the way to go.
At this juncture, I’ll simply redirect you to Mykola’s guide, full on. It summarises the process of setting up OpenCore as simply as possible without skimping on important details.
I do, however, have three points to add:
My OpenCore EFI folder structure:Here, you can also have a look at my drivers and kexts. You’ll also notice a file called SSDT-UIAC.aml which isn’t explicitly present in Mykola’s writeup, but is something every Hackintosh user needs to build for themselves. This particular file is called a custom SSDT, and I’ll get into it in just a moment.
EFI ├── APPLE │ ├── EXTENSIONS │ │ └── Firmware.scap │ └── UPDATERS │ └── MULTIUPDATER │ ├── Mac-BE088AF8C5EB4FA2.epm │ ├── Mac-BE088AF8C5EB4FA2.smc │ ├── MultiUpdater.efi │ ├── SmcFlasher.efi │ ├── flasher_base.smc │ └── flasher_update.smc ├── BOOT │ └── BOOTx64.efi └── OC ├── ACPI │ ├── SSDT-AWAC.aml │ ├── SSDT-EC-USBX.aml │ └── SSDT-UIAC.aml ├── Drivers │ ├── ApfsDriverLoader.efi │ ├── FwRuntimeServices.efi │ └── HFSPlus.efi ├── Kexts │ ├── AppleALC.kext │ │ └── Contents │ │ ├── Info.plist │ │ └── MacOS │ │ └── AppleALC │ ├── IntelMausi.kext │ │ └── Contents │ │ ├── Info.plist │ │ └── MacOS │ │ └── IntelMausi │ ├── Lilu.kext │ │ └── Contents │ │ ├── Info.plist │ │ └── MacOS │ │ └── Lilu │ ├── SMCProcessor.kext │ │ └── Contents │ │ ├── Info.plist │ │ └── MacOS │ │ └── SMCProcessor │ ├── SMCSuperIO.kext │ │ └── Contents │ │ ├── Info.plist │ │ └── MacOS │ │ └── SMCSuperIO │ ├── USBInjectAll.kext │ │ └── Contents │ │ ├── Info.plist │ │ └── MacOS │ │ └── USBInjectAll │ ├── VirtualSMC.kext │ │ └── Contents │ │ ├── Info.plist │ │ └── MacOS │ │ └── VirtualSMC │ ├── WhateverGreen.kext │ │ └── Contents │ │ ├── Info.plist │ │ └── MacOS │ │ └── WhateverGreen │ └── XHCI-unsupported.kext │ └── Contents │ └── Info.plist ├── OpenCore.efi ├── Tools │ └── Shell.efi └── config.plistYou can find my config.plist over here, but once again, be warned — no good ever came off copy-pasting without at least some superficial understanding of the flags I’ve toggled in my .plist.
Once you’ve got all of this sorted, your OpenCore folder is now ready!
Follow the instructions here to make yourself a USB drive to install macOS Catalina from (assuming you’ve already downloaded it from the App Store and quit the installer). Once the process is complete — it should take about 20 minutes — use this super handy Python script from Corp Newt to mount the EFI folder in your USB drive. Then simply copy the contents of your OpenCore folder to the EFI folder.
The final structure should be similar to the folder tree I’d shared above.
Installing macOS:This is very straightforward. Boot from your USB drive, and when you arrive at the OpenCore selection menu, pick the partition in which your macOS installer is sitting.
It is at this point that many first timers may see an error, indicating that you’ve overlooked something while setting up your OpenCore configuration. Don’t stress! Take a picture of the error you’re seeing, keep your hardware configuration and your EFI folder’s contents handy, and approach the subreddit or the Discord channel for help. It’s more often than not just a couple flags that need to be sorted out, after which you’ll be good to go.
Once you arrive at your macOS installer, before you do anything, find Disk Utility in it (it’s in one of the menus up top) and format your storage drive to Mac OS Extended (Journaled). Once that’s done, go right ahead and install the OS onto your disk!
There’s only a few things left to do after. One of them, Mykola’s already outlined — set up your NVRAM emulation if your motherboard doesn’t have native NVRAM. The other is setting up your custom SSDT. Let me explain why this is necessary.
Setting up your Custom SSDT:MacOS, unlike Windows, has an interesting limitation: you’re limited to a maximum of 15 USB ports, including the internal ones sitting on your motherboard for Bluetooth connectivity, etc. To make matters worse, if you have a USB 3.0/3.1 port that’s backwards compatible with USB 2.0 connectors, to the OS, that one physical port counts as two ports — one for 3.0/3.1, one for 2.0. So even if your motherboard has exactly 15 physical USB ports, if even one of them is USB 3.0, you’re likely above the limit.
A second problem is, when you install macOS on a motherboard whose firmware isn’t specifically written for supporting macOS, it gets the placement of your USB ports wrong. So your super high-speed USB 3.0 port may not even recognise a USB 3.0 device plugged into it. This may also cause issues with your Hackintosh facing weird sleep/wake issues, among others.
This is where the USBInjectAll kext* comes in. If you’ve got it enabled, it’ll force macOS to “see” all the USB ports it possibly can, including ones that don’t physically exist on your motherboard. This isn’t a solution to get all your ports working, though — this shoots you well beyond the 15 port limit (you’ll likely see around 30 ports, instead), and will more often than not cause more problems than it fixes. This brings us to the custom SSDT — this file is what “talks” to UsbInjectAll, telling it which ports to inject and which ones to not bother injecting. Once you setup your SSDT file properly, you’ll have eliminated all the ports that don’t actually exist, or that you don’t intend to use, to bring the total number of ports down to 15, or lower. After this, macOS will communicate with your motherboard’s USB ports perfectly, the way you’d want it to.
*Some motherboards, such as mine, will require UsbInjectAll.kext to be accompanied by the XHCI-unsupported.kext for it to work properly.
Here’s another super handy Corp Newt Python script to very quickly map your USB ports. If you want a clearer understanding of what USB mapping is all about, I recommend this guide for newbies, and this one for people who want an even deeper dive into the subject.
Corp Newt’s script actually provides you with an alternative — once you’ve mapped your USB ports, you can either generate your custom SSDT file and place it in your ACPI folder the way I have, or you can generate an all-new kext called USBMap that will replace both the USBInjectAll kext and your SSDT file (you’ll still need XHCI-unsupported, though). USBMap is the more recommended method, as USBInjectAll isn’t maintained all that frequently, and could stop working properly after a macOS update.
Once you set up USBMap.kext (or your custom SSDT), you’ll never need to do it again for your motherboard, so be patient, set it up, and then forget about it.
And that’s it!You should have yourself a Hackintosh that just works. If you don’t, there’s a detailed post-install section in Mykola’s guide that should see you through common problems that occur once everything is up and running. If it doesn’t, you’re always welcome to share your troubles with us at the Discord channel, or in the subreddit. Just make sure that what you’re facing is a Hackintosh-related issue, rather than a macOS bug that’s all Apple’s fault. Enjoy!
Credits:I really can’t thank enough all the people who patiently sat down and helped me through my various rookie mistakes and anxieties. There are certainly more names — forgive my terrible retention — but among others, u/dracoflar, u/CorpNewt, and u/fewtarius have been invaluable in teaching me how to approach the entire process and in answering all the questions I had about the same. Thanks a billion, y’all.
"One of the nice things about GSettings is that it is a high-level API with backends for various native configuration systems. So, if you ever get around to porting your application to OS X or Windows, your application will automatically use the expected platform API to store its settings (the registry on Windows, and plists on OS X).First of all create ... gschema. The file name is important if you just leave gschema.xml then it wont work. Before gschema.xml you should specify something like the host address of your project in reverse order. So, for example, if my project located here https://gitlab.com/gavr123456789/krontechgtk then my gschema file should be named like this: com.gitlab.gavr123456789.krontechgtk.gschema.xml I think you understand the pattern. (by the way, your project should be called in a similar way)
And even if your application will never be ported to those platforms, the dconf backend that is used on Linux has powerful features such as profiles and locks that let system administrators configure your application without you having to worry about it."
I think it's all clear. Now we need our application to be able to use this file. To do this, the scheme must be compiled in binary format(to optimize the speed of working with it, because it will only be read by programs and not by people)
381 Horizontal position The saved horizontal position of main window 380 Vertical position The saved vertical position of main window
gnome = import('gnome') gnome.compile_schemas(build_by_default: true,depend_files: 'com.gitlab.yournick.yourappname.gschema.xml') install_data('com.gitlab.yournick.yourappname.gschema.xml',install_dir: join_paths(get_option('datadir'), 'glib-2.0', 'schemas'),rename: meson.project_name() + '.gschema.xml',)(Don't forget to make a subdir ('data') at the top level)
#!/usbin/env python import os import subprocess install_prefix = os.environ['MESON_INSTALL_PREFIX'] schemadir = os.path.join(install_prefix, 'share/glib-2.0/schemas') if not os.environ.get('DESTDIR'): print('Compiling the gsettings schemas ...') subprocess.call(['glib-compile-schemas', schemadir])As you can see, we just call the glib-compile-schemas command from here with the directory argument that we get from the Meson environment variable.
var settings = new GLib.Settings("com.gitlab.gavr123456789.krontechgtk"); int pos_x = settings.get_int("pos-x");Now if you run your app it will crash, because the scheme will not be detected(because we havent installed it yet). To avoid this, set the environment variable like this: SETTINGS_SCHEMA_DIR=build/data/ ./build/com.gitlab.gavr123456789.krontechgtk
their team has no idea what the setuid/setgid permissions are!How did they ran Installer with root permissions then?
you cannot specify checksums for a package like you can with CydiaAfter speaking with their team, there are checksum checks. Also, less chance to screw up (instead of "more") as by default you cannot install untested packages (unless you disable the option)
complicatedMaking an Installer repo gives you a full package management tool, you visit the website, enter the key and you can upload packages, refresh the repo with a few clicks. Cydia repos need you to manually run perl scripts to scan packages one by one and then upload the new files manually by FTP or something (depending on your repo).
Since this can be used for any iOS 10 version (and 9, but let's not make it too difficult), any "iOS 10.2" should refer to "targetVersion" (or so) and all "10.2.1"'s should refer to the currently signed version 🤔 Since 10.2.1 might be the final with a compatible SEP, we could just note it beforehand edit We should note beforehand that downgrading from 10.2.1 to 10.2 will keep Touch ID functional, but downgrading to 10.0.x and 10.1.x will result in the loss of this functionality for Touch ID devices.note: we only needed terminal B once, sorry for confusing y'all :D
sudo /Applications/Install\ macOS\ High\ Sierra.app/Contents/Resources/createinstallmedia --applicationpath /Applications/Install\ macOS\ High\ Sierra.app --volume /Volumes/UntitledI then downloaded Clover_v2.4k_r4334 from sourceforge.net and run and customised settings with these options:
.Preparing to Install OSX
.Mulltiboot (Installing Windows)
.** Problems I ran into and their Solutions **
Library to handle Apple Property List format files in binary or XML: ms: summary refs log tree commit diff stats: diff options. context: space: ... AUTOMAKE_OPTIONS = foreign. ACLOCAL_AMFLAGS = -I m4. SUBDIRS = libcnary src include tools test docs + if HAVE_CYTHON . SUBDIRS += cython. endif + if BUILD_FUZZERS. SUBDIRS += fuzz. endif. diff --git a/cython/Makefile.am b/cython/Makefile.am index ... plistutil allows to convert a file in Property List format from binary to XML format or vice-versa. Options-i, --infile FILE. Input FILE to convert from. If this argument is omitted or - is passed as filename, plistutil will read from stdin. -o, --outfile FILE. Output FILE to convert to. If this argument is omitted or - is passed as filename, plistutil will write to stdout.-f, --format [bin ... Offers Two-Mode Scanning Options that Allows to Easily View ... It stores the complete data in PST format, which includes the data of different mailbox items like emails, tasks, calendars, etc. The file extension of PST is a binary file format that is exclusively designed to save email information in particular order. The latest version of Outlook generates a Unicode PST format that can ... A rails plugin to use the .plist format to return binary plists - jeena/plistifier Available options for this command; json or xml.This does not only control the display format of binary property lists, but also for json and xml files. If the option is set to json, property lists in xml format will be displayed as json as well (but the format used when saving will be preserved).. Change the plist format used when saving property lists: The best OST to PST converter software is SysTools, an all-in-one utility for Windows systems that ensures full data conversion from OST files such as emails, calendars, contacts, notes, and tasks into PST format. It allows for batch conversion, file migration along with attachments, selective email export, file scanning and previewing, and decryption of encrypted OST file. I’ve detailed these and other free options in the video below. If you’re a developer you’ve got a lot of options for free editing of PIST files. I wrote an article about Open-Source code & tools for PLIST editing of both binary & XML format data. Plistinator, by Smithsoft. Smithsoft builds apps and games: and we use PLIST files a lot! One day we needed a cross platform PLIST editor ... The binary plist format seems like a good choice. Unfortunately plistlib doesn't do binary files, so step right up PyObjC. (Segue: I'm very open to any other thoughts on how to accomplish live search. I already pared down the data as much as possible, including only displaying enough results to fill the window with the iPhone keyboard up, which is 5.) Unfortunately, although I know Python and ... Home » Blog » App Development » How To: Working with Plist in Swift. How To: Working with Plist in Swift Written by Reinder de Vries on August 6 2020 in App Development, iOS, Swift. A property list, commonly abbreviated as plist, is an XML file that contains basic key-value data.You can use a plist in your iOS apps as a simple key-value data store. Let’s find out how that wor This changes the plist in XML back to binary format. Once it’s in binary format it will not be editable with a standard text editor again, unless you convert it back into XML, or use Xcode’s built-in property list editor tool.The modified binary list files can then be placed back into various system level or app level directories as necessary.
[index]          
The Best Candlestick Patterns to Profit in Forex and binary - For Beginners trading forex, forex strategy, forex,Online Trading Strategy #Candlestick_Pattern... add new ready indicators to your MetaTrader and easy way to connect with iQBot watch the full video to see how to edit indicators to add include file inside any indicator Whatsapp: https://wa.me ... Presenter: James Ramelli with AlphaShark Trading Learn how to use binary options to collect weekly income, trade non-directional breakouts and other more com... With binary options, besides options trading and enjoying yields of up to 92% binary options trading - Conservative binary options trading strategy introduction to binary options trading. Freedom ... I have been receiving a lot of messages from people saying that I am into trading and that I am trying to get other into this trading business. I do not trad... Trusted spots blog https://trustedspots1.blogspot.com/?m=1 To register a free account on desktop or laptop, click here https://bit.ly/3ghvlt5 To register a f... binary options format binary options free binary options free no deposit bonus binary options edge binary options europe binary options explained binary options exchange binary options expert ... BELAJAR TRADING ONLINE BERSAMA SAYA (DIMANAPUN DAN KAPANPUN ANDA DAPAT BELAJAR LANGSUNG) http://www.kursustrading.com http://www.kursustrading.com Instagram ... Binary options are form of options trading based on a yes or no question. Try binary options today at: https://www.wallstreetsurvivor.com You're either right... Form panduan Open Posisi All Pair Binary Option Olymptrade http://ugm.id/opsignal4g The Secret of SO 532 - by Signal 4G https://youtu.be/jhvjO9d-Wm8 Salam PR...