Jump to content

Booting into safe mode or verbose mode on the Project Q Motherboard

1 post in this topic

Recommended Posts

This may already be common knowledge, and it might not be the best place to post this, but I've got a bit of a tip for anyone using the Project Q motherboard, or indeed any UEFI-enabled motherboard who wants to boot OS X into safe mode or verbose mode.

Holding shift didn't work, and neither did any of the modifier combinations that would work on an Apple machine, and since the baord doesn't rely on a software bootloader there's no way to add on any boot flags. The way round it is to boot into the UEFI shell and manually run the boot.efi bootloader (found in /System/Library/CoreServices/), adding the relevant boot flags.


1. Hit F12 after powering on to bring up the boot menu


2. Select UEFI: Built In EDK Shell


3. Find the file system with OS X installed on it. Mine is on FS1, so to get there I typed "FS1:" (no quotes) and hit enter. The way I identified it was by changing to each file system and typing "ls" to show its contents. The OS X file system will be the one with /Applications and /Library in its root, as opposed to the usual folders found in Windows


4. navigate to the correct folder by typing "cd /System/Library/CoreServices/" - capitalisation may be important if you use a case-sensitive file system.


5. Type boot.efi and add the flags you want to use to the end. A full list can be found in the link below






That's everything you need. Now you can turn on verbose mode, get into safe mode or boot into single user mode. Great if you need to troubleshoot a problem.

Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By Slice
      Since rev 4844 Vector Themes are supported and there are ready-to-use Clovy by Clovy, cesium by Slice and BGM_SVG by Blackosx.
      You may see it's structure to create own theme
      Now I want to add vector graphics support in Clover. See rev 4560 and later.
      It is not working yet but designers may begin to create Vector Themes.
      It supposed to consist of SVG elements and has design size. It will be rendered to any screen size scaled from design size.
      What application in macOS can create SVG graphics?
      Inkscape is not working in macOS 10.11+. Pity.
      LibreOffice Draw works with SVG but buggy.
      Boxy SVG cost 10$ but looks good enough. It creates the best in simplicity files and have more then enough features.
      Illustrator is good but expensive.
      How to improve SVG file?
      Clover has restricted support for SVG. It is your job to make compatible file and as small as possible to speedup rendering.
      Some helps:
      Help:Inkscape – From invalid to valid SVG Inkscape files
      From invalid to valid SVG Adobe Illustrator files
      From invalid to valid SVG files of other editors: BKchem, ChemDraw and CorelDRAW
      Help:Illustrator – Assistance with creating and saving SVG images in Adobe Illustrator that will pass W3C validation
      User:Quibik/Cleaning up SVG files manually
      Later I will write own instructions specific to Clover abilities.
      How to create SVG fonts?
      You can google to find ready-to-use SVG fonts.  I found some problems with too beaty fonts: slow rendering and overflow crash. Be careful.
      You can get ttf or otf fonts and convert them into svg by using online WEB services. Not a problem to google.
      But then I want to find a way to simplify the font to reduce a size and speedup rendering.
      You can create own font by FontForge It is opensource and available for Windows, Mac and GNU+Linux. It creates otf font which you can convert to svg font.
      Pictures from Badruzeus
    • By ludufre
      [GUIA] Correção de assinatura BIOS Insyde H2O
      Recentemente comprei um notebook Lenovo L440 pra instalar o macOS Mojave e fui substituir a placa wireless pela DW1560 porque a atual não é compatível. Descobri que existia uma whitelist de placas permitidas que as fabricantes estão adotando recentemente (no meu caso utiliza uma bios Phoenix Insyde BIOS H2O).
      Procurei em fórums de BIOS MODDING e encontrei pessoas que fizeram o patch pra mim. Só que após substituir a BIOS notei que o computador ficava apitando 5 vezes todas vez que ligava e fui me aprofundar no caso. E foi aí que descobri como resolver isso e por isso criei esse guia baseado nas informações que achei em alguns fóruns russos.
      Quando a BIOS falha no teste te integridade, algumas funcionalidades Intel AMT param de funcionar e é emitido uma sequência de 5 apitos duas vezes no boot.
      Após modificar para remover whitelist (habilitar placas WI-FI não autorizadas), destravar MSR 0xe2 (hackintosh), habilitar menu avançado, etc. a BIOS não vai passar no teste de integridade causando esse problema.
      Essa verificação de integridade é feita através da assinatura RSA do bloco da BIOS chamado TCPABIOS (mais informações abaixo) com a chave pública no formato modulus 3 também armazenada na BIOS.
      Esse bloco TCPABIOS armazena os checksums de cada volume da BIOS.
      O que faremos é gerar novos checkums para esses volumes que foram modificados, gerar um para de chaves RSA (privada e pública), assinar esse bloco com a chave privada e substituir a chave pública.
      Ferramentas necessárias
      - EFITool NE alpha 54: https://github.com/LongSoft/UEFITool/releases
      - HxD 2.1.0: https://mh-nexus.de/en/hxd/
      - OpenSSL: http://gnuwin32.sourceforge.net/packages/openssl.htm (Download -> Binaries)
      - Microsoft File Checksum Integrity Verifier (FCIV.exe): https://www.microsoft.com/en-us/download/details.aspx?id=11533
      Passo a passo
      Vamos abrir a BIOS modificada, localizar o bloco TCPABIOS e entender sua anatomia.
      1. Abra a BIOS no HxD

      (Vamos utilizar nesse guia a BIOS modificada no fórum MyDigitalLife.com pelo usuário Serg008 para o notebook Lenovo B590)
      2. Busque a palavra TCPABIOS:

      3. O bloco começa com TCPABIOS e termina com antes de TCPACPUH

      4. Anatomia:
      54 43 50 41 42 49 4F 53 48 31 38 34 61 31 31 2F
      32 36 2F 31 33 49 42 4D 53 45 43 55 52 00 FD 27
      34 2A 35 AB 41 26 39 E3 32 E5 B6 8A D6 49 5B 0B
      77 F9 82 58 48 00 00 00 CE 18 1F 00 00 00 03 00
      00 00 00 00 00 00 27 00 00 00 00 00 00 00 00 00
      00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
      00 00 00 00 00 00 00 00 00 00 00 FF FF 83 04 D4
      52 52 95 C5 D7 21 55 78 0E 5C AD 47 EE C4 3D 1D
      C1 EC 69 03 2B 51 A5 42 61 96 22 F9 7B 88 57 B7
      A8 9D D0 20 DB 5B 11 10 55 07 84 6C 62 DF FA 2F
      6A A8 43 0C 8A 40 AF 79 0D 31 DB 5A 5D C8 2F EB
      F8 7C 87 B0 A6 3D 2A 88 AE 91 9D 88 E3 AA 85 E3
      5A B3 91 7F 28 68 1F BA 92 C4 7E 10 F5 1A 7E 75
      A9 6F CE C0 4F BA FA 79 A5 98 2B 50 60 BA 09 73
      7B 03 D1 0C 3E A2 9C 44 DF E9 F2 92 34 7B
      Cinza: Nome e informações do bloco
      Vermelho: Informações dos volumes (Checksum e Cabeçalho)
      Azul: Separação da lista de volumes para a assinatura do bloco
      Verde: Assinatura do bloco TCPABIOS são os últimos 128 bytes
      Lista de Volumes:
      Cada volume tem o formato: 00 FD 27 34 2A 35 AB 41 26 39 E3 32 E5 B6 8A D6 49 5B 0B 77 F9 82 58 48 00 00 00 CE 18 1F 00 00 00 03 00 00 00 00 00
                                                      (prefixo 3 bytes + checksum 20 bytes + offset 4 bytes + tamanho do volume 6 bytes + separador do fim 6 bytes)
      Os volumes são enumerados e utilizam o primeiro byte no prefixo para isso (00 FD 27), começando do 0.
      A BIOS utilizada nesse exemplo possui somente um volume, mas no caso de mais de um volume, seria: 00 FD 27 .., 01 FD 27 ..., 02 FD 27 ...
      - Checksum é o cálculo SHA1 do volume.
      - Offset é a posição do volume dentro da BIOS. Os bytes ficam invertidos, nesse caso seria 00 00 00 48 ou seja: 48h
      - Tamanho do volume também está com os bytes invertidos, então: 1F18CEh
      Então é isso. Precisamos corrigir essas informações (checksum, offset e tamanho)
      5. Para extrair os volumes abra a BIOS com o UEFITool e veja como identificar os volumes (nosso exemplo há somente um volume, se houvessem outros estariam também dentro de EfiFirmwareFileSystemGuid):

      Na BIOS original, circulado em vermelho podemos ver o nosso volume.
      Observe que em azul temos Offset e verde o tamanho. Exatamente como verificamos acima no HxD. Já na BIOS modificada vemos que está diferente o tamanho:
      Oridinal: 1F18CEh
      Modificada: 1F12D5h (vamos precisar disso mais tarde)
      6. Vamos extrair esse volume escolhendo a opção “Extract as is...”
      7. Utilize esse comando para obter o checkum desse volume: fciv.exe -sha1 File_Volume_image_FvMainCompact.ffs

      Agora temos o checksum que é 396e0dc987219b4369b1b9e010166302ce635202
      8. Substitua as informações no bloco TCPABIOS:

      Observe que o tamanho do volume precisa ter os bytes invertidos, então se o total são 6 bytes e é 1F12D5h, fica D5 12 1F 00 00 00 no lugar de CE 18 1F 00 00 00.
      Se o offset for diferente, também realizar o mesmo procedimento invertendo os bytes.
      Checksum alterar de 34 2A 35 AB 41 26 39 E3 32 E5 B6 8A D6 49 5B 0B 77 F9 82 58 para 39 6E 0D C9 87 21 9B 43 69 B1 B9 E0 10 16 63 02 CE 63 52 02
      Faça esse procedimento para cada volume na BIOS.
      9. Agora precisamos gerar o checksum de todo o bloco TCPABIOS mas sem considerar os últimos 131 bytes, ou seja desconsiderar de FF FF 83 + 80 bytes da assinatura anterior.
      Copie para um novo arquivo no HxD e salve como tcpabios

      Utilize o comando para gerar o checksum desse bloco: fciv.exe -sha1 tcpabios

      Checksum do bloco TCPABIOS: 0da6715509839a376b0a52e81fdf9683a8e70e52
      Crie um novo arquivo no HxD e adicione 108 bytes com 00 e cole o checksum no final e salve como tcpabios_sha, ficando assim:

      10. Agora vamos gerar a chave privada RSA com modulus 3: openssl genrsa -3 -out my_key.pem 1024

      Assinar o arquivo tcpabios_sha: openssl rsautl -inkey my_key.pem -sign -in tcpabios_hash -raw > tcpabios_sign

      Agora aproveite para gerar a chave publica: openssl rsa -in my_key.pem -outform der -pubout -out my_key_pub.der

      E gerar modulus 3 da chave pública: openssl rsa -pubin -inform der -in my_key_pub.der -text -noout

      Copie e cole a chave em um arquivo de texto para utilizar daqui a pouco. Remova todos os “:” e coloque tudo em uma única linha, ficando assim:

      11.   Abra o arquivo tcpabios_sign no HxD, copie o conteúdo e substitua a assinatura no final do bloco TCPABIOS:
      12. Agora vamos localizar na BIOS o local da chave pública e substituir. Essa chave começa com 12 04 e termina com 01 03 FF e fica após o bloco TCPABBLK.
      A chave fica assim: 12 04 + 81 bytes + 01 03 FF. Faça uma busca por 01 03 FF para localizar mais facilmente. Verifique se antes dos 81 bytes tem os bytes 12 04 para ter certeza que achou.


      Agora substitua pela chave pública que ficou anotado no arquivo de texto anteriormente, ficando assim:

      Salve e está pronto. Sua BIOS está assinada e pronta.
    • By ludufre
      [GUIDE] Fix Insyde H2O BIOS signature (5 beeps on Lenovo)
      I recently bought a Lenovo L440 laptop to install the Mojave macOS and I replaced the wireless card with the DW1560 because the current one is not compatible. I discovered that there was a whitelist of enabled cards that manufacturers are adopting recently (in my case it uses a Phoenix Insyde BIOS H2O).
      I searched the BIOS Modding forums and found people who did the patch for me. But after replacing the BIOS I noticed that the computer keep beeping 5 times every time I boot. So, I went deeper into this issue and that's when I figured out how to solve it. Then I created this guide based on the information I found in some Russian forums.
      When the BIOS integrity test fails, some Intel AMT functionality stops working and a sequence of 5 whistles is issued twice at boot.
      After modifying to remove whitelist (enable unauthorized WI-FI cards), unlock MSR 0xe2 (hackintosh), enable advanced menu, etc. the BIOS will not pass the integrity test causing this problem.
      This integrity check is done through the RSA signature of the BIOS block called TCPABIOS (more information below) with the public key in modulus 3 format also stored in the BIOS.
      This TCPABIOS block stores the checksums of each BIOS volume.
      What we will do is generate new checksum for those volumes that have been modified, generate a RSA (private and public) key pair, sign that block with the private key, and replace the public key.
      Tools needed
      - EFITool NE alpha 54: https://github.com/LongSoft/UEFITool/releases
      - HxD 2.1.0: https://mh-nexus.de/en/hxd/
      - OpenSSL: http://gnuwin32.sourceforge.net/packages/openssl.htm (Download -> Binaries)
      - Microsoft File Checksum Integrity Verifier (FCIV.exe): https://www.microsoft.com/en-us/download/details.aspx?id=11533
      Step by step
      Let's open the modified BIOS, locate the TCPABIOS block and understand its anatomy.
      1. Open the BIOS with HxD

      (We will use the modded BIOS in the MyDigitalLife.com forum by the Serg008 user for the Lenovo B590 laptop in this guide)
      2. Find the word TCPABIOS:

      3. The block starts with TCPABIOS and ends before TCPACPUH

      4. Anatomy:
      54 43 50 41 42 49 4F 53 48 31 38 34 61 31 31 2F
      32 36 2F 31 33 49 42 4D 53 45 43 55 52 00 FD 27
      34 2A 35 AB 41 26 39 E3 32 E5 B6 8A D6 49 5B 0B
      77 F9 82 58 48 00 00 00 CE 18 1F 00 00 00 03 00
      00 00 00 00 00 00 27 00 00 00 00 00 00 00 00 00
      00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
      00 00 00 00 00 00 00 00 00 00 00 FF FF 83 04 D4
      52 52 95 C5 D7 21 55 78 0E 5C AD 47 EE C4 3D 1D
      C1 EC 69 03 2B 51 A5 42 61 96 22 F9 7B 88 57 B7
      A8 9D D0 20 DB 5B 11 10 55 07 84 6C 62 DF FA 2F
      6A A8 43 0C 8A 40 AF 79 0D 31 DB 5A 5D C8 2F EB
      F8 7C 87 B0 A6 3D 2A 88 AE 91 9D 88 E3 AA 85 E3
      5A B3 91 7F 28 68 1F BA 92 C4 7E 10 F5 1A 7E 75
      A9 6F CE C0 4F BA FA 79 A5 98 2B 50 60 BA 09 73
      7B 03 D1 0C 3E A2 9C 44 DF E9 F2 92 34 7B
      Gray: Name and Block Information
      Red: Volume Information (Checksum and Header)
      Blue: Separation of the list of volumes and the block signature
      Green: Signature of the TCPABIOS block are the last 128 bytes
      List of Volumes:
      Each volume has the format: 00 FD 27 34 2A 35 AB 41 26 39 E3 32 E5 B6 8A D6 49 5B 0B 77 F9 82 58 48 00 00 00 CE 18 1F 00 00 00 03 00 00 00 00 00
                                              (Prefix 3 bytes + checksum 20 bytes + offset 4 bytes + volume size 6 bytes + end delimiter 6 bytes)
      The volumes are enumerated and use the first byte in the prefix for this (00 FD 27), starting at 0.
      The BIOS used in this example has only one volume, but in the case of more than one volume, it would be: 00 FD 27 .., 01 FD 27 ..., 02 FD 27 ...
      - Checksum is SHA1 calculation of the volume.
      - Offset is the volume position within the BIOS. The bytes are inverted, in this case it would be 00 00 00 48, equals to 48h
      - Volume Size is also with the bytes inverted, then: 1F18CEh
      Then that's it. We need to correct this information (checksum, offset and size)
      5. To extract the volumes open the BIOS with the UEFITool and see how to identify the volumes (our example there is only one volume if there were others would also be inside EfiFirmwareFileSystemGuid):

      In the original BIOS, circled in red we can see our volume.
      Note that in blue we have offset and green the size. Exactly as we checked up on HxD. In the modified BIOS we see that the size is different:
      Original: 1F18CEh
      Modified: 1F12D5h (we'll need this later)
      6. Let's extract this volume to calculate the checksum by choosing the "Extract as is ..."
      7. Use this command to get the checksum of this volume: fciv.exe -sha1 File_Volume_image_FvMainCompact.ffs

      Now we have the checksum that is 396e0dc987219b4369b1b9e010166302ce635202
      8. Replace the information in the TCPABIOS block:

      Note that the volume size must have the bytes inverted, so if the total is 6 bytes and is 1F12D5h, becomes D5 12 1F 00 00 00 in place of CE 18 1F 00 00 00.
      If the offset is different, also perform the same process by inverting the bytes.
      Checksum change from 34 2A 35 AB 41 26 39 E3 32 E5 B6 8A D6 49 5B 0B 77 F9 82 58 to 39 6E 0D C9 87 21 9B 43 69 B1 B9 E0 10 16 63 02 CE 63 52 02
      Do this for each volume in the BIOS.
      9. Now we need to generate the checksum of the whole TCPABIOS block but without considering the last 131 bytes, that is to dismiss FF FF 83 + 80 bytes from the previous signature.
      Copy to a new file in HxD and save as tcpabios

      Use the command to generate the checksum of this block: fciv.exe -sha1 tcpabios

      Checksum of TCPABIOS block: 0da6715509839a376b0a52e81fdf9683a8e70e52
      Create a new file in HxD and add 108 bytes with 00 and paste the checksum at the end and save as tcpabios_hash, thus:

      10. Now let's generate the RSA private key with modulus 3: openssl genrsa -3 -out my_key.pem 1024

      Sign the file tcpabios_hash: openssl rsautl -inkey my_key.pem -sign -in tcpabios_hash -raw > tcpabios_sign

      Now enjoy to generate the public key: openssl rsa -in my_key.pem -outform der -pubout -out my_key_pub.der

      And generate public key modulus 3: openssl rsa -pubin -inform der -in my_key_pub.der -text -noout

      Copy and paste the key into a text file to use soon. Remove all ":" and put everything on a single line, thus:

      11.   Open the tcpabios_sign file in HxD, copy the contents and replace the signature at the end of the TCPABIOS block:
      12. Now let's locate the location of the public key in the BIOS and replace it. This key starts with 12 04 and ends with 01 03 FF and is after the TCPABBLK block.
      The key looks like this: 12 04 + 81 bytes + 01 03 FF. Search for 01 03 FF to locate more easily. Verify that before the 81 bytes have bytes 12 04 to make sure you found.


      Now substitute for the public key that was annotated in the text file previously, thus:

      Save and you're ready. Your BIOS is signed and ready.
    • By Entropi
      I’ve used a 2015 15” MBP as my main system since it was released. I do photo and video editing in the Adobe suite regularly and have been eyeballing the performance of the latest MBP models. I’m on the road all the time, so a laptop is basically my only option.

      After the whole mess with the CPU VRM hardware flaws being made apparent by the poor power management profile shipped at release with the 2018 i9 MBP I’ve been more weary of the hardware design of MacBooks. That’s before I account for losing all USB-A ports, losing the SD card slot (‽), losing reliability and tactility of the keyboard, and losing the ESC key to the touchbar; if I compare the 2018 MBP to my current 2015.
      Given these flaws, I have been researching the performance situation comparing the 2018 MBP to the X1 Extreme, XPS 15 9570, and the Razer Blade 15 2018.  These are essentially the only options for a road warrior that needs a high quality panel and the best CPU and GPU that can be crammed into around 4lbs (1.8kg).  
      I used to use a ThinkPad T42p and loved it when it was new. So fast forward to now and the release of the ThinkPad X1 Extreme. It’s a truly tempting machine for an artist, given that the 4K UHD version offers just about the best color gamut available on any laptop panel. I get back the USB-A ports, get one of the fastest SD slots on any laptop, and get one of the best laptop keyboards on the market. That’s before even considering power management and modularity. I’ve been dabbling in learning Machine Learning, so a system with an nVidia GPU (CUDA) is a bonus on that front as well.
      For me the best color reproduction on a high resolution display panel was most important. The X1 Extreme has that, so I’ve ordered one. I got it with the fastest i7, base SSD and memory, and have separately purchased two 1TB Samsung 970 Pro M.2 SSDs and 2x16GB DDR4-3200MHz memory (just in case it’s possible to overclock the memory on the X1 Extreme). I got the system for $2,100 from Lenovo USA, and the SSDs ($390 x 2) and memory ($330) from Amazon US for a total of ~$3200.  These are easy to install on the X1 Extreme as the bottom cover is easily removed to reveal the M.2 and SODIMM slots. To compare, the 2018 MBP with the fastest i7, 32GB memory, and 2TB SSD is $4400. So I can save $1200 and get a faster system (on all counts) with a better panel and better connectivity by going with the X1 Extreme.
      The only thing I’m compromising is losing the big beautiful haptic touchpad and a bit more refined hardware aesthetic. Though, to be honest, I’ve kept a big thick dual-layer Tech21 case on my 2015 MBP. So I’ll actually be going down in volume and weight by moving to the more rugged ThinkPad. I think I can live without the touchpad.

      Oh, by the way, the 4K UHD panel of the X1 Extreme has touch and decent pen support! Another bonus vs. the MacBook. Though I keep a 12.9” iPad Pro around for my pen work and can’t imagine using a laptop similarly. It’s still nice to have a laptop screen actually respond when I go poke at it accidentally after switching back and forth between laptop and iPad.
      So I want macOS with proper discrete GPU support on a 2018 MacBook class laptop.  That’s not possible on a pure Hackintosh as things stand, but via a macOS virtual machine it looks like it could work with what looks like some relatively bleeding edge support of PCIe UEFI passthrough.

      People have been doing this on Linux hosts to Windows VMs with some great success recently: https://gist.github.com/Misairu-G/616f7b2756c488148b7309addc940b28
      And it looks like that’s coming for macOS VMs as well: https://github.com/kholia/OSX-KVM/blob/a4fb2fd5aae871bdbc371b0cd31d4d8129d0f9ac/UEFI/README.md

      The X1 Extreme, XPS 15 9570, and Razer Blade 15 (2018) are essentially direct competition to the 2018 15” MBP. I would really like to see these three systems get some nicely fleshed out guides for getting maxed out compatibility and performance in macOS running in a VM for these systems. When I get my X1 Extreme I’ll start working on it for that one. I will post updates here. I hope to inspire others with the other two systems (or looking to get them) to do similarly.
      I chose the X1 Extreme largely because of the excellent 4K UHD HDR panel (100% of 2D AdobeRGB and 85.5% of 3D AdobeRGB, basically unparalleled), good mix of thermal performance and noise management, and overall ruggedness and connectivity.  If I were a gamer I would go with the Razer 15, but the fast low-gamut 1080p panel just doesn’t work for my purposes. If I were most concerned with aesthetics or battery life (97Wh battery for it vs 80Wh for X1E) I would go with the XPS 15.
      I am aware that the second 2018 refresh of the MBP is coming ~Nov 14, with the new AMD Radeon Pro Vega 16 and Vega 20 GPUs, and it looks like the latter might offer up to a 60% performance boost over the Radeon 560X. Maybe it has even given Apple enough time to update the CPU VRM along the way. This could make the performance picture more comparable for the 1050 Ti based X1E and XPS 15. I believe the 1070 Ti based Razer 15 will still win out though.
      Still, if you compare the fan and heat pipe solution put into the X1E vs the MBP the MBP just looks wimpy in comparison. MBP has smaller fans, less venting, and only one (smaller, thinner) heatpipe. It’s also more difficult to access if you want to put a better thermal paste or liquid metal on it.  Put simply, the thermal hardware on the MBP is basically the same design for the last 3 years and it can’t keep up with the hex-core processors. So even with the Volta 20 GPU making the MBP competitive again on the graphics end, the MBP will still be falling short on the CPU performance plane. This is before we even look at tuning options.
      Getting into tuning, it’s possible to improve thermal performance of all the laptops in this class by around 15-20% by using either a best in class thermal paste like Thermal Grizzly Kryonaut or (if you’re willing to deal with all the caveats that come with using a conductive fluid that permeates other metals) a liquid metal interface like Thermal Grizzly Conductonaut. The liquid metal gives you the best possible conducting interface, and the paste is more forgiving and easier to apply.  Further, it is often possible to stably undervolt the Coffee Lake i7/i9 available in this class of systems to further improve performance, thermals, and power consumption (generally another 10+%).
      Apple has deliberately made it impossible to undervolt the CPU on the MBP! This has been true since the first Skylake CPUs a few years ago. You used to be able to use a program called Volta to undervolt your CPU on macOS. This is a huge peeve for me and, combined with the general power and thermal underdevelopment, is one of the main reasons I want to get a competitor’s hardware. As a primer, the default voltage of modern CPUs is typically set conservatively high for the sake of production efficiency.  With the current generation Coffee Lake CPUs it is commonly possible to set the CPU voltage about 100 to 150mv lower safely.  This allows the CPU to run cooler and consume less power. For laptops which are thermally limited (basically everything in this new 6-core 14nm era), this also translates into better performance. It’s a tweak that actually improves reliability of your CPU. So it’s just stupid that Apple has deliberately made this impossible. Shame on them, someone else take my money.
      Wrapping up, my biggest quibbles with the X1E (before actually getting it) are that the 4K panel’s responsiveness is about the slowest I’ve seen on a modern panel, and it’s just really not suitable for gaming. There’s also what I consider an annoyingly high level of backlight corner bleed that I’m sure will be distracting during blackboxed video viewing. Hopefully these two issues will be fixed in next year’s iteration.
      MacBook i9 Thermal / VRM (below-baseline throttling/thrashing) Issue:
      This was mitigated with software that works around the poor hardware design, but the system would still ultimately perform better if the CPU VRM were redesigned. Non Mac systems with the similar CPUs don’t have this issue and get better sustained performance.
      MacBook Nov 2018 Refresh with Radeon Vega 16 and Vega 20:
      MacBook Class Laptop Reviews:
      Lenovo ThinkPad X1 Extreme, 4K: https://www.notebookcheck.net/Lenovo-ThinkPad-X1-Extreme-i7-4K-HDR-GTX-1050-Ti-Max-Q-Laptop-Review.335608.0.html
      Dell XPS 15 9570, 4K: https://www.notebookcheck.net/Dell-XPS-15-9570-i7-UHD-GTX-1050-Ti-Max-Q-Laptop-Review.332758.0.html
      Razer Blade 15 2018, 1070 Ti FHD 144Hz: https://www.notebookcheck.net/Razer-Blade-15-i7-8750H-GTX-1070-Max-Q-FHD-Laptop-Review.305426.0.html
      Best Undervolting Guide (keywords: ThrottleStop, Intel XTU):
      Undervolting Coffee Lake i7/i9 (2018 MacBook class CPU):
      Replacing Thermal Paste with Liquid Metal on 2018 MBP:
      https://youtu.be/iw4gqfrBN4c ... and follow up: https://youtu.be/JNoZNzOQpVw
      Replacing Thermal Paste with Kryonaut on X1E:
      Replacing Thermal Paste and Undervolting X1 Carbon:
      Replacing Thermal Paste and Undervolting XPS 15 9570:
      Possibly over-conservative BIOS update for thermal throttling on X1E:
      High Sierra (10.13) drivers only for now:
      nVidia “waiting for Apple’s approval” for Mojave (10.14) macOS driver web release:

      Breadcrumb Links (other things I found researching this):