Faciens MacBook Pro 2018 T2 opus cum ArchLinux (dualboot)
Aliquantum hype de eo quod novus T2 chip non potest efficere Linux in novis 2018 MacBooks cum tactus installari. Tempus elapsum, et in fine MMXIX, tincidunt tertia factio compluras exactores et panniculos nucleos implevit pro commercio cum T2019 chip. Praecipua agitator ad exempla MacBook 2 ac recentiora instrumenta operationis VHCI (operationis tactus/keyboard/etc.), necnon operatio sana.
BCE (Buffer Copy Engine) - alveum principale communicationis cum T2. VHCI et Audio hanc componentem requirunt.
VHCI est USB Virtual Hostiam Controller; tincidunt, murem et alia elementa systematis ab hoc componente praebentur (alii rectores hac hospite moderatore utuntur ad maiorem functionem praebendam.
Audio - coegi pro T2 audio interface, currently tantum sustinet output audio per MacBook in loquentibus constructum.
Secundum consilium dicitur macbook12-spi-agitatoret facultatem exercendi input coegi pro tincidunt, SPI trackpad, et tactus pro Late 2016 et postea MacBook Pros. Nonnulli tincidunt/trackpad rectores nunc in nucleo includuntur, incipientes a versione 5.3.
Firmamentum ad machinas ut wi-fi, touchpad, etc etiam utens inaequaliter nucleos implevit. Current nucleus versionis5.3.5-1
Quid opus in tempore
NVMe
keyboard
USB-C (Thunderbolt non probatus est; modulus cum automatice oneratur, systema concrescit)
Touchbar (cum facultate vertere in claves Fn, backlight, ESC, etc.)
Sonus (instructum in loquentium modo)
Wi-FI modulus (per brcmfmac et solum per iw)
DisplayPort super USB-C
sensoriis
Suspendendi / Proin (ex parte)
etc ..
Haec doceo applicabilis pro macbookpro15,1 et macbookpro15,2. Articulum pro fundamento a Github Anglice sumptum est. hic. Non omnia in hoc articulo laboraverunt, ut me solutionem invenirem.
Quid opus est ad institutionem
USB-C adaptor docking cum USB (saltem tres USB initibus applicandi murem, claviaturam, USB modem vel telephonum in modum ligandi). Hoc solum necessarium est inter initia institutionis
cp -r /usr/share/archiso/configs/releng/ archlive
cd archlive
Repositorium pacman.conf adde:
[mbp]
Server = https://packages.aunali1.com/archlinux/$repo/$arch
nucleum originale in pacman.conf ignoramus:
IgnorePkg = linux linux-headers
Fasciculis necessariis adde, in fine adde nucleum linux-mbp et caput capitis linux-mbp.
...
wvdial
xl2tpd
linux-mbp
linux-mbp-headers
Mutamus scripturam ad operandum in modo interactive (repone pacstrap -C cum pacstrap -i -C);
sudo nano /usr/bin/mkarchiso
# Install desired packages to airootfs
_pacman ()
{
_msg_info "Installing packages to '${work_dir}/airootfs/'..."
if [[ "${quiet}" = "y" ]]; then
pacstrap -i -C "${pacman_conf}" -c -G -M "${work_dir}/airootfs" $* &> /dev/null
else
pacstrap -i -C "${pacman_conf}" -c -G -M "${work_dir}/airootfs" $*
fi
_msg_info "Packages installed successfully!"
}
Formans imaginem;
sudo ./build.sh -v
Press Y to skip neglecta fasciculis, scribe imaginem in USB mico coegi:
sudo dd if=out/archlinux*.iso of=/dev/sdb bs=1M
4. Primum tabernus
Reboot cum mico coegi et claviaturae inseruntur. Optiones diurnariae cum apparet malum, elige EFI CALCEUS.
Deinde debes "e" clavem premere et in fine lineae praecepti inire module_blacklist = tonitrui. Si hoc non factum est, ratio non violenta et fulmen ICM Error apparebit.
Usura fdisk/cfdisk partitionem nostram invenimus (pro me est nvme0n1p4), formare eam et archivum instituere. Vos can utor officialis instructiones aut Latus.
Nos tabernus partitionem non creando; nos scribere in bootloader /dev/nvme0n1p1
Post ambitum in /mnt perfecte formatur et antequam ad archi-chroot moveatur, scribe:
mount /dev/nvme0n1p1 /mnt/boot
arch-chroot /mnt /bin/bash
Add to /etc/pacman.conf;
[mbp]
Server = https://packages.aunali1.com/archlinux/$repo/$arch
Acinum moduli tincidunt. In eclesiae reposito anuali1 Est sarcina parata facta, suus 'vocatur pomum-bce-dkms-git. Instituere eam scribe in console;
pacman -S apple-bce-dkms-git
Hoc in casu, modulus nucleus vocabitur pomum-bce. In conventu sui, vocatur BCE. Proinde si moduli in MODULES sectionem fasciculi mkinicpio.conf rescribere vis, noli oblivisci cuius moduli instituisti.
Manuale conventus;
git clone https://github.com/MCMrARM/mbp2018-bridge-drv.git
cd mbp2018-bridge-drv
make
cp bce.ko /usr/lib/modules/extramodules-mbp/bce.ko
Adde boe vel pomi-bce moduli ad satus: /etc/modules-load.d/bce.conf
bce
Si vis tesserae Fn per defaltam uti, scribe in tabella /etc/modprobe.d/apple-tb.conf:
options apple-ib-tb fnmode=2
Adaequat nucleos et initramfs.
mkinitcpio -p linux-mbp
Install iwd:
sudo pacman -S networkmanager iwd
5. Loader
Cum omnes sarcinae principales intra chroot installantur, incipere potes praedones.
Vermis laborare non potui. Grub ocreae ab USB externa pellunt, sed cum eam in nvme via . subcriptio conantur
systema in terrorem nucleum perrexit et postquam novam item per optiones reboonavit non apparuit. Solutio huius problematis claram non inveni et idcirco tentare decrevi ut tabernus systemd-bombalum efficere.
Launch
bootctl --path=/boot install
et itur in acinum terrorem. Averte MacBook, iterum verte, optiones preme (usB-C centrum cum claviaturis noli averte)
Reprehendimus novam EFI CALCEUS ingressum apparuisse praeter machinam externam
Tabernam ab externa USB coegi, sicut in prima institutione (nolite oblivisci moduli_blacklist=tonitrui) specificare.
Orbem nostrum conscendimus et ingredimur in ambitu per archi-chroot
mount /dev/nvme0n1p4 /mnt
mount /dev/nvme0n1p1 /mnt/boot
arch-chroot /mnt
Si tincidunt ad operandum necessarium est donec ratio plene onerata est (hoc opus est cum encryption utens luks/dm-crypt), tunc scribe in fasciculo /etc/mkinicpio.conf in sectione MODULES:
Cum in fine evenit, MacOS files firmware pro fi adaptor in folder . reponit /usr/share/firmware/wifi et inde in modum blobs sume potes et pasce eas ad moduli nuclei brcmfmac. Ut invenias quae aptatorem tuum adhibeas, terminalem in MacOS aperi et scribe:
ioreg -l | grep C-4364
Longum indicem fuat. Tantum postulo lima ex sectione RequestedFiles:
In hoc casu, novissimus fasciculus textus exemplorum nomina continet: si exemplar macbookpro15,2 non est, hunc fasciculum in nomine MacBook pro exemplo tuo nominare debes.
Reboot in Arch.
Effingo lima a mico coegi ad /lib/firmware/brcm/ folder
In statu 16.10.2019 elige tibi aut sonum aut suspendendi / Proin. Exspectamus auctorem boe moduli ad munus perficiendum.
Modulum aedificare cum suspenso / subsidium resumere, debes facere sequenti:
git clone https://github.com/MCMrARM/mbp2018-bridge-drv.git
cd mbp2018-bridge-drv
git checkout suspend
make
cp bce.ko /usr/lib/modules/extramodules-mbp/bce.ko
modprobe bce
Si parato-boe moduli ex anuali1 repositorium instituisti, tunc primum removere debes et tunc demum convenias et modulum boe moduli cum sustentaculo suspenso institue.
Etiam, applesmc modulum notatione addere debes (si id prius non fecisti) et fac ut in /boot/loader/entries/arch.conf in linea optionum in fine moduli addatur. pcie_ports = compat.
In statu, agitator touchbar fragore cum modum suspendendi intrandi, et agitator fulminis interdum systema plus quam XXX secundis constringit, et per aliquot minutas resumit. Hoc figi potest ex automatice modulorum problematicorum problematicorum exonerationes.
Creare scriptor /lib/systemd/system-somnium/rmmod.sh:
#!/bin/sh
if [ "" == "pre" ]; then
rmmod thunderbolt
rmmod apple_ib_tb
elif [ "" == "post" ]; then
modprobe apple_ib_tb
modprobe thunderbolt
fi
Fac illud exsecutabile;
sudo chmod +x /lib/systemd/system-sleep/rmmod.sh
Quod ut 'quia iam omnia. Effectus est systema omnino operabile, aliquibus extenuationibus suspendendi/resumendi. Nullae fragores vel paniculi nuclei per aliquot dies uptime observati sunt. Spero in proximo futurum auctorem ascen- dendi moduli illud perficiet, et plenam sustentationem suspensa/resumendi et soni dabimus.