Compare commits

..
Author SHA1 Message Date
Serge Schneider dd7de2554c Update release notes 2017-07-05 11:23:54 +01:00
Serge Schneider 234c4b7937 Export-image: disable metadata_csum for compatibility with older SD card copiers 2017-07-03 16:40:23 +01:00
Serge Schneider be2018ee5f README: Add stage 5 description 2017-06-27 13:16:41 +01:00
Andrew Smith cdf1cf2aba Also use -v in error message 2017-06-27 13:10:09 +01:00
Andrew Smith 22c4105b57 Tell docker to delete the volume as well
Addresses #62

Because of the use of volumes the .img files (and everything else) will stay around on disk even when you do `docker rm pigen_work`. Passing `-v` deletes the volume as well and frees up disk space.
2017-06-27 13:10:09 +01:00
Jacob Siverskog d2f88a6e4f Update stage specification example
The previous example failed for me due to a missing SKIP in
stage5. While at it, complete the example with all steps needed to get
an image generated.
2017-06-27 13:09:40 +01:00
Thomas Phillips c92638438a Fixed running docker script from within pwd containing spaces 2017-06-27 13:08:08 +01:00
Thomas Phillips 50e5c01f57 Image build date now honours timezone 2017-06-27 13:06:50 +01:00
5 changed files with 23 additions and 14 deletions
+11 -7
View File
@@ -76,7 +76,7 @@ vi config # Edit your config file. See above.
```
If everything goes well, your finished image will be in the `deploy/` folder.
You can then remove the build container with `docker rm pigen_work`
You can then remove the build container with `docker rm -v pigen_work`
If something breaks along the line, you can edit the corresponding scripts, and
continue:
@@ -138,12 +138,14 @@ maintenance and allows for more easy customization.
enhancements, etc. This is a base desktop system, with some development
tools installed.
- **Stage 4** - complete Raspbian system. More development tools, an email
client, learning tools like Scratch, specialized packages like sonic-pi and
wolfram-engine, system documentation, office productivity, etc. This is
the stage that installs all of the things that make Raspbian friendly to
new users.
- **Stage 4** - Raspbian system meant to fit on a 4GB card. More development
tools, an email client, learning tools like Scratch, specialized packages
like sonic-pi, system documentation, office productivity, etc. This is the
stage that installs all of the things that make Raspbian friendly to new
users.
- **Stage 5** - The official Raspbian Desktop image. Right now only adds
Mathematica.
### Stage specification
@@ -156,8 +158,10 @@ from `./stage2` (if building a minimal system).
```bash
# Example for building a lite system
touch ./stage3/SKIP ./stage4/SKIP
echo "IMG_NAME='Raspbian'" > config
touch ./stage3/SKIP ./stage4/SKIP ./stage5/SKIP
rm stage4/EXPORT*
sudo ./build.sh # or ./build-docker.sh
```
If you wish to build further configurations upon (for example) the lite
+7 -5
View File
@@ -12,9 +12,9 @@ if ! $DOCKER ps >/dev/null; then
fi
set -e
config_mount=
config_mount="/dev/null:/dev/null"
if [ -f config ]; then
config_mount="-v $(pwd)/config:/pi-gen/config:ro"
config_mount="$(pwd)/config:/pi-gen/config:ro"
source config
fi
@@ -45,7 +45,7 @@ fi
if [ "$CONTAINER_EXISTS" != "" ] && [ "$CONTINUE" != "1" ]; then
echo "Container $CONTAINER_NAME already exists and you did not specify CONTINUE=1. Aborting."
echo "You can delete the existing container like this:"
echo " docker rm $CONTAINER_NAME"
echo " docker rm -v $CONTAINER_NAME"
exit 1
fi
@@ -54,6 +54,7 @@ if [ "$CONTAINER_EXISTS" != "" ]; then
trap "echo 'got CTRL+C... please wait 5s';docker stop -t 5 ${CONTAINER_NAME}_cont" SIGINT SIGTERM
time $DOCKER run --rm --privileged \
--volumes-from="${CONTAINER_NAME}" --name "${CONTAINER_NAME}_cont" \
-e IMG_NAME=${IMG_NAME}\
pi-gen \
bash -e -o pipefail -c "dpkg-reconfigure qemu-user-static &&
cd /pi-gen; ./build.sh;
@@ -62,8 +63,9 @@ if [ "$CONTAINER_EXISTS" != "" ]; then
else
trap "echo 'got CTRL+C... please wait 5s'; docker stop -t 5 ${CONTAINER_NAME}" SIGINT SIGTERM
$DOCKER run --name "${CONTAINER_NAME}" --privileged \
-v $(pwd)/deploy:/pi-gen/deploy \
${config_mount} \
-e IMG_NAME=${IMG_NAME}\
-v "$(pwd)/deploy:/pi-gen/deploy" \
-v "${config_mount}" \
pi-gen \
bash -e -o pipefail -c "dpkg-reconfigure qemu-user-static &&
cd /pi-gen; ./build.sh &&
+1 -1
View File
@@ -128,7 +128,7 @@ if [ -z "${IMG_NAME}" ]; then
exit 1
fi
export IMG_DATE=${IMG_DATE:-"$(date -u +%Y-%m-%d)"}
export IMG_DATE=${IMG_DATE:-"$(date +%Y-%m-%d)"}
export BASE_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
export SCRIPT_DIR="${BASE_DIR}/scripts"
+1 -1
View File
@@ -51,7 +51,7 @@ echo "/boot: offset $BOOT_OFFSET, length $BOOT_LENGTH"
echo "/: offset $ROOT_OFFSET, length $ROOT_LENGTH"
mkdosfs -n boot -F 32 -v $BOOT_DEV > /dev/null
mkfs.ext4 -O ^huge_file $ROOT_DEV > /dev/null
mkfs.ext4 -O ^metadata_csum,^huge_file $ROOT_DEV > /dev/null
mount -v $ROOT_DEV ${ROOTFS_DIR} -t ext4
mkdir -p ${ROOTFS_DIR}/boot
@@ -1,4 +1,7 @@
UNRELEASED:
* New kernel and firmware
* Filesystem created without the metadata_csum feature
2017-06-21:
* Scratch 2 application included
* Thonny Python IDE included
* New icons with thinner outlines