Pignus

From base48
Jump to: navigation, search


Repositories

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:

date
timedatectl
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
saveenv
reset

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
PROMPT 0
TIMEOUT 60

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:10.0.0.1:nbd_example:ext4::-persist,-b4096 root=/dev/nbd0 rootfstype=ext4 ip=10.0.0.200::10.0.0.1:255.255.255.0:example:eth0:off 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