diff --git a/README.md b/README.md index 9623f73..80d7f45 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,11 @@ # FOG Operating System (FOS) This is the operating system environment used for imaging with FOG. This is a linux based operating system with all the scripts and programs required for perform imaging tasks. -Latest build status: [![Build status](https://badge.buildkite.com/5af7ed69568b5cf1f7092156156a4ca41ba46f6de0fab809ae.svg)](https://buildkite.com/fogproject/fos) - -# What does this docker image do? -Builds FOG Operating System (FOS) inits as well as kernels used by fog. +# What does this repository do? +Builds FOS inits as well as kernels used by FOG. # What do we need? -1. You'll need to install docker on your system. +1. You'll need a Debian or Red Hat based operating system. 2. You'll need to install git on your system. 3. You'll need to clone the fos repository. @@ -18,60 +16,53 @@ Pull the fos repository with: git clone https://github.com/fogproject/fos ``` -# How do I get the docker image? -Pull the fos-builder image with: -``` -docker pull fogproject/fos-builder -``` +# How to build? +To build the FOS inits and/or kernels we use the `build.sh` script. -##### NOTES: -1. This container does not contain FOS or the kernels, It is just a full build environment. -2. `/path/to/fos/repo` is not the real path, this is the path to the fos repository local to the machine you plan on running this on. Typically this would be something like `~/fos`. This is the only path you will need to change to build. -#### How to build? -To build the FOS and/or kernels, once pulled: +#### Build script options: +The `build.sh` script has usage flags that are used to build the inits/kernels. You can run `build.sh -h` or `build.sh --help` to see all the flags. -##### Build Everything + +#### NOTES: +1. This repository does not contain FOS or the kernels, it contains all the files needed to build the inits and kernels. +2. `/path/to/fos/repo` is not the real path, this is the path to the cloned repository on the machine you plan to run this on. Typically this would be something like `~/fos`. This path **will** need to be changed to build. + +--- + +#### Build Everything ``` -docker run -v /path/to/fos/repo:/home/builder/fos:Z -u builder -it fogproject/fos-builder /home/builder/fos/build.sh -n +/path/to/fos/repo/build.sh -n ``` -##### Build only all inits +#### Build all inits only ``` -docker run -v /path/to/fos/repo:/home/builder/fos:Z -u builder -it fogproject/fos-builder /home/builder/fos/build.sh -nf +/path/to/fos/repo/build.sh -nf ``` -##### Build only all kernels +#### Build 64 bit (x64) init ``` -docker run -v /path/to/fos/repo:/home/builder/fos:Z -u builder -it fogproject/fos-builder /home/builder/fos/build.sh -nk +/path/to/fos/repo/build.sh -nfa x64 ``` -##### Build x64 bit init +#### Build 32 bit (x86) init ``` -docker run -v /path/to/fos/repo:/home/builder/fos:Z -u builder -it fogproject/fos-builder /home/builder/fos/build.sh -nfa x64 +/path/to/fos/repo/build.sh -nfa x86 ``` -##### Build 32 bit (x86) init +#### Build ARM 64 bit init ``` -docker run -v /path/to/fos/repo:/home/builder/fos:Z -u builder -it fogproject/fos-builder /home/builder/fos/build.sh -nfa x86 +/path/to/fos/repo/build.sh -nfa arm64 ``` -##### Build x64 bit kernel +#### Build all kernels only ``` -docker run -v /path/to/fos/repo:/home/builder/fos:Z -u builder -it fogproject/fos-builder /home/builder/fos/build.sh -nka x64 +/path/to/fos/repo/build.sh -nk ``` -##### Build 32 bit (x86) kernel +#### Build 64 bit (x64) kernel ``` -docker run -v /path/to/fos/repo:/home/builder/fos:Z -u builder -it fogproject/fos-builder /home/builder/fos/build.sh -nka x86 +/path/to/fos/repo/build.sh -nka x64 ``` -##### Build ARM 64 bit init +#### Build 32 bit (x86) kernel ``` -docker run -v /path/to/fos/repo:/home/builder/fos:Z -u builder -it fogproject/fos-builder /home/builder/fos/build.sh -nfa arm64 +/path/to/fos/repo/build.sh -nka x86 ``` -##### Build ARM 32 bit init +#### Build ARM 64 bit kernel ``` -docker run -v /path/to/fos/repo:/home/builder/fos:Z -u builder -it fogproject/fos-builder /home/builder/fos/build.sh -nfa arm -``` -##### Build ARM 64 bit kernel -``` -docker run -v /path/to/fos/repo:/home/builder/fos:Z -u builder -it fogproject/fos-builder /home/builder/fos/build.sh -nka arm64 -``` -##### Build ARM 32 bit kernel -``` -docker run -v /path/to/fos/repo:/home/builder/fos:Z -u builder -it fogproject/fos-builder /home/builder/fos/build.sh -nka arm +/path/to/fos/repo/build.sh -nka arm64 ``` diff --git a/docker/Dockerfile b/docker/Dockerfile deleted file mode 100644 index 030126c..0000000 --- a/docker/Dockerfile +++ /dev/null @@ -1,15 +0,0 @@ -FROM debian:9 -LABEL maintainer="contact@fogproject.org" - -RUN dpkg --add-architecture i386 && apt-get update\ - && DEBIAN_FRONTEND=noninteractive\ - apt-get install -y wget subversion git mercurial meld build-essential rsync libncurses-dev gcc-multilib cpio bc unzip locales texinfo libelf-dev libelf-dev:i386 - -RUN apt-get -y install gcc-arm-linux-gnueabi gcc-aarch64-linux-gnu g++-aarch64-linux-gnu g++-arm-linux-gnueabi libssl-dev libncurses5-dev libc6-armel-cross libc6-dev-armel-cross binutils-arm-linux-gnueabi binutils-aarch64-linux-gnu flex bison - -RUN rm -rf /var/lib/apt/lists/* \ - && localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8 -ENV LANG en_US.utf8 - -RUN adduser --disabled-password --uid 1000 --gecos "Docker Builder,,," builder -WORKDIR /home/builder