ArchLinux (рдбреНрдпреБрдЕрд▓рдмреВрдЯ) рд╕рд╣ MacBook Pro 2018 T2 рдХрд╛рд░реНрдп рдХрд░рдгреЗ

рдирд╡реАрди T2 рдЪрд┐рдк рдЯрдЪрдмрд╛рд░рд╕рд╣ рдирд╡реАрди 2018 рдореЕрдХрдмреБрдХреНрд╕рд╡рд░ рд▓рд┐рдирдХреНрд╕ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдгреЗ рдЕрд╢рдХреНрдп рдХрд░реЗрд▓ рдпрд╛ рд╡рд╕реНрддреБрд╕реНрдерд┐рддреАрдмрджреНрджрд▓ рдереЛрдбрд╛рд╕рд╛ рдкреНрд░рдЪрд╛рд░ рдХреЗрд▓рд╛ рдЧреЗрд▓рд╛ рдЖрд╣реЗ. рд╡реЗрд│ рдирд┐рдШреВрди рдЧреЗрд▓рд╛ рдЖрдгрд┐ 2019 рдЪреНрдпрд╛ рд╢реЗрд╡рдЯреА, рддреГрддреАрдп-рдкрдХреНрд╖ рд╡рд┐рдХрд╛рд╕рдХрд╛рдВрдиреА T2 рдЪрд┐рдкрд╕рд╣ рдкрд░рд╕реНрдкрд░рд╕рдВрд╡рд╛рджрд╛рд╕рд╛рдареА рдЕрдиреЗрдХ рдбреНрд░рд╛рдпрд╡реНрд╣рд░реНрд╕ рдЖрдгрд┐ рдХрд░реНрдирд▓ рдкреЕрдЪ рд▓рд╛рдЧреВ рдХреЗрд▓реЗ. рдореЕрдХрдмреБрдХ рдореЙрдбреЗрд▓реНрд╕ 2018 рд╕рд╛рдареА рдореБрдЦреНрдп рдбреНрд░рд╛рдпрд╡реНрд╣рд░ рдЖрдгрд┐ рдирд╡реАрди рдЙрдкрдХрд░рдгреЗ VHCI рдСрдкрд░реЗрд╢рди (рдЯрдЪ/рдХреАрдмреЛрд░реНрдб/рдЗ. рдСрдкрд░реЗрд╢рди), рддрд╕реЗрдЪ рдзреНрд╡рдиреА рдСрдкрд░реЗрд╢рди.

рдкреНрд░рдХрд▓реНрдк mbp2018-bridge-drv 3 рдореБрдЦреНрдп рдШрдЯрдХрд╛рдВрдордзреНрдпреЗ рд╡рд┐рднрд╛рдЧрд▓реЗрд▓реЗ:

  • BCE (рдмрдлрд░ рдХреЙрдкреА рдЗрдВрдЬрд┐рди) - T2 рд╕рд╣ рдореБрдЦреНрдп рд╕рдВрдкреНрд░реЗрд╖рдг рдЪреЕрдиреЗрд▓ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ. VHCI рдЖрдгрд┐ рдСрдбрд┐рдУрд▓рд╛ рд╣рд╛ рдШрдЯрдХ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ.
  • рд╡реНрд╣реАрдПрдЪрд╕реАрдЖрдп рдПрдХ рдпреВрдПрд╕рдмреА рд╡реНрд╣рд░реНрдЪреНрдпреБрдЕрд▓ рд╣реЛрд╕реНрдЯ рдХрдВрдЯреНрд░реЛрд▓рд░ рдЖрд╣реЗ; рдХреАрдмреЛрд░реНрдб, рдорд╛рдЙрд╕ рдЖрдгрд┐ рдЗрддрд░ рд╕рд┐рд╕реНрдЯрдо рдШрдЯрдХ рдпрд╛ рдШрдЯрдХрд╛рджреНрд╡рд╛рд░реЗ рдкреНрд░рджрд╛рди рдХреЗрд▓реЗ рдЬрд╛рддрд╛рдд (рдЗрддрд░ рдбреНрд░рд╛рдпрд╡реНрд╣рд░реНрд╕ рдЕрдзрд┐рдХ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдкреНрд░рджрд╛рди рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдпрд╛ рд╣реЛрд╕реНрдЯ рдХрдВрдЯреНрд░реЛрд▓рд░рдЪрд╛ рд╡рд╛рдкрд░ рдХрд░рддрд╛рдд.
  • рдСрдбрд┐рдУ - T2 рдСрдбрд┐рдУ рдЗрдВрдЯрд░рдлреЗрд╕рд╕рд╛рдареА рдбреНрд░рд╛рдпрд╡реНрд╣рд░, рд╕рдзреНрдпрд╛ рдлрдХреНрдд MacBook рдЪреНрдпрд╛ рдЕрдВрдЧрднреВрдд рд╕реНрдкреАрдХрд░рджреНрд╡рд╛рд░реЗ рдСрдбрд┐рдУ рдЖрдЙрдЯрдкреБрдЯрд▓рд╛ рд╕рдорд░реНрдерди рджреЗрддреЛ


рджреБрд╕рд░рд╛ рдкреНрд░рдХрд▓реНрдк рдореНрд╣рдгрддрд╛рдд macbook12-spi-driver, рдЖрдгрд┐ рддреЗ 2016 рдЪреНрдпрд╛ рдЙрддреНрддрд░рд╛рд░реНрдзрд╛рдд рдЖрдгрд┐ рдирдВрддрд░рдЪреНрдпрд╛ MacBook Pros рд╕рд╛рдареА рдХреАрдмреЛрд░реНрдб, SPI рдЯреНрд░реЕрдХрдкреЕрдб рдЖрдгрд┐ рдЯрдЪрдмрд╛рд░рд╕рд╛рдареА рдЗрдирдкреБрдЯ рдбреНрд░рд╛рдЗрд╡реНрд╣рд░ рдСрдкрд░реЗрдЯ рдХрд░рдгреНрдпрд╛рдЪреА рдХреНрд╖рдорддрд╛ рд▓рд╛рдЧреВ рдХрд░рддреЗ. рдХрд╛рд╣реА рдХреАрдмреЛрд░реНрдб/рдЯреНрд░реЕрдХрдкреЕрдб рдбреНрд░рд╛рдпрд╡реНрд╣рд░реНрд╕ рдЖрддрд╛ рдХрд░реНрдирд▓рдордзреНрдпреЗ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдХреЗрд▓реЗ рдЖрд╣реЗрдд, рдЖрд╡реГрддреНрддреА 5.3 рдкрд╛рд╕реВрди рд╕реБрд░реВ рд╣реЛрддреЗ.

рд╡рд╛рдп-рдлрд╛рдп, рдЯрдЪрдкреЕрдб рдЗрддреНрдпрд╛рджреА рдЙрдкрдХрд░рдгрд╛рдВрд╕рд╛рдареА рд╕рдорд░реНрдерди рджреЗрдЦреАрд▓ рдХрд░реНрдирд▓ рдкреЕрдЪ рд╡рд╛рдкрд░реВрди рд▓рд╛рдЧреВ рдХреЗрд▓реЗ рдЧреЗрд▓реЗ. рд╡рд░реНрддрдорд╛рди рдХрд░реНрдирд▓ рдЖрд╡реГрддреНрддреА 5.3.5-1

рдпрд╛рдХреНрд╖рдгреА рдХрд╛рдп рдХрд╛рдо рдХрд░рдд рдЖрд╣реЗ

  1. рдПрдирд╡реАрдПрдордИ
  2. рдХреАрдмреЛрд░реНрдб
  3. USB-C (рдердВрдбрд░рдмреЛрд▓реНрдЯрдЪреА рдЪрд╛рдЪрдгреА рдХреЗрд▓реА рдЧреЗрд▓реА рдирд╛рд╣реА; рдЬреЗрд╡реНрд╣рд╛ рдореЙрдбреНрдпреВрд▓ рдЖрдкреЛрдЖрдк рд▓реЛрдб рд╣реЛрддреЗ, рддреЗрд╡реНрд╣рд╛ рддреЗ рд╕рд┐рд╕реНрдЯрдо рдЧреЛрдард╡рддреЗ)
  4. рдЯрдЪрдмрд╛рд░ (рдПрдлрдПрди рдХреА, рдмреЕрдХрд▓рд╛рдЗрдЯ, рдИрдПрд╕рд╕реА рдЗ. рдЪрд╛рд▓реВ рдХрд░рдгреНрдпрд╛рдЪреНрдпрд╛ рдХреНрд╖рдорддреЗрд╕рд╣)
  5. рдзреНрд╡рдиреА (рдлрдХреНрдд рдЕрдВрдЧрднреВрдд рд╕реНрдкреАрдХрд░реНрд╕)
  6. рд╡рд╛рдп-рдлрд╛рдп рдореЙрдбреНрдпреВрд▓ (brcmfmac рджреНрд╡рд╛рд░реЗ рдЖрдгрд┐ рдлрдХреНрдд iw рджреНрд╡рд╛рд░реЗ)
  7. USB-C рд╡рд░ рдбрд┐рд╕реНрдкреНрд▓реЗрдкреЛрд░реНрдЯ
  8. рд╕реЗрдиреНрд╕рд░
  9. рдирд┐рд▓рдВрдмрд┐рдд/рдкреБрдиреНрд╣рд╛ рд╕реБрд░реВ (рдЕрдВрд╢рдд:)
  10. рдЗ ..

рд╣реЗ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ macbookpro15,1 рдЖрдгрд┐ macbookpro15,2 рд╕рд╛рдареА рд▓рд╛рдЧреВ рдЖрд╣реЗ. рд▓реЗрдЦ рдЗрдВрдЧреНрд░рдЬреАрддреАрд▓ Github рд╡рд░реВрди рдЖрдзрд╛рд░ рдореНрд╣рдгреВрди рдШреЗрддрд▓рд╛ рдЧреЗрд▓рд╛. рдпреЗрдереВрди. рдпрд╛ рд▓реЗрдЦрд╛рддреАрд▓ рдкреНрд░рддреНрдпреЗрдХ рдЧреЛрд╖реНрдЯ рдХрд╛рд░реНрдп рдХрд░рдд рдирд╛рд╣реА, рдореНрд╣рдгреВрди рдорд▓рд╛ рд╕реНрд╡рдд: рд╡рд░ рдЙрдкрд╛рдп рд╢реЛрдзрд╛рд╡рд╛ рд▓рд╛рдЧрд▓рд╛.

рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рдХрд╛рдп рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЖрд╣реЗ

  • USB-C рдбреЙрдХрд┐рдВрдЧ рдЕрдбреЕрдкреНрдЯрд░ USB рд╡рд░ (рдорд╛рдКрд╕, рдХреАрдмреЛрд░реНрдб, USB рдореЙрдбреЗрдо рдХрд┐рдВрд╡рд╛ рдлреЛрди рдЯрд┐рдерд░рд┐рдВрдЧ рдореЛрдбрдордзреНрдпреЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдХрд┐рдорд╛рди рддреАрди USB рдЗрдирдкреБрдЯ). рд╣реЗ рдХреЗрд╡рд│ рд╕реНрдерд╛рдкрдиреЗрдЪреНрдпрд╛ рдкрд╣рд┐рд▓реНрдпрд╛ рдЯрдкреНрдкреНрдпрд╛рдд рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ
  • USB рдХреАрдмреЛрд░реНрдб
  • USB/USB-C рдлреНрд▓реЕрд╢ рдбреНрд░рд╛рдЗрд╡реНрд╣ рдХрд┐рдорд╛рди 4GB

1. рдмрд╛рд╣реНрдп рдореАрдбрд┐рдпрд╛рд╡рд░реВрди рдмреВрдЯ рдХрд░рдгреНрдпрд╛рд╡рд░ рдмрдВрджреА рдЕрдХреНрд╖рдо рдХрд░рд╛

https://support.apple.com/en-us/HT208330
https://www.ninjastik.com/support/2018-macbook-pro-boot-from-usb/

2. рдбрд┐рд╕реНрдХ рдпреБрдЯрд┐рд▓рд┐рдЯреА рд╡рд╛рдкрд░реВрди рдореЛрдХрд│реА рдЬрд╛рдЧрд╛ рд╡рд╛рдЯрдк рдХрд░рд╛

рд╕реЛрдпреАрд╕рд╛рдареА, рдореА рддрд╛рдмрдбрддреЛрдм рдбрд┐рд╕реНрдХрд▓рд╛ 30GB рд╡рд╛рдЯрдк рдХреЗрд▓реЗ, рддреЗ рдбрд┐рд╕реНрдХ рдпреБрдЯрд┐рд▓рд┐рдЯреАрдордзреНрдпреЗрдЪ рдПрдХреНрд╕рдлреЕрдЯрдордзреНрдпреЗ рд╕реНрд╡рд░реВрдкрд┐рдд рдХреЗрд▓реЗ. рдлрд┐рдЬрд┐рдХрд▓ рдбрд┐рд╕реНрдХ рдбрд┐рд╕реНрдХ рдпреБрдЯрд┐рд▓рд┐рдЯреАрдЪреЗ рд╡рд┐рднрд╛рдЬрди рдХрд░рдгреЗ.

3. ISO рдкреНрд░рддрд┐рдорд╛ рддрдпрд╛рд░ рдХрд░рд╛

рдкрд░реНрдпрд╛рдп:

  1. рддреБрдореНрд╣реА рд╕реЛрдкреНрдпрд╛ рдорд╛рд░реНрдЧрд╛рдиреЗ рдЬрд╛рдК рд╢рдХрддрд╛ рдЖрдгрд┐ рдХрд░реНрдирд▓ 5.3.5-1 рдЖрдгрд┐ рдкреЕрдЪрд╕рд╣ рддрдпрд╛рд░ рдкреНрд░рддрд┐рдорд╛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реВ рд╢рдХрддрд╛ aunali1 рддрдпрд╛рд░ рдкреНрд░рддрд┐рдореЗрдЪреА рд▓рд┐рдВрдХ
  2. рдЖрд░реНрдХрд╛рдЗрд╡реНрд╣рджреНрд╡рд╛рд░реЗ рд╕реНрд╡рддрдГ рдПрдХ рдкреНрд░рддрд┐рдорд╛ рддрдпрд╛рд░ рдХрд░рд╛ (рдЖрд░реНрдЪрд╛ рд╡рд┐рддрд░рдгрд╛рд╕рд╣ рдкреНрд░рдгрд╛рд▓реА рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ)

    рд╕реНрдерд╛рдкрд┐рдд рдХрд░рд╛ archiso

    pacman -S archiso

    
    cp -r /usr/share/archiso/configs/releng/ archlive
    cd archlive
    

    pacman.conf рдордзреНрдпреЗ рд░реЗрдкреЙрдЬрд┐рдЯрд░реА рдЬреЛрдбрд╛:

    
    [mbp]
    Server = https://packages.aunali1.com/archlinux/$repo/$arch
    

    рдЖрдореНрд╣реА pacman.conf рдордзреАрд▓ рдореВрд│ рдХрд░реНрдирд▓рдХрдбреЗ рджреБрд░реНрд▓рдХреНрд╖ рдХрд░рддреЛ:

    IgnorePkg   = linux linux-headers
    

    рдЖрд╡рд╢реНрдпрдХ рдкреЕрдХреЗрдЬреЗрд╕ рдЬреЛрдбрд╛, рд╢реЗрд╡рдЯреА linux-mbp рдХрд░реНрдирд▓ рдЖрдгрд┐ linux-mbp-headers рдЬреЛрдбрд╛

    ...
    wvdial
    xl2tpd
    linux-mbp
    linux-mbp-headers
    

    рдЗрдВрдЯрд░рдПрдХреНрдЯрд┐рд╡реНрд╣ рдореЛрдбрдордзреНрдпреЗ рдХрд╛рдо рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЖрдореНрд╣реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрджрд▓рддреЛ (pacstrap -C рд▓рд╛ 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!"
    }

    рдкреНрд░рддрд┐рдорд╛ рддрдпрд╛рд░ рдХрд░рдгреЗ:

    sudo ./build.sh -v

    рджреБрд░реНрд▓рдХреНрд╖рд┐рдд рдкреЕрдХреЗрдЬреЗрд╕ рд╡рдЧрд│рдгреНрдпрд╛рд╕рд╛рдареА Y рджрд╛рдмрд╛, рдирдВрддрд░ usb рдлреНрд▓реЕрд╢ рдбреНрд░рд╛рдЗрд╡реНрд╣рд╡рд░ iso рдкреНрд░рддрд┐рдорд╛ рд▓рд┐рд╣рд╛:

    sudo dd if=out/archlinux*.iso of=/dev/sdb bs=1M

4. рдкреНрд░рдердо рдмреВрдЯ

рдлреНрд▓реЕрд╢ рдбреНрд░рд╛рдЗрд╡реНрд╣ рдЖрдгрд┐ рдХреАрдмреЛрд░реНрдб рдШрд╛рддрд▓реНрдпрд╛рдирдВрддрд░ рд░реАрдмреВрдЯ рдХрд░рд╛. рдЬреЗрд╡реНрд╣рд╛ рд╕рдлрд░рдЪрдВрдж рджрд┐рд╕реЗрд▓ рддреЗрд╡реНрд╣рд╛ рдкрд░реНрдпрд╛рдп рджрд╛рдмрд╛, EFI BOOT рдирд┐рд╡рдбрд╛.

рдкреБрдвреЗ, рддреБрдореНрд╣рд╛рд▓рд╛ "e" рдХреА рджрд╛рдмрд╛ рдЖрдгрд┐ рдХрдорд╛рдВрдб рд▓рд╛рдЗрдирдЪреНрдпрд╛ рд╢реЗрд╡рдЯреА рдПрдВрдЯрд░ рдХрд░рд╛ module_blacklist=thunderbolt. рд╣реЗ рдкреВрд░реНрдг рди рдХреЗрд▓реНрдпрд╛рд╕, рд╕рд┐рд╕реНрдЯрдо рдмреВрдЯ рд╣реЛрдгрд╛рд░ рдирд╛рд╣реА рдЖрдгрд┐ рдердВрдбрд░рдмреЛрд▓реНрдЯ ICM рддреНрд░реБрдЯреА рджрд┐рд╕реВрди рдпреЗрдИрд▓.

fdisk/cfdisk рд╡рд╛рдкрд░реВрди рдЖрдореНрд╣рд╛рд▓рд╛ рдЖрдордЪреЗ рд╡рд┐рднрд╛рдЬрди рд╕рд╛рдкрдбрддреЗ (рдорд╛рдЭреНрдпрд╛рд╕рд╛рдареА рддреЗ nvme0n1p4 рдЖрд╣реЗ), рддреЗ рд╕реНрд╡рд░реВрдкрд┐рдд рдХрд░рд╛ рдЖрдгрд┐ рд╕рдВрдЧреНрд░рд╣ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рд╛. рддреБрдореНрд╣реА рд╡рд╛рдкрд░реВ рд╢рдХрддрд╛ рдЕрдзрд┐рдХреГрдд рд╕реВрдЪрдирд╛ рдХрд┐рдВрд╡рд╛ рдмрд╛рдЬреВрд▓рд╛.

рдЖрдореНрд╣реА рдмреВрдЯ рд╡рд┐рднрд╛рдЬрди рддрдпрд╛рд░ рдХрд░рдд рдирд╛рд╣реА; рдЖрдореНрд╣реА рдмреВрдЯрд▓реЛрдбрд░ рд▓рд┐рд╣реВ /dev/nvme0n1p1
/mnt рдордзреАрд▓ рд╡рд╛рддрд╛рд╡рд░рдг рдкреВрд░реНрдгрдкрдгреЗ рддрдпрд╛рд░ рдЭрд╛рд▓реНрдпрд╛рдирдВрддрд░ рдЖрдгрд┐ arch-chroot рд╡рд░ рдЬрд╛рдгреНрдпрд╛рдкреВрд░реНрд╡реА, рд▓рд┐рд╣рд╛:

mount /dev/nvme0n1p1 /mnt/boot
arch-chroot /mnt /bin/bash

/etc/pacman.conf рдордзреНрдпреЗ рдЬреЛрдбрд╛:


[mbp]
Server = https://packages.aunali1.com/archlinux/$repo/$arch

рдХрд░реНрдирд▓ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рд╛:


sudo pacman -S linux-mbp linux-mbp-headers
sudo mkinitcpio -p linux-mbp

рдЖрдореНрд╣реА /etc/modprobe.d/blacklist.conf рдордзреНрдпреЗ thunderbolt рдЖрдгрд┐ applesmc рдЪреА рдиреЛрдВрджрдгреА рдХрд░рддреЛ

blacklist thunderbolt
blacklist applesmc

рдХреАрдмреЛрд░реНрдб, рдЯрдЪрдмрд╛рд░ рдЗ

рд╕реНрдерд╛рдкрд┐рдд рдХрд░рд╛:


sudo pacman -S git gcc make fakeroot binutils
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si

рдЯрдЪрдмрд╛рд░ рдХрд╛рд░реНрдп рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдореЙрдбреНрдпреВрд▓ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдд рдЖрд╣реЗ:


git clone --branch mbp15 https://github.com/roadrunner2/macbook12-spi-driver.git
cd macbook12-spi-driver
make install

рд╕реНрдЯрд╛рд░реНрдЯрдЕрдкрдордзреНрдпреЗ рдореЙрдбреНрдпреВрд▓реНрд╕ рдЬреЛрдбрд╛: /etc/modules-load.d/apple.conf

industrialio_triggered_buffer
apple-ibridge
apple-ib-tb
apple-ib-als

рдХреАрдмреЛрд░реНрдбрд╕рд╛рдареА рдХрд░реНрдирд▓ рдореЙрдбреНрдпреВрд▓ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдгреЗ. рднрд╛рдВрдбрд╛рд░рд╛рдд anuali1 рдПрдХ рддрдпрд╛рд░ рдкреЕрдХреЗрдЬ рдЖрд╣реЗ, рддреНрдпрд╛рд▓рд╛ рдореНрд╣рдгрддрд╛рдд apple-bce-dkms-git. рддреЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдХрдиреНрд╕реЛрд▓рдордзреНрдпреЗ рд▓рд┐рд╣рд╛:

pacman -S apple-bce-dkms-git

рдпрд╛ рдкреНрд░рдХрд░рдгрд╛рдд, рдХрд░реНрдирд▓ рдореЙрдбреНрдпреВрд▓ рдХреЙрд▓ рдХреЗрд▓реЗ рдЬрд╛рдИрд▓ рд╕рдлрд░рдЪрдВрдж-bce. рд╕реНрд╡рдпрдВ-рд╡рд┐рдзрд╛рдирд╕рднреЗрдЪреНрдпрд╛ рдмрд╛рдмрддреАрдд, рддреНрдпрд╛рд▓рд╛ рдореНрд╣рдгрддрд╛рдд рдЗ.рд╕.рдкреВ.. рддреНрдпрд╛рдиреБрд╕рд╛рд░, рдЬрд░ рддреБрдореНрд╣рд╛рд▓рд╛ mkinicpio.conf рдлрд╛рдЗрд▓рдЪреНрдпрд╛ MODULES рд╡рд┐рднрд╛рдЧрд╛рдд рдореЙрдбреНрдпреВрд▓рдЪреА рдиреЛрдВрджрдгреА рдХрд░рд╛рдпрдЪреА рдЕрд╕реЗрд▓, рддрд░ рддреБрдореНрд╣реА рдХреЛрдгрддреЗ рдореЙрдбреНрдпреВрд▓ рд╕реНрдерд╛рдкрд┐рдд рдХреЗрд▓реЗ рдЖрд╣реЗ рд╣реЗ рд╡рд┐рд╕рд░реВ рдирдХрд╛.

рдореЕрдиреНрдпреБрдЕрд▓ рдЕрд╕реЗрдВрдмреНрд▓реА:


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

рд╕реНрдЯрд╛рд░реНрдЯрдЕрдкрдордзреНрдпреЗ bce рдХрд┐рдВрд╡рд╛ apple-bce рдореЙрдбреНрдпреВрд▓ рдЬреЛрдбрд╛: /etc/modules-load.d/bce.conf

bce

рдЬрд░ рддреБрдореНрд╣рд╛рд▓рд╛ рдбреАрдлреЙрд▓реНрдЯрдиреБрд╕рд╛рд░ Fn рдмрдЯрдгреЗ рд╡рд╛рдкрд░рд╛рдпрдЪреА рдЕрд╕рддреАрд▓, рддрд░ /etc/modprobe.d/apple-tb.conf рдлрд╛рдЗрд▓рдордзреНрдпреЗ рд▓рд┐рд╣рд╛:

options apple-ib-tb fnmode=2

рдХрд░реНрдирд▓ рдЖрдгрд┐ initramfs рдЕрджреНрдпрддрдирд┐рдд рдХрд░рдд рдЖрд╣реЗ.


mkinitcpio -p linux-mbp

iwd рд╕реНрдерд╛рдкрд┐рдд рдХрд░рд╛:

sudo pacman -S networkmanager iwd

5. рд▓реЛрдбрд░

рд╕рд░реНрд╡ рдореБрдЦреНрдп рдкреЕрдХреЗрдЬреЗрд╕ chroot рдордзреНрдпреЗ рд╕реНрдерд╛рдкрд┐рдд рдХреЗрд▓реНрдпрд╛рд╡рд░, рдЖрдкрдг рдмреВрдЯрд▓реЛрдбрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдгреЗ рд╕реБрд░реВ рдХрд░реВ рд╢рдХрддрд╛.

рдореА рдХрд╛рдорд╛рд╡рд░ рдЬрд╛рдгреНрдпрд╛рд╕ рд╕рдХреНрд╖рдо рдЭрд╛рд▓реЛ рдирд╛рд╣реА. рдмрд╛рд╣реНрдп рдпреВрдПрд╕рдмреА рдбреНрд░рд╛рдЗрд╡реНрд╣рд╡рд░реВрди рдЧреНрд░рдм рдмреВрдЯ рдХрд░рддреЗ, рдкрд░рдВрддреБ рдЬреЗрд╡реНрд╣рд╛ рддреБрдореНрд╣реА рдПрдирд╡реНрд╣реАрдПрдордИ рджреНрд╡рд╛рд░реЗ рдиреЛрдВрджрдгреА рдХрд░рдгреНрдпрд╛рдЪрд╛ рдкреНрд░рдпрддреНрди рдХрд░рддрд╛ рддреЗрд╡реНрд╣рд╛

grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=grub

рдкреНрд░рдгрд╛рд▓реА рдХрд░реНрдирд▓ рдкреЕрдирд┐рдХрдордзреНрдпреЗ рдЧреЗрд▓реА, рдЖрдгрд┐ рд░реАрдмреВрдЯ рдХреЗрд▓реНрдпрд╛рдирдВрддрд░ рдкрд░реНрдпрд╛рдпрд╛рдВрджреНрд╡рд╛рд░реЗ рдирд╡реАрди рдЖрдпрдЯрдо рджрд┐рд╕рдд рдирд╛рд╣реА. рдорд▓рд╛ рдпрд╛ рд╕рдорд╕реНрдпреЗрдЪреЗ рдХреЛрдгрддреЗрд╣реА рд╕реНрдкрд╖реНрдЯ рд╕рдорд╛рдзрд╛рди рд╕рд╛рдкрдбрд▓реЗ рдирд╛рд╣реА рдЖрдгрд┐ рдореНрд╣рдгреВрди systemd-boot рд╡рд╛рдкрд░реВрди рдмреВрдЯрд┐рдВрдЧ рд▓рд╛рдЧреВ рдХрд░рдгреНрдпрд╛рдЪрд╛ рдкреНрд░рдпрддреНрди рдХрд░рдгреНрдпрд╛рдЪрд╛ рдирд┐рд░реНрдгрдп рдШреЗрддрд▓рд╛.

  1. рд▓рд╛рдБрдЪ рдХрд░рд╛
    bootctl --path=/boot install

    рдЖрдгрд┐ рдЖрдореНрд╣реА рдХрд░реНрдирд▓ рдкреЕрдирд┐рдХ рдордзреНрдпреЗ рдЬрд╛рддреЛ. рдореЕрдХрдмреБрдХ рдмрдВрдж рдХрд░рд╛, рддреЗ рдкреБрдиреНрд╣рд╛ рдЪрд╛рд▓реВ рдХрд░рд╛, рдкрд░реНрдпрд╛рдпрд╛рдВрд╡рд░ рдХреНрд▓рд┐рдХ рдХрд░рд╛ (рдХреАрдмреЛрд░реНрдбрд╕рд╣ рдпреВрдПрд╕рдмреА-рд╕реА рд╣рдм рдмрдВрдж рдХрд░реВ рдирдХрд╛)

  2. рдЖрдореНрд╣реА рддрдкрд╛рд╕рддреЛ рдХреА рдмрд╛рд╣реНрдп рдЙрдкрдХрд░рдгрд╛рд╡реНрдпрддрд┐рд░рд┐рдХреНрдд рдирд╡реАрди EFI BOOT рдПрдВрдЯреНрд░реА рдЖрд▓реА рдЖрд╣реЗ
  3. рдЖрдореНрд╣реА рдмрд╛рд╣реНрдп USB рдбреНрд░рд╛рдЗрд╡реНрд╣рд╡рд░реВрди рдмреВрдЯ рдХрд░рдгреЗ рдирд┐рд╡рдбрддреЛ, рдЬрд╕реЗ рдХреА рдкрд╣рд┐рд▓реНрдпрд╛ рд╕реНрдерд╛рдкрдиреЗрджрд░рдореНрдпрд╛рди (module_blacklist=thunderbolt рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдгреНрдпрд╛рд╕ рд╡рд┐рд╕рд░реВ рдирдХрд╛)
  4. рдЖрдореНрд╣реА рдЖрдордЪреА рдбрд┐рд╕реНрдХ рдорд╛рдЙрдВрдЯ рдХрд░рддреЛ рдЖрдгрд┐ рдЖрд░реНрдЪ-рдХреНрд░реВрдЯ рджреНрд╡рд╛рд░реЗ рд╡рд╛рддрд╛рд╡рд░рдгрд╛рдд рдЬрд╛рддреЛ


mount /dev/nvme0n1p4 /mnt
mount /dev/nvme0n1p1 /mnt/boot
arch-chroot /mnt

рд╕рд┐рд╕реНрдЯрдо рдкреВрд░реНрдгрдкрдгреЗ рд▓реЛрдб рд╣реЛрдИрдкрд░реНрдпрдВрдд рдХреАрдмреЛрд░реНрдбрдиреЗ рдХрд╛рд░реНрдп рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЕрд╕рд▓реНрдпрд╛рд╕ (luks/dm-crypt рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рд╡рд╛рдкрд░рддрд╛рдирд╛ рд╣реЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ), рдирдВрддрд░ рдореЙрдбреНрдпреВрд▓ рд╡рд┐рднрд╛рдЧрд╛рддреАрд▓ /etc/mkinicpio.conf рдлрд╛рдЗрд▓рдордзреНрдпреЗ рд▓рд┐рд╣рд╛:

MODULES=(ext4 applespi intel_lpss_pci spi_pxa2xx_platform bce)

рдХрд░реНрдирд▓ рдЖрдгрд┐ initramfs рдЕрджреНрдпрддрдирд┐рдд рдХрд░рдд рдЖрд╣реЗ.


mkinicpio -p linux-mbp

systemd-boot рд╕реЗрдЯ рдХрд░рдд рдЖрд╣реЗ

рдЖрдореНрд╣реА /boot/loader/loader.conf рдлрд╛рдЗрд▓ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рддреЛ, рдЖрддреАрд▓ рд╕рд░реНрд╡ рдХрд╛рд╣реА рд╣рдЯрд╡рддреЛ рдЖрдгрд┐ рдкреБрдвреАрд▓ рдЧреЛрд╖реНрдЯреА рдЬреЛрдбрддреЛ:

default arch
timeout 5
editor 1

/boot/loader/entries рдлреЛрд▓реНрдбрд░рд╡рд░ рдЬрд╛, arch.conf рдлрд╛рдЗрд▓ рддрдпрд╛рд░ рдХрд░рд╛ рдЖрдгрд┐ рд▓рд┐рд╣рд╛:

title arch
linux /vmlinuz-linux-mbp
initrd /initramfs-linux-mbp.img
options root=/dev/<b>nvme0n1p4</b> rw pcie_ports=compat

рдЖрдкрдг luks рдЖрдгрд┐ lvm рд╡рд╛рдкрд░рд▓реЗ рдЕрд╕рд▓реНрдпрд╛рд╕, рдирдВрддрд░

options cryptdevice=/dev/<b>nvme0n1p4</b>:luks root=/dev/mapper/vz0-root rw pcie_ports=compat

MacOS рдордзреНрдпреЗ рд░реАрдмреВрдЯ рдХрд░рд╛.

6. рд╡рд╛рдп-рдлрд╛рдп рд╕реЗрдЯрдЕрдк

рд╕рд░рддреЗрд╢реЗрд╡рдЯреА, MacOS рдлреЛрд▓реНрдбрд░рдордзреНрдпреЗ рд╡рд╛рдп-рдлрд╛рдп рдЕреЕрдбреЙрдкреНрдЯрд░рд╕рд╛рдареА рдлрд░реНрдорд╡реЗрдЕрд░ рдлрд╛рдЗрд▓реНрд╕ рд╕рдВрдЪрдпрд┐рдд рдХрд░рддреЗ /usr/share/firmware/wifi , рдЖрдгрд┐ рддреБрдореНрд╣реА рддреНрдпрд╛рдВрдирд╛ рддреЗрдереВрди рдмреНрд▓реЙрдмреНрд╕рдЪреНрдпрд╛ рд░реВрдкрд╛рдд рдШреЗрдКрди рдЬрд╛рдК рд╢рдХрддрд╛ рдЖрдгрд┐ рддреНрдпрд╛рдВрдирд╛ brcmfmac рдХрд░реНрдирд▓ рдореЙрдбреНрдпреВрд▓рдордзреНрдпреЗ рдлреАрдб рдХрд░реВ рд╢рдХрддрд╛. рддреБрдордЪрд╛ рдЕреЕрдбреЙрдкреНрдЯрд░ рдХреЛрдгрддреНрдпрд╛ рдлрд╛рдЗрд▓реНрд╕ рд╡рд╛рдкрд░рддреЛ рд╣реЗ рд╢реЛрдзрдгреНрдпрд╛рд╕рд╛рдареА, MacOS рдордзреНрдпреЗ рдЯрд░реНрдорд┐рдирд▓ рдЙрдШрдбрд╛ рдЖрдгрд┐ рд▓рд┐рд╣рд╛:

ioreg -l | grep C-4364

рдЖрдореНрд╣рд╛рд▓рд╛ рдПрдХ рд▓рд╛рдВрдмрд▓рдЪрдХ рдпрд╛рджреА рдорд┐рд│рддреЗ. рдЖрдореНрд╣рд╛рд▓рд╛ рдлрдХреНрдд рд╡рд┐рднрд╛рдЧрд╛рддреАрд▓ рдлрд╛рдЗрд▓реНрд╕рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЖрд╣реЗ рд╡рд┐рдирдВрддреА рдХреЗрд▓реЗрд▓реНрдпрд╛ рдлрд╛рдпрд▓реА:

"RequestedFiles" = ({"Firmware"="<b>C-4364__s-B2/maui.trx</b>","TxCap"="C-4364__s-B2/maui-X3.txcb","Regulatory"="C-4364__s-B2/<b>maui-X3.clmb</b>","NVRAM"="C-4364__s-B2/<b>P-maui-X3_M-HRPN_V-m__m-7.7.txt</b>"})

рддреБрдордЪреНрдпрд╛ рдмрд╛рдмрддреАрдд, рдлрд╛рдЗрд▓рдЪреА рдирд╛рд╡реЗ рд╡реЗрдЧрд│реА рдЕрд╕реВ рд╢рдХрддрд╛рдд. рддреНрдпрд╛рдВрдирд╛ /usr/share/firmware/wifi рдлреЛрд▓реНрдбрд░рдордзреВрди рдлреНрд▓реЕрд╢ рдбреНрд░рд╛рдЗрд╡реНрд╣рд╡рд░ рдХреЙрдкреА рдХрд░рд╛ рдЖрдгрд┐ рддреНрдпрд╛рдВрдирд╛ рдЦрд╛рд▓реАрд▓рдкреНрд░рдорд╛рдгреЗ рдкреБрдирд░реНрдирд╛рдорд┐рдд рдХрд░рд╛:

    maui.trx -> brcmfmac4364-pcie.bin
    maui-X3.clmb -> brcmfmac4364-pcie.clm_blob
    P-maui-X3_M-HRPN_V-m__m-7.7.txt -> brcmfmac4364-pcie.Apple Inc.-<b>MacBookPro15,2.txt</b>

рдпрд╛ рдкреНрд░рдХрд░рдгрд╛рдд, рд╢реЗрд╡рдЯрдЪреНрдпрд╛ рдордЬрдХреВрд░ рдлрд╛рдЗрд▓рдордзреНрдпреЗ рдореЙрдбреЗрд▓рдЪреА рдирд╛рд╡реЗ рдЖрд╣реЗрдд; рдЬрд░ рддреБрдордЪреЗ рдореЙрдбреЗрд▓ macbookpro15,2 рдирд╕реЗрд▓, рддрд░ рддреБрдореНрд╣рд╛рд▓рд╛ рддреБрдордЪреНрдпрд╛ MacBook рдореЙрдбреЗрд▓рдиреБрд╕рд╛рд░ рдпрд╛ рдлрд╛рдЗрд▓рдЪреЗ рдирд╛рд╡ рдмрджрд▓рдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЖрд╣реЗ.

рдЖрд░реНрдХ рдордзреНрдпреЗ рд░реАрдмреВрдЯ рдХрд░рд╛.

рдлреНрд▓реЕрд╢ рдбреНрд░рд╛рдЗрд╡реНрд╣рд╡рд░реВрди рдлрд╛рдЗрд▓реНрд╕ /lib/firmware/brcm/ рдлреЛрд▓реНрдбрд░рдордзреНрдпреЗ рдХреЙрдкреА рдХрд░рд╛


sudo cp brcmfmac4364-pcie.bin /lib/firmware/brcm/
sudo cp brcmfmac4364-pcie.clm_blob /lib/firmware/brcm/
sudo cp 'brcmfmac4364-pcie.Apple Inc.-<b>MacBookPro15,2.txt' /lib/firmware/brcm/

рдореЙрдбреНрдпреВрд▓рдЪреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рддрдкрд╛рд╕рдд рдЖрд╣реЗ:


rmmod brcmfmac
modprobe brcmfmac

рдЖрдореНрд╣реА рдЦрд╛рддреНрд░реА рдХрд░рддреЛ рдХреА рдиреЗрдЯрд╡рд░реНрдХ рдЗрдВрдЯрд░рдлреЗрд╕ ifconfig/ip рджреНрд╡рд╛рд░реЗ рджрд┐рд╕рддреЛ.
рджреНрд╡рд╛рд░реЗ рд╡рд╛рдпрдлрд╛рдп рд╕реЗрдЯ рдХрд░рдд рдЖрд╣реЗ iwctl

рд▓рдХреНрд╖ рджреНрдпрд╛. netctl, nmcli рдЗ. рджреНрд╡рд╛рд░реЗ рдЗрдВрдЯрд░рдлреЗрд╕ рдлрдХреНрдд iwd рджреНрд╡рд╛рд░реЗ рдХрд╛рд░реНрдп рдХрд░рдд рдирд╛рд╣реА.

рдЖрдореНрд╣реА рдиреЗрдЯрд╡рд░реНрдХ рдореЕрдиреЗрдЬрд░рд▓рд╛ iwd рд╡рд╛рдкрд░рдгреНрдпрд╛рд╕ рднрд╛рдЧ рдкрд╛рдбрддреЛ. рд╣реЗ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдлрд╛рдЗрд▓ /etc/NetworkManager/NetworkManager.conf рддрдпрд╛рд░ рдХрд░рд╛ рдЖрдгрд┐ рд▓рд┐рд╣рд╛:

[device]
wifi.backend=iwd

рдиреЗрдЯрд╡рд░реНрдХ рдореЕрдиреЗрдЬрд░ рд╕реЗрд╡рд╛ рд╕реБрд░реВ рдХрд░рд╛


sudo systemctl start NetworkManager.service
sudo systemctl enable NetworkManager.service

7. рдЖрд╡рд╛рдЬ

рдЖрд╡рд╛рдЬ рдХрд╛рд░реНрдп рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рдкрд▓реНрд╕рдСрдбрд┐рдУ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ:


sudo pacman -S pulseaudio

рддреАрди рдлрд╛рдпрд▓реА рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рд╛:

рдЪрд▓рд╛ рддреНрдпрд╛рдВрдирд╛ рд╣рд▓рд╡реВ:

    /usr/share/alsa/cards/AppleT2.conf
    /usr/share/pulseaudio/alsa-mixer/profile-sets/apple-t2.conf
    /usr/lib/udev/rules.d/91-pulseaudio-custom.rules

8. рдирд┐рд▓рдВрдмрд┐рдд/рдкреБрдиреНрд╣рд╛ рд╕реБрд░реВ рдХрд░рд╛

рд╣реНрдпрд╛ рдХреНрд╖рдгреА 16.10.2019 рддреБрдореНрд╣рд╛рд▓рд╛ рдПрдХрддрд░ рдзреНрд╡рдиреА рдирд┐рд╡рдбрд╛рд╡рд╛ рд▓рд╛рдЧреЗрд▓ рдХрд┐рдВрд╡рд╛ рдирд┐рд▓рдВрдмрд┐рдд/рд░рд┐рдЭреНрдпреБрдо рдХрд░рд╛рд╡рд╛ рд▓рд╛рдЧреЗрд▓. рдЖрдореНрд╣реА bce рдореЙрдбреНрдпреВрд▓рдЪреНрдпрд╛ рд▓реЗрдЦрдХрд╛рдЪреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдкреВрд░реНрдг рдХрд░рдгреНрдпрд╛рдЪреА рд╡рд╛рдЯ рдкрд╛рд╣рдд рдЖрд╣реЛрдд.

рдирд┐рд▓рдВрдмрд┐рдд/рд░рд┐рдЭреНрдпреБрдо рд╕рдорд░реНрдердирд╛рд╕рд╣ рдореЙрдбреНрдпреВрд▓ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рддреБрдореНрд╣реА рдкреБрдвреАрд▓ рдЧреЛрд╖реНрдЯреА рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ:


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

рддреБрдореНрд╣реА anuali1 рд░реЗрдкреЙрдЬрд┐рдЯрд░реА рдордзреВрди рд░реЗрдбреАрдореЗрдб apple-bce рдореЙрдбреНрдпреБрд▓ рдЗрдиреНрд╕реНрдЯреЙрд▓ рдХреЗрд▓реЗ рдЕрд╕реЗрд▓, рддрд░ рддреБрдореНрд╣реА рдкреНрд░рдердо рддреЗ рдХрд╛рдвреВрди рдЯрд╛рдХрд╛рд╡реЗ рдЖрдгрд┐ рддреНрдпрд╛рдирдВрддрд░рдЪ рд╕рд╕реНрдкреЗрдВрдб рдореЛрдб рд╕рдкреЛрд░реНрдЯрд╕рд╣ bce рдореЙрдбреНрдпреВрд▓ рдЕрд╕реЗрдВрдмрд▓ рдХрд░реВрди рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рд╛рд╡реЗ.

рддрд╕реЗрдЪ, рддреБрдореНрд╣рд╛рд▓рд╛ applesmc рдореЙрдбреНрдпреВрд▓ рдмреНрд▓реЕрдХрд▓рд┐рд╕реНрдЯрдордзреНрдпреЗ рдЬреЛрдбрдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ (рдЬрд░ рддреБрдореНрд╣реА рд╣реЗ рдЖрдзреА рдХреЗрд▓реЗ рдирд╕реЗрд▓ рддрд░) рдЖрдгрд┐ рдЦрд╛рддреНрд░реА рдХрд░рд╛ рдХреА рдкрд░реНрдпрд╛рдп рдУрд│реАрддреАрд▓ /boot/loader/entries/arch.conf рдордзреНрдпреЗ рд╢реЗрд╡рдЯреА рдкреЕрд░рд╛рдореАрдЯрд░ рдЬреЛрдбрд▓рд╛ рдЖрд╣реЗ. pcie_ports=compat.

рд╕рдзреНрдпрд╛, рд╕рд╕реНрдкреЗрдВрдб рдореЛрдбрдордзреНрдпреЗ рдкреНрд░рд╡реЗрд╢ рдХрд░рддрд╛рдирд╛ рдЯрдЪрдмрд╛рд░ рдбреНрд░рд╛рдпрд╡реНрд╣рд░ рдХреНрд░реЕрд╢ рд╣реЛрддреЛ рдЖрдгрд┐ рдердВрдбрд░рдмреЛрд▓реНрдЯ рдбреНрд░рд╛рдпрд╡реНрд╣рд░ рдХрдзреАрдХрдзреА 30 рд╕реЗрдХрдВрджрд╛рдВрдкреЗрдХреНрд╖рд╛ рдЬрд╛рд╕реНрдд рдХрд╛рд│, рдЖрдгрд┐ рдкреБрдиреНрд╣рд╛ рд╕реБрд░реВ рдХрд░рддрд╛рдирд╛ рдХрд╛рд╣реА рдорд┐рдирд┐рдЯрд╛рдВрд╕рд╛рдареА рд╕рд┐рд╕реНрдЯрдо рдЧреЛрдард╡рддреЛ. рд╕рдорд╕реНрдпрд╛рдЧреНрд░рд╕реНрдд рдореЙрдбреНрдпреВрд▓реНрд╕ рд╕реНрд╡рдпрдВрдЪрд▓рд┐рддрдкрдгреЗ рдЕрдирд▓реЛрдб рдХрд░реВрди рд╣реЗ рдирд┐рд╢реНрдЪрд┐рдд рдХреЗрд▓реЗ рдЬрд╛рдК рд╢рдХрддреЗ.

рд╕реНрдХреНрд░рд┐рдкреНрдЯ рддрдпрд╛рд░ рдХрд░рд╛ /lib/systemd/system-sleep/rmmod.sh:

#!/bin/sh
if [ "" == "pre" ]; then
        rmmod thunderbolt
        rmmod apple_ib_tb
elif [ "" == "post" ]; then
        modprobe apple_ib_tb
        modprobe thunderbolt
fi

рддреЗ рдПрдХреНрдЭрд┐рдХреНрдпреБрдЯреЗрдмрд▓ рдмрдирд╡рд╛:

sudo chmod +x /lib/systemd/system-sleep/rmmod.sh

рд╕рдзреНрдпрд╛ рдПрд╡рдвреЗрдЪ. рд╕рд╕реНрдкреЗрдВрдб/рд░реЗрдЭреНрдпреБрдореЗрд╕рд╣ рдХрд╛рд╣реА рдмрд╛рд░рдХрд╛рд╡реЗ рд╡рдЧрд│рддрд╛ рдПрдХ рдкреВрд░реНрдгрдкрдгреЗ рдХрд╛рд░реНрдпрдХреНрд╖рдо рдкреНрд░рдгрд╛рд▓реАрдЪрд╛ рдкрд░рд┐рдгрд╛рдо рдЖрд╣реЗ. рдЕрдкрдЯрд╛рдЗрдордЪреНрдпрд╛ рдЕрдиреЗрдХ рджрд┐рд╡рд╕рд╛рдВрдордзреНрдпреЗ рдХреЛрдгрддреЗрд╣реА рдХреНрд░реЕрд╢ рдХрд┐рдВрд╡рд╛ рдХрд░реНрдирд▓ рдкреЕрдирд┐рдХ рдЖрдврд│рд▓реЗ рдирд╛рд╣реАрдд. рдорд▓рд╛ рдЖрд╢рд╛ рдЖрд╣реЗ рдХреА рдирдЬреАрдХрдЪреНрдпрд╛ рднрд╡рд┐рд╖реНрдпрд╛рдд bce рдореЙрдбреНрдпреВрд▓рдЪреЗ рд▓реЗрдЦрдХ рддреЗ рдкреВрд░реНрдг рдХрд░рддреАрд▓, рдЖрдгрд┐ рдЖрдореНрд╣рд╛рд▓рд╛ рд╕рд╕реНрдкреЗрдВрдб/рд░рд┐рдЭреНрдпреБрдо рдЖрдгрд┐ рдЖрд╡рд╛рдЬрд╛рд╕рд╛рдареА рдкреВрд░реНрдг рд╕рдорд░реНрдерди рдорд┐рд│реЗрд▓.

рд╕реНрддреНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛