Compare commits
50
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e577677b62 | ||
|
|
87f7a59cab | ||
|
|
306c7eba3b | ||
|
|
b4ea63c045 | ||
|
|
bdbd85892e | ||
|
|
ca31aef1f7 | ||
|
|
0a6624b26d | ||
|
|
24bb01dec2 | ||
|
|
f8f3d6fe93 | ||
|
|
f9375cdcec | ||
|
|
9d334bee66 | ||
|
|
024840034e | ||
|
|
271177a0f7 | ||
|
|
9d15c0f7d1 | ||
|
|
32353a162b | ||
|
|
18c3cebe94 | ||
|
|
8bdbbfb099 | ||
|
|
d7c1ae21ca | ||
|
|
5456c3801f | ||
|
|
5e19033387 | ||
|
|
7f143a185e | ||
|
|
a449c75fac | ||
|
|
95ba042c83 | ||
|
|
d30343f626 | ||
|
|
19c0188798 | ||
|
|
336ff2107e | ||
|
|
8026d9dc8f | ||
|
|
80d486687e | ||
|
|
5780006ecd | ||
|
|
99f702f0ff | ||
|
|
946f164006 | ||
|
|
6538d5babf | ||
|
|
652780757b | ||
|
|
d1ed4a2982 | ||
|
|
00c22ab57e | ||
|
|
e8460beb3b | ||
|
|
77833ba929 | ||
|
|
c49261d756 | ||
|
|
a016561600 | ||
|
|
c1ff2b1cac | ||
|
|
28f344144c | ||
|
|
d1f7a38905 | ||
|
|
8110eb4891 | ||
|
|
18b945ffb2 | ||
|
|
920e22bdc5 | ||
|
|
5436273ec7 | ||
|
|
c0714e33d6 | ||
|
|
9c0a25d852 | ||
|
|
210b51c293 | ||
|
|
4c575d7e8f |
+1
-1
@@ -6,7 +6,7 @@ RUN apt-get -y update && \
|
||||
apt-get -y install \
|
||||
git vim parted \
|
||||
quilt coreutils qemu-user-static debootstrap zerofree zip dosfstools \
|
||||
bsdtar libcap2-bin rsync grep udev xz-utils curl xxd file kmod\
|
||||
bsdtar libcap2-bin rsync grep udev xz-utils curl xxd file kmod bc\
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
COPY . /pi-gen/
|
||||
|
||||
@@ -6,7 +6,7 @@ _Tool used to create the raspberrypi.org Raspbian images_
|
||||
## Dependencies
|
||||
|
||||
pi-gen runs on Debian based operating systems. Currently it is only supported on
|
||||
either Debian Stretch or Ubuntu Xenial and is known to have issues building on
|
||||
either Debian Buster or Ubuntu Xenial and is known to have issues building on
|
||||
earlier releases of these systems. On other Linux distributions it may be possible
|
||||
to use the Docker build described below.
|
||||
|
||||
@@ -14,7 +14,7 @@ To install the required dependencies for pi-gen you should run:
|
||||
|
||||
```bash
|
||||
apt-get install coreutils quilt parted qemu-user-static debootstrap zerofree zip \
|
||||
dosfstools bsdtar libcap2-bin grep rsync xz-utils file git curl
|
||||
dosfstools bsdtar libcap2-bin grep rsync xz-utils file git curl bc
|
||||
```
|
||||
|
||||
The file `depends` contains a list of tools needed. The format of this
|
||||
@@ -62,7 +62,7 @@ The following environment variables are supported:
|
||||
be built and cached. Note, `WORK_DIR` stores a complete copy of the target
|
||||
system for each build stage, amounting to tens of gigabytes in the case of
|
||||
Raspbian.
|
||||
|
||||
|
||||
**CAUTION**: If your working directory is on an NTFS partition you probably won't be able to build. Make sure this is a proper Linux filesystem.
|
||||
|
||||
* `DEPLOY_DIR` (Default: `"$BASE_DIR/deploy"`)
|
||||
@@ -78,6 +78,37 @@ The following environment variables are supported:
|
||||
Setting to '1' enables the QEMU mode - creating an image that can be mounted via QEMU for an emulated
|
||||
environment. These images include "-qemu" in the image file name.
|
||||
|
||||
* `LOCALE_DEFAULT` (Default: "en_GB.UTF-8" )
|
||||
|
||||
Default system locale.
|
||||
|
||||
* `TARGET_HOSTNAME` (Default: "raspberrypi" )
|
||||
|
||||
Setting the hostname to the specified value.
|
||||
|
||||
* `KEYBOARD_KEYMAP` (Default: "gb" )
|
||||
|
||||
Default keyboard keymap.
|
||||
|
||||
To get the current value from a running system, run `debconf-show
|
||||
keyboard-configuration` and look at the
|
||||
`keyboard-configuration/xkb-keymap` value.
|
||||
|
||||
* `KEYBOARD_LAYOUT` (Default: "English (UK)" )
|
||||
|
||||
Default keyboard layout.
|
||||
|
||||
To get the current value from a running system, run `debconf-show
|
||||
keyboard-configuration` and look at the
|
||||
`keyboard-configuration/variant` value.
|
||||
|
||||
* `TIMEZONE_DEFAULT` (Default: "Europe/London" )
|
||||
|
||||
Default keyboard layout.
|
||||
|
||||
To get the current value from a running system, look in
|
||||
`/etc/timezone`.
|
||||
|
||||
* `FIRST_USER_NAME` (Default: "pi" )
|
||||
|
||||
Username for the first user
|
||||
@@ -88,11 +119,11 @@ The following environment variables are supported:
|
||||
|
||||
* `WPA_ESSID`, `WPA_PASSWORD` and `WPA_COUNTRY` (Default: unset)
|
||||
|
||||
If these are set, they are use to configure `wpa_supplicant.conf`, so that the raspberry pi can automatically connect to a wifi network on first boot.
|
||||
If these are set, they are use to configure `wpa_supplicant.conf`, so that the Raspberry Pi can automatically connect to a wifi network on first boot. If `WPA_ESSID` is set and `WPA_PASSWORD` is unset an unprotected wifi network will be configured. If set, `WPA_PASSWORD` must be between 8 and 63 characters.
|
||||
|
||||
* `ENABLE_SSH` (Default: `0`)
|
||||
|
||||
Setting to `1` will enable ssh server for remote log in. Note that if you are using a common password such as the defaults there is a high risk of attackers taking over you RaspberryPi.
|
||||
Setting to `1` will enable ssh server for remote log in. Note that if you are using a common password such as the defaults there is a high risk of attackers taking over you Raspberry Pi.
|
||||
|
||||
* `STAGE_LIST` (Default: `stage*`)
|
||||
|
||||
@@ -246,14 +277,13 @@ maintenance and allows for more easy customization.
|
||||
enhancements, etc. This is a base desktop system, with some development
|
||||
tools installed.
|
||||
|
||||
- **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 4** - Normal Raspbian image. System meant to fit on a 4GB card. This is the
|
||||
stage that installs most things that make Raspbian friendly to new
|
||||
users like system documentation.
|
||||
|
||||
- **Stage 5** - The official Raspbian Desktop image. Right now only adds
|
||||
Mathematica.
|
||||
- **Stage 5** - The Raspbian Full image. More development
|
||||
tools, an email client, learning tools like Scratch, specialized packages
|
||||
like sonic-pi, office productivity, etc.
|
||||
|
||||
### Stage specification
|
||||
|
||||
@@ -261,7 +291,7 @@ If you wish to build up to a specified stage (such as building up to stage 2
|
||||
for a lite system), place an empty file named `SKIP` in each of the `./stage`
|
||||
directories you wish not to include.
|
||||
|
||||
Then add an empty file named `SKIP_IMAGES` to `./stage4` (if building up to stage 2) or
|
||||
Then add an empty file named `SKIP_IMAGES` to `./stage4` and `./stage5` (if building up to stage 2) or
|
||||
to `./stage2` (if building a minimal system).
|
||||
|
||||
```bash
|
||||
|
||||
+12
-2
@@ -30,6 +30,11 @@ do
|
||||
esac
|
||||
done
|
||||
|
||||
# Ensure that the configuration file is an absolute path
|
||||
if test -x /usr/bin/realpath; then
|
||||
CONFIG_FILE=$(realpath -s "$CONFIG_FILE")
|
||||
fi
|
||||
|
||||
# Ensure that the confguration file is present
|
||||
if test -z "${CONFIG_FILE}"; then
|
||||
echo "Configuration file need to be present in '${DIR}/config' or path passed as parameter"
|
||||
@@ -49,6 +54,9 @@ if [ -z "${IMG_NAME}" ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Ensure the Git Hash is recorded before entering the docker container
|
||||
GIT_HASH=${GIT_HASH:-"$(git rev-parse HEAD)"}
|
||||
|
||||
CONTAINER_EXISTS=$(${DOCKER} ps -a --filter name="${CONTAINER_NAME}" -q)
|
||||
CONTAINER_RUNNING=$(${DOCKER} ps --filter name="${CONTAINER_NAME}" -q)
|
||||
if [ "${CONTAINER_RUNNING}" != "" ]; then
|
||||
@@ -63,23 +71,25 @@ if [ "${CONTAINER_EXISTS}" != "" ] && [ "${CONTINUE}" != "1" ]; then
|
||||
fi
|
||||
|
||||
# Modify original build-options to allow config file to be mounted in the docker container
|
||||
BUILD_OPTS="$(echo ${BUILD_OPTS:-} | sed -r 's@\-c\s?([^ ]+)@-c /config@')"
|
||||
BUILD_OPTS="$(echo "${BUILD_OPTS:-}" | sed -E 's@\-c\s?([^ ]+)@-c /config@')"
|
||||
|
||||
${DOCKER} build -t pi-gen "${DIR}"
|
||||
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 \
|
||||
--volume "${CONFIG_FILE}":/config:ro \
|
||||
-e "GIT_HASH=${GIT_HASH}" \
|
||||
--volumes-from="${CONTAINER_NAME}" --name "${CONTAINER_NAME}_cont" \
|
||||
pi-gen \
|
||||
bash -e -o pipefail -c "dpkg-reconfigure qemu-user-static &&
|
||||
cd /pi-gen; ./build.sh ${BUILD_OPTS} ;
|
||||
cd /pi-gen; ./build.sh ${BUILD_OPTS} &&
|
||||
rsync -av work/*/build.log deploy/" &
|
||||
wait "$!"
|
||||
else
|
||||
trap 'echo "got CTRL+C... please wait 5s" && ${DOCKER} stop -t 5 ${CONTAINER_NAME}' SIGINT SIGTERM
|
||||
time ${DOCKER} run --name "${CONTAINER_NAME}" --privileged \
|
||||
--volume "${CONFIG_FILE}":/config:ro \
|
||||
-e "GIT_HASH=${GIT_HASH}" \
|
||||
pi-gen \
|
||||
bash -e -o pipefail -c "dpkg-reconfigure qemu-user-static &&
|
||||
cd /pi-gen; ./build.sh ${BUILD_OPTS} &&
|
||||
|
||||
@@ -122,6 +122,8 @@ if [ "$(id -u)" != "0" ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
BASE_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
export BASE_DIR
|
||||
|
||||
if [ -f config ]; then
|
||||
# shellcheck disable=SC1091
|
||||
@@ -154,13 +156,14 @@ export IMG_DATE="${IMG_DATE:-"$(date +%Y-%m-%d)"}"
|
||||
export IMG_FILENAME="${IMG_FILENAME:-"${IMG_DATE}-${IMG_NAME}"}"
|
||||
export ZIP_FILENAME="${ZIP_FILENAME:-"image_${IMG_DATE}-${IMG_NAME}"}"
|
||||
|
||||
BASE_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
export SCRIPT_DIR="${BASE_DIR}/scripts"
|
||||
export WORK_DIR="${WORK_DIR:-"${BASE_DIR}/work/${IMG_DATE}-${IMG_NAME}"}"
|
||||
export DEPLOY_DIR=${DEPLOY_DIR:-"${BASE_DIR}/deploy"}
|
||||
export DEPLOY_ZIP="${DEPLOY_ZIP:-1}"
|
||||
export LOG_FILE="${WORK_DIR}/build.log"
|
||||
|
||||
export TARGET_HOSTNAME=${TARGET_HOSTNAME:-raspberrypi}
|
||||
|
||||
export FIRST_USER_NAME=${FIRST_USER_NAME:-pi}
|
||||
export FIRST_USER_PASS=${FIRST_USER_PASS:-raspberry}
|
||||
export WPA_ESSID
|
||||
@@ -168,7 +171,14 @@ export WPA_PASSWORD
|
||||
export WPA_COUNTRY
|
||||
export ENABLE_SSH="${ENABLE_SSH:-0}"
|
||||
|
||||
export BASE_DIR
|
||||
export LOCALE_DEFAULT="${LOCALE_DEFAULT:-en_GB.UTF-8}"
|
||||
|
||||
export KEYBOARD_KEYMAP="${KEYBOARD_KEYMAP:-gb}"
|
||||
export KEYBOARD_LAYOUT="${KEYBOARD_LAYOUT:-English (UK)}"
|
||||
|
||||
export TIMEZONE_DEFAULT="${TIMEZONE_DEFAULT:-Europe/London}"
|
||||
|
||||
export GIT_HASH=${GIT_HASH:-"$(git rev-parse HEAD)"}
|
||||
|
||||
export CLEAN
|
||||
export IMG_NAME
|
||||
@@ -210,6 +220,11 @@ if [[ -n "${APT_PROXY}" ]] && ! curl --silent "${APT_PROXY}" >/dev/null ; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [[ -n "${WPA_PASSWORD}" && ${#WPA_PASSWORD} -lt 8 || ${#WPA_PASSWORD} -gt 63 ]] ; then
|
||||
echo "WPA_PASSWORD" must be between 8 and 63 characters
|
||||
exit 1
|
||||
fi
|
||||
|
||||
mkdir -p "${WORK_DIR}"
|
||||
log "Begin ${BASE_DIR}"
|
||||
|
||||
@@ -237,7 +252,7 @@ for EXPORT_DIR in ${EXPORT_DIRS}; do
|
||||
fi
|
||||
done
|
||||
|
||||
if [ -x postrun.sh ]; then
|
||||
if [ -x ${BASE_DIR}/postrun.sh ]; then
|
||||
log "Begin postrun.sh"
|
||||
cd "${BASE_DIR}"
|
||||
./postrun.sh
|
||||
|
||||
@@ -4,8 +4,12 @@ IMG_FILE="${STAGE_WORK_DIR}/${IMG_FILENAME}${IMG_SUFFIX}.img"
|
||||
INFO_FILE="${STAGE_WORK_DIR}/${IMG_FILENAME}${IMG_SUFFIX}.info"
|
||||
|
||||
on_chroot << EOF
|
||||
/etc/init.d/fake-hwclock stop
|
||||
hardlink -t /usr/share/doc
|
||||
if [ -x /etc/init.d/fake-hwclock ]; then
|
||||
/etc/init.d/fake-hwclock stop
|
||||
fi
|
||||
if hash hardlink 2>/dev/null; then
|
||||
hardlink -t /usr/share/doc
|
||||
fi
|
||||
EOF
|
||||
|
||||
if [ -d "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/.config" ]; then
|
||||
|
||||
+17
-22
@@ -10,32 +10,27 @@ rm -rf "${ROOTFS_DIR}"
|
||||
mkdir -p "${ROOTFS_DIR}"
|
||||
|
||||
BOOT_SIZE="$((256 * 1024 * 1024))"
|
||||
TOTAL_SIZE=$(du --apparent-size -s "${EXPORT_ROOTFS_DIR}" --exclude var/cache/apt/archives --block-size=1 | cut -f 1)
|
||||
ROOT_SIZE=$(du --apparent-size -s "${EXPORT_ROOTFS_DIR}" --exclude var/cache/apt/archives --exclude boot --block-size=1 | cut -f 1)
|
||||
|
||||
ROUND_SIZE="$((4 * 1024 * 1024))"
|
||||
ROUNDED_ROOT_SECTOR=$(((BOOT_SIZE + ROUND_SIZE) / ROUND_SIZE * ROUND_SIZE / 512 + 8192))
|
||||
IMG_SIZE=$(((BOOT_SIZE + TOTAL_SIZE + (800 * 1024 * 1024) + ROUND_SIZE - 1) / ROUND_SIZE * ROUND_SIZE))
|
||||
# All partition sizes and starts will be aligned to this size
|
||||
ALIGN="$((4 * 1024 * 1024))"
|
||||
# Add this much space to the calculated file size. This allows for
|
||||
# some overhead (since actual space usage is usually rounded up to the
|
||||
# filesystem block size) and gives some free space on the resulting
|
||||
# image.
|
||||
ROOT_MARGIN="$(echo "($ROOT_SIZE * 0.2 + 200 * 1024 * 1024) / 1" | bc)"
|
||||
|
||||
BOOT_PART_START=$((ALIGN))
|
||||
BOOT_PART_SIZE=$(((BOOT_SIZE + ALIGN - 1) / ALIGN * ALIGN))
|
||||
ROOT_PART_START=$((BOOT_PART_START + BOOT_PART_SIZE))
|
||||
ROOT_PART_SIZE=$(((ROOT_SIZE + ROOT_MARGIN + ALIGN - 1) / ALIGN * ALIGN))
|
||||
IMG_SIZE=$((BOOT_PART_START + BOOT_PART_SIZE + ROOT_PART_SIZE))
|
||||
|
||||
truncate -s "${IMG_SIZE}" "${IMG_FILE}"
|
||||
fdisk -H 255 -S 63 "${IMG_FILE}" <<EOF
|
||||
o
|
||||
n
|
||||
|
||||
|
||||
8192
|
||||
+$((BOOT_SIZE / 512))
|
||||
p
|
||||
t
|
||||
c
|
||||
n
|
||||
|
||||
|
||||
${ROUNDED_ROOT_SECTOR}
|
||||
|
||||
|
||||
p
|
||||
w
|
||||
EOF
|
||||
parted --script "${IMG_FILE}" mklabel msdos
|
||||
parted --script "${IMG_FILE}" unit B mkpart primary fat32 "${BOOT_PART_START}" "$((BOOT_PART_START + BOOT_PART_SIZE - 1))"
|
||||
parted --script "${IMG_FILE}" unit B mkpart primary ext4 "${ROOT_PART_START}" "$((ROOT_PART_START + ROOT_PART_SIZE - 1))"
|
||||
|
||||
PARTED_OUT=$(parted -sm "${IMG_FILE}" unit b print)
|
||||
BOOT_OFFSET=$(echo "$PARTED_OUT" | grep -e '^1:' | cut -d':' -f 2 | tr -d B)
|
||||
|
||||
@@ -1,4 +1,72 @@
|
||||
UNRELEASED:
|
||||
* Version 3.2.6 of Thonny included - significant improvements in speed, particularly when debugging
|
||||
* Version 1.0.4 of Scratch 3 included - adds new "display stage" and "display sprite" blocks to SenseHAT extension, and loading of files from command line
|
||||
* Version 32.0.0.314 of Flash player included
|
||||
* Version 1.0.3 of NodeRED included
|
||||
* Version 6.6.0 of RealVNC Server and version 6.19.923 of RealVNC Viewer included - adds support for audio
|
||||
* Version 78.0.3904.108 of Chromium included
|
||||
* Mesa updated to 19.3.2 for OpenGL ES 3.1 conformance
|
||||
* Pixel doubling option added in Raspberry Pi Configuration on platforms using FKMS display driver
|
||||
* Orca screen reader added to Recommended Software
|
||||
* Code The Classics Python games added to Recommended Software
|
||||
* File manager - new "places" pane added at top of sidebar to show mounted drives in simplified view; "new folder" icon added to taskbar; expanders in directory browser now correctly show state of subfolders
|
||||
* Multiple monitor support improved - alignment of icons on second desktop corrected, Appearance Settings opens on correct tab when launched from context menu
|
||||
* Raspberry Pi Touchscreen correctly aligned with display
|
||||
* System clock synchronised before installing new packages in startup wizard and Recommended Software
|
||||
* Mixer dialogs added to taskbar volume plugin; separate Audio Preferences application removed
|
||||
* Raspberry Pi Configuration - separate tab added for display options; screen blanking control added
|
||||
* Volume taskbar plugin and raspi-config modified to support separate ALSA devices for internal audio outputs (analogue and HDMI 1 and 2)
|
||||
* Robustness improvements in volume, ejecter and battery taskbar plugins
|
||||
* Movement of mouse pointer to menu button on startup now controlled by point_at_menu parameter in Global section of lxpanel configuration file
|
||||
* Ctrl-Alt-Del and Ctrl-Alt-End shortcuts added to open shutdown options box
|
||||
* Ctrl-Shift-Esc shortcut added to open task manager
|
||||
* Enabled NEON routines in OpenSSL
|
||||
* Linux kernel 4.19.93
|
||||
* Raspberry Pi firmware 67392a7a32bddad7f571047fccafca9eeb65d29c
|
||||
2019-09-26:
|
||||
* rpi-eeprom included
|
||||
- This will automatically update the SPI EEPROM on the Raspberry Pi 4 to the latest stable version.
|
||||
See https://rpf.io/eeprom for more information.
|
||||
* New icon theme for file manager icons
|
||||
* Appearance Settings - option for identical desktop on both monitors
|
||||
* Appearance Settings - option to show different desktop icons on both monitors
|
||||
* Taskbar automatically moved to monitor 0 if monitor 1 not found at boot
|
||||
* Switching of audio output between two HDMI devices added to volume plugin
|
||||
* Switching of audio input devices added to volume plugin
|
||||
* .asoundrc (ALSA config file) now uses 'plug' values to support more devices
|
||||
* Audio Settings tool modified to integrate more closely with volume plugin to reduce duplicated code
|
||||
* Screen Configuration tool now shows separate menus for resolution and refresh rate
|
||||
* Primary and active monitor settings removed from Screen Configuration tool
|
||||
* Overscan support added for FKMS driver
|
||||
* New keyboard shortcuts added - Ctrl-Alt-End brings up shutdown menu; Ctrl-Alt-M moves taskbar between monitors
|
||||
* Latest changes to Bluez ALSA interface integrated to improve connection to Bluetooth audio devices
|
||||
* Mousepad used as simple text editor instead of leafpad
|
||||
* Version 3.2 of Thonny added
|
||||
* Version 74 of Chromium added
|
||||
* Version 3.0.8 of VLC added
|
||||
* Version 32.0.0.255 of Flash player added
|
||||
* Version 6.5.0 of RealVNC Server added
|
||||
* Version 6.19.715 of RealVNC Viewer added (full image only)
|
||||
* Version 12.0.1 of Mathematica added (full image only)
|
||||
* Version 0.20.8 of NodeRED added (full image only)
|
||||
* Version 3.1.0 of Sonic Pi added (full image only)
|
||||
* Scratch 3 added (full image only)
|
||||
* Bug fix - URL handling in Terminal
|
||||
* Bug fix - octal values in SSIDs in network plugin
|
||||
* Bug fix - remaining value in progress bar when transferring files
|
||||
* Bug fix - integration of xarchiver tool with file manager
|
||||
* Bug fix - start menu opening on incorrect monitor
|
||||
* Bug fix - minimised applications wrongly displayed on taskbar on second monitor
|
||||
* Bug fix - Bluetooth icon disappearing on x86 platforms when Bluetooth turned off
|
||||
* Bug fix - Screen Configuration tool not shown on x86 platforms and settings not being saved
|
||||
* Various translation updates
|
||||
* Various minor bug fixes
|
||||
* Epiphany/Web removed
|
||||
* ntfs-3g included
|
||||
* pciutils added
|
||||
* Linux kernel 4.19.75
|
||||
* Raspberry Pi firmware 01508e81ec1e918448227ca864616d56c430b46d
|
||||
2019-07-10:
|
||||
* Clearer options for switching of Pi 4 video output in Raspberry Pi Configuration
|
||||
* Option added to Appearance Settings to move taskbar to second monitor
|
||||
* Option added to Recommended Software to restrict package installs by architecture
|
||||
@@ -13,8 +81,11 @@ UNRELEASED:
|
||||
* Fix for opening URLs not working in lxterminal
|
||||
* Fix for start menu opening on incorrect monitor when launched from keyboard
|
||||
* Fix for taskbar item not having [] removed when un-minimising on second monitor
|
||||
* Fix for Chromium video playback and WebGL performance on Pi 4
|
||||
* Remove 4kp60 option from Raspberry Pi Configuration
|
||||
* Rename hdmi_enable_4k to hdmi_enable_4kp60 in /boot/config.txt and raspi-config
|
||||
* Linux kernel 4.19.57
|
||||
* Raspberry Pi firmware cb3a32adf39f45a49be454e30c7464920ad7c605
|
||||
* Raspberry Pi firmware 356f5c2880a3c7e8774025aa6fc934a617553e7b
|
||||
2019-06-20:
|
||||
* Based on Debian Buster
|
||||
* Support for Raspberry Pi 4 hardware
|
||||
|
||||
+2
-4
@@ -17,8 +17,9 @@ bootstrap(){
|
||||
BOOTSTRAP_ARGS+=(--components "main,contrib,non-free")
|
||||
BOOTSTRAP_ARGS+=(--keyring "${STAGE_DIR}/files/raspberrypi.gpg")
|
||||
BOOTSTRAP_ARGS+=("$@")
|
||||
printf -v BOOTSTRAP_STR '%q ' "${BOOTSTRAP_ARGS[@]}"
|
||||
|
||||
setarch linux32 capsh --drop=cap_setfcap -- "${BOOTSTRAP_CMD}" "${BOOTSTRAP_ARGS[@]}" || true
|
||||
setarch linux32 capsh --drop=cap_setfcap -- -c "'${BOOTSTRAP_CMD}' $BOOTSTRAP_STR" || true
|
||||
|
||||
if [ -d "$2/debootstrap" ]; then
|
||||
rmdir "$2/debootstrap"
|
||||
@@ -94,9 +95,6 @@ on_chroot() {
|
||||
export -f on_chroot
|
||||
|
||||
update_issue() {
|
||||
local GIT_HASH
|
||||
GIT_HASH=$(git rev-parse HEAD)
|
||||
echo -e "Raspberry Pi reference ${IMG_DATE}\nGenerated using ${PI_GEN}, ${PI_GEN_REPO}, ${GIT_HASH}, ${1}" > "${ROOTFS_DIR}/etc/rpi-issue"
|
||||
}
|
||||
export -f update_issue
|
||||
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
|
||||
dwc_otg.lpm_enable=0 console=serial0,115200 console=tty1 root=ROOTDEV rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait
|
||||
console=serial0,115200 console=tty1 root=ROOTDEV rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait
|
||||
|
||||
@@ -47,8 +47,9 @@
|
||||
#dtparam=i2s=on
|
||||
#dtparam=spi=on
|
||||
|
||||
# Uncomment this to enable the lirc-rpi module
|
||||
#dtoverlay=lirc-rpi
|
||||
# Uncomment this to enable infrared communication.
|
||||
#dtoverlay=gpio-ir,gpio_pin=17
|
||||
#dtoverlay=gpio-ir-tx,gpio_pin=18
|
||||
|
||||
# Additional overlays and parameters are documented /boot/overlays/README
|
||||
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
Index: jessie-stage1/rootfs/etc/hosts
|
||||
===================================================================
|
||||
--- jessie-stage1.orig/rootfs/etc/hosts
|
||||
+++ jessie-stage1/rootfs/etc/hosts
|
||||
@@ -3,3 +3,4 @@
|
||||
ff02::1 ip6-allnodes
|
||||
ff02::2 ip6-allrouters
|
||||
|
||||
+127.0.1.1 raspberrypi
|
||||
@@ -1 +0,0 @@
|
||||
01-hosts.diff
|
||||
@@ -1,5 +1,6 @@
|
||||
#!/bin/bash -e
|
||||
|
||||
install -m 644 files/hostname "${ROOTFS_DIR}/etc/hostname"
|
||||
echo "${TARGET_HOSTNAME}" > "${ROOTFS_DIR}/etc/hostname"
|
||||
echo "127.0.1.1 ${TARGET_HOSTNAME}" >> "${ROOTFS_DIR}/etc/hosts"
|
||||
|
||||
ln -sf /dev/null "${ROOTFS_DIR}/etc/systemd/network/99-default.link"
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
raspberrypi
|
||||
@@ -1,4 +0,0 @@
|
||||
auto lo
|
||||
|
||||
iface lo inet loopback
|
||||
iface eth0 inet dhcp
|
||||
@@ -15,7 +15,7 @@ keyboard-configuration keyboard-configuration/altgr select The default for the k
|
||||
keyboard-configuration keyboard-configuration/model select Generic 105-key (Intl) PC
|
||||
# Keymap to use:
|
||||
# Choices: American English, Albanian, Arabic, Asturian, Bangladesh, Belarusian, Bengali, Belgian, Bosnian, Brazilian, British English, Bulgarian, Bulgarian (phonetic layout), Burmese, Canadian French, Canadian Multilingual, Catalan, Chinese, Croatian, Czech, Danish, Dutch, Dvorak, Dzongkha, Esperanto, Estonian, Ethiopian, Finnish, French, Georgian, German, Greek, Gujarati, Gurmukhi, Hebrew, Hindi, Hungarian, Icelandic, Irish, Italian, Japanese, Kannada, Kazakh, Khmer, Kirghiz, Korean, Kurdish (F layout), Kurdish (Q layout), Lao, Latin American, Latvian, Lithuanian, Macedonian, Malayalam, Nepali, Northern Sami, Norwegian, Persian, Philippines, Polish, Portuguese, Punjabi, Romanian, Russian, Serbian (Cyrillic), Sindhi, Sinhala, Slovak, Slovenian, Spanish, Swedish, Swiss French, Swiss German, Tajik, Tamil, Telugu, Thai, Tibetan, Turkish (F layout), Turkish (Q layout), Ukrainian, Uyghur, Vietnamese
|
||||
keyboard-configuration keyboard-configuration/xkb-keymap select gb
|
||||
keyboard-configuration keyboard-configuration/xkb-keymap select ${KEYBOARD_KEYMAP}
|
||||
# Compose key:
|
||||
# Choices: No compose key, Right Alt (AltGr), Right Control, Right Logo key, Menu key, Left Logo key, Caps Lock
|
||||
keyboard-configuration keyboard-configuration/compose select No compose key
|
||||
@@ -23,4 +23,4 @@ keyboard-configuration keyboard-configuration/compose select No compose key
|
||||
keyboard-configuration keyboard-configuration/ctrl_alt_bksp boolean true
|
||||
# Keyboard layout:
|
||||
# Choices: English (UK), English (UK) - English (UK\, Colemak), English (UK) - English (UK\, Dvorak with UK punctuation), English (UK) - English (UK\, Dvorak), English (UK) - English (UK\, Macintosh international), English (UK) - English (UK\, Macintosh), English (UK) - English (UK\, extended WinKeys), English (UK) - English (UK\, international with dead keys), Other
|
||||
keyboard-configuration keyboard-configuration/variant select English (UK)
|
||||
keyboard-configuration keyboard-configuration/variant select ${KEYBOARD_LAYOUT}
|
||||
|
||||
@@ -25,3 +25,6 @@ ssh-import-id
|
||||
rng-tools
|
||||
ethtool
|
||||
vl805fw
|
||||
ntfs-3g
|
||||
pciutils
|
||||
rpi-eeprom
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
--- a/rootfs/boot/cmdline.txt
|
||||
+++ b/rootfs/boot/cmdline.txt
|
||||
--- stage2.orig/rootfs/boot/cmdline.txt
|
||||
+++ stage2/rootfs/boot/cmdline.txt
|
||||
@@ -1 +1 @@
|
||||
-dwc_otg.lpm_enable=0 console=serial0,115200 console=tty1 root=ROOTDEV rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait
|
||||
+dwc_otg.lpm_enable=0 console=serial0,115200 console=tty1 root=ROOTDEV rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait quiet init=/usr/lib/raspi-config/init_resize.sh
|
||||
-console=serial0,115200 console=tty1 root=ROOTDEV rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait
|
||||
+console=serial0,115200 console=tty1 root=ROOTDEV rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait quiet init=/usr/lib/raspi-config/init_resize.sh
|
||||
|
||||
@@ -12,11 +12,20 @@ fi
|
||||
|
||||
if [ -v WPA_ESSID ] && [ -v WPA_PASSWORD ]; then
|
||||
on_chroot <<EOF
|
||||
wpa_passphrase "${WPA_ESSID}" "${WPA_PASSWORD}" >> "/etc/wpa_supplicant/wpa_supplicant.conf"
|
||||
set -o pipefail
|
||||
wpa_passphrase "${WPA_ESSID}" "${WPA_PASSWORD}" | tee -a "/etc/wpa_supplicant/wpa_supplicant.conf"
|
||||
EOF
|
||||
elif [ -v WPA_ESSID ]; then
|
||||
cat >> "${ROOTFS_DIR}/etc/wpa_supplicant/wpa_supplicant.conf" << EOL
|
||||
|
||||
network={
|
||||
ssid="${WPA_ESSID}"
|
||||
key_mgmt=NONE
|
||||
}
|
||||
EOL
|
||||
fi
|
||||
|
||||
# Disable wifi on 5GHz models
|
||||
mkdir -p "${ROOTFS_DIR}/var/lib/systemd/rfkill/"
|
||||
echo 1 > "${ROOTFS_DIR}/var/lib/systemd/rfkill/platform-3f300000.mmc:wlan"
|
||||
echo 1 > "${ROOTFS_DIR}/var/lib/systemd/rfkill/platform-fe300000.mmc:wlan"
|
||||
echo 1 > "${ROOTFS_DIR}/var/lib/systemd/rfkill/platform-3f300000.mmcnr:wlan"
|
||||
echo 1 > "${ROOTFS_DIR}/var/lib/systemd/rfkill/platform-fe300000.mmcnr:wlan"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/bin/bash -e
|
||||
|
||||
echo "Europe/London" > "${ROOTFS_DIR}/etc/timezone"
|
||||
echo "${TIMEZONE_DEFAULT}" > "${ROOTFS_DIR}/etc/timezone"
|
||||
rm "${ROOTFS_DIR}/etc/localtime"
|
||||
|
||||
on_chroot << EOF
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
xserver-xorg-video-fbdev xserver-xorg xinit xserver-xorg-video-fbturbo
|
||||
epiphany-browser
|
||||
mousepad
|
||||
lxde lxtask menu-xdg
|
||||
zenity xdg-utils
|
||||
gvfs-backends gvfs-fuse
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
python python3-pygame python-pygame python-tk
|
||||
python3 python3-tk python3-thonny
|
||||
python3 python3-tk thonny
|
||||
python3-pgzero
|
||||
python-serial python3-serial
|
||||
python-picamera python3-picamera
|
||||
@@ -18,7 +18,6 @@ python-spidev python3-spidev
|
||||
python-twython python3-twython
|
||||
python-smbus python3-smbus
|
||||
python-flask python3-flask
|
||||
python-picraft python3-picraft
|
||||
pprompt
|
||||
piwiz
|
||||
rp-prefapps
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
#!/bin/sh -e
|
||||
|
||||
magpi_regex="MagPi[[:digit:]]*.pdf"
|
||||
magpi_loc="https://www.raspberrypi.org/magpi-issues"
|
||||
magpi_latest="$(curl "$magpi_loc/?C=M;O=D" -s | grep "$magpi_regex" -m 1 -o | head -n 1)"
|
||||
magpi_loc="$(curl -s https://magpi.raspberrypi.org/latest-pdf)"
|
||||
magpi_latest="$(echo "$magpi_loc" | grep "$magpi_regex" -m 1 -o)"
|
||||
|
||||
if [ ! -f "files/$magpi_latest" ]; then
|
||||
find files/ -regextype grep -regex "files/$magpi_regex" -delete
|
||||
wget "$magpi_loc/$magpi_latest" -O "files/$magpi_latest"
|
||||
wget "$magpi_loc" -O "files/$magpi_latest"
|
||||
fi
|
||||
|
||||
file "files/$magpi_latest" | grep -q "PDF document"
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
mu-editor
|
||||
sonic-pi
|
||||
scratch nuscratch scratch2
|
||||
scratch nuscratch scratch2 scratch3
|
||||
smartsim
|
||||
|
||||
minecraft-pi python-minecraftpi
|
||||
minecraft-pi python-minecraftpi python-picraft python3-picraft
|
||||
python-sense-emu sense-emu-tools python-sense-emu-doc
|
||||
|
||||
wolfram-engine
|
||||
@@ -13,3 +13,4 @@ nodered
|
||||
realvnc-vnc-viewer
|
||||
|
||||
python-games
|
||||
code-the-classics
|
||||
|
||||
Reference in New Issue
Block a user