From base48
Revision as of 03:52, 23 November 2016 by Rmarko (talk | contribs) (minor formatting)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


GitHub with packages and tooling: https://github.com/pignus-project

Build Farm

Levitates under the Base48 ceiling.

Koji: http://koji.pignus.computer/koji/

Known Issues

DNF out-of-memory failure

DNF is quite memory hungry in its current state leading to OOM errors on systems with only 256MB RAM some of which is allocated for GPU.

As it gets worse with large repositories we're considering splitting our repository into smaller chunks (e.g. minimal, desktop, ...).

Workaround around this issue is to enable swap either on your partition if you have it or create a temporary swap file on local file system.

# create 256MB swap file at /swap
dd if=/dev/zero of=/swap bs=1M count=256
chmod 600 /swap
mkswap /swap
# enable it
swapon /swap

# proceed with dnf update, you can delete /swap when
# you no longer need it, make sure to issue 'swapoff' before

Unable to fetch repository metadata

Verify your device has time synced with network:

chronyc tracking
chronyc sources

If network is available chronyd should find sources and sync time of your device. If this is not the case try restarting chronyd with

systemctl restart chronyd

PXE Booting

U-Boot needs setting ethaddr and usbethaddr to some MAC address. This MAC address will be only used for booting and changed to pre-flashed MAC afterwards. You can break to U-Boot by pressing SPACE after Raspberry Pi startup - you need USB to UART converter attached for this.

setenv ethaddr B8:27:EB:13:37:2B
setenv usbethaddr B8:27:EB:13:37:2B
setenv bootcmd run bootcmd_pxe

U-Boot defaults

To reset U-Boot environment to default state use

env default -a

PXE configuration entry sample

For running from NBD (network block device) root

# cat pxelinux.cfg/01-b8-27-eb-13-37-2b
DEFAULT menu.c32

MENU TITLE base48.cz PXE Boot server

LABEL pignus-23a
KERNEL os/pignus/vmlinuz-4.4.0-1.pi3.fc23.armv6hl
APPEND initrd=os/pignus/nbd_initrd console=ttyAMA0,115200 netroot=nbd:,-b4096 root=/dev/nbd0 rootfstype=ext4 ip= smsc95xx.turbo_mode=N enforcing=0
FDT os/pignus/dtb-4.4.0-1.pi3.fc23.armv6hl/bcm2835-rpi-b.dtb

This assumes that os/pignus contains vmlinuz, intird and device tree files. You can either grab these from existing Pignus installation /boot partition or extract on your host system with

virt-builder --get-kernel pignus-minimal-23a