Merge branch 'master' into arm64

This commit is contained in:
Serge Schneider 2021-10-05 17:43:06 +01:00
commit 2e3603d228
19 changed files with 129 additions and 64 deletions

View file

@ -1,4 +1,4 @@
ARG BASE_IMAGE=debian:buster ARG BASE_IMAGE=debian:bullseye
FROM ${BASE_IMAGE} FROM ${BASE_IMAGE}
ENV DEBIAN_FRONTEND noninteractive ENV DEBIAN_FRONTEND noninteractive

View file

@ -60,7 +60,7 @@ The following environment variables are supported:
that the network block device is not disconnected correctly after the Docker process has that the network block device is not disconnected correctly after the Docker process has
ended abnormally. In that case see [Disconnect an image if something went wrong](#Disconnect-an-image-if-something-went-wrong) ended abnormally. In that case see [Disconnect an image if something went wrong](#Disconnect-an-image-if-something-went-wrong)
* `RELEASE` (Default: buster) * `RELEASE` (Default: bullseye)
The release version to build images against. Valid values are jessie, stretch The release version to build images against. Valid values are jessie, stretch
buster, bullseye, and testing. buster, bullseye, and testing.

View file

@ -78,10 +78,10 @@ BUILD_OPTS="$(echo "${BUILD_OPTS:-}" | sed -E 's@\-c\s?([^ ]+)@-c /config@')"
# Check the arch of the machine we're running on. If it's 64-bit, use a 32-bit base image instead # Check the arch of the machine we're running on. If it's 64-bit, use a 32-bit base image instead
case "$(uname -m)" in case "$(uname -m)" in
x86_64|aarch64) x86_64|aarch64)
BASE_IMAGE=i386/debian:buster BASE_IMAGE=i386/debian:bullseye
;; ;;
*) *)
BASE_IMAGE=debian:buster BASE_IMAGE=debian:bullseye
;; ;;
esac esac
${DOCKER} build --build-arg BASE_IMAGE=${BASE_IMAGE} -t pi-gen "${DIR}" ${DOCKER} build --build-arg BASE_IMAGE=${BASE_IMAGE} -t pi-gen "${DIR}"

View file

@ -207,7 +207,7 @@ export TARGET_HOSTNAME=${TARGET_HOSTNAME:-raspberrypi}
export FIRST_USER_NAME=${FIRST_USER_NAME:-pi} export FIRST_USER_NAME=${FIRST_USER_NAME:-pi}
export FIRST_USER_PASS=${FIRST_USER_PASS:-raspberry} export FIRST_USER_PASS=${FIRST_USER_PASS:-raspberry}
export RELEASE=${RELEASE:-buster} export RELEASE=${RELEASE:-bullseye}
export WPA_ESSID export WPA_ESSID
export WPA_PASSWORD export WPA_PASSWORD
export WPA_COUNTRY export WPA_COUNTRY

View file

@ -1,4 +1,52 @@
UNRELEASED: UNRELEASED:
* Based on Debian version 11 (bullseye)
* Desktop components (lxpanel and all plugins, libfm, pcmanfm) now built against GTK+3
* Applications (piwiz, pipanel, rc_gui, lxinput) now built against GTK+3
* PiXflat GTK+3 theme updated with numerous changes to support the above
* GTK+3 : toolbar icon size setting added
* GTK+3 : ability to request client-side decoration on windows added
* GTK+3 : setting for indent for frame labels in custom style added
* mutter window manager used instead of openbox on devices with 2GB or more of RAM
* mutter : title bar icon behaviour and appearance modified to match openbox
* mutter : additional keyboard shortcuts added
* mutter : various performance enhancements
* mutter compatibility added to screen magnifier
* Numerous changes to Appearance Settings application to support GTK+3 and mutter
* Updater plugin added to lxpanel to detect and install software updates
* File manager view options simplified to either list or icons, with separate menu option for thumbnails
* New file manager toolbar icons
* KMS used as default display driver
* Modifications to HDMI audio output selection to support the above
* xcompmgr enabled when openbox is running under KMS
* New default camera subsystem based on libcamera
* New camera demo applications (libcamera-still and libcamera-vid) have replaced raspistill and raspivid
* Legacy camera subsystem removed from 64-bit RPi OS (still available on 32-bit)
* Chromium upgraded to version 92.0.4515.98
* VLC media player upgraded to version 3.0.16
* Spurious drive removal warning after use of SD card copier removed
* Bookshelf application now includes Custom PC magazine
* Various translation updates - Italian, Korean, Polish, German, Armenian
* Startup wizard now installs Japanese fonts if needed
* Progress and information dialog boxes for lxpanel plugins now common to lxpanel, rather than in individual plugins
* Icon handling code for lxpanel plugins now common to lxpanel
* Package with 4K version of Raspberry Pi wallpaper added to Recommended Software
* Python Games and Minecraft removed from Recommended Software - neither is compatible with bullseye
* Bluetooth pairing and connection dialogs updated for compatibility with more devices
* Bluetooth devices always disconnected before removal to speed up removal process
* Bluetooth pairing dialog now only shows devices which offer services which are usable by Pi
* Separate Bluetooth unpair dialog removed - unpair now an option for each individual device
* Bug fix - mutter : header bar colours not updating when theme is changed
* Bug fix - GTK+3 : tooltips being displayed incorrectly at bottom of screen
* Bug fix - lxpanel : crash when using keyboard shortcut to enable magnifier when magnifier not installed
* Bug fix - lxpanel : lockup in Bluetooth plugin when connecting to certain devices
* Bug fix - lxpanel : discoverable mode icon could get out of sync with underlying Bluetooth system state
* Bug fix - piwiz : missing cities in timezone list
* Bug fix - piwiz : country-specific language packages not being installed
* Bug fix - bookshelf : now waits for longer between packets before timing out
* Bug fix - accented characters now displayed correctly in localisation dialogs
* Raspberry Pi firmware 46f356dcecc5204ca9a8cef7e6894e083b231bc7
* Linux kernel 5.10.60
2021-05-07:
* Chromium upgraded to version 88.0.4324.187 * Chromium upgraded to version 88.0.4324.187
* NuScratch upgraded to version 20210507 * NuScratch upgraded to version 20210507
* Node-RED upgraded to version 1.3.4 * Node-RED upgraded to version 1.3.4

View file

@ -17,6 +17,7 @@ bootstrap(){
BOOTSTRAP_ARGS+=(--include gnupg) BOOTSTRAP_ARGS+=(--include gnupg)
BOOTSTRAP_ARGS+=(--components "main,contrib,non-free") BOOTSTRAP_ARGS+=(--components "main,contrib,non-free")
#BOOTSTRAP_ARGS+=(--keyring "${STAGE_DIR}/files/raspberrypi.gpg") #BOOTSTRAP_ARGS+=(--keyring "${STAGE_DIR}/files/raspberrypi.gpg")
BOOTSTRAP_ARGS+=(--exclude=info)
BOOTSTRAP_ARGS+=("$@") BOOTSTRAP_ARGS+=("$@")
printf -v BOOTSTRAP_STR '%q ' "${BOOTSTRAP_ARGS[@]}" printf -v BOOTSTRAP_STR '%q ' "${BOOTSTRAP_ARGS[@]}"

View file

@ -36,7 +36,7 @@ connect_blkdev() {
init_nbd init_nbd
qemu-nbd --discard=unmap -c $NBD_DEV "$1" qemu-nbd --discard=unmap -c $NBD_DEV "$1"
sync sync
kpartx -a $NBD_DEV kpartx -as $NBD_DEV
sync sync
CURRENT_IMAGE="$1" CURRENT_IMAGE="$1"
} }
@ -108,7 +108,7 @@ load_qimage() {
254MiB,,83; 254MiB,,83;
EOF EOF
sync sync
kpartx -a $NBD_DEV kpartx -as $NBD_DEV
mkdosfs -n boot -F 32 -v $MAP_BOOT_DEV mkdosfs -n boot -F 32 -v $MAP_BOOT_DEV
mkfs.ext4 -L rootfs -O "^huge_file,^metadata_csum,^64bit" $MAP_ROOT_DEV mkfs.ext4 -L rootfs -O "^huge_file,^metadata_csum,^64bit" $MAP_ROOT_DEV
sync sync
@ -123,7 +123,7 @@ EOF
sync sync
qemu-nbd --discard=unmap -c $NBD_DEV image-${STAGE}.qcow2 qemu-nbd --discard=unmap -c $NBD_DEV image-${STAGE}.qcow2
sync sync
kpartx -a $NBD_DEV kpartx -as $NBD_DEV
fi fi
mount -v -t ext4 $MAP_ROOT_DEV "${ROOTFS_DIR}" mount -v -t ext4 $MAP_ROOT_DEV "${ROOTFS_DIR}"

View file

@ -5,10 +5,6 @@
# uncomment if you get no picture on HDMI for a default "safe" mode # uncomment if you get no picture on HDMI for a default "safe" mode
#hdmi_safe=1 #hdmi_safe=1
# uncomment this if your display has a black border of unused pixels visible
# and your display can output without overscan
#disable_overscan=1
# uncomment the following to adjust overscan. Use positive numbers if console # uncomment the following to adjust overscan. Use positive numbers if console
# goes off screen, and negative if there is too much border # goes off screen, and negative if there is too much border
#overscan_left=16 #overscan_left=16
@ -56,7 +52,29 @@
# Enable audio (loads snd_bcm2835) # Enable audio (loads snd_bcm2835)
dtparam=audio=on dtparam=audio=on
# Enable DRM VC4 V3D drive # Automatically load overlays for detected cameras
camera_auto_detect=1
# Enable DRM VC4 V3D driver
dtoverlay=vc4-kms-v3d dtoverlay=vc4-kms-v3d
max_framebuffers=2 max_framebuffers=2
# Run in 64-bit mode
arm_64bit=1 arm_64bit=1
# Disable compensation for displays with overscan
disable_overscan=1
[cm4]
# Enable host mode on the 2711 built-in XHCI USB controller.
# This line should be removed if the legacy DWC2 controller is required
# (e.g. for USB device mode) or if USB support is not required.
otg_mode=1
[all]
[pi4]
# Run as fast as firmware / board allows
arm_boost=1
[all]

View file

@ -0,0 +1 @@
raspi-config

View file

@ -3,4 +3,6 @@
echo "${TARGET_HOSTNAME}" > "${ROOTFS_DIR}/etc/hostname" echo "${TARGET_HOSTNAME}" > "${ROOTFS_DIR}/etc/hostname"
echo "127.0.1.1 ${TARGET_HOSTNAME}" >> "${ROOTFS_DIR}/etc/hosts" echo "127.0.1.1 ${TARGET_HOSTNAME}" >> "${ROOTFS_DIR}/etc/hosts"
ln -sf /dev/null "${ROOTFS_DIR}/etc/systemd/network/99-default.link" on_chroot << EOF
SUDO_USER="${FIRST_USER_NAME}" raspi-config nonint do_net_names 1
EOF

View file

@ -1 +1 @@
libraspberrypi-bin libraspberrypi0 raspi-config libraspberrypi-bin libraspberrypi0

View file

@ -1,8 +1,7 @@
ssh less fbset sudo psmisc strace ed ncdu crda ssh less fbset sudo psmisc strace ed ncdu crda
console-setup keyboard-configuration debconf-utils parted unzip console-setup keyboard-configuration debconf-utils parted unzip
build-essential manpages-dev python bash-completion gdb pkg-config build-essential manpages-dev python3 bash-completion gdb pkg-config
python-rpi.gpio v4l-utils python3-rpi.gpio v4l-utils
python-gpiozero
python3-gpiozero python3-gpiozero
avahi-daemon avahi-daemon
lua5.1 lua5.1
@ -26,7 +25,6 @@ policykit-1
ssh-import-id ssh-import-id
rng-tools rng-tools
ethtool ethtool
vl805fw
ntfs-3g ntfs-3g
pciutils pciutils
rpi-eeprom rpi-eeprom

View file

@ -1,11 +1,12 @@
#!/bin/bash -e #!/bin/bash -e
install -v -d "${ROOTFS_DIR}/etc/systemd/system/dhcpcd.service.d"
install -v -m 644 files/wait.conf "${ROOTFS_DIR}/etc/systemd/system/dhcpcd.service.d/"
install -v -d "${ROOTFS_DIR}/etc/wpa_supplicant" install -v -d "${ROOTFS_DIR}/etc/wpa_supplicant"
install -v -m 600 files/wpa_supplicant.conf "${ROOTFS_DIR}/etc/wpa_supplicant/" install -v -m 600 files/wpa_supplicant.conf "${ROOTFS_DIR}/etc/wpa_supplicant/"
on_chroot << EOF
SUDO_USER="${FIRST_USER_NAME}" raspi-config nonint do_boot_wait 0
EOF
if [ -v WPA_COUNTRY ]; then if [ -v WPA_COUNTRY ]; then
echo "country=${WPA_COUNTRY}" >> "${ROOTFS_DIR}/etc/wpa_supplicant/wpa_supplicant.conf" echo "country=${WPA_COUNTRY}" >> "${ROOTFS_DIR}/etc/wpa_supplicant/wpa_supplicant.conf"
fi fi

View file

@ -1,3 +0,0 @@
[Service]
ExecStart=
ExecStart=/usr/lib/dhcpcd5/dhcpcd -q -w

View file

@ -2,14 +2,14 @@ gstreamer1.0-x gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-
qpdfview gtk2-engines alsa-utils qpdfview gtk2-engines alsa-utils
desktop-base desktop-base
git git
#omxplayer
raspberrypi-artwork
policykit-1 policykit-1
gvfs gvfs
rfkill rfkill
chromium rpi-chromium-mods chromium-browser rpi-chromium-mods
gldriver-test gldriver-test
fonts-droid-fallback fonts-droid-fallback
fonts-liberation2 fonts-liberation2
obconf obconf
arandr arandr
libcamera-tools
libcamera-apps

View file

@ -1,3 +1,5 @@
#!/bin/bash -e #!/bin/bash -e
rm -f "${ROOTFS_DIR}/etc/systemd/system/dhcpcd.service.d/wait.conf" on_chroot << EOF
SUDO_USER="${FIRST_USER_NAME}" raspi-config nonint do_boot_wait 1
EOF

View file

@ -1,11 +1,10 @@
python python3-pygame python-pygame python-tk python3-pygame
python3 python3-tk thonny python3-tk thonny
python3-pgzero python3-pgzero
python-serial python3-serial python3-serial
#python-picamera python3-picamera
debian-reference-en dillo debian-reference-en dillo
raspberrypi-net-mods raspberrypi-ui-mods raspberrypi-net-mods raspberrypi-ui-mods
python-pip python3-pip python3-pip
python3-numpy python3-numpy
pypy pypy
alacarte rc-gui sense-hat alacarte rc-gui sense-hat
@ -13,11 +12,11 @@ tree
libgl1-mesa-dri libgles1 libgles2-mesa xcompmgr libgl1-mesa-dri libgles1 libgles2-mesa xcompmgr
geany geany
piclone piclone
wiringpi pigpio python-pigpio python3-pigpio raspi-gpio python3-rpi.gpio pigpio python3-pigpio raspi-gpio python3-rpi.gpio
python-spidev python3-spidev python3-spidev
python-twython python3-twython python3-twython
python-smbus python3-smbus python3-smbus
python-flask python3-flask python3-flask
pprompt pprompt
piwiz piwiz
rp-prefapps rp-prefapps

View file

@ -1,22 +1,22 @@
python-automationhat python3-automationhat python3-automationhat
python-blinkt python3-blinkt python3-blinkt
python-cap1xxx python3-cap1xxx python3-cap1xxx
python-drumhat python3-drumhat python3-drumhat
python-envirophat python3-envirophat python3-envirophat
python-explorerhat python3-explorerhat python3-explorerhat
python-fourletterphat python3-fourletterphat python3-fourletterphat
python-microdotphat python3-microdotphat python3-microdotphat
python-mote python3-mote python3-mote
python-motephat python3-motephat python3-motephat
python-phatbeat python3-phatbeat python3-phatbeat
python-pianohat python3-pianohat python3-pianohat
python-piglow python3-piglow python3-piglow
python-rainbowhat python3-rainbowhat python3-rainbowhat
python-scrollphat python3-scrollphat python3-scrollphat
python-scrollphathd python3-scrollphathd python3-scrollphathd
python-sn3218 python3-sn3218 python3-sn3218
python-skywriter python3-skywriter python3-skywriter
python-touchphat python3-touchphat python3-touchphat
python-buttonshim python3-buttonshim python3-buttonshim
python-unicornhathd python3-unicornhathd python3-unicornhathd
python-pantilthat python3-pantilthat python3-pantilthat

View file

@ -3,8 +3,7 @@ mu-editor
#scratch nuscratch scratch3 #scratch nuscratch scratch3
smartsim smartsim
#minecraft-pi python-minecraftpi python-picraft python3-picraft python3-sense-emu sense-emu-tools python-sense-emu-doc
python-sense-emu sense-emu-tools python-sense-emu-doc
#wolfram-engine #wolfram-engine
claws-mail claws-mail
@ -12,5 +11,4 @@ greenfoot-unbundled bluej
#nodered #nodered
realvnc-vnc-viewer realvnc-vnc-viewer
python-games
code-the-classics code-the-classics