Difference between revisions of "Pinebook Pro Software Releases"

From PINE64
Jump to navigation Jump to search
m (→‎DietPi: Update link for new xz-compressed image and Bookworm)
 
(171 intermediate revisions by 57 users not shown)
Line 1: Line 1:
= OS Image Releases =
This page contains a list of all available releases and tools for the [[Pinebook Pro]].
== Debian Desktop ==
[[File:debian.png|right|100px]]


=== Debian Desktop Community Build Image [microSD to eMMC] by mrfixit2001 ===
== Linux OS Image Releases ==
* This is the default OS comes with Pinebook Pro
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
* Included Desktop, Firefox Browser, and LibreOffice Suite
* DD image (for 8GB microSD card / 16GB eMMC module and above):
** [https://github.com/mrfixit2001/debian_desktop/releases/download/191123/pinebookpro-debian-desktop-mrfixit-191123.img.xz Direct download release build 191123 from mrfixit2001's github]
*** MD5 (img file): BF67F3A0229769A7472D418AD45F8AB0
*** File Size: 1.19GB
* Login with
** username: rock
** password: rock


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


=== Bionic LXDE Community Build Image by ayufan [microSD and eMMC Boot] ===
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].
* Included LXDE Desktop, Firefox Browser, and LibreOffice Suite
All images boot from both SD card and the internal eMMC module.
* DD image (for 8GB micoSD card /16GB eMMC module and above):
** [https://github.com/ayufan-rock64/linux-build/releases/download/0.9.14/bionic-lxde-pinebookpro-0.9.14-1159-armhf.img.xz Direct download release build 0.9.14 from ayufan's github]
** MD5 (XZ file): B74E8366615DAE89AEB5CC878F2B316B
** size: 763MB
* Login with
** username: rock64
** password: rock64


== Bionic Mate ==
Download:
[[File:mate.png|right|100px]]
* [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'')


=== Bionic Mate Community Build Image [microSD Boot] by ayufan ===
=== Armbian ===
* Included Mate Desktop, Firefox Browser, and LibreOffice Suite
[[File:armbian.png|right|100px]]
* DD image (for 8GB micoSD card /16GB eMMC module and above):
 
** [https://github.com/ayufan-rock64/linux-build/releases/download/0.9.14/bionic-mate-pinebookpro-0.9.14-1159-armhf.img.xz Direct download release build 0.9.14 from ayufan's github]
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.
** MD5 (XZ file): 5F60494B9248570FAF5853860A26B489
 
** size: 1.06GB
Download:
* Login with
* [https://www.armbian.com/pinebook-pro/ The Pinebook Pro Download Page]
** username: rock64
 
** password: rock64
Notes:
* 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.
 
=== Twister OS ===
 
[[File:Twister_OS.png|right|100px]]
 
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].
 
'''Installation'''
 
* After flashing image, edit /boot/armbianEnv.txt, replace the dtb name with <code>rk3399-pinebook-pro.dtb</code>
 
'''Download location'''
 
Get the latest image here: [https://twisteros.com/twisterarmbian.html Direct download latest images from Twister OS's website] (size: 2.8GB)
 
'''Password'''
 
{| class="wikitable"
!colspan="2" style="background: #a7d7f9;"| Default credentials
|-
! Root user
| <code>root/asdasd</code>
|}
 
=== Fedora ===
[[File:fedora1.png|right|100px]]
 
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.


== Arch Linux ARM [microSD /eMMC Boot] ==
Installation:
* 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


* A minimal Arch Linux ARM image, it is set up as a single ext4 partition and only has the minimum packages needed to boot the Pinebook Pro and connect to Wi-Fi. The image could either be used as-is, or written to an SD card to use to set up an Arch system yourself on the eMMC.
Notes:
* The Pinebook Pro-specific packages are taken from Brian Salcedo's repository.
* Upstream Fedora uses the SPI flash on the Pinebook Pro to manage U-Boot.
* DD image:
** [https://github.com/nadiaholmquist/arch-pbp/releases/download/20200128/alarm-2020-01-28.img.xz Direct download pre-built image 2020-01-28 from nadiaholmquist's github]


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


* 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).
==== Official Installation ====
* To learn more about Manjaro please visit [https://forum.manjaro.org/tags/manjaroarm Manjaro Forum]
See [[Pinebook Pro Installing Arch Linux ARM]] for instructions on how to install the official Arch Linux ARM.


=== Manjaro ARM with KDE (Plasma) desktop [microSD / eMMC Boot] ===
==== 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.


* [https://manjaro.org/download/arm/pinebook-pro/arm8-pinebook-pro-kde-plasma/ Direct download from Manjaro]
'''Download location'''
* [https://osdn.net/projects/manjaro-arm/storage/pbpro/kde-plasma/ Direct download from osdn.net]


=== Manjaro ARM with GTK (XFCE) desktop [microSD / eMMC Boot] ===
[https://github.com/SvenKiljan/archlinuxarm-pbp/releases/latest Get the latest root filesystem from GitHub] (size: 500-600 MB).


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


=== Manjaro ARM Test Build Image with GTK (Gnome) desktop [microSD 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].


* [https://drive.google.com/file/d/1_nJXc5rlUKwNJJYRFqYDAwpeGitljTCz/view?usp=sharing/ Direct download from Google Drive]
'''Username and password'''


== Q4OS ==
The default Arch Linux ARM user credentials.
 
{| class="wikitable"
!colspan="2" style="background: #a7d7f9;"| Default credentials
|-
! Default user
| <code>alarm/alarm</code>
|-
! Root user
| <code>root/root</code>
|}
 
=== postmarketOS ===
[[File:PostmarketOS logo.png|right|100px]]
 
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'''
 
{| 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]
'''Download location'''
* DD image (for 8GB micoSD card / eMMC module and above)
 
** [https://sourceforge.net/projects/q4os/files/testing/ Direct download latest release build from SourceForge]
Get the latest image here: [https://sourceforge.net/projects/q4os/files/stable/ Direct download latest release build from SourceForge]
* login with:
 
** username: rock
'''Username and password'''
** password: rock
 
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


== OpenSUSE ==
https://fydeos.io/download/device/pinebook-pro
[[File:Opensuse1.png|right|100px]]


=== OpenSUSE XFCE OS Image [microSD / eMMC Boot] ===
=== Void Linux ===
* This image contains an install openSUSE tumbleweed with XFCE desktop environment.
[[File:void_bg.png|right|100px]]
* To learn more about OpenSUSE please visit the [https://www.opensuse.org/ official website].
* Pinebook Pro build instructions can be found [https://github.com/smithmcgriff/opensuse-on-pinebookpro-gnome here]
* DD image (for 16GB micoSD card / eMMC module and above)
** [https://sourceforge.net/projects/opensuse-on-pinebookpro/files/Rel_1/ Direct download latest release build from SourceForge]
* login with:
** username: root
** password: linux


=== OpenSUSE GNOME 3 OS Image [microSD / eMMC Boot] ===
==== Images ====
* This image contains an install of openSUSE tumbleweed with GNOME 3 desktop environment.
[https://voidlinux.org/ Void Linux] packages U-Boot and a kernel for the Pinebook Pro, but does not distribute any images for the device.
* To learn more about OpenSUSE please visit the [https://www.opensuse.org/ official website].
* Pinebook Pro build instructions can be found [https://github.com/smithmcgriff/opensuse-on-pinebookpro-gnome here]
* DD image (for 16GB micoSD card / eMMC module and above)
** [https://sourceforge.net/projects/opensuse-on-pinebookpro/files/Rel_1/ Direct download latest release build from SourceForge]
* login with:
** username: tux
** password: susepassword


== Fedora ==
Cameron Nemo ([[User:CameronNemo]]) distributes unofficial Void Linux images for the Pinebook Pro:
[[File:fedora1.png|right|100px]]
 
* [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]]
 
The image boots from microSD card and from eMMC. To learn more about NetBSD please visit [https://www.netbsd.org/ NetBSD main page]
 
'''Download location'''
 
Get the latest image here: [http://www.armbsd.org/arm/ Direct download from NetBSD]
 
'''Installation'''
 
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]]
 
The image boots from microSD card and from eMMC. To learn more about OpenBSD, please visit [https://www.openbsd.org/ OpenBSD main page]
 
'''Download location'''
 
ARM64 images, (including support for Pinebook Pro), can be found here [https://www.openbsd.org/arm64.html OpenBSD arm64]
 
== Linux Installer Releases ==
 
=== Manjaro ARM ===
[[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).


=== Fedora GNOME3 OS Image [microSD / eMMC Boot] ===
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.
* This image contains an install of Fedora with GNOME3 desktop environment.
* To learn more about Fedora please visit the [https://getfedora.org/ official website].
* Pinebook Pro build instructions can be found [https://github.com/smithmcgriff/Fedora-on-pinebookpro here]
* DD image (for 8GB micoSD card / eMMC module and above)
** [https://sourceforge.net/projects/opensuse-on-pinebookpro/files/Rel_2/ Direct download latest release build from SourceForge]
* login with:
** username: tux
** password: susepassword


== Armbian ==
=== Armbian ===
[[File:armbian.png|right|100px]]
[[File:armbian.png|right|100px]]


=== Armbian [microSD / eMMC Boot] ===
You can use the [https://github.com/armbian/build Armbian Builder] to generate your own Armbian images of various types.
* Armbian provides well maintained Debian and Ubuntu OS images tailored to ARM devices
 
* To learn more please visit the [https://www.armbian.com/ Armbian's website]
The builder supports building any version of Debian and any version of Ubuntu with various desktop options:
* DD image (for 8GB micoSD card / eMMC module and above)
* Budgie
** [https://www.armbian.com/pinebook-pro/ Direct download latest release from Armbian]
* Cinnamon
* login with:
* Deepin
** username: root
* Enlightenment
** password: 1234
* Gnome
* I3-wm
* Kde-plasma
* Mate
* Xfce
* Xmonad
 
=== Debian ===
[[File:Debian-logo.png|right|100px]]
 
* 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)
 
[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 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 ===
[[File:GentooLogo.png|right|100px]]
 
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:
 
<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>


=== Armbian [microSD / eMMC Boot] ===
cd /usr/src/linux</code>
* Armbian provides well maintained Debian and Ubuntu OS images tailored to ARM devices
* To learn more please visit the [https://www.armbian.com/ Armbian's website]
* DD image (for 8GB micoSD card / eMMC module and above)
** [https://www.armbian.com/pinebook-pro/ Direct download latest release from Armbian]
* login with:
** username: root
** password: 1234


==NetBSD==
Begin the kernel configuration
[[File:netbsd.png|right|100px]]
 
<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


=== NetBSD [microSD /eMMC Boot] ===
make modules
* 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]
** [http://www.armbsd.org/arm/ Direct download from NetBSD]
* Console and SSH default login:
** username: root
** password: [none]
* Instructions concerning enabling SSH can be found [https://www.netbsd.org/docs/guide/en/chap-boot.html#chap-boot-ssh here]


== Chromium ==
make dtbs
[[File:chromium.jpg|right|100px]]


=== Chromium Community Build Image by ayufan [microSD and eMMC Boot] ===
make install
* DD image (for 8GB micoSD card/16GB eMMC module and above)
** [https://github.com/ayufan-rock64/chromiumos-build/releases/download/R77-12371.7.104.g78f88d6/chromiumos-rockpro64-R77-12371.7.104.g78f88d6.img.xz Direct download R77 build from ayufan's github]
** MD5 (XZ file): 7B747B6D2B041C5C0C6434DDB524DB66
** size: 387MB


== openSUSE Tumbleweed [microSD /eMMC Boot]==
make modules install
* Included Xfce Desktop, Firefox Browser, and LibreOffice Suite
** DD image (for 32GB microSD card /32GB eMMC module and above):


https://github.com/smithmcgriff/openSUSE-on-pinebookpro
make dtbs_install


== Fedora Workstation with Gnome Desktop [microSD /eMMC Boot]==
ls /lib/modules
* Included Gnome Desktop, Firefox Browser, and LibreOffice Suite
** DD image (for 32GB microSD card /32GB eMMC module and above):


https://github.com/smithmcgriff/Fedora-on-pinebookpro
dracut -f --kver <name of directory in /lib/modules matching your kernel, *not* the kernel name from eselect>
</code>


= Android Image Releases =
emerge the package extlinux and run <code>u-boot-update</code>. Open the extlinux configuration file.
== Android 7.1 microSD ==
[[File:android_7.png|right|100px]]


=== Stock Android for DD method [micro SD Boot] [20190918] ===
<code>nano /boot/extlinux/extlinux.conf</code>
* Production floor testing image
* DD image to microSD card and boot.
* Highly recommend using [https://etcher.io/ Etcher] or [https://github.com/pine64dev/PINE64-Installer/blob/master/README.md#download PINE64 Installer]
* Please allow 3-5 minutes boot up time on first time for initialization
* DD image for 8GB microSD card
** [http://files.pine64.org/os/PinebookPro/Android/PinebookPro_dd_20190918_stock_android_7.1_sdboot-8GB.img.gz Direct download from pine64.org]
*** MD5 (GZip file): 207BCBFFF59C1AB29F8ADC63D426EACB
*** File Size: 562MB
* DD image for 16GB microSD card
** [http://files.pine64.org/os/PinebookPro/Android/PinebookPro_dd_20190918_stock_android_7.1_sdboot-16GB.img.gz Direct download from pine64.org]
*** MD5 (GZip file): B1FC25A2F896F5C6B4B85EA6D1E75CDA
*** File Size: 571MB
* DD image for 32GB microSD card
** [http://files.pine64.org/os/PinebookPro/Android/PinebookPro_dd_20190918_stock_android_7.1_sdboot-32GB.img.gz Direct download from pine64.org]
*** MD5 (GZip file): A07E2C2A2798A77375268E423A30048A
*** File Size: 589MB
* DD image for 64GB microSD card
** [http://files.pine64.org/os/PinebookPro/Android/PinebookPro_dd_20190918_stock_android_7.1_sdboot-64GB.img.gz Direct download from pine64.org]
*** MD5 (GZip file): D7626BD50443A88AEB9254C88C575284
*** File Size: 627MB


=== Stock for RK Flash tool [SD Boot] [20190427] ===
And configure it as follows:
* Please unzip first and then using [http://files.pine64.org/os/ROCK64/android/SDDiskTool_v1.57.zip Rockchip SD Firmware Tool ver 1.57] to flash in, please remember to select "SD boot" option.
** [http://files.pine64.org/os/PinebookPro/Android/PinebookPro_20190918_stock_android_7.1_sdboot.img.gz Direct download from pine64.org]
** MD5 (GZip file): DBA2109C393F514132EC8D5FB6E8EBE2
** File Size: 555MB


== Android 7.1 eMMC ==
LABEL <label of your choice, for example GENTOO ARM>
=== Stock Android for DD method [eMMC Boot] [20190807] ===
* Production floor testing image
* Please allows some time (around 5 minutes) for the initialization process on 1st boot
* DD image for 64GB eMMC Module
** [http://files.pine64.org/os/PinebookPro/Android/PinebookPro_dd_20190807_stock_android_7.1_emmcboot-64GB.img.gz Direct download from pine64.org]
*** MD5 (GZip file): 314583B550AFF0F424D9997D237D7046
*** File Size: 634MB
* DD image for 128GB eMMC Module
** [http://files.pine64.org/os/PinebookPro/Android/PinebookPro_dd_20190807_stock_android_7.1_emmcboot-128GB.img.gz Direct download from pine64.org]
*** MD5 (GZip file): 16942B8F9EEE79B81FADDB09AF7E2E80
*** File Size: 700MB


=== Stock for RK Flash tool [eMMC Boot] [20190807] ===
KERNEL /<name of your vmlinuz kernel image. Include the slash, but be relative to boot, not root.>
* Please unzip first and then using [http://files.pine64.org/os/ROCK64/android/AndroidTool_Release_v2.63.zip Rockchip Android tool ver 2.63] to flash in
* The OTG port located at USB type-C connector, needs USB type A to type C cable.
* [http://wiki.pine64.org/index.php/NOOB#Flashing_to_eMMC_using_Rockchip_Tools_.28Rock64_Only.29 Guide to flashing eMMC using Rockchip Tools]
* Please allow 3-5 minutes boot up time on first time for initialization
** [http://files.pine64.org/os/PinebookPro/Android/PinebookPro_20190807_stock_android_7.1_emmcboot.img.gz Direct download from pine64.org]
** MD5 (GZip file): DC4C330787E57FC05F9D7D740F741620
** File Size: 555MB


= Linux Installer Releases =
FDT /dtbs/<kernel-version>/rockchip/rk3399-pinebook-pro.dtb
== Debian Installer ==
[[File:debian.png|right|100px]]
APPEND initrd=/<name of initramfs image> root=PARTUUID-<nboot partition's PARTUUID, no quotes> rw rootwait
</code>


=== Debian Installer for Pinebook Pro ===
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.
* This is an image creator and Debian installer that runs from an existing Linux OS and installs Debian Bullseye
** Installer can configure an encrypted rootfs and provides a choice of desktops, including the default Debian desktop based on Gnome 3
** Strict adoption of upstream Debian packages (with exception of kernel and bootloaders) in order to provide a clean upgrade path as Bullseye matures
* Download at: https://github.com/daniel-thompson/pinebook-pro-debian-installer/
* Pull requests welcome but for discussion and support please use [https://forum.pine64.org/showthread.php?tid=8487 the forum topic].


For more information, see the [[Pinebook_Pro_Debian_Installer]] wiki page
Now you should reboot the machine and see if it boots into gentoo. If it does: congratulations! If not, too bad. Try again.


== Gentoo Script ==
=== Kali Linux ===
[[File:gentoo.png|right|100px]]
[[File:Kali-logo.png|right|100px]]


=== Gentoo Script for Pinebook Pro ===
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.
* This is a script that prepares a Gentoo arm64 stage 3 tarball for the Pinebook Pro
** 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.
* Forum thread with instructions at https://forum.pine64.org/showthread.php?tid=8765


==Kali Script==
'''Installation'''
[[File:Kali.jpeg|right|100px]]


=== Kali Linux for Pinebook Pro ===
* 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.
* 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 lastest [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
=== NixOS ===
[[File:NixOS.webp|right|100px]]
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).
'''Installation'''
* 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.
=== SkiffOS ===
[[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
* 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 ===
<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]]

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

Manjaro-logo.svg

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

Manjaro-logo.svg

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

NixOS.webp

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.