[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.

Welcome to the Slackware Documentation Project

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
slackwarearm:inst_sa64_cur_rk3399_rockpro64 [2021/12/06 11:04 (UTC)] mozesslackwarearm:inst_sa64_cur_rk3399_rockpro64 [2021/12/13 11:05 (UTC)] (current) – removed mozes
Line 1: Line 1:
-<note warning>Nov 2021 - wip</note> 
-====== Installing Slackware AArch64 on the RockPro64 ====== 
- 
- 
-^  ^ Target ^ 
-| Platform | AArch64 |  
-| Slackware Distribution|Slackware AArch64 Current |      
-| Hardware Model |Rock Pro64 | 
- 
- 
-==== Video Tutorial ==== 
- 
-This tutorial is also available in video form (to be created) 
- 
- 
-Pine64 also provide unboxing and setup [[https://www.pine64.org/rockpro64/|videos]] which you may find useful. 
- 
-==== Installation Lifecycle ==== 
- 
-The Installation consists of a number of distinct stages: 
- 
-  - Acquiring all required hardware 
-  - Setting up local environment to support the installation over the network 
-  - Downloading and verifying the Slackware assets 
-  - Writing the Initialisation Bootware to the Micro SD card 
-  - Setup of the RockPro64 hardware 
-  - Initialising the RockPro64 with the Bootware 
-  - Writing the Slackware Installer to the Micro SD card 
-  - Booting the Slackware Installer 
-  - Installing Slackware 
-  - Completing the installation 
-  - Booting the Slackware OS 
-  - Post installation configuration and tweaks 
- 
-===== Requirements ===== 
- 
- 
-=== Hardware === 
- 
-^ Item ^ Specification ^ Notes ^ 
-| [[https://www.pine64.org/rockpro64/|RockPro64]] | 4GB version | The RockPro64 (2GB version may work but hasn't been tested) | 
-| [[https://pine64.com/product/rockpro64-12v-5a-eu-power-supply/|RockPro64 Power Supply ('PSU')]] | Pine64's own | There is a cheaper alternative, but this version is recommended.  Note that the link here is for the EU version - a US version is also available in the Pine64 store | 
-| [[https://www.amazon.co.uk/SanDisk-Extreme-Performance-Supports-Graphics/dp/B089M5KV4Y|Micro SD Card]] | 2GB **minimum**, fast speed, good quality make | Used as Slackware's /boot partition | 
-| [[https://www.amazon.co.uk/UGREEN-Adapter-Windows-Surface-Chromebook/dp/B01EFPX9XA|USB Multi-Card Reader]] | Must accept Micro SD cards | Used to write the Bootware on your host Linux computer.  This isn't required if your host computer has a Micro SD card reader. | 
-| [[https://thepihut.com/products/usb-to-ttl-serial-cable|USB to Serial adapter]] | PL2303 chip.  Other models may work, but this one has been tested. If your model has the option to set voltages, ensure **3volts** is set!  | A USB to Serial/UART adapter is recommended if you want to access the console remotely, but is unnecessary if you only plan on using an HDMI monitor.  This document covers installing using an HDMI monitor - you can find information about the Serial/UART adapter at the foot of this document| 
-| Jumper or Dupont cable | See images below | This is to bridge the pins required for initial firmware deployment and/or Hardware Model recovery| 
-| [[https://www.amazon.co.uk/USB-SATA-Adapter-Cable-Drives-en-GB-SATA-USB-3-0-converter/dp/B01N2JIQR7|USB to SATA adapter]] | Many models will work, but this one has been tested. | For a simple installation you require either storage attached to a USB interface, or using the SATA PCI card (see below).| 
-| [[https://pine64.com/product/pcie-to-dual-sata-iii-interface-card/|PCIe to dual SATA 3.0 Interface Card]] | PINE64's own| You can use this or the USB to SATA adapter (see row above)| 
-| [[https://www.amazon.co.uk/MZHOU-Adapter-Marvell-chipset-without/dp/B07NT1PWGW|PCIe to quad SATA 3.0 Interface Card]]| MZHOU / Marvell chipset | If you would like to use SATA storage, this is the **recommended** interface card |  
-| SATA storage | Any SSD or spinning hard disk should work | Will contain the Operating System. You can install to other storage, but this documentation covers this particular configuration only. | 
-| [[https://pine64.com/product/rockpro64-1x1-dual-band-wifi-802-11ac-bluetooth-5-0-module/|Wifi and Bluetooth module]] | Pine64's own | Optional | 
-| [[https://pine64.com/product/rockpro64-10mm-low-profile-heatsink-with-fan/|Heat sink and CPU fan]] | Pine64's own | Either a heat sink or fan are required.  Some of the cases have built-in heat sinks, so check the options | 
-| [[https://pine64.com/product/rockpro64-power-cable-for-dual-sata-drives/|SATA power cable]] | Pine64's own | Optional - depends if you use the SATA PCI card and choose to power the drives from the board (see notes below around stability) | 
-| [[https://pine64.com/product/rtc-backup-battery-holder-2-x-aaa/|Real Time Clock ('RTC') battery holder]] | Pine64's own | An RTC is used to keep the time when the Hardware Model is powered down. This is recommended but optional.  Time can also be set via NTP once the OS has booted. | 
- 
- 
-=== Notes on storage setup === 
- 
- 
-The setup documented here (2.5" SSD connected to a USB-to-Serial adapter for power and data) has proven stable for this author. 
- 
-However, powering spinning 3.5" SATA drives from the RockPro64 directly have resulted in instability of the hardware.  This was resolved by powering the drives and CPU fan from an external power supply. 
-The Slackware AArch64 primary build machines run with this power configuration and have proven stable over time. 
- 
-== eMMC == 
- 
-From the factory, your RockPro64 may contain an eMMC storage module. During the development of Slackware AArch64, it was found that the life span of these storage modules is short which makes them inappropriate for housing an Operating System. Whilst it's possible to use eMMC with Slackware, this documented installation process does not provide a supported path and the eMMC should be removed. 
- 
- 
-=== Computing / Network Environment === 
- 
- 
-^ Item ^ Specification ^ Notes ^ 
-| Host Computer: an Internet-connected computer running an existing Linux distribution | Preferably a full installation of Slackware x86/64, but any distribution that can provide the required Python environment and HTTP server module. The Host Computer needs approximately **5GB free storage** to download the required software assets.  **You must be able to obtain //root// access to this Host computer**.  | This will be used to download the Slackware distribution from the Internet, and serve the Pinebook Pro client to install Slackware over the LAN (Local Area Network).  | 
-| Network DHCP server | Provide an IP address and routing information for the RockPro64 to be able to contact the Linux Host Computer (to download the Slackware tree) and the Internet (to set date via NTP) | This document expects the RockPro64 to be able to obtain an IP address via DHCP over the LAN.  However, you can also manually configure an IP address once the Slackware Installer has booted (note that a lack of DHCP server will stall the Installer by several seconds).  You could also copy the Slackware media to a USB stick and install from there.  This is outside of the scope of this document, however [[https://docs.slackware.com/howtos:network_services:dhcp_server_via_dnsmasq|this document]] describes how to set up a simple DHCP service on Slackware. | 
- 
-<note tip>Most home routers equipped with Ethernet ports provide a DHCP server which should suffice for this setup</note> 
- 
-===== Hardware Setup ===== 
- 
-In this section we'll prepare the physical aspects of the RockPro64 to receive Slackware Linux. 
- 
-=== 1. Place the computer onto a non-conductive surface ready for setup === 
- 
-If you have a case, install the board into it.  If you do not, it should be placed onto a non-conductive surface such as plastic, wood or rubber. 
- 
-{{:slackwarearm:01-rockpro64-annotated.png?400|}} 
- 
- 
-== Remove eMMC storage module == 
- 
-In the image above you will see that the eMMC module has been removed (bottom right, left hand side of 'Head phones jack'). 
-See the note above for the reasons behind this. 
- 
-Gently prize the eMMC module from the board and store it some place safe as you may wish to experiment with it in the future. 
- 
-<note tip>If you are planning on using the RockPro64 as an 'embedded' device, the eMMC may be sufficient.  However, for a regular OS upon which you will be reading/writing/updating, it has insufficient longevity for this author to recommend its use for Slackware</note> 
- 
-=== 2. Connect the peripherals === 
- 
-  * Connect the CPU fan or heat sink 
-  * Connect the Wifi & Bluetooth module (optional) 
-  * Connect the storage (the image shows the USB-to-SATA adapter, but you may use the PCI card). If using the USB adapter, connect it to the **blue USB3.0 port**. 
-  * Connect the Ethernet cable 
-  * Connect the HDMI cable 
-  * Connect the USB keyboard and mouse 
- 
-The basic hardware setup is complete. 
- 
-{{:slackwarearm:02-rockpro64-assembled.png?400|}} 
- 
-===== Software and Network Environment Setup ===== 
- 
-In this section, we'll prepare the Linux Host Computer to receive and download the Slackware assets required for the installation. 
- 
-=== 1. Downloading the Slackware Linux AArch64 Distribution and Installation Assets  === 
- 
-<note important>The '$' prefixes in the commands indicates the shell prompt - it's not to be typed/copied</note> 
- 
-Open a shell on the Linux Host Computer. 
- 
-== Determine where you are within the Host Computer's Filesystem == 
- 
-<code> 
-$ cd 
-$ pwd 
-/home/mozes/slackware 
-</code> 
- 
-<note important>Note the directory location returned - you'll need this later</note> 
- 
-== Prepare a directory to hold and serve the Slackware Distribution == 
- 
-We'll download the Slackware Linux distribution into a directory named 'slackware'. 
- 
-<note warning> 
-The contents of this directory will be served via an HTTP server to the LAN (Local Area Network), so only place the Slackware assets here. 
-</note> 
- 
-<code> 
-$ mkdir slackware 
-$ cd slackware 
-</code> 
- 
-== Installing the Slackware ARM GPG key == 
- 
-The Slackware ARM GPG key will be used to verify the Bootware and Slackware Installation images. 
- 
-<code> 
-$ curl -sSL https://www.slackware.com/infra/keys/arm/GPG-KEY | gpg --import - 
-</code> 
- 
-== Set the version of Slackware AArch64 to download == 
- 
-At the time of writing, the only version available is 'current'. 
-<code> 
-$ SLKVER=current 
-</code> 
- 
-== Set the distribution server == 
- 
-If you are using a mirror server rather than the master Slackware ARM server, set it here. 
-The format is:  <hostname>::<rsync module name> 
- 
-<code> 
-$ SLKSRV=ftp.arm.slackware.com::slackwarearm 
-</code> 
- 
-== Download the Bootware == 
- 
-<note important>Note the period/full stop after the rsync commands - this instructs rsync to download to the current directory (it's not punctuation!)</note> 
- 
-The U-Boot Boot Loader that will be installed onto the SPI flash: 
-<code> 
-rsync -PavL $SLKSRV/slackwarearm/platform/aarch64/bootware/recovery/rk3399/flash-spi-rockpro64.img.xz . 
-</code> 
- 
-//The Bootware (recovery/initialisation) images are approximately 400KBytes in size.// 
- 
-== Download the Slackware Linux installer for the RK3399 AArch64 platform == 
-<code> 
-rsync -PavL $SLKSRV/slackwarearm/platform/aarch64/bootware/installer/slackwareaarch64-${SLKVER}/rk3399_generic.sdimg_latest.img.xz . 
-</code> 
- 
-//The Slackware Installer images are approximately 300MBytes in size.// 
- 
-== Download the Slackware tree verficiation tool == 
-<code> 
-rsync -PavL $SLKSRV/slackwarearm/platform/all/scripts . 
-</code> 
- 
-== Download the Slackware AArch64 tree == 
- 
-You will now download the Slackware distribution. This contains all of the software included within Slackware. 
- 
-<code> 
-rsync \ 
-   --exclude '*/source/*' \ 
-   --delete -Prlvv \ 
-   $SLKSRV/slackwarearm/slackwareaarch64-${SLKVER} . 
-</code> 
- 
-//The Slackware distribution is approximately 4.5GBytes in size.// 
- 
- 
-== Verify the assets == 
- 
-Verify the digital signature of the verification tool: 
-<code> 
-gpg2 --verify-files scripts/slacksigchk.sh.asc 
-</code> 
- 
-The output will be similar to this.  You are looking for 'Good signature from Slackware ARM...' 
- 
-<code> 
-gpg: assuming signed data in 'scripts/slacksigchk.sh' 
-gpg: Signature made Wed 24 Nov 2021 06:07:44 PM BST 
-gpg:                using RSA key F7ABB8691623FC33 
-gpg: Good signature from "Slackware ARM (Slackware ARM Linux Project) <mozes@slackware.com>" [unknown] 
-gpg: WARNING: This key is not certified with a trusted signature! 
-gpg:          There is no indication that the signature belongs to the owner. 
-Primary key fingerprint: 36D3 7609 2F12 9B6B 3D59  A517 F7AB B869 1623 FC33 
-</code> 
- 
- 
-Verify the Bootware and Slackware tree: 
- 
-<code> 
-chmod 755 scripts/slacktreegpgcheck.sh 
-./scripts/slacktreegpgcheck.sh slackwareaarch64-${SLKVER} 
-</code> 
- 
-<note warning>If you see 'BAD signature' you should re-download as it may have become corrupt.  If this doesn't help, drop a note to the [[https://www.linuxquestions.org/questions/slackware-arm-108/|Slackware ARM forum]]</note> 
- 
-=== Write the Initialisation Bootware to the SD Card  === 
- 
-Slackware stores the U-Boot Boot Loader firmware within the SPI flash of the Hardware Models that use the RK3399 SoC (including the Pinebook Pro, RockPro64 et al). 
- 
-In this step, we'll write the Boot Loader firmware to the same Micro SD card that will later be used to contain the Slackware Installer, and subsequently the Slackware OS' /boot partition. 
-If you have multiple Micro SD cards available, you may prefer to use separate SD cards; but this document assumes the availability of a single Micro SD card. 
- 
- 
-== Elevate yourself to root == 
- 
-On your Host Computer, obtain root: 
- 
-<note tip>The # prefix indicates that you're using the **root** user - it's not to be typed in!</note> 
- 
-<code> 
-$ su -   ## Note the hyphen - it's required 
-</code> 
- 
-== Check what block devices are present == 
- 
-Prior to inserting the Micro SD Card into the USB adapter, we need to see what's already present within the OS so that we can easily locate our Micro SD card: 
- 
-<code> 
-# lsblk  
-NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS 
-sda      8:0    0 465.8G  0 disk 
-├─sda1   8:   0     8G  0 part [SWAP] 
-└─sda2   8:   0 457.7G  0 part / 
-</code> 
- 
-As you can see, this Host Computer there is a single storage device - //sda//. 
- 
- 
-Now insert the Micro SD card into your USB Card Reader and connect the adapter to a free USB port on the Host Computer. 
- 
-Run lsblk again: 
- 
-<code> 
-# lsblk 
-NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS 
-sda      8:0    0 465.8G  0 disk 
-├─sda1   8:   0     8G  0 part [SWAP] 
-└─sda2   8:   0 457.7G  0 part / 
-sdc      8:32      58G  0 disk 
-sdd      8:48       0B  0 disk 
-</code> 
- 
-As you can see, //sdc// is 58GBytes in size.  This is the Micro SD card (in this example, it's labeled as '64GB' on the exterior of Micro SD card). 
- 
-If your Micro SD card has existing partitions, you will see them surfaced in this list also. 
- 
-<note tip>You'll also observe the presence of //sdd// - often the USB adapter itself obtains a block device. You can ignore this as it's 0Bytes.</note> 
- 
-=== Write the Bootware Initialisation Image to the Micro SD Card === 
- 
-Still as the **root** user, we'll switch to the directory to which the the Slackware assets have been downloaded (see earlier steps): 
- 
-<code> 
-# cd /home/mozes/slackware/ 
-</code> 
- 
-Write the Bootware Initialisation Image to the device identified as our Micro SD card. 
-You'll then exit the root shell, returning to your usual standard user environment: 
- 
-<note warning>All data on this Micro SD Card will be erased! Ensure you have inserted the correct card!</note> 
- 
-<code> 
-# dd if=/dev/zero of=/dev/sdc count=2 bs=1M    ## Replace /dev/sdc with the correct block device (presented above by the lsblk tool) on your Host Computer 
-# xzcat flash-spi-rockpro64.img.xz > /dev/sdc  ## Replace /dev/sdc with the correct block device (presented above by the lsblk tool) on your Host Computer 
-# sync 
-# exit 
-</code> 
- 
-The Bootware Initialisation image is now ready to boot on the RockPro64. 
- 
-===== Installing the Boot Loader to SPI flash ===== 
- 
-You need to perform this one-time step to flash a Slackware version of the U-Boot Boot Loader to the SPI flash of the RockPro64. 
- 
-This is required if your RockPro64 is brand new out of the box, or has previously had another Linux distribution running on it. 
- 
-<note tip>If you reinstall Slackware you do **not** need to repeat this step, as long as the Slackware version of U-Boot remains within the SPI flash.</note> 
- 
- 
-{{:slackwarearm:03-rockpro64-spijumpered.png?400|}} 
- 
- 
-  - Position the jumper/Dupont cable so that it links pin 23 (SPI_CLK_M2) and pin 25 (GND)  
-  - Insert the Micro SD card into the RockPro64's Micro SD slot 
-  - Connect the power to the RockPro64 
-  - Power on the RockPro64: hold down the Power button for 2 seconds 
- 
- 
-After a few seconds, you should see a message appearing on the screen - instructing you that the process will begin in 10 seconds' time. 
- 
-{{:slackwarearm:spiflasher-waiting10secs.jpg?400|}} 
- 
-Now //remove the jumper/Dupont cable// 
- 
-The flashing process will begin and takes approximately 1 minute to complete. 
- 
-{{:slackwarearm:spiflasher-completed.jpg?400|}} 
- 
- 
-Once the process completes, //hold the power button for approximately **8 seconds**// The RockPro64 will power off. 
- 
-===== Write the Slackware Installer image onto the MicroSD card ===== 
- 
-Now that the Boot Loader has been installed to the RockPro64's SPI flash, we will install the Slackware Installer image onto the same MicroSD card. 
- 
-  * Remove the MicroSD card from the RockPro64 
-  * Insert the MicroSD card back into the Host Computer (as in the earlier section) 
- 
-== Elevate yourself to root == 
- 
-On your Host Computer, obtain root: 
- 
-<note tip>The # prefix indicates that you're using the **root** user</note> 
- 
-<code> 
-$ su -   ## Note the hyphen - it's required 
-</code> 
- 
-== Write the Slackware Installer to the Micro SD card == 
- 
-Follow the instructions in the previous section to determine which block device name it occupies. 
- 
-<note tip>Typically the block device will remain the same (in this tutorial it's /dev/sdc) but you should verify each time using **lsblk**.</note> 
- 
-<note tip>The # prefix indicates that you're using the **root** user - it's not to be typed in!</note> 
- 
-Enter the directory into which the Slackware assets were downloaded previously: 
-<code> 
-# cd /home/mozes/slackware 
-# xzcat rk3399_generic.sdimg_latest.img.xz > /dev/sdc ## Replace /dev/sdc with the correct block device 
-# sync 
-# exit 
-</code> 
- 
-== Remove the MicroSD card from the Host Computer == 
- 
-You may now disconnect the USB adapter from the Host Computer and remove the MicroSD card. 
- 
-===== Start the installation media server ===== 
- 
-We will direct the Slackware Installer to download the packages from a web server that we'll run temporarily on your Linux Host Computer. 
- 
-== Determine the Linux Host Computer's IP address == 
- 
-For most basic installations, the following command will provide the correct IP.  If your Linux Host Computer has a more complex setup, you'll need to determine the IP address yourself using //ifconfig// or one of the other tools. 
- 
-<code> 
-$ hostname -I 
-192.168.1.1 
-</code> 
- 
-In this example, the IP address of the Linux Host Computer is **192.168.1.1** 
- 
- 
-== Start the HTTP server on the Linux Host Computer == 
- 
-As your normal (not root) user on your Linux Host Computer, we'll enter the Slackware AArch64 directory and start the HTTP web server: 
- 
-<code> 
-$ cd ~/slackware/slackwareaarch64-*/   
-$ python3 -m http.server 
-</code> 
- 
-<note important>The HTTP server will remain in the foreground - you may now leave it.  We will return to close it post installation.</note> 
- 
-=== Installing Slackware === 
- 
-To proceed, you must have: 
- 
-  * Connected the storage to the RockPro64 
-  * Connected the HDMI monitor 
-  * Connected the keyboard (and optionally, mouse) 
-  * Connected the Ethernet cable, and have a DHCP server serving the network from which the RockPro64 can obtain an IP address 
-  * Inserted the Micro SD card containing the Slackware Installer 
- 
-== Begin installation == 
- 
-<note warning> Disconnect any USB storage devices that aren't required for the OS installation</note>  
- 
-== Power on the RockPro64 == 
- 
-Press the Power Button for aproximately two seconds 
- 
-After a few seconds, the you will see the following on screen: 
- 
-{{:slackwarearm:00-u-boot-bootinginstaller.jpg?400|}} 
- 
-It takes several seconds to load and boot the installer, and it may take several seconds more for any further output to appear on the HDMI monitor. 
-The process of obtaining an IP address via DHCP can also delay the ability to interact with the Installer. 
- 
-Once an IP address has been obtained, you will be presented with a prompt. 
-Press **ENTER** 
- 
-{{:slackwarearm:01-activatevirtualconsole.jpg?400|}} 
- 
- 
-== Set the keymap == 
- 
-{{:slackwarearm:02-setkeymap_a.jpg?400|}} 
- 
-{{:slackwarearm:03-_setkeymap_b.jpg?400|}} 
- 
-{{:slackwarearm:04-setkeymap_c.jpg?400|}} 
- 
-== Set the date/time == 
- 
-Even if you have a battery pack for the RTC (Real Time Clock), the date on your system may be incorrect. 
-We will sync the date from a highly-available NTP server: 
- 
-<code> 
-ntpdate clock.akamai.com 
-hwclock -w 
-</code> 
- 
- 
-{{:slackwarearm:06-ntpdate.jpg?400|}} 
- 
- 
-== Setup disk partitions == 
- 
-For this installation a basic partitioning scheme will be created. 
- 
-Partition  
- 
-^ Partition number ^ Device name ^ Size ^ Purpose ^ 
-| 1                | /dev/sda1   | 4GB   | Swap | 
-| 2                | /dev/sda2   | Rest of storage | OS root ('/') partition | 
- 
-<note tip>/boot will reside on the Micro SD card and is automatically configured by the Slackware Installer</note> 
- 
-Open fdisk against the /dev/sda partition (which will be your primary storage, and in these instructions is the SDD connected to the USB adapter). 
- 
-<code> 
-fdisk /dev/sda 
-</code> 
- 
-{{:slackwarearm:07_-_fdisk-rpro64.jpg?400|}} 
- 
-Create the Swap partition: 
- 
-Type 'n' for new partition: 
- 
-{{:slackwarearm:08_-_fdisk-rpro64.jpg?400|}} 
- 
-Type 'p' for primary partition type: 
- 
-Press ENTER for the 'First sector' 
- 
-Type '+4G' for the 'Last Sector'/size: 
- 
- 
-Change the partition type to 'Swap'. 
-Type 't' then hex code '82': 
- 
-{{:slackwarearm:09_-_fdisk-rpro64.jpg?400|}} 
- 
-Create the partition for the root filesystem ('/'): 
- 
-Type 'n' for new partition. 
-Press ENTER to accept the defaults - this will create partition 2 as the maximum size available. 
- 
-{{:slackwarearm:10 - fdisk-rpro64.jpg?400|}} 
- 
- 
-Type 'a' to mark the root partition (number 2) as bootable 
-Type '2' to select partition 2. 
- 
-{{:slackwarearm:11 - fdisk-rpro64.jpg?400|}} 
- 
-Type 'p' to print to view the partition table. 
- 
-{{:slackwarearm:12- fdisk-rpro64.jpg?400|}} 
- 
-Type 'w' to write the partition table: 
- 
-{{:slackwarearm:13 - fdisk-rpro64.jpg?400|}} 
- 
-fdisk will now exit. 
- 
-== Load the Setup menu == 
- 
-{{:slackwarearm:14-startSlackSetup.jpg?400|}} 
- 
-== Setup Swap partition == 
- 
-{{:slackwarearm:15-SlackSetup-screen.jpg?400|}} 
- 
-{{:slackwarearm:16-SwapSpaceDetected-rpro64.jpg?400|}} 
- 
-{{:slackwarearm:17-SwapSpace-DefectCheck-rpro64.jpg?400|}} 
- 
-{{:slackwarearm:18-SwapSpace-configured-rpro64.jpg?400|}} 
- 
-== Select and format the partition for the OS' root file system == 
- 
-{{:slackwarearm:19-SelectRootPartition-rpro64.jpg?400|}} 
- 
-{{:slackwarearm:20-QuickFormatRootPartition.jpg?400|}} 
- 
-{{:slackwarearm:21-SelectFSforRootPartition.jpg?400|}} 
- 
-{{:slackwarearm:22-FormattingRootPartition-inProgress-rpro64.jpg?400|}} 
- 
-== Resize /boot partition to full extent == 
- 
-The Micro SD card that contains the /boot partition presently occupies approximately 1GB. 
-Most MicroSD cards are several GBs in size.  This option will resize the partition to its full capacity to avoid wasting storage. 
-If you plan on manually adding parttions to this later, you will want to choose 'No' here. 
- 
-<note important>It's important that the Micro SD card is **not** used for heavy read/writes as it'll damage it and will cause your system not to boot.  This option exists simply to avoid wasting space on the MicroSD card.</note> 
- 
-{{:slackwarearm:23-ResizebootFS-ask.jpg?400|}} 
- 
-{{:slackwarearm:24-ResizebootFS-inprogress-rpro64.jpg?400|}} 
- 
-{{:slackwarearm:25-ResizebootFS-complete.jpg?400|}} 
- 
-== Boot Loader Configuration == 
- 
-The Installer will configure the Boot Loader and the OS' /etc/fstab automatically: 
- 
-{{:slackwarearm:26-UpdatingUBootconfig.jpg?400|}} 
- 
-{{:slackwarearm:27-AddedLinuxpartitions-rpro64.jpg?400|}} 
- 
-== Select Source Media == 
- 
-{{:slackwarearm:28-SourceMediaSelection.jpg?400|}} 
- 
-<note tip>The IP address here is the one you determine earlier within these instructions.  The port should always be 8000</note> 
- 
-Pick option //'5 - Install from FTP/HTTP server'// 
-<code> 
-URL: http://192.168.1.1:8000 
-Directory: / 
-</code> 
- 
- 
-{{:slackwarearm:29-HTTPinstallationURL.jpg?400|}} 
- 
-{{:slackwarearm:30-HTTPinstallationDIR.jpg?400|}} 
- 
-{{:slackwarearm:31-HTTPInstallationDownloadConfirm.jpg?400|}} 
- 
-{{:slackwarearm:31-HTTPinstallationDownloadTestResult.jpg?400|}} 
- 
-{{:slackwarearm:32-HTTPInstallation-PkgProcessing.jpg?400|}} 
- 
-== Package Series Selection == 
- 
-You can now choose the package sets to install.  The recommendation is to install everything. 
-A full Slackware installation will occupy approximately 15GB. 
- 
-<note tip>If you do not plan to use the graphical window manager such as KDE, you should de-select it.</note> 
- 
-{{:slackwarearm:33-PackageSeriesSelection.jpg?400|}} 
- 
-Pick the 'terse' option: 
- 
-{{:slackwarearm:34-SelectingInstallMode.jpg?400|}} 
- 
-The packages will begin installing: 
- 
-{{:slackwarearm:35-PackagesInstalling.jpg?400|}} 
- 
-== Configure the Console Settings == 
- 
-If you plan on using the UART/'Serial' console, you should select 'No' here. 
-If you plan on exclusively using an HDMI monitor, you should pick 'Yes'. 
- 
-<note tip>This setting can be reset to the default by editing /boot/extlinux/extlinux.conf and removing the 'console=' setting once the OS has booted</note> 
- 
-{{:slackwarearm:35-ConsoleBootSettings-rpro64.jpg?400|}} 
- 
-== Install the Boot Loader to SPI flash == 
- 
-If this is the first time you have installed Slackware, you must flash the Boot Loader. 
-The initial Boot Loader flash performed earlier in these instructions typically contains an older version of the Boot Loader, where as the version packaged within the Installer contains the latest tested version. 
- 
-{{:slackwarearm:36-InstallingBootLoader-SPIFlash-rpro64.jpg?400|}} 
- 
-{{:slackwarearm:37-InstallingBootLoader-SPIFlash-readytogo.jpg?400|}} 
- 
-{{:slackwarearm:38-InstallingBootLoader-SPIFlash-inprogress-rpro64.jpg?400|}} 
- 
-{{:slackwarearm:39-InstallingBootLoader-SPIFlash-complete.jpg?400|}} 
- 
-== Remove the Slackware Installer from the SD card == 
- 
-The Micro SD card is transformed from being the Slackware Installer into the Slackware OS's /boot partition. 
-At this stage, if the installation has worked for you (at certain points in the Slackware installer you are past the point of no return) you can delete the Installer. 
-However, if something has gone wrong you can reset the RockPro64 and reboot the installer without having to re-deploy the Slackware Installer image from your Linux Host Computer. 
- 
-Generally you should say 'Yes' here. 
- 
-{{:slackwarearm:40-RemoveSlackInstaller-from-sdcard.jpg?400|}} 
- 
-== Post Installation Configuration == 
- 
-The Slackware Installer will walk you through the standard Slackware setup.  The on-screen instructions will suffice. 
- 
-{{:slackwarearm:41-LoadGPMatboot.jpg?400|}} 
- 
-{{:slackwarearm:42-ConfigureNetwork.jpg?400|}} 
- 
-{{:slackwarearm:42-ConfigureNetwork-enterhostname-rpro64.jpg?400|}} 
- 
-{{:slackwarearm:42-ConfigureNetwork-enterDomainname.jpg?400|}} 
- 
- 
-{{:slackwarearm:43-ConfigureNetwork-ConnectViaVLAN.jpg?400|}} 
- 
-{{:slackwarearm:44-NetworkIPManagement-NetworkManager.jpg?400|}} 
- 
-{{:slackwarearm:45-ConfigureNetwork-Complete.jpg?400|}} 
- 
-{{:slackwarearm:46-ConfirmServicesToRun.jpg?400|}} 
- 
- 
-== Select a Console Font == 
- 
-It's recommended for the RockPro64 and Pinebook Pro that a larger console font is configured. 
- 
-{{:slackwarearm:47-ConsoleFontConfig-Yes.jpg?400|}} 
- 
- 
-{{:slackwarearm:48-ConsoleFontConfig-FontChoice.jpg?400|}} 
- 
-The recommended font is 'ter-732b.psf'. This is the font used within the Installer. 
- 
-{{:slackwarearm:49-ConsoleFontConfig-ConfirmChoice.jpg?400|}} 
- 
-== Continue Post Installation Configuration == 
- 
-{{:slackwarearm:50-HardwareClockSetting.jpg?400|}} 
- 
-{{:slackwarearm:51-TimeZoneConfig-Choose.jpg?400|}} 
- 
-{{:slackwarearm:55-ChooseDefaultVIeditor.jpg?400|}} 
- 
-== Configure GUI Window Manager == 
- 
-This author recommends using XFCE as it's light weight versus KDE. 
- 
-{{:slackwarearm:56-ChooseWindowManager-xfce-selected.jpg?400|}} 
- 
-== Continue Post Installation Configuration == 
- 
-{{:slackwarearm:57-rootpassword-asktoset.jpg?400|}} 
- 
-{{:slackwarearm:58-rootpassword-complete.jpg?400|}} 
- 
-== Slackware Setup Complete == 
- 
-{{:slackwarearm:59-SetupComplete.jpg?400|}} 
- 
-{{:slackwarearm:60-Setupmenu-EXITselected.jpg?400|}} 
- 
-{{:slackwarearm:61-Setupcomplete-Rebooting.jpg?400|}} 
- 
-Generally you'll want to reboot into the OS. 
- 
-However, if you are planning on setting up RAID or need to customise the Operating System Initial RAM Disk, you should select 'Shell'. 
- 
-The Slackware OS will be found within '/mnt'. 
-You can use the 'os-initrd-mgr' tool ([[https://www.youtube.com/watch?v=t3wKXMENTXk|Video tutorial]]). 
- 
- 
-== Booting the Slackware OS == 
- 
-{{:slackwarearm:62-OSBooting-uboot-rpro64.jpg?400|}} 
- 
-== Login to the Slackware OS == 
- 
-{{:slackwarearm:63-OSBooted-loginprompt-rpro64.jpg?400|}} 
- 
-You may now login as 'root', using the password you set within the installer. 
- 
-== Quit the HTTP media server == 
- 
-On your Linux Host Computer, you can return to the HTTP server that we started earlier on. 
-In the terminal window in which you started it, you will see the access logs from the Slackware Installer downloading the packages. 
- 
-Simple press CONTROL+c to quit it. 
- 
-You may now delete the slackwareaarch64 tree, or perhaps keep it around to subsequently update it. 
- 
- 
-===== Post Installation Configuration ===== 
- 
-There are a few post-installation configuration tasks to complete. 
- 
- 
-=== Add a plebeian user === 
- 
-You should add a plebeian (non-root) user using the 'adduser' tool. 
- 
-This is documented [[https://www.slackbook.org/html/essential-sysadmin.html|here]]. 
- 
-== CPU Fan Control == 
- 
-If you are using a fan, you'll need to set it up. 
-At present this is a work-around until a proper tool/solution is integrated into the OS. 
- 
-You may wish to add something like this to /etc/rc.d/rc.local 
- 
-<code> 
-root@bladswede:~# cat /usr/local/bin/fancontrol 
-#!/bin/bash 
- 
-[ ! -f /proc/device-tree/model ] && exit 0 
- 
-export DEVTYPE=$( strings /proc/device-tree/model 2>/dev/null ) 
- 
-# RockPro64 settings: 
-case $DEVTYPE in 
-   "Pine64 RockPro64"*) 
-       ( while [ ! -f /sys/devices/platform/pwm-fan/hwmon/hwmon*/pwm1 ]; do 
-               sleep 1 
-         done ) > /dev/null 2>&1 
-       echo 255 > /sys/devices/platform/pwm-fan/hwmon/hwmon*/pwm1 
-       sleep 2 
-       echo 255 > /sys/devices/platform/pwm-fan/hwmon/hwmon*/pwm1 
-       for fanspeed in $( seq 255 -10 65 ) ; do 
-           sleep 0.20 
-           echo $fanspeed > /sys/devices/platform/pwm-fan/hwmon/hwmon*/pwm1 
-       done 
-    ;; 
-esac 
-</code> 
- 
- 
-===== Known bugs ===== 
- 
-== KDE == 
- 
-On the first invocation of KDE the screen may appear stretched and in the wrong screen mode. 
-Kill KDE with ctrl+alt+backspace, then restart.  It should work correctly. 
-If anybody knows of the fix for this please let me know! 
- 
- 
-===== Using the Serial/UART adapter ===== 
- 
-This documentation discusses using the RockPro64 without the UART/Serial console. 
-If you'd like to use one, the image below shows the recommended adapter connected to the RockPro64: 
- 
-{{:slackwarearm:rockpro64-uart-connected.png?400|}} 
- 
-You can then connect the USB end of the adapter into your Linux Host Computer, and use the following command. 
-This assumes that there are no other similar adapters occupying /dev/ttyUSB0.  If so, you will need to adjust the device name accordingly (e.g. perhaps /dev/ttyUSB1). 
- 
-<code> 
-screen  -T screen-256color /dev/ttyUSB0 1500000n8,-crtscts 
-</code> 
- 
-Other adapters use a different baud rate: 
-<code> 
-screen -T screen-256color /dev/ttyUSB0 115200 
-</code> 
- 
  
 slackwarearm:inst_sa64_cur_rk3399_rockpro64 ()