Giter Club home page Giter Club logo

build's Introduction

Buildscripts for Volumio System

Copyright Michelangelo Guarise - 2016

Requirements

git squashfs-tools kpartx multistrap qemu-user-static samba debootstrap parted dosfstools qemu binfmt-support qemu-utils md5deep

How to

  • clone the build repo on your local folder : git clone https://github.com/volumio/Build build
  • if on Ubuntu, you may need to remove $forceyes from line 989 of /usr/sbin/multistrap
  • cd to /build and type
./build.sh -b <architecture> -d <device> -v <version>

where switches are :

  • -b <arch> Build a full system image with Multistrap. Options for the target architecture are arm (Raspbian), armv7 (Debian 32bit), armv8 (Debian 64bit) or x86 (Debian 32bit).
  • -d <dev> Create Image for Specific Devices. Supported device names: pi, odroidc1/2/xu4/x2, udooneo, udooqdl, cuboxi, pine64, sparky, bbb, bpipro, bpim2u, cubietruck, compulab, x86
  • -l <repo> Create docker layer. Give a Docker Repository name as the argument.
  • -v <vers> Version

Example: Build a Raspberry PI image from scratch, version 2.0 :

./build.sh -b arm -d pi -v 2.0 -l reponame 

You do not have to build the architecture and the image at the same time.

Example: Build the architecture for x86 first and the image version MyVersion in a second step:

./build.sh -b x86

./build.sh -d x86 -v MyVersion

Sources

Kernel Sources

Main Packages Sources

Debian Packages Sources (x86)

All Debian-retrieved packages sources can be found at the debian-sources Repository

Raspbian Packages Sources (armhf)

All Raspbian-retrieved packages sources can be found at the raspbian-sources Repository

If any information, source package or license is missing, please report it to info at volumio dot org

armbian-based images

In case of lacking native support in volumio there is the option to build images based on Armbian ( www.armbian.com ) which supports a variety of PI clones -

Example:

./build.sh -b arm -d armbian_bananapipro_vanilla -v 2.0

where

  • armbian_ prefix is used to indicate the use of armbian
  • boardtype in the notation of armbian
  • _vanilla as postfix for mainline kernel or _legacy for android kernel

armbian kernels

please see notes in armbiam community which kernel is the best - or if there are any restrictions that apply in your case e.g. some mainline kernel still do not have stable ports of all devices, e.g. ethernet driver, while legacy kernel may miss other features. In all cases even lecagy kernels come with overlayfs and squashfs support.

sucessfully tested images:

  • armbian_bananapi_legacy
  • armbian_bananapipro_legacy
  • armbian_cubieboard2_legacy
  • armbian_cubietruck_legacy
  • armbian_bananapi_vanilla
  • armbian_bananapipro_vanilla
  • armbian_cubieboard2_vanilla
  • armbian_cubietruck_vanilla

notes and known issues armbian

  • current sunxi bootloader version 5.25/armbian is not working, solved by explicitely using 5.23 (be careful with apt-get upgrade later on)

  • Partition 1 has been changed from vfat to ext4 because armbian scripts are using symbolic links

  • kernel, ramdisk and squashfs may be larger compared to native support images due to extra packages required by armbian build routines

  • armbian_orangepipc_legacy ... not booting

others may work at once or with minor adaptions *

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.