Difference between revisions of "Pinebook Pro Software Releases"

From PINE64
Jump to navigation Jump to search
m (Compressed installers section. Removed "Daniel Thompson's Debian Installer" as the official debian installer is very actively developed now)
m (→‎DietPi: Update link for new xz-compressed image and Bookworm)
 
(89 intermediate revisions by 30 users not shown)
Line 1: Line 1:
= Linux OS Image Releases =
This page contains a list of all available releases and tools for the [[Pinebook Pro]].
For information on how to install these images onto your device, please see the [[NOOB]] Page, which includes information on writing images to the device eMMC or an SD card


== Manjaro ARM ==
== Linux OS Image Releases ==
[[File:Manjaro.png|right|100px]]
For information on how to install these images onto your device, please see the [[Getting started]] Page, which includes information on writing images to the device eMMC or an SD card


* The Manjaro project offers a mainline kernel with patches and modules to support PBPro hardware in two flavors. Both provide DD images and installer images (DD to SD card which will then install to eMMC when booted).
=== Manjaro ARM ===
* To learn more about Manjaro please visit [https://forum.manjaro.org/tags/manjaroarm Manjaro Forum]
[[File:Manjaro-logo.svg|right|100px]]
* You can follow the ongoing discussion about Twister OS on the PINE64 forum (https://forum.pine64.org/showthread.php?tid=8207)
 
The Manjaro project offers a mainline kernel with patches and modules to support the Pinebook Pro hardware. To learn more about Manjaro please visit [https://forum.manjaro.org/c/arm/ Manjaro Forum]. You can follow the ongoing discussion about Manjaro on the [https://forum.pine64.org/showthread.php?tid=8207 PINE64 forum].
All images boot from both SD card and the internal eMMC module.
 
Download:
* [https://manjaro.org/download/ Direct download from Manjaro]: You have to navigate to the Manjaro ARM section and select "Generic" as the device in the drop-down list (the Pinebook Pro image has been removed and it's now included in the generic one since version 22.08. Then you can choose Gnome, KDE Plasma, Mate, Minimal, Sway or Xfce.
* Old factory release: [https://files.pine64.org/os/PinebookPro/manjaro/Manjaro-ARM-kde-plasma-pbpro-bsp-22.06%20(2).img.xz Manjaro/Plasma 22.06 factory loaded build] (June 2022) from ''pine64.org'' (1.04GB, MD5 of the XZ file ''d78031a4bed3eeb4f2001f3c89b9ed5a'')
 
=== Armbian ===
[[File:armbian.png|right|100px]]
 
Armbian is a base operating system platform for single board computers (''SBCs'') that other projects can trust to build upon. It is a lightweight Debian or Ubuntu based Linux distribution specialized for ARM development boards. Each system is compiled, assembled and optimized by the Armbian Build Tools. It has powerful build and software development tools to make custom builds and a vibrant community.


=== Manjaro ARM with KDE (X11) desktop [microSD / eMMC Boot] ===
Download:
* [https://www.armbian.com/pinebook-pro/ The Pinebook Pro Download Page]


* [https://manjaro.org/downloads/arm/pinebook-pro/arm8-pinebook-pro-kde-plasma/ Direct download from Manjaro] (microSD image only)
Notes:
* [https://osdn.net/projects/manjaro-arm/storage/pbpro/kde-plasma/ Direct download from osdn.net] (both microSD and emmc-installer images)
* If you have any difficulties please visit our [https://forum.armbian.com forum] or come chat with us on [https://docs.armbian.com/Community_IRC/ IRC / Discord!]
* As of April 2023, Armbian only has Ubuntu images pre-made.  However, using their tools to create a Debian image from scratch takes little expertise and results in an image that can be burned onto a USB stick or SD card. Their installer can then install it onto internal eMMC, including a working bootloader.


=== Manjaro ARM with XFCE desktop [microSD / eMMC Boot] ===
=== Twister OS ===


* [https://manjaro.org/downloads/arm/pinebook-pro/arm8-pinebook-pro-xfce/ Direct download from Manjaro]
[[File:Twister_OS.png|right|100px]]
* [https://osdn.net/projects/manjaro-arm/storage/pbpro/xfce/ Direct download from osdn.net]


=== Manjaro ARM with i3 desktop [microSD / eMMC Boot] ===
Twister OS Armbian-Reforged with Xfce. It boots from microSD card and from eMMC. For more information on Twister OS, please visit this [https://twisteros.com/ official site]. You can follow the ongoing discussion about Twister OS on the [https://forum.pine64.org/showthread.php?tid=12192 PINE64 forum].


* [https://manjaro.org/downloads/arm/pinebook-pro/arm8-pinebook-pro-i3/ Direct download from Manjaro]
'''Installation'''
* [https://osdn.net/projects/manjaro-arm/storage/pbpro/i3/ Direct download from osdn.net]


=== Manjaro ARM with Sway desktop [microSD / eMMC Boot] ===
* After flashing image, edit /boot/armbianEnv.txt, replace the dtb name with <code>rk3399-pinebook-pro.dtb</code>


* [https://osdn.net/projects/manjaro-arm/storage/pbpro/sway/ Direct download from osdn.net]
'''Download location'''


== Armbian ==
Get the latest image here: [https://twisteros.com/twisterarmbian.html Direct download latest images from Twister OS's website] (size: 2.8GB)
[[File:armbian.png|right|100px]]
 
'''Password'''


* To find out more about Armbian and available options please visit their [https://www.armbian.com/pinebook-pro/ site]
{| class="wikitable"
* DD image to microSD card or eMMC module and boot. Highly recommend using [https://etcher.io/ Etcher]
!colspan="2" style="background: #a7d7f9;"| Default credentials
|-
! Root user
| <code>root/asdasd</code>
|}


=== Armbian Ubuntu Focal XFCE Desktop mainline kernel [microSD / eMMC Boot]  ===
=== Fedora ===
* Armbian provides a mainline kernel build images for Ubuntu Focal with XFCE Desktop
[[File:fedora1.png|right|100px]]
* DD image (for 8GB micoSD card or eMMC Module and above)
** [https://dl.armbian.com/pinebook-pro/Focal_current_desktop Armbian's Pinebook Pro Ubuntu Focal XFCE Desktop download site]


=== Armbian Ubuntu Focal XFCE Desktop legacy kernel [microSD / eMMC Boot]  ===
Fedora Linux is a Linux distribution developed by the Fedora Project. It creates an innovative, free, and open source platform for hardware, clouds, and containers that enables software developers and community members to build tailored solutions for their users.
* Armbian provides a legacy kernel 4.4 build images for Ubuntu Focal with XFCE Desktop
* DD image (for 8GB microSD card or eMMC Module and above)
** [https://dl.armbian.com/pinebook-pro/Focal_legacy_desktop Armbian's Pinebook Pro Ubuntu Focal XFCE Desktop download site]


=== Armbian Debian Buster XFCE Desktop legacy kernel [microSD / eMMC Boot]  ===
Installation:
* Armbian provides a legacy kernel 4.4 build images for Debian Buster with XFCE Desktop
* Using this [https://nullr0ute.com/2021/05/fedora-on-the-pinebook-pro/ blog post] it is possible to run Official Fedora on the Pinebook Pro
* DD image (for 8GB micoSD card or eMMC Module and above)
** [https://dl.armbian.com/pinebook-pro/Buster_legacy_desktop Armbian's Pinebook Pro Debian Buster XFCE Desktop download site]


=== Armbian Ubuntu Bionic XFCE Desktop legacy kernel [microSD / eMMC Boot]  ===
Notes:
* Armbian provides a legacy kernel 4.4 build images for Ubuntu Bionic with XFCE Desktop
* Upstream Fedora uses the SPI flash on the Pinebook Pro to manage U-Boot.
* DD image (for 8GB micoSD card or eMMC Module and above)
** [https://dl.armbian.com/pinebook-pro/Bionic_legacy_desktop Armbian's Pinebook Pro Ubuntu Bionic XFCE Desktop download site]


== Twister OS ==
=== Arch Linux ARM ===
[[File:Twister_OS.png|right|100px]]
[[File:Archlinux-logo.png|right|100px]]


=== Twister OS Armbian-Reforged XFCE Dsktop [microSD boot]===
==== Official Installation ====
* For more infomation on Twister OS, please visit this {https://twisteros.com/ official site]
See [[Pinebook Pro Installing Arch Linux ARM]] for instructions on how to install the official Arch Linux ARM.
* You can follow the ongoing discussion about Twister OS on the PINE64 forum (https://forum.pine64.org/showthread.php?tid=12192)
* After flashing image with Etcher, edit /boot/armbianEnv.txt, replace the dtb name with rk3399-pinebook-pro.dtb.
* DD image (for 16GB microSD card /16GB eMMC module and above):
** [https://twisteros.com/twisterarmbian.html Direct download latest images from Twister OS's website]
** size: 2.8GB
* Login with
** password: asdasd


== Fedora ==
==== Customized Premade Root Filesystem ====
[[File:fedora1.png|right|100px]]
An Arch Linux ARM root filesystem customized for the Pinebook Pro using Manjaro's kernel is available. Instructions are included for installation on microSD card, eMMC module and NVME SSD.


=== Fedora 34/33/32 Gnome/KDE/Minimal Images [microSD / eMMC Boot] ===
'''Download location'''
* Unofficial images based on Fedora, and a [https://copr.fedorainfracloud.org/coprs/aptupdate/pinebook-pro/ copr] repository for kernel and tweaks.
* To learn more about how they are build [https://github.com/bengtfredh/pinebook-pro-fedora-installer Install script].
* DD image (for 12GB microSD card / eMMC module and above) [https://github.com/bengtfredh/pinebook-pro-fedora-installer/wiki/How-to-Resize---Expand-a-Btrfs-Volume---Filesystem How to expand btrfs]
** [https://s3.fredhs.net/minio/pinebook-pro-image/ Fedora Pinebook Pro Images]


=== Fedora 32 Cinnamon Desktop OS Image [microSD / eMMC Boot] ===
[https://github.com/SvenKiljan/archlinuxarm-pbp/releases/latest Get the latest root filesystem from GitHub] (size: 500-600 MB).
* This image contains an install of Fedora with [https://cinnamon-spices.linuxmint.com/ Cinnamon] desktop environment.
* To learn more about Fedora please visit the [https://getfedora.org/ official website].
* DD image (for 12GB microSD card / eMMC module and above)
** [https://builds.armdevelopers.com/pinebook-pro/releases/dev/Fedora32-Cinnamon-Desktop-202009.0.pinebook-pro.img.xz Fedora 32 Pinebook Pro Image]
* login with:
** username: root
** password: fedora


=== Fedora 32 KDE Desktop OS Image [microSD / eMMC Boot] ===
'''Installation'''
* This image contains an install of Fedora with [https://kde.org/ KDE aka Plasma] desktop environment.
* To learn more about Fedora please visit the [https://getfedora.org/ official website].
* DD image (for 12GB microSD card / eMMC module and above)
** [https://builds.armdevelopers.com/pinebook-pro/releases/dev/Fedora32-KDE-Desktop-202009.0.pinebook-pro.img.xz Fedora 32 Pinebook Pro Image]
* login with:
** username: root
** password: fedora


=== Fedora 32 Xfce Desktop OS Image [microSD / eMMC Boot] ===
Make sure to thoroughly read the [https://github.com/SvenKiljan/archlinuxarm-pbp/blob/main/README.md readme], [https://github.com/SvenKiljan/archlinuxarm-pbp/blob/main/INSTALL.md installation instructions] and [https://github.com/SvenKiljan/archlinuxarm-pbp/blob/main/FAQ.md FAQ].
* This image contains an install of Fedora with [https://xfce.org/ xfce] desktop environment.
* To learn more about Fedora please visit the [https://getfedora.org/ official website].
* DD image (for 12GB microSD card / eMMC module and above)
** [https://builds.armdevelopers.com/pinebook-pro/releases/dev/Fedora32-Xfce-Desktop-202009.0.pinebook-pro.img.xz Fedora 32 Pinebook Pro Image]
* login with:
** username: root
** password: fedora


=== Fedora 32 Gnome OS Image [microSD / eMMC Boot] ===
'''Username and password'''
* This image contains an install of Fedora with [https://www.gnome.org/gnome-3/ GNOME 3] desktop environment.
* To learn more about Fedora please visit the [https://getfedora.org/ official website].
* DD image (for 12GB microSD card / eMMC module and above)
** [https://builds.armdevelopers.com/pinebook-pro/releases/dev/Fedora32-Workstation-202009.0.pinebook-pro.img.xz Fedora 32 Pinebook Pro Image]
* login with:
** username: root
** password: fedora


== Arch Linux ==
The default Arch Linux ARM user credentials.
[[File:Archlinux-logo.png|right|100px]]


=== Arch Linux ARM install image [microSD/USB Boot] ===
{| class="wikitable"
* archiso image customized for Arch Linux ARM on the Pinebook Pro
!colspan="2" style="background: #a7d7f9;"| Default credentials
* DD image (for 1GB or larger microSD card/USB stick):
|-
** [https://github.com/nadiaholmquist/archiso-pbp/releases Direct download for latest releases from GitHub]
! Default user
** size: 579MB
| <code>alarm/alarm</code>
* Automatic login as root
|-
* Make sure to thoroughly read the [https://github.com/nadiaholmquist/archiso-pbp/blob/master/README.md readme] and [https://github.com/nadiaholmquist/archiso-pbp/blob/master/FAQ.md FAQ], otherwise follow the normal Arch installation guide.
! Root user
| <code>root/root</code>
|}


== postmarketOS ==
=== postmarketOS ===
[[File:PostmarketOS logo.png|right|100px]]
[[File:PostmarketOS logo.png|right|100px]]


===Official postmarketOS build [microSD/ eMMC Boot] ===
Official postmarketOS stable builds are available for the Pinebook Pro with the following interfaces:
* Official postmarketOS build with the GNOME desktop for the Pinebook Pro.
 
* DD image (for 8GB microSD card /16GB eMMC module and above):
* console
** [http://images.postmarketos.org/pinebookpro/ Direct download latest images from postmarketOS]
* GNOME
** size: 400MB
* KDE Plasma Desktop
* Login with
* Phosh
** username: demo
* Sway
** password: demo OR 147147
 
It boots from microSD card and from eMMC.


==Kali Linux==
'''Download location'''
[[File:Kali.jpeg|right|100px]]


=== Kali Linux prebuilt OS images for Pinebook Pro [SD/eMMC boot]===
Get the stable image here: https://postmarketos.org/download/ (size: 103 MB to 775 MB)
* Official pre-built OS images of Kali Linux for the Pinebook Pro featuring all tools you'd expect from the distribution.
* DD image (for 8GB microSD card /16GB eMMC module and above):
** [https://www.offensive-security.com/kali-linux-arm-images/ Direct download latest images from Offensive Security's website]
** size: 2.0GB
* Login with
** username: kali
** password: kali


== Q4OS ==
The installer images allows setting up an encrypted installation on SD or eMMC.
 
'''Username and password'''
 
{| class="wikitable"
!colspan="2" style="background: #a7d7f9;"| Default credentials
|-
! Default user
| <code>user/147147</code>
|}
 
===Kali Linux===
[[File:Kali-logo.png|right|100px]]
 
Official pre-built OS images of Kali Linux for the Pinebook Pro featuring all tools you'd expect from the distribution. It boots from microSD card and from eMMC.
 
'''Download location'''
 
Get the latest image here: [https://www.offensive-security.com/kali-linux-arm-images/ Direct download latest images from Offensive Security's website] (size: 2.0 GB)
 
'''Username and password'''
 
{| class="wikitable"
!colspan="2" style="background: #a7d7f9;"| Default credentials
|-
! Default user
| <code>kali/kali</code>
|}
 
=== R-Cade ===
[[File:RCadeLogo.jpg|right|100px]]
 
Retro Center's R-Cade [USB / microSD / eMMC Boot]
* The 4K Media Center Arcade
* [https://www.retro-center.com/about-r-cade/ RCade] Features 100+ retro-gaming systems, a lightweight web browser, and full 4K UHD media playback
* DD image to USB, microSD, or eMMC and boot. Highly recommend using [https://etcher.io/ Etcher]
** [https://github.com/retro-center/rcade_releases/releases Direct download from Retro Center's GitHub]
 
'''Username and password'''
 
{| class="wikitable"
!colspan="2" style="background: #a7d7f9;"| Default credentials
|-
! Root user
| <code>root/retro</code>
|}
 
=== Q4OS ===
[[File:q4os.png|right|100px]]
[[File:q4os.png|right|100px]]


=== Q4OS Test Build Image [microSD / eMMC Boot] ===
Q4OS is advertised as a 'fast and powerful operating system based on the latest technologies while offering highly productive desktop environment'. It boots from microSD card and from eMMC. To learn more please visit the [https://forum.pine64.org/showthread.php?tid=8385 PINE64 forum] or official [https://q4os.org/index.html Q4OS website].
* Q4OS is advertised as a 'fast and powerful operating system based on the latest technologies while offering highly productive desktop environment'
* To learn more please visit the [https://forum.pine64.org/showthread.php?tid=8385 PINE64 forum] or official [https://q4os.org/index.html Q4OS website]
* DD image (for 8GB microSD card / eMMC module and above)
** [https://sourceforge.net/projects/q4os/files/testing/ Direct download latest release build from SourceForge]
*  User account and password are created on first run


= BSD OS Image Release =
'''Download location'''


==NetBSD==
Get the latest image here: [https://sourceforge.net/projects/q4os/files/stable/ Direct download latest release build from SourceForge]
 
'''Username and password'''
 
User account and password are created on first run.
 
=== DietPi ===
[[File:dietpi.png|right|100px]]
 
DietPi is a lightweight, yet easy to setup and feature-rich Linux distribution, based on Debian. To find out more about DietPi, please visit the [https://dietpi.com/docs/ official documentation]. * Discuss the Pinebook Pro build on the [https://forum.pine64.org/showthread.php?tid=14061 PINE64 forum thread].
 
Download:
* [https://dietpi.com/downloads/images/DietPi_PinebookPro-ARMv8-Bookworm.img.xz Direct download from dietpi.com]
 
{| class="wikitable"
!colspan="2" style="background: #a7d7f9;"| Default credentials
|-
! Root user
| <code>root/dietpi</code>
|}
 
=== openSUSE ===
[[File:opensuse-distribution.png|right|100px]]
 
'''Download location'''
 
Get the latest openSUSE Tumbleweed images for Pinebook Pro here: [https://en.opensuse.org/HCL:Pinebook-Pro-RK3399]
 
Credits to [https://bugzilla.opensuse.org/show_bug.cgi?id=1194491]
Step 1. Flash Tow-Boot[https://github.com/Tow-Boot/Tow-Boot] to SPI
Step 2. Flash openSUSE image to sd card & insert it
Step 3. When it loads grub, press e and add the following line:
 
devicetree /boot/dtb/rockchip/rk3399-pinebook-pro.dtb
 
Press ctrl + x to boot
 
Work : display, wifi
Not tested : bluetooth
Doesn't work : audio
 
You may build rpms and see if it fix issues from this repository: [https://github.com/bengtfredh/pinebook-pro-copr]
 
Default password for root is "linux"
 
=== FydeOS ===
An operating system based on the Chromium Project
 
https://fydeos.io/download/device/pinebook-pro
 
=== Void Linux ===
[[File:void_bg.png|right|100px]]
 
==== Images ====
[https://voidlinux.org/ Void Linux] packages U-Boot and a kernel for the Pinebook Pro, but does not distribute any images for the device.
 
Cameron Nemo ([[User:CameronNemo]]) distributes unofficial Void Linux images for the Pinebook Pro:
 
* [https://repo.nohom.org/void/images/void-pinebookpro-20220530.img.xz glibc download]
* [https://repo.nohom.org/void/images/void-pinebookpro-musl-20220610.img.xz musl download]
 
Some notes about the images:
 
* They were released on 2022-05-30 (glibc) and 2022-06-10 (musl)
* They ship U-Boot 2022.04 and Linux 5.15 (with minimal patches)
* Meant to be uncompressed then flashed to either an SD card or the internal eMMC module
* The root partition is ~1.7GB, and must be expanded manually
* There are very few services enabled on the images by default: udev and some getty's
 
{| class="wikitable"
!colspan="2" style="background: #a7d7f9;"| Default credentials
|-
! Root user
| <code>root/voidlinux</code>
|}
 
==== Do It Yourself ====
{{Warning|This is not an official, nor supported way of using Void Linux on the Pinebook Pro.}}
You can also manually install Void from a rootfs tarball: [[Pinebook Pro Installing Void Linux ARM|see instructions here]].
 
== BSD ==
 
=== NetBSD ===
[[File:netbsd.png|right|100px]]
[[File:netbsd.png|right|100px]]


=== NetBSD [microSD /eMMC Boot] ===
The image boots from microSD card and from eMMC. To learn more about NetBSD please visit [https://www.netbsd.org/ NetBSD main page]
* To learn more about NetBSD please visit [https://www.netbsd.org/ NetBSD main page]  
 
* DD image to microSD card or eMMC module. Highly recommend using [https://etcher.io/ Etcher]
'''Download location'''
** [http://www.armbsd.org/arm/ Direct download from NetBSD]
 
* Console and SSH default login:
Get the latest image here: [http://www.armbsd.org/arm/ Direct download from NetBSD]
** username: root
 
** password: [none]
'''Installation'''
* Instructions concerning enabling SSH can be found [https://www.netbsd.org/docs/guide/en/chap-boot.html#chap-boot-ssh here]


==OpenBSD==
Instructions concerning enabling SSH can be found [https://www.netbsd.org/docs/guide/en/chap-boot.html#chap-boot-ssh here].
 
'''Username and password'''
{| class="wikitable"
!colspan="2" style="background: #a7d7f9;"| Default credentials
|-
! Root user
| <code>root/-</code>
|}
 
=== OpenBSD ===
[[File:Puffy_mascot_openbsd.png|right|100px]]
[[File:Puffy_mascot_openbsd.png|right|100px]]


=== OpenBSD ===
The image boots from microSD card and from eMMC. To learn more about OpenBSD, please visit [https://www.openbsd.org/ OpenBSD main page]
* To learn more about OpenBSD, please visit [https://www.openbsd.org/ OpenBSD main page]
 
* ARM64 images, (including support for Pinebook Pro), can be found here [https://www.openbsd.org/arm64.html  OpenBSD arm64]
'''Download location'''


= Linux Installer Releases =
ARM64 images, (including support for Pinebook Pro), can be found here [https://www.openbsd.org/arm64.html OpenBSD arm64]


== Linux Installer Releases ==


=== Manjaro ARM ===
=== Manjaro ARM ===
[[File:Manjaro.png|right|100px]]
[[File:Manjaro-logo.svg|right|100px]]


The [https://gitlab.manjaro.org/manjaro-arm/applications/manjaro-arm-installer manjaro-arm-installer] script is intended to install Manjaro ARM directly to SD/eMMC cards without the need for images (including LXQT, Mate & CuboCore editions, as well as full disk encryption). Running on a Linux x86 computer, it can install Manjaro ARM directly to an empty eMMC using an eMMC to USB adapter. The script can also be run from SD to install an image to the eMMC.
The [https://gitlab.manjaro.org/manjaro-arm/applications/manjaro-arm-installer manjaro-arm-installer] script is intended to install Manjaro ARM directly to SD/eMMC cards without the need for images (including LXQT, Mate & CuboCore editions, as well as full disk encryption).
 
Running on a Linux x86 computer, it can install Manjaro ARM directly to an empty eMMC using an eMMC to USB adapter. The script can also be run from SD to install an image to the eMMC.
 
=== Armbian ===
[[File:armbian.png|right|100px]]
 
You can use the [https://github.com/armbian/build Armbian Builder] to generate your own Armbian images of various types.
 
The builder supports building any version of Debian and any version of Ubuntu with various desktop options:
* Budgie
* Cinnamon
* Deepin
* Enlightenment
* Gnome
* I3-wm
* Kde-plasma
* Mate
* Xfce
* Xmonad


=== Debian ===
=== Debian ===
[[File:debian.png|right|100px]]
[[File:Debian-logo.png|right|100px]]
 
* Uses only the upstream kernel and firmware without special patches
* Uses only the upstream kernel and firmware without special patches
* No graphical display yet, works only through serial console
* Display doesn't always work properly on first boot of installer, usually fixed after a couple tries
* Requires adding the non-free component to your /etc/apt/sources.list file and installing the "firmware-linux" package for Wi-Fi and Bluetooth support
* Requires adding the non-free component to your /etc/apt/sources.list file and installing the "firmware-linux" package for Wi-Fi and Bluetooth support. If your Pinebook Pro was part of the June/July 2022 batch, then you will need the "firmware-brcm80211" to accommodate the changed networking hardware. You will also need "brcmfmac43455-sdio.txt" in /lib/firmware/brcm, at least until it is included within firmware-brcm80211 upstream.
* Installer is loaded into RAM, can install onto the same media from which it’s booted
* Installer is loaded into RAM, can install onto the same media from which it’s booted
* Supports automatic partitioning and full disk encryption through LVM
* Supports automatic partitioning and full disk encryption through LVM
* Installer currently doesn't install the bootloader, leaving the installed system in an unbootable state until it's manually added
* Installer currently doesn't install a functional bootloader, leaving the installed system in an unbootable state until it's manually added (if installed to eMMC, the system cannot be booted even to an SD card unless the eMMC is physically switched off or there is U-Boot in the SPI)


[https://d-i.debian.org/daily-images/arm64/daily/netboot/SD-card-images/ The relevant files are built daily here] and may sometimes be unavailable if the build system is having issues. The "README.concatenateable_images" file provides instructions on how to combine the partition.img.gz file with the firmware.pinebook-pro.rk3399.img.gz file in order to create a DD-able image.
[https://d-i.debian.org/daily-images/arm64/daily/netboot/SD-card-images/ The relevant files are built daily here] and may sometimes be unavailable if the build system is having issues. The "README.concatenateable_images" file provides instructions on how to combine the partition.img.gz file with the firmware.pinebook-pro.rk3399.img.gz file in order to create a DD-able image.


The official images are '''not''' recommended yet until the display begins working and the installer properly installs the bootloader. Most users will want to see [[Pinebook Pro Debian Installer|Daniel Thompson's Debian Installer]] instead.
The official images are '''not''' recommended yet until the display begins working consistently and the installer properly installs the bootloader. Building a Debian-based image via the Armbian builder on the other hand seems to work with no changes.  Previously the best tool was [[Pinebook Pro Debian Installer|Daniel Thompson's Debian Installer]] , but unfortunately as of April 2023 some of the upstream kernel sources this tool used seem to no longer exist.


=== Gentoo ===
=== Gentoo ===
[[File:GentooLogo.png|right|100px]]
[[File:GentooLogo.png|right|100px]]


* This is a script that prepares a Gentoo arm64 stage 3 tarball for the Pinebook Pro
There is a script that prepares a Gentoo arm64 stage 3 tarball for the Pinebook Pro. Unfortunately, this script is not currently functional, and requires extensive troubleshooting to make work. New instructions are currently being created and will be available here.
** The script takes care of device specifics like an optimized make.conf, an overlay that provides kernel and firmware amongst others, and other miscellaneous fixes
 
* The usual tarball setup as per [https://wiki.gentoo.org/wiki/Handbook:AMD64 Gentoo Handbook] is left to the user.
'''Word to the wise'''
* Forum thread with instructions at https://forum.pine64.org/showthread.php?tid=8765
 
Currently, following the instructions on the Pinebook pro gentoo github page will *not* result in a functional system. Therefore it is neccesary to follow the instructions given here. Please bear in mind that the Pinebook pro's six arm cores and 4gb of ram are extremely anemic. For example, emerging the package net-libs/webkit-gtk in order to build the minimalist web-browser "surf", a process which takes eighty minutes on an intel core i5-8250U with 8gb of ram, required eight hours of compile time,
Basic installation alone can take 24 hours of compillation, dozens of reboots, and hours of troubleshooting. After that, even installing firefox would take 17 hours.
Now that that's out of the way, we may begin the installation.
 
'''Preparing the bootloader'''
 
Installing a functional bootloader can be difficult. Luckily, the tow-boot project provides a UEFI-like experience for some arm-based devices. Furthermore, it is not neccesary install this bootloader manually, as it will continue to be useable even after the disk has been reformatted, as long as the bootloader remains unscathed.
 
https://manjaro.org/downloads/arm/pinebook-pro/arm8-pinebook-pro-minimal/
 
No-matter where you intend to install gentoo, the bootloader should always be installed on the eMMC flash, although technically the SD card slot could also be used. Either way, install any of the official Manjaro arm disk images to the internal eMMC (there's no reason not to use the minimal image, as you will not be using this OS for anything). You may use a second operating system installed on an SD-card, or the official Pine64 eMMC USB adapter. Boot into this operating system to ensure that the bootloader functions, but after that you have no further need of it.
 
Next, if you already have an OS on an SD card, you can use that for installing gentoo. If you don't, you may be pleasantly suprised to find that tow-boot is cabable of booting from a USB drive. Therefore, you may install the same Manjaro image to your USB drive or SD card, and select it from the boot menu. You should now have an unused but bootable OS on the eMMC, and another bootable, usable OS on your external storage.
 
'''Preparing the Disks'''
 
Log into your host device as root with the following command:
 
<code> sudo su </code>
 
Enter your password.
 
Let the device on which you intend to install gentoo be refered to hereafter as /dev/<gentoo>. Use the following command to prepare this disk for installation:
 
<code> fdisk -B /dev/<gentoo> </code>
 
Note: don't just copy these commands! You should substitute <gentoo> for mmcblk2 for the internal eMMC flash storage.
 
Note that the first block of the boot partition is block 62500. Delete all partitions, but *do not* re-format the disk. Create a new boot partition starting at 62500, and as it's size select "+1GB". Create a new swap partition. fdisk will try to start it at the beginning of the volume (before the boot partition) Instead, when it prompts you for the starting position, enter in the end sector of the boot partition. It should then tell you that this is within an existing partition, and recommend a slightly higher value. Press enter, and give for the size of the partition any value greater than "+4gb". You need this much ram to be able to suspend your system, and emerge large packages. Don't be stingey - you still have SD cards. I reccomend "+8gb".
Finally, add a root partition starting at the end sector of the swap partition, and use the rest of the disk for it. That should be 50-60 GB depending on the size of your swap and boot partitions.
 
Lastly, press "t" to set the type of each partition. You may set partition 1 to type 6, 2 to type 82, and 3 to type 83.
 
to set the partition types of the three partitions.
 
<code>lsblk</code>
 
to remind yourself which disk is /dev/<gentoo>
Write the filesystems to these three partitions with the commands:
 
<code>mkfs.vfat /dev/<gentoo>p1
 
mkswap /dev/<gentoo>p2
 
mkfs.ext4 /dev/<gentoo>p3</code>
 
 
This may be a slightly different format if you're installing to a usb stick.
 
'''Installation'''
 
make the directory for mounting the filesystem you just created. These should be made on the external OS.
 
<code>mkdir /mnt/gentoo
 
mount /dev/<gentoo>p3 /mnt/gentoo</code>
 
cd into this directory and fire up links. Navigate to gentoo.org/downloads and select the stage 3 minimal stage 3 tarball. Download it to your current directory, or move it to that directory from wherever it has been downloaded to. Once you are in the correct directory, unpack the tarball.
 
<code>tar xpvf stage3-arm64-<blah blah blah></code>
 
Mount the boot partition.
 
<code>mount /dev/<gentoo>p1 /mnt/gentoo/boot</code>
 
Chroot into the mounted directory and Install the operating system as per the AMD64 manual [https://wiki.gentoo.org/wiki/Handbook:AMD64]. Before you emerge anything, however, be sure to set your use flags as follows:
 
<code>nano /etc/portage/make.conf</code>
 
<code>MAKEOPTS="-j4 -l4"
 
ACCEPT_KEYWORDS="* **"
 
ACCEPT_LICENSE="*"
 
USE="X gtk bluetooth pulseaudio"
</code>
 
You can use your own options instead of these if you know what you're doing. It's not super difficult.
 
Continue installing the operating system, but stop just before emerging the @world set. I don't know if this is necessary, but I haven't had the time to try without doing this. Clone Janikk2099's github repo. It doesn't matter where, and run the script. If it fails run it a couple more times.
 
<code>git clone https://github.com/Jannik2099/gentoo-pinebookpro
 
./gentoo-pinebookpro/prepare.sh</code>
 
Don't follow any of Janikk's other instructions. They appear to be out of date (no offense bro). Let me be clear: DO NOT INSTALL U-BOOT. I don't know what will happen, but it won't be an improvement over the existing boot-loader so don't worry about it.
 
Finish installing your system until you come to the kernel.
 
'''Custom Kernel'''
 
Use sys-kernel/gentoo-kernel-bin as your kernel. You will need to manually edit the kernel configuration. First, select it as your kernel.
 
<code>eselect kernel list</code>
 
This should list only one option. Otherwise, select the number matching <code>linux-5.<whatever is latest>-gentoo-dist</code>, and cd into the kernel source directory.
 
<code>eselect kernel set <number>
 
cd /usr/src/linux</code>
 
Begin the kernel configuration
 
<code>make menuconfig</code>
 
At this point, you're almost on your own. I don't know a strict cause-and-effect relationship between my kernel config and the behavior of my system. For starters, just go into platform selection and deselect everything except rockchip platforms. Once you're done save your configuration and exit. Make sure boot is mounted, and your fstab is set up with your swap mounted. Make sure dracut is installed.
 
<code>make
 
make modules
 
make dtbs
 
make install
 
make modules install
 
make dtbs_install
 
ls /lib/modules
 
dracut -f --kver <name of directory in /lib/modules matching your kernel, *not* the kernel name from eselect>
</code>
 
emerge the package extlinux and run <code>u-boot-update</code>. Open the extlinux configuration file.
 
<code>nano /boot/extlinux/extlinux.conf</code>
 
And configure it as follows:
 
LABEL <label of your choice, for example GENTOO ARM>
 
KERNEL /<name of your vmlinuz kernel image. Include the slash, but be relative to boot, not root.>
 
FDT /dtbs/<kernel-version>/rockchip/rk3399-pinebook-pro.dtb
APPEND initrd=/<name of initramfs image> root=PARTUUID-<nboot partition's PARTUUID, no quotes> rw rootwait
</code>
 
You can use the blkid command to find the PARTUUID of every partition on the machine. None of this configuration is guaranteed to work, but it worked for me, and given enough fiddling you can get it to work as well.
 
Now you should reboot the machine and see if it boots into gentoo. If it does: congratulations! If not, too bad. Try again.


=== Kali Linux ===
=== Kali Linux ===
[[File:Kali.jpeg|right|100px]]
[[File:Kali-logo.png|right|100px]]
 
There is a script to create official Kali Linux OS images for the Pinebook Pro. The script carries out the build process in entirety and is Pinebook Pro specific.
 
'''Installation'''


* This is a script to create official Kali Linux OS images for the Pinebook Pro
** The script carries out the build process in entirety and is Pinebook Pro specific
* Please pull the latest [https://gitlab.com/kalilinux/build-scripts/kali-arm/blob/master/pinebook-pro.sh Kali Linux install script] from the project's GitLab.
* Please pull the latest [https://gitlab.com/kalilinux/build-scripts/kali-arm/blob/master/pinebook-pro.sh Kali Linux install script] from the project's GitLab.
* For more information regarding building the OS image please read the README instruction at https://gitlab.com/kalilinux/build-scripts/kali-arm/blob/master/README.md
* For more information regarding building the OS image please read the README instruction at https://gitlab.com/kalilinux/build-scripts/kali-arm/blob/master/README.md


=== K1ss OS ===
=== NixOS ===
[[File:K1ss.png|right|100px]]
[[File:NixOS.webp|right|100px]]


* This is a repository containing an unofficial port of KISS Linux to aarch64. The tarball is built for generic aarch64, currently being tested on the Pinebook Pro.
You can follow the ongoing discussion about NixOS on the [https://forum.pine64.org/showthread.php?tid=10524 PINE64 forum]. There is a good chance we will see Tier 1 support for aarch64, including the Pinebook Pro, in 2021 (see https://github.com/NixOS/rfcs/pull/87).
* Please pull the latest [https://github.com/jedavies-dev/kiss-aarch64 K1ss Linux install script] from the project's GitHub.
* * You can follow the ongoing discussion about K1ss Linux on the PINE64 forum (https://forum.pine64.org/showthread.php?tid=9304)


=== NixOS ===
'''Installation'''
[[File:nixos.png|right|100px]]


* This is instructions to install NixOS on the Pinebook Pro: https://nixos.wiki/wiki/NixOS_on_ARM/PINE64_Pinebook_Pro
* This is instructions to install NixOS on the Pinebook Pro: https://nixos.wiki/wiki/NixOS_on_ARM/PINE64_Pinebook_Pro
* Please pull the latest [https://github.com/samueldr/wip-pinebook-pro samueldr's repository ] from the project's GitHub.
* Please pull the latest [https://github.com/samueldr/wip-pinebook-pro samueldr's repository ] from the project's GitHub.
* * There is a good chance we will see Tier 1 support for aarch64, including the Pinebook Pro, in 2021 (https://github.com/NixOS/rfcs/pull/87)
* * You can follow the ongoing discussion about NixOS on the PINE64 forum (https://forum.pine64.org/showthread.php?tid=10524)


=== SkiffOS ===
=== SkiffOS ===
[[File:SkiffOS-Icon-1.png|right|100px]]
[[File:SkiffOS-Icon-1.png|right|100px]]
'''Installation'''


* Instructions to build/install on the Pinebook Pro: https://github.com/skiffos/SkiffOS/tree/master/configs/pine64/book
* Instructions to build/install on the Pinebook Pro: https://github.com/skiffos/SkiffOS/tree/master/configs/pine64/book
Line 237: Line 494:
* Compiling the boot image takes approximately 30 minutes.
* Compiling the boot image takes approximately 30 minutes.
* Easily configure the kernel, compiler, etc with Buildroot.
* Easily configure the kernel, compiler, etc with Buildroot.
* Pre-built ISOs will be available with the upcoming 2021.02  
* Pre-built ISOs will be available with the upcoming 2021.02 release.
release.
 
=== Slackware ===
 
<div style=float:right>[[File:slackware.jpg|right|100px]]</div>
 
[https://arm.slackware.com/ Slackware] is the world's oldest actively developed Linux distribution, providing a modern user land (applications) and Linux Kernel, within a more classic Unix Operating System environment.
 
More information can be found about Slackware in this [https://www.youtube.com/watch?v=A5PFYUttsWA&list=PL1XOSJnvang3IbwySOf6m3PK1gm13hS5s 20 minute video].
 
[https://docs.slackware.com/slackwarearm:inst Installation instructions].
 
[https://www.youtube.com/watch?v=QKs_RnFqLO8&list=PL1XOSJnvang3VLmqke2QbRitKtOD6Rm3t Installation guide video]
 
=== Ubuntu ===
 
If you install Tow-Boot to the SPI, you may then be able to use generic arm64 install disks, such as those for Ubuntu. This is because Tow-Boot can use UEFI boot partitions. The arm64 builds of the Ubuntu installer "ISOs" can be [http://cdimage.ubuntu.com/ubuntu/releases/22.04/release/ found here]. These can then be converted to UEFI bootable USB drives using a tool such as unetbootin or the Ubuntu "Startup Disk Creator".
 
Ubuntu 22.04 does install and boot on a Pinebook Pro, however the speakers and wifi are non-functional. A USB wifi adapter can get you online.
 
Upgrading such an install to 22.10 fixes the wifi. The graphics are broken in an odd way on first boot, but then functional after that. The speakers are still non-functional.


A fresh install of 22.10 would presumably produce a similar result.


[[Category:PineBook Pro]]
[[Category:Pinebook Pro]]

Latest revision as of 14:59, 26 September 2023

This page contains a list of all available releases and tools for the Pinebook Pro.

Linux OS Image Releases

For information on how to install these images onto your device, please see the Getting started Page, which includes information on writing images to the device eMMC or an SD card

Manjaro ARM

Error creating thumbnail: File missing

The Manjaro project offers a mainline kernel with patches and modules to support the Pinebook Pro hardware. To learn more about Manjaro please visit Manjaro Forum. You can follow the ongoing discussion about Manjaro on the PINE64 forum. All images boot from both SD card and the internal eMMC module.

Download:

  • Direct download from Manjaro: You have to navigate to the Manjaro ARM section and select "Generic" as the device in the drop-down list (the Pinebook Pro image has been removed and it's now included in the generic one since version 22.08. Then you can choose Gnome, KDE Plasma, Mate, Minimal, Sway or Xfce.
  • Old factory release: Manjaro/Plasma 22.06 factory loaded build (June 2022) from pine64.org (1.04GB, MD5 of the XZ file d78031a4bed3eeb4f2001f3c89b9ed5a)

Armbian

Armbian.png

Armbian is a base operating system platform for single board computers (SBCs) that other projects can trust to build upon. It is a lightweight Debian or Ubuntu based Linux distribution specialized for ARM development boards. Each system is compiled, assembled and optimized by the Armbian Build Tools. It has powerful build and software development tools to make custom builds and a vibrant community.

Download:

Notes:

  • If you have any difficulties please visit our forum or come chat with us on IRC / Discord!
  • As of April 2023, Armbian only has Ubuntu images pre-made. However, using their tools to create a Debian image from scratch takes little expertise and results in an image that can be burned onto a USB stick or SD card. Their installer can then install it onto internal eMMC, including a working bootloader.

Twister OS

Twister OS.png

Twister OS Armbian-Reforged with Xfce. It boots from microSD card and from eMMC. For more information on Twister OS, please visit this official site. You can follow the ongoing discussion about Twister OS on the PINE64 forum.

Installation

  • After flashing image, edit /boot/armbianEnv.txt, replace the dtb name with rk3399-pinebook-pro.dtb

Download location

Get the latest image here: Direct download latest images from Twister OS's website (size: 2.8GB)

Password

Default credentials
Root user root/asdasd

Fedora

Fedora1.png

Fedora Linux is a Linux distribution developed by the Fedora Project. It creates an innovative, free, and open source platform for hardware, clouds, and containers that enables software developers and community members to build tailored solutions for their users.

Installation:

  • Using this blog post it is possible to run Official Fedora on the Pinebook Pro

Notes:

  • Upstream Fedora uses the SPI flash on the Pinebook Pro to manage U-Boot.

Arch Linux ARM

Archlinux-logo.png

Official Installation

See Pinebook Pro Installing Arch Linux ARM for instructions on how to install the official Arch Linux ARM.

Customized Premade Root Filesystem

An Arch Linux ARM root filesystem customized for the Pinebook Pro using Manjaro's kernel is available. Instructions are included for installation on microSD card, eMMC module and NVME SSD.

Download location

Get the latest root filesystem from GitHub (size: 500-600 MB).

Installation

Make sure to thoroughly read the readme, installation instructions and FAQ.

Username and password

The default Arch Linux ARM user credentials.

Default credentials
Default user alarm/alarm
Root user root/root

postmarketOS

PostmarketOS logo.png

Official postmarketOS stable builds are available for the Pinebook Pro with the following interfaces:

  • console
  • GNOME
  • KDE Plasma Desktop
  • Phosh
  • Sway

It boots from microSD card and from eMMC.

Download location

Get the stable image here: https://postmarketos.org/download/ (size: 103 MB to 775 MB)

The installer images allows setting up an encrypted installation on SD or eMMC.

Username and password

Default credentials
Default user user/147147

Kali Linux

Kali-logo.png

Official pre-built OS images of Kali Linux for the Pinebook Pro featuring all tools you'd expect from the distribution. It boots from microSD card and from eMMC.

Download location

Get the latest image here: Direct download latest images from Offensive Security's website (size: 2.0 GB)

Username and password

Default credentials
Default user kali/kali

R-Cade

RCadeLogo.jpg

Retro Center's R-Cade [USB / microSD / eMMC Boot]

Username and password

Default credentials
Root user root/retro

Q4OS

Q4os.png

Q4OS is advertised as a 'fast and powerful operating system based on the latest technologies while offering highly productive desktop environment'. It boots from microSD card and from eMMC. To learn more please visit the PINE64 forum or official Q4OS website.

Download location

Get the latest image here: Direct download latest release build from SourceForge

Username and password

User account and password are created on first run.

DietPi

Dietpi.png

DietPi is a lightweight, yet easy to setup and feature-rich Linux distribution, based on Debian. To find out more about DietPi, please visit the official documentation. * Discuss the Pinebook Pro build on the PINE64 forum thread.

Download:

Default credentials
Root user root/dietpi

openSUSE

Opensuse-distribution.png

Download location

Get the latest openSUSE Tumbleweed images for Pinebook Pro here: [1]

Credits to [2] Step 1. Flash Tow-Boot[3] to SPI Step 2. Flash openSUSE image to sd card & insert it Step 3. When it loads grub, press e and add the following line:

devicetree /boot/dtb/rockchip/rk3399-pinebook-pro.dtb

Press ctrl + x to boot

Work : display, wifi Not tested : bluetooth Doesn't work : audio

You may build rpms and see if it fix issues from this repository: [4]

Default password for root is "linux"

FydeOS

An operating system based on the Chromium Project

https://fydeos.io/download/device/pinebook-pro

Void Linux

Void bg.png

Images

Void Linux packages U-Boot and a kernel for the Pinebook Pro, but does not distribute any images for the device.

Cameron Nemo (User:CameronNemo) distributes unofficial Void Linux images for the Pinebook Pro:

Some notes about the images:

  • They were released on 2022-05-30 (glibc) and 2022-06-10 (musl)
  • They ship U-Boot 2022.04 and Linux 5.15 (with minimal patches)
  • Meant to be uncompressed then flashed to either an SD card or the internal eMMC module
  • The root partition is ~1.7GB, and must be expanded manually
  • There are very few services enabled on the images by default: udev and some getty's
Default credentials
Root user root/voidlinux

Do It Yourself

Warning: This is not an official, nor supported way of using Void Linux on the Pinebook Pro.

You can also manually install Void from a rootfs tarball: see instructions here.

BSD

NetBSD

Netbsd.png

The image boots from microSD card and from eMMC. To learn more about NetBSD please visit NetBSD main page

Download location

Get the latest image here: Direct download from NetBSD

Installation

Instructions concerning enabling SSH can be found here.

Username and password

Default credentials
Root user root/-

OpenBSD

Puffy mascot openbsd.png

The image boots from microSD card and from eMMC. To learn more about OpenBSD, please visit OpenBSD main page

Download location

ARM64 images, (including support for Pinebook Pro), can be found here OpenBSD arm64

Linux Installer Releases

Manjaro ARM

Error creating thumbnail: File missing

The manjaro-arm-installer script is intended to install Manjaro ARM directly to SD/eMMC cards without the need for images (including LXQT, Mate & CuboCore editions, as well as full disk encryption).

Running on a Linux x86 computer, it can install Manjaro ARM directly to an empty eMMC using an eMMC to USB adapter. The script can also be run from SD to install an image to the eMMC.

Armbian

Armbian.png

You can use the Armbian Builder to generate your own Armbian images of various types.

The builder supports building any version of Debian and any version of Ubuntu with various desktop options:

  • Budgie
  • Cinnamon
  • Deepin
  • Enlightenment
  • Gnome
  • I3-wm
  • Kde-plasma
  • Mate
  • Xfce
  • Xmonad

Debian

Debian-logo.png
  • Uses only the upstream kernel and firmware without special patches
  • Display doesn't always work properly on first boot of installer, usually fixed after a couple tries
  • Requires adding the non-free component to your /etc/apt/sources.list file and installing the "firmware-linux" package for Wi-Fi and Bluetooth support. If your Pinebook Pro was part of the June/July 2022 batch, then you will need the "firmware-brcm80211" to accommodate the changed networking hardware. You will also need "brcmfmac43455-sdio.txt" in /lib/firmware/brcm, at least until it is included within firmware-brcm80211 upstream.
  • Installer is loaded into RAM, can install onto the same media from which it’s booted
  • Supports automatic partitioning and full disk encryption through LVM
  • Installer currently doesn't install a functional bootloader, leaving the installed system in an unbootable state until it's manually added (if installed to eMMC, the system cannot be booted even to an SD card unless the eMMC is physically switched off or there is U-Boot in the SPI)

The relevant files are built daily here and may sometimes be unavailable if the build system is having issues. The "README.concatenateable_images" file provides instructions on how to combine the partition.img.gz file with the firmware.pinebook-pro.rk3399.img.gz file in order to create a DD-able image.

The official images are not recommended yet until the display begins working consistently and the installer properly installs the bootloader. Building a Debian-based image via the Armbian builder on the other hand seems to work with no changes. Previously the best tool was Daniel Thompson's Debian Installer , but unfortunately as of April 2023 some of the upstream kernel sources this tool used seem to no longer exist.

Gentoo

GentooLogo.png

There is a script that prepares a Gentoo arm64 stage 3 tarball for the Pinebook Pro. Unfortunately, this script is not currently functional, and requires extensive troubleshooting to make work. New instructions are currently being created and will be available here.

Word to the wise

Currently, following the instructions on the Pinebook pro gentoo github page will *not* result in a functional system. Therefore it is neccesary to follow the instructions given here. Please bear in mind that the Pinebook pro's six arm cores and 4gb of ram are extremely anemic. For example, emerging the package net-libs/webkit-gtk in order to build the minimalist web-browser "surf", a process which takes eighty minutes on an intel core i5-8250U with 8gb of ram, required eight hours of compile time, Basic installation alone can take 24 hours of compillation, dozens of reboots, and hours of troubleshooting. After that, even installing firefox would take 17 hours. Now that that's out of the way, we may begin the installation.

Preparing the bootloader

Installing a functional bootloader can be difficult. Luckily, the tow-boot project provides a UEFI-like experience for some arm-based devices. Furthermore, it is not neccesary install this bootloader manually, as it will continue to be useable even after the disk has been reformatted, as long as the bootloader remains unscathed.

https://manjaro.org/downloads/arm/pinebook-pro/arm8-pinebook-pro-minimal/

No-matter where you intend to install gentoo, the bootloader should always be installed on the eMMC flash, although technically the SD card slot could also be used. Either way, install any of the official Manjaro arm disk images to the internal eMMC (there's no reason not to use the minimal image, as you will not be using this OS for anything). You may use a second operating system installed on an SD-card, or the official Pine64 eMMC USB adapter. Boot into this operating system to ensure that the bootloader functions, but after that you have no further need of it.

Next, if you already have an OS on an SD card, you can use that for installing gentoo. If you don't, you may be pleasantly suprised to find that tow-boot is cabable of booting from a USB drive. Therefore, you may install the same Manjaro image to your USB drive or SD card, and select it from the boot menu. You should now have an unused but bootable OS on the eMMC, and another bootable, usable OS on your external storage.

Preparing the Disks

Log into your host device as root with the following command:

sudo su

Enter your password.

Let the device on which you intend to install gentoo be refered to hereafter as /dev/<gentoo>. Use the following command to prepare this disk for installation:

fdisk -B /dev/<gentoo>

Note: don't just copy these commands! You should substitute <gentoo> for mmcblk2 for the internal eMMC flash storage.

Note that the first block of the boot partition is block 62500. Delete all partitions, but *do not* re-format the disk. Create a new boot partition starting at 62500, and as it's size select "+1GB". Create a new swap partition. fdisk will try to start it at the beginning of the volume (before the boot partition) Instead, when it prompts you for the starting position, enter in the end sector of the boot partition. It should then tell you that this is within an existing partition, and recommend a slightly higher value. Press enter, and give for the size of the partition any value greater than "+4gb". You need this much ram to be able to suspend your system, and emerge large packages. Don't be stingey - you still have SD cards. I reccomend "+8gb". Finally, add a root partition starting at the end sector of the swap partition, and use the rest of the disk for it. That should be 50-60 GB depending on the size of your swap and boot partitions.

Lastly, press "t" to set the type of each partition. You may set partition 1 to type 6, 2 to type 82, and 3 to type 83.

to set the partition types of the three partitions.

lsblk

to remind yourself which disk is /dev/<gentoo> Write the filesystems to these three partitions with the commands:

mkfs.vfat /dev/<gentoo>p1

mkswap /dev/<gentoo>p2

mkfs.ext4 /dev/<gentoo>p3


This may be a slightly different format if you're installing to a usb stick.

Installation

make the directory for mounting the filesystem you just created. These should be made on the external OS.

mkdir /mnt/gentoo

mount /dev/<gentoo>p3 /mnt/gentoo

cd into this directory and fire up links. Navigate to gentoo.org/downloads and select the stage 3 minimal stage 3 tarball. Download it to your current directory, or move it to that directory from wherever it has been downloaded to. Once you are in the correct directory, unpack the tarball.

tar xpvf stage3-arm64-<blah blah blah>

Mount the boot partition.

mount /dev/<gentoo>p1 /mnt/gentoo/boot

Chroot into the mounted directory and Install the operating system as per the AMD64 manual [5]. Before you emerge anything, however, be sure to set your use flags as follows:

nano /etc/portage/make.conf

MAKEOPTS="-j4 -l4"

ACCEPT_KEYWORDS="* **"

ACCEPT_LICENSE="*"

USE="X gtk bluetooth pulseaudio"

You can use your own options instead of these if you know what you're doing. It's not super difficult.

Continue installing the operating system, but stop just before emerging the @world set. I don't know if this is necessary, but I haven't had the time to try without doing this. Clone Janikk2099's github repo. It doesn't matter where, and run the script. If it fails run it a couple more times.

git clone https://github.com/Jannik2099/gentoo-pinebookpro

./gentoo-pinebookpro/prepare.sh

Don't follow any of Janikk's other instructions. They appear to be out of date (no offense bro). Let me be clear: DO NOT INSTALL U-BOOT. I don't know what will happen, but it won't be an improvement over the existing boot-loader so don't worry about it.

Finish installing your system until you come to the kernel.

Custom Kernel

Use sys-kernel/gentoo-kernel-bin as your kernel. You will need to manually edit the kernel configuration. First, select it as your kernel.

eselect kernel list

This should list only one option. Otherwise, select the number matching linux-5.<whatever is latest>-gentoo-dist, and cd into the kernel source directory.

eselect kernel set <number>

cd /usr/src/linux

Begin the kernel configuration

make menuconfig

At this point, you're almost on your own. I don't know a strict cause-and-effect relationship between my kernel config and the behavior of my system. For starters, just go into platform selection and deselect everything except rockchip platforms. Once you're done save your configuration and exit. Make sure boot is mounted, and your fstab is set up with your swap mounted. Make sure dracut is installed.

make

make modules

make dtbs

make install

make modules install

make dtbs_install

ls /lib/modules

dracut -f --kver <name of directory in /lib/modules matching your kernel, *not* the kernel name from eselect>

emerge the package extlinux and run u-boot-update. Open the extlinux configuration file.

nano /boot/extlinux/extlinux.conf

And configure it as follows:

LABEL <label of your choice, for example GENTOO ARM>

KERNEL /<name of your vmlinuz kernel image. Include the slash, but be relative to boot, not root.>

FDT /dtbs/<kernel-version>/rockchip/rk3399-pinebook-pro.dtb

APPEND initrd=/<name of initramfs image> root=PARTUUID-<nboot partition's PARTUUID, no quotes> rw rootwait

You can use the blkid command to find the PARTUUID of every partition on the machine. None of this configuration is guaranteed to work, but it worked for me, and given enough fiddling you can get it to work as well.

Now you should reboot the machine and see if it boots into gentoo. If it does: congratulations! If not, too bad. Try again.

Kali Linux

Kali-logo.png

There is a script to create official Kali Linux OS images for the Pinebook Pro. The script carries out the build process in entirety and is Pinebook Pro specific.

Installation

NixOS

Error creating thumbnail: File missing

You can follow the ongoing discussion about NixOS on the PINE64 forum. There is a good chance we will see Tier 1 support for aarch64, including the Pinebook Pro, in 2021 (see https://github.com/NixOS/rfcs/pull/87).

Installation

SkiffOS

SkiffOS-Icon-1.png

Installation

  • Instructions to build/install on the Pinebook Pro: https://github.com/skiffos/SkiffOS/tree/master/configs/pine64/book
  • Please pull the latest version from the project's GitHub.
  • Compiling the boot image takes approximately 30 minutes.
  • Easily configure the kernel, compiler, etc with Buildroot.
  • Pre-built ISOs will be available with the upcoming 2021.02 release.

Slackware

Slackware.jpg

Slackware is the world's oldest actively developed Linux distribution, providing a modern user land (applications) and Linux Kernel, within a more classic Unix Operating System environment.

More information can be found about Slackware in this 20 minute video.

Installation instructions.

Installation guide video

Ubuntu

If you install Tow-Boot to the SPI, you may then be able to use generic arm64 install disks, such as those for Ubuntu. This is because Tow-Boot can use UEFI boot partitions. The arm64 builds of the Ubuntu installer "ISOs" can be found here. These can then be converted to UEFI bootable USB drives using a tool such as unetbootin or the Ubuntu "Startup Disk Creator".

Ubuntu 22.04 does install and boot on a Pinebook Pro, however the speakers and wifi are non-functional. A USB wifi adapter can get you online.

Upgrading such an install to 22.10 fixes the wifi. The graphics are broken in an odd way on first boot, but then functional after that. The speakers are still non-functional.

A fresh install of 22.10 would presumably produce a similar result.