Bootstrap a minimal debian rootfs for sunxi boards https://github.com/bleuchtang/sunxi-debian

Émile Morel 59f4e7d506 Merge pull request #21 from taziden/patch-1 10 years ago
olinux 33b75f00ae add set -x into create_arm_debootstrap.sh 10 years ago
.gitignore 90d377c4f6 create_device init script 10 years ago
Dockerfile 595e42d0c4 Fix GCC on Jessie servers (missing occurence of 4.7 from ee61519617bec8240a6a048164c19724205aabc5) 10 years ago
README.md 2db35a2fe5 change default debian release to jessie 10 years ago

README.md

Debian-Sunxi

Bootstrap a minimal debian rootfs with sunxi kernel and boot files. For now only 4 olinuxino boards are available. All scripts in this repository are generic so it's easy to add a new boad. Please make a pull request if you create and test a new board. I need reviewers for olinuxino lime2 and micro olinuxino boards.

Thanks to lukas2511 for quick bootstrap, and igorpecovnik for some useful scripts.

Build docker image

git clone https://github.com/bleuchtang/sunxi-debian
cd sunxi-debian && sudo docker build -t debian:olinux .

Build sunxi kernel and boot files

To build sunxi kernel and boot files run:

sudo docker run --privileged -i -t -v $(pwd)/olinux/:/olinux/ debian:olinux bash /olinux/create_sunxi_boot_files.sh -c -s

Optional arguments:

  • -o off-line mode; doesn't pull repositories so you should have run the script once without this option
  • -b board type (a10lime, a20lime, a20lime2, a20micro) default is A20 lime
  • -t target directory for compilation (default /olinux/sunxi)
  • -j number of thread for compilation (default 2)
  • -l change linux logo on u-boot and kernel
  • -c use cross-compilation settings
  • -s use stable tarball (for linux kernel and u-boot) instead of GIT tree
  • Build minimal arm debootstrap

    We cannot perform a debootstrap in dockerfile because dockerfile doesn't accept privileged mode. For more details see docker issue

    To build the minimal debian rootfs with the kernel previously build:

    sudo docker run --privileged -i -t -v $(pwd)/olinux/:/olinux/ debian:olinux bash /olinux/create_arm_debootstrap.sh -i olinux/sunxi -c -s
    

    Optional arguments:

    • -d debian release (wheezy, jessie) (default: jessie)
    • -b olinux board (see config_board.sh) (default: a20lime)
    • -a add packages to deboostrap
    • -n hostname (default: olinux)
    • -t target directory for debootstrap (default: /olinux/debootstrap)
    • -i (bool) install sunxi kernel files; you should have build them before.
    • -y (bool) install yunohost (doesn't work with cross debootstrap)
    • -c (bool) cross debootstrap
    • -p (bool) use aptcacher proxy
    • Install on a SD card

      Setup SD card device

      Find your device card (with dmesg for instance). Call create_device script with this device in parameter. This script install debootstrap previously build.

      sudo bash olinux/create_device.sh -d /dev/sdc
      

      You can directly create a image file that you can copy after on your sd card or share with others.

      sudo bash olinux/create_device.sh -d img -s 500
      

      /!\ If you install some additional packages you should increase the size of the image (change the -s 500 parameter).

      Login to your Olimex

      Find IP and ssh on it! (password: olinux)

      hint: The IP address is displayed on the login screen, but you must plug a screen.

      ssh root@mybox
      

      Some links/tips:

      Convert bmp logo to ppm

      bmptoppm Labriqueinter.net.bmp > Labriqueinter.net.ppm
      ppmquant 224 Labriqueinter.net.ppm > Labriqueinter.net224.ppm
      nmnoraw Labriqueinter.net224.ppm > Labriqueinter.net.ppm
      

      You probably want to Build your own docker image

      • Because it's quick and easy; tutorial here
      • Because you shouldn't trust registry images; demonstration here

      External links