[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

This is an old revision of the document!


Work in progress Direct Integration documentation

TO Do

  • /boot/grub/grub.cfg needs to be tweaked to point to SLKroot
  • /etc/defaults/grub needs GRUB_ENABLE_LINUX_LABEL=true added
  • don't version number Slackware's GRUB entry - e.g. '/boot/efi/EFI/slackware-15.0+/grubaa64.efi'
  • grub-mkconfig - potentially patch to prevent use, with option to override. - eg /sbin/mkinitrd is not implemented on ARM. See os-initrd-mgr(8) for details.
  • Flashing tool - look at creating a microroot function within the sdcards.build that processes the os initrd

Slackware Installer image SD card layout

 partition  used for               filesystem FS label    installer mount point
 1          EFI boot?              fat32      SLKins_efi   ? shouldn't need one?
            * Requires GPT partition table

 2          /boot/GRUB's config    ext4       SLKins_boot  ?  ""
            that loads Slackware
            Installer.

            /assets/firmware/lxwhatever
            Add in the firmware here which can be flashed from within the installer
            using a post install script.
            It diverges from the rk3399, so let's hold the idea for now, but it's probably
            along the right lines.

Installation flow

. User DD's sd card SPI flash image:
    Flashes EFI firmware to SPI flash.

2. User dd's Slackware installer image to SD card.
3. Boots Honeycomb from SD card, boots Slackware installer.

4. User creates EFI partition , swap and OS and whatever partitions.

5. Installs Slackware to SSD on SATA
6. Reboots, removes SD card.
7. User makes honeycomb boot from SATA to boot OS.

8. First boot will find the SATA drive at SLKroot
9. and the swap at SLKswap0
10. and /boot/efi at SLKefi

SD Notes:
* SLKins_efi and SLKins_boot are not relevant at this point.
* The SD card can be removed and the system can run without it.

Notes

SATA Drive notes:
* The /boot/efi paritition needs to be labeled as SLKefi
* Rootdisk / needs to be labeled SLKroot
* If it exists, the swap should be named SLKswap0
* Grub finds the boot directory on root disk
* Grub boots the system ``

partition table of root diskt within installer:
sdc
|-sdc1                                                                                  299.2M     0% /mnt/boot/efi
|-sdc2       swap              1      SLKswap0    6d31881b-54b1-4ff2-bac7-8602463897d6                [SWAP]
`-sdc3       ext4              1.0    SLKroot     02d8318a-7a96-4db4-a104-223f0334e49b   83.9G    15% /mnt


partition table of boot disk (installer) withn installation:
mmcblk0
|-mmcblk0p1  vfat              FAT32  SLKins_efi  B633-E0ED
`-mmcblk0p2  ext4              1.0    SLKins_boot 18a1e569-77c1-40ad-85a3-cf425fe7c4ad

Final partitioning:


root@slackware:~# lsblk
NAME         MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINTS
sda            8:0    0 447.1G  0 disk
`-sda1         8:1    0 447.1G  0 part
  `-md0        9:0    0 447.1G  0 raid1
    `-md0p1  259:0    0 447.1G  0 part  /data
sdb            8:16   0 447.1G  0 disk
`-sdb1         8:17   0 447.1G  0 part
  `-md0        9:0    0 447.1G  0 raid1
    `-md0p1  259:0    0 447.1G  0 part  /data
sdc            8:32   0 111.8G  0 disk
|-sdc1         8:33   0   200M  0 part  /mnt/boot/efi
|-sdc2         8:34   0     4G  0 part  [SWAP]
`-sdc3         8:35   0 107.6G  0 part  /mnt
mtdblock0     31:0    0    64M  0 disk
mmcblk0      179:0    0  14.8G  0 disk
|-mmcblk0p1  179:1    0   190M  0 part
`-mmcblk0p2  179:2    0   3.5G  0 part
mmcblk1      179:32   0  59.2G  0 disk
mmcblk1boot0 179:64   0     4M  1 disk
mmcblk1boot1 179:96   0     4M  1 disk

/boot
root@slackware:~# ls /mnt/boot
Image-armv8@  Image-armv8-6.1.37  README-kernels.txt  README.initrd@  System.map-armv8@  System.map-armv8-6.1.37  config-armv8-6.1.37  dtb@  dtb-6.1.37/  efi/  grub/  initrd-armv8@  initrd-armv8-6.1.37  local/  platform/

root@slackware:~#  ls /boot/efi/EFI/slackware-15.0+/grubaa64.efi
/boot/efi/EFI/slackware-15.0+/grubaa64.efi*

Notes:
* /boot/extlinux/ should not exist
 slackwarearm:development_di_lx2160acex7 ()