diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index b56e971..721653f 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -19,7 +19,7 @@ jobs: id: builder working-directory: ${{ env.working-directory }} run: | - bash build-docker.sh + bash build.sh echo ::set-output name=filename::$(ls deploy/*.tar.xz | xargs -n 1 basename) - name: Fix Permissions id: fix_perm_filename diff --git a/.github/workflows/validate.yml b/.github/workflows/validate.yml index fa7b1fc..18df9f7 100644 --- a/.github/workflows/validate.yml +++ b/.github/workflows/validate.yml @@ -16,7 +16,7 @@ jobs: id: builder working-directory: ${{ env.working-directory }} run: | - bash build-docker.sh + bash build.sh echo ::set-output name=filename::$(ls deploy/*.tar.xz | xargs -n 1 basename) - name: Fix Permissions id: fix_perm_filename diff --git a/builder/build-docker.sh b/builder/build-docker.sh deleted file mode 100755 index 79b68d4..0000000 --- a/builder/build-docker.sh +++ /dev/null @@ -1,108 +0,0 @@ -#!/bin/bash -eu -DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" - -BUILD_OPTS="$*" - -DOCKER="docker" - -if ! ${DOCKER} ps >/dev/null 2>&1; then - DOCKER="sudo docker" -fi -if ! ${DOCKER} ps >/dev/null; then - echo "error connecting to docker:" - ${DOCKER} ps - exit 1 -fi - -CONFIG_FILE="" -if [ -f "${DIR}/config" ]; then - CONFIG_FILE="${DIR}/config" -fi - -while getopts "c:" flag -do - case "${flag}" in - c) - CONFIG_FILE="${OPTARG}" - ;; - *) - ;; - 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" - exit 1 -else - # shellcheck disable=SC1090 - source "${CONFIG_FILE}" -fi - -CONTAINER_NAME=${CONTAINER_NAME:-pigen_work} -CONTINUE=${CONTINUE:-0} -PRESERVE_CONTAINER=${PRESERVE_CONTAINER:-0} - -if [ -z "${IMG_NAME}" ]; then - echo "IMG_NAME not set in 'config'" 1>&2 - echo 1>&2 -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 - echo "The build is already running in container ${CONTAINER_NAME}. Aborting." - exit 1 -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 -v ${CONTAINER_NAME}" - exit 1 -fi - -# Modify original build-options to allow config file to be mounted in the docker container -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} && - 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} && - rsync -av work/*/build.log deploy/" & - wait "$!" -fi -echo "copying results from deploy/" -${DOCKER} cp "${CONTAINER_NAME}":/pi-gen/deploy . -ls -lah deploy - -# cleanup -if [ "${PRESERVE_CONTAINER}" != "1" ]; then - ${DOCKER} rm -v "${CONTAINER_NAME}" -fi - -echo "Done! Your image(s) should be in deploy/" diff --git a/builder/export-noobs/00-release/00-run.sh b/builder/export-noobs/00-release/00-run.sh deleted file mode 100755 index 1d0b12f..0000000 --- a/builder/export-noobs/00-release/00-run.sh +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/bash -e - -NOOBS_DIR="${STAGE_WORK_DIR}/${IMG_DATE}-${IMG_NAME}${IMG_SUFFIX}" - -install -v -m 744 files/partition_setup.sh "${NOOBS_DIR}/" -install -v files/partitions.json "${NOOBS_DIR}/" -install -v files/os.json "${NOOBS_DIR}/" -install -v files/OS.png "${NOOBS_DIR}/" -install -v files/release_notes.txt "${NOOBS_DIR}/" - -tar -v -c -C files/marketing -f "${NOOBS_DIR}/marketing.tar" . - -BOOT_SHASUM="$(sha256sum "${NOOBS_DIR}/boot.tar.xz" | cut -f1 -d' ')" -ROOT_SHASUM="$(sha256sum "${NOOBS_DIR}/root.tar.xz" | cut -f1 -d' ')" - -BOOT_SIZE="$(xz --robot -l "${NOOBS_DIR}/boot.tar.xz" | grep totals | cut -f 5)" -ROOT_SIZE="$(xz --robot -l "${NOOBS_DIR}/root.tar.xz" | grep totals | cut -f 5)" - -BOOT_SIZE="$(( BOOT_SIZE / 1024 / 1024 + 1))" -ROOT_SIZE="$(( ROOT_SIZE / 1024 / 1024 + 1))" - -BOOT_NOM="256" -ROOT_NOM="$(( ROOT_SIZE + 400 ))" - -mv "${NOOBS_DIR}/OS.png" "${NOOBS_DIR}/${NOOBS_NAME// /_}.png" - -sed "${NOOBS_DIR}/partitions.json" -i -e "s|BOOT_SHASUM|${BOOT_SHASUM}|" -sed "${NOOBS_DIR}/partitions.json" -i -e "s|ROOT_SHASUM|${ROOT_SHASUM}|" - -sed "${NOOBS_DIR}/partitions.json" -i -e "s|BOOT_SIZE|${BOOT_SIZE}|" -sed "${NOOBS_DIR}/partitions.json" -i -e "s|ROOT_SIZE|${ROOT_SIZE}|" - -sed "${NOOBS_DIR}/partitions.json" -i -e "s|BOOT_NOM|${BOOT_NOM}|" -sed "${NOOBS_DIR}/partitions.json" -i -e "s|ROOT_NOM|${ROOT_NOM}|" - -sed "${NOOBS_DIR}/os.json" -i -e "s|UNRELEASED|${IMG_DATE}|" -sed "${NOOBS_DIR}/os.json" -i -e "s|NOOBS_NAME|${NOOBS_NAME}|" -sed "${NOOBS_DIR}/os.json" -i -e "s|NOOBS_DESCRIPTION|${NOOBS_DESCRIPTION}|" - -sed "${NOOBS_DIR}/release_notes.txt" -i -e "s|UNRELEASED|${IMG_DATE}|" - -cp -a "${NOOBS_DIR}" "${DEPLOY_DIR}/" diff --git a/builder/export-noobs/00-release/files/OS.png b/builder/export-noobs/00-release/files/OS.png deleted file mode 100644 index 02b67cf..0000000 Binary files a/builder/export-noobs/00-release/files/OS.png and /dev/null differ diff --git a/builder/export-noobs/00-release/files/marketing/slides_vga/A.png b/builder/export-noobs/00-release/files/marketing/slides_vga/A.png deleted file mode 100644 index 1f2dc55..0000000 Binary files a/builder/export-noobs/00-release/files/marketing/slides_vga/A.png and /dev/null differ diff --git a/builder/export-noobs/00-release/files/marketing/slides_vga/B.png b/builder/export-noobs/00-release/files/marketing/slides_vga/B.png deleted file mode 100644 index 870730b..0000000 Binary files a/builder/export-noobs/00-release/files/marketing/slides_vga/B.png and /dev/null differ diff --git a/builder/export-noobs/00-release/files/marketing/slides_vga/C.png b/builder/export-noobs/00-release/files/marketing/slides_vga/C.png deleted file mode 100644 index 96b46db..0000000 Binary files a/builder/export-noobs/00-release/files/marketing/slides_vga/C.png and /dev/null differ diff --git a/builder/export-noobs/00-release/files/marketing/slides_vga/D.png b/builder/export-noobs/00-release/files/marketing/slides_vga/D.png deleted file mode 100644 index 4500a95..0000000 Binary files a/builder/export-noobs/00-release/files/marketing/slides_vga/D.png and /dev/null differ diff --git a/builder/export-noobs/00-release/files/marketing/slides_vga/E.png b/builder/export-noobs/00-release/files/marketing/slides_vga/E.png deleted file mode 100644 index e046aef..0000000 Binary files a/builder/export-noobs/00-release/files/marketing/slides_vga/E.png and /dev/null differ diff --git a/builder/export-noobs/00-release/files/marketing/slides_vga/F.png b/builder/export-noobs/00-release/files/marketing/slides_vga/F.png deleted file mode 100644 index 78b5537..0000000 Binary files a/builder/export-noobs/00-release/files/marketing/slides_vga/F.png and /dev/null differ diff --git a/builder/export-noobs/00-release/files/marketing/slides_vga/G.png b/builder/export-noobs/00-release/files/marketing/slides_vga/G.png deleted file mode 100644 index a827932..0000000 Binary files a/builder/export-noobs/00-release/files/marketing/slides_vga/G.png and /dev/null differ diff --git a/builder/export-noobs/00-release/files/os.json b/builder/export-noobs/00-release/files/os.json deleted file mode 100644 index afa9f9a..0000000 --- a/builder/export-noobs/00-release/files/os.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "description": "NOOBS_DESCRIPTION", - "feature_level": 35120124, - "kernel": "4.19", - "name": "NOOBS_NAME", - "password": "raspberry", - "release_date": "UNRELEASED", - "supported_hex_revisions": "2,3,4,5,6,7,8,9,d,e,f,10,11,12,14,19,1040,1041,0092,0093,2082", - "supported_models": [ - "Pi Model", - "Pi 2", - "Pi Zero", - "Pi 3", - "Pi Compute Module 3", - "Pi 4" - ], - "url": "http://www.raspbian.org/", - "username": "pi", - "version": "buster" -} diff --git a/builder/export-noobs/00-release/files/partition_setup.sh b/builder/export-noobs/00-release/files/partition_setup.sh deleted file mode 100644 index 851290e..0000000 --- a/builder/export-noobs/00-release/files/partition_setup.sh +++ /dev/null @@ -1,46 +0,0 @@ -#!/bin/sh -#supports_backup in PINN - -set -ex - -# shellcheck disable=SC2154 -if [ -z "$part1" ] || [ -z "$part2" ]; then - printf "Error: missing environment variable part1 or part2\n" 1>&2 - exit 1 -fi - -mkdir -p /tmp/1 /tmp/2 - -mount "$part1" /tmp/1 -mount "$part2" /tmp/2 - -sed /tmp/1/cmdline.txt -i -e "s|root=[^ ]*|root=${part2}|" -sed /tmp/2/etc/fstab -i -e "s|^[^#].* / |${part2} / |" -sed /tmp/2/etc/fstab -i -e "s|^[^#].* /boot |${part1} /boot |" - -# shellcheck disable=SC2154 -if [ -z "$restore" ]; then - if [ -f /mnt/ssh ]; then - cp /mnt/ssh /tmp/1/ - fi - - if [ -f /mnt/ssh.txt ]; then - cp /mnt/ssh.txt /tmp/1/ - fi - - if [ -f /settings/wpa_supplicant.conf ]; then - cp /settings/wpa_supplicant.conf /tmp/1/ - fi - - if ! grep -q resize /proc/cmdline; then - if ! grep -q splash /tmp/1/cmdline.txt; then - sed -i "s| quiet||g" /tmp/1/cmdline.txt - fi - sed -i 's| init=/usr/lib/raspi-config/init_resize.sh||' /tmp/1/cmdline.txt - else - sed -i '1 s|.*|& sdhci.debug_quirks2=4|' /tmp/1/cmdline.txt - fi -fi - -umount /tmp/1 -umount /tmp/2 diff --git a/builder/export-noobs/00-release/files/partitions.json b/builder/export-noobs/00-release/files/partitions.json deleted file mode 100644 index 3d06017..0000000 --- a/builder/export-noobs/00-release/files/partitions.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "partitions": [ - { - "filesystem_type": "FAT", - "label": "boot", - "mkfs_options": "-F 32", - "partition_size_nominal": BOOT_NOM, - "uncompressed_tarball_size": BOOT_SIZE, - "want_maximised": false, - "sha256sum": "BOOT_SHASUM" - }, - { - "filesystem_type": "ext4", - "label": "root", - "mkfs_options": "-O ^huge_file", - "partition_size_nominal": ROOT_NOM, - "uncompressed_tarball_size": ROOT_SIZE, - "want_maximised": true, - "sha256sum": "ROOT_SHASUM" - } - ] -} diff --git a/builder/export-noobs/00-release/files/release_notes.txt b/builder/export-noobs/00-release/files/release_notes.txt deleted file mode 100644 index 45e8576..0000000 --- a/builder/export-noobs/00-release/files/release_notes.txt +++ /dev/null @@ -1,456 +0,0 @@ -UNRELEASED: - * -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 - * New version of Adobe Flash player (32.0.0.223) - * Selection of screen refresh rates added to Screen Configuration - * Fix for missing text insertion cursor in LibreOffice on Pi 4 - * Fix for Wi-fi interruption when Wi-fi icon on taskbar is clicked - * FIx for incorrect desktop background behind desktop login prompt - * Fix for segmentation faults when launching obconf and lxapperarance - * Fix for unclosed file pointer in Screen Configuration - * Fix for Bluetooth plugin freeze when large numbers of devices detected - * 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 356f5c2880a3c7e8774025aa6fc934a617553e7b -2019-06-20: - * Based on Debian Buster - * Support for Raspberry Pi 4 hardware - * FKMS OpenGL desktop graphics driver and xcompmgr compositing window manager used when running on Raspberry Pi 4 - * Screen Configuration application added for use with FKMS driver - * Raspberry Pi 4 video output options added to Raspberry Pi Configuration - * Uses new PiXflat UI theme for GTK and Openbox - * CPU activity gauge plugin no longer shown on taskbar by default - * CPU temperature gauge plugin added (not shown by default) - * USB ejecter and Bluetooth taskbar icons hidden when not appropriate - * Version 74.0.3729.157 of Chromium web browser included - * Version 32.0.0.207 of Flash player included - * IDLE Python IDE removed - * Wolfram Mathematica removed temporarily due to incompatibility with Buster - * Display of package sizes removed from Recommended Software - * Appearance Settings modified to support independent settings for two monitors - * Oracle Java 7 and 8 replaced with OpenJDK 11 - * Miscellaneous small bug fixes - * On-board 5GHz WiFi blocked by rfkill by default - The block is removed when taking one of the following actions: - - Selecting a locale in the first run wizard - - Setting the WiFi country in the Raspberry Pi Configuration tool or the Network Settings applet - - Setting the WiFi country in raspi-config - - Providing a wpa_supplicant.conf file through the boot partition - - Running 'rfkill unblock wifi' - * Boot partition size set to 256M - * Linux kernel 4.19.50 - * Raspberry Pi firmware 88ca9081f5e51cdedd16d5dbc85ed12a25123201 -2019-04-08: - * Chromium browser updated to version 72 - * VLC media player updated to version 3.0.6 - * RealVNC Server updated to version 6.4.0 - * Flash player updated to version 32.0.0.156 - * Performance improvements to SDL library - * Performance improvements to pixman library - * Option to set display underscan added to startup wizard - * Mounted external drives now displayed on desktop by default - * Network plugin modified for improved compatibility with wpa_passphrase - * SD Card Copier tweaks to reduce copy failures - * Various minor bug fixes and appearance tweaks - * Added ethtool - * Added rng-tools - * Add PINN restore support - * Linux kernel 4.14.98 - * Raspberry Pi firmware f8939644f7bd3065068787f1f92b3f3c79cf3de9 -2018-11-13: - * Two versions of image created - "base" image has no optional software packages included; "full" image has all optional packages - - Removed from "base" image - LibreOffice, Thonny, Scratch, Scratch 2, Sonic Pi, Minecraft, Python Games, SmartSim, SenseHAT Emulator - - Added to "full" image - Mathematica, BlueJ, Greenfoot, Node-RED, Claws Mail, VNC Viewer - * Python Games and SmartSim added to Recommended Software - * VLC media player with VideoCore hardware acceleration included in image - * Version 3.0.5 of Thonny included - * Modifications to LXDE components to enable local configuration to override global configuration correctly - * Modifications to Appearance Settings to support above configuration changes - * Modifications to various initial config defaults and relevant package to support above configuration changes - * Selecting default option in Appearance Settings now deletes relevant local configuration files - * PiX theme modified so that all changes made in Appearance Settings are in override files rather than in theme files - * Design of scrollbar buttons changed - * Image Viewer moved into Graphics category on main menu - * Recommended Software now installs LibreOffice language support files if needed, and suggests reboot if needed - * Latest version of Pepper Flash plugin included - * Chromium h264ify plugin permissions set correctly by default - * Corrections to various MIME types so that files open in sensible default applications - * Set default timezone to 'Europe/London' - * Linux kernel 4.14.79 - * Raspberry Pi firmware 12e0bf86e08d6067372bc0a45d7e8a10d3113210 -2018-10-09: - * Raspberry Pi 3A+ support - * In startup wizard, assign keyboard to country as per Debian installer recommendations - * In startup wizard, add option to use US keyboard in preference to country-specific option - * In startup wizard, show IP address on first page - * In startup wizard, check for existing wifi network connection and show it if there is one - * In startup wizard, install language support packages for LibreOffice and other applications - * In startup wizard, improve operation with keyboard only and no mouse - * Password change in Raspberry Pi Configuration and startup wizard now works properly if passwords contain shell characters - * Battery indicator plugin modified to cope with Pi-top hardware monitor crashing - * Networking plugin hides wifi password characters by default - * In Scratch 2 GPIO plugin, set pin from dropdown list rather than free text - * In Scratch 2 SenseHAT plugin, swap x and y axis values for LED array - * Include latest Adobe Flash player (31.0.0.108) - * Include latest RealVNC Server (6.3.1) - * Include libav-tools - * Include ssh-import-id - * Removed Mathematica - * Merge in latest third-party code for Bluetooth ALSA interface - * Add ability to prevent software update changing configuration files, by creating ~/.config/.lock file - * Various other small bug fixes, tweaks and changes to text - * Make dhcpcd work with 3G devices - * Add hw acceleration to ffmpeg - * Improved WiFi-BT coexistence parameters - * Run fake-hwclock before systemd-fsck-root - * Raspberry Pi PoE HAT support - * Linux kernel 4.14.71 - * Raspberry Pi firmware 5b49caa17e91d0e64024380119ad739bb201c674 -2018-06-27: - * New first-boot configuration wizard added - * Recommended Software installer added - * Bluej, Greenfoot, NodeRED, Claws Mail, VNC Viewer removed from image - can now be installed from Recommended Applications - * Qpdfview PDF viewer installed instead of Xpdf - * Version 65.0 of Chromium browser included, with latest Flash player - * Volume up / down keys now change by 5% increments and affect currently-selected output device rather than internal device only - * Network plugin now remembers previously-entered WiFi network passwords when prompting for reconnection - * Serial port and serial console can now be switched separately in Raspberry Pi Configuration - * Lxkeymap keyboard language setting application removed - replaced with dialog within Raspberry Pi Configuration - * Wifi country and keyboard language setting dialogs in Raspberry Pi Configuration now callable from other applications - * New version of Piboto font included to render with correct weight under some rogue applications - * Reconnection to Bluetooth audio devices on reboot improved - * Disable click-to-rename behaviour in file manager if single-click selection enabled - * Appearance Settings dialog makes config changes to some Qt files to match selected theme - * MIME file type associations improved - * Multiple desktop management options removed from mouse middle-click menu - * Menu shortcuts to Raspberry Pi website amended - * Python 2 IDLE menu link removed - * Sample Magpi PDF installed in /home/pi/MagPi - * Various minor tweaks, bug fixes and appearance changes - * Bluetooth updates - - Firmware with Bluetooth 4.2 features - - SCO profile suppot added via bthelper.service - * Linux kernel 4.14.50+ - * Raspberry Pi firmware 748fb17992426bb29d99224b93cb962fefbdc833 -2018-04-18: - * Fixed race between wifi-country.service and raspberrypi-net-mods.service - * Linux kernel 4.14.34+ - * Raspberry Pi firmware 5db8e4e1c63178e200d6fbea23ed4a9bf4656658 -2018-03-13: - * Raspberry Pi 3 B+ support - * WiFi is disabled until wireless regulatory domain is set (Pi 3 B+ only) - - The domain can be done through 'Raspberry Pi Configuration' (rc_gui), - 'raspi-config' or by setting 'country=' to an appropriate ISO 3166 - alpha2 country code in /etc/wpa_supplicant/wpa_supplicant.conf. - * Default wireless regulatory domain is now unset - * Added support to desktop for different screen sizes and resolutions, - including multiple preset options in Appearance Settings and pixel doubling - option in Raspberry Pi Configuration - * Version 2.1.16 of Thonny included - * Version 29.0.0.113 of Adobe PepperFlash player included - * Version 1.2.post1 of Pygame Zero included - * Bluetooth plugin now supports connection to Bluetooth LE HID devices - * Network plugin now indicates 5G-compatible APs - * Latest changes to Bluez ALSA service merged - - service now started on CLI boot as well as GUI boot - * Latest changes to dhcpcd networking plugin merged - * Improved support for running on pi-top devices - * Small design changes to PiX theme and icons - * Bug fix - hide spurious window resize handles - * Bug fix - Scratch 2 remote GPIO state block now works correctly - * Updated WiFi Firmware - - brcmfmac43455-sdio 7.45.154 - - brcmfmac43430-sdio 7.45.98.38 - * New packages: - - policykit-1 - - obconf - - python-buttonshim python3-buttonshim - - python-unicornhathd python3-unicornhathd - - python-pantilthat python3-pantilthat - * Linux kernel 4.9.80+ - * Raspberry Pi firmware 3347884c7df574bbabeff6dca63caf686e629699 -2017-11-29: - * Added battery monitor plugin for taskbar - works on x86 images or first-generation Pi-Top - * Added cutdown mode to PCManFM file manager to reduce complexity - * Added ability to rename files in PCManFM by clicking name when selected - * Bug fix in Bluetooth ALSA module to reduce truncation of audio at end of playback - * Various small tweaks, bug fixes and theme modifications - * New kernel and firmware -2017-09-07: - * Disable predictable network interface names for Ethernet devices - * Bug fix for keyboard settings dialog in Raspberry Pi Configuration - * Bug fix for crash on some videos and animations in Chromium - * Bug fix for taskbar crash when running RealVNC server - * Bug fix for reloading projects with extensions in Scratch 2 - * Bug fix for MAC address problem in Bluetooth - * Simple mode and new icons in Thonny - * New Japanese translations in Raspberry Pi Configuration - * Install fonts-droid-fallback for international fonts -2017-08-16: - * Based on Raspbian Stretch (Debian version 9) - * Version 60 of Chromium browser included - * Version 3.0.1 of Sonic Pi included - * Version 6.1.1 of RealVNC included - * Version 0.17.4 of NodeRED included - * Bluetooth audio routed via ALSA rather than Pulseaudio - * SenseHAT extension added to Scratch 2 - * Various desktop applications modified to prompt for sudo password if needed - * lxinput control options for mouse speed simplified - * lxpanel plugins moved into separate packages - * Wireless firmware for Pi 3 and Pi 0W modified to address Broadpwn exploit - * Latest kernel and firmware - * Various small tweaks, bug fixes and theme modifications -2017-07-05: - * 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 - * Volume control more linear in behaviour - * Updated Flash player - * Updated RealVNC server and viewer - * Various tweaks and bugfixes - * New kernel and firmware -2017-04-10: - * Wolfram Mathematica updated to version 11.0.1 - * Adobe Flash Player updated to version 25.0.0.127 - * Use PARTUUID to support USB boot -2017-03-02: - * Updated kernel and firmware (final Pi Zero W support) - * Wolfram Mathematica updated to version 11 - * NOOBS installs now checks for presence of 'ssh' file on the NOOBS partition. -2017-02-16: - * Chromium browser updated to version 56 - * Adobe Flash Player updated to version 24.0.0.221 - * RealVNC Server and Viewer updated to version 6.0.2 (RealVNC Connect) - * Sonic Pi updated to version 2.11 - * Node-RED updated to version 0.15.3 - * Scratch updated to version 120117 - * Detection of SSH enabled with default password moved into PAM - * Updated desktop GL driver to support use of fake KMS option - * Raspberry Pi Configuration and raspi-config allow setting of fixed HDMI resolution - * raspi-config allows enabling of serial hardware independent of serial terminal - * Updates to kernel and firmware - * Various minor bug fixes and usability and appearance tweaks -2017-01-11: - * Re-release of the 2016-11-25 image with a FAT32-formatted boot partition -2016-11-25: - * SSH disabled by default; can be enabled by creating a file with name "ssh" in boot partition - * Prompt for password change at boot when SSH enabled with default password unchanged - * Adobe Flash Player included - * Updates to hardware video acceleration in Chromium browser - * Greeter now uses background image from last set in Appearance Settings rather than pi user - * Updated version of Scratch - * Rastrack option removed from raspi-config and Raspberry Pi Configuration - * Ability to disable graphical boot splash screen added to raspi-config and Raspberry Pi Configuration - * Appearance Settings dialog made tabbed to work better on small screens - * Raspberry Pi Configuration now requires current password to change password - * Various small bug fixes - * Updated firmware and kernel -2016-09-23: - * New PIXEL desktop environment - new icon set, window design, desktop images, splash screen and greeter - * Chromium web browser included - * Infinality font rendering patches included - * RealVNC server and viewer included - * SenseHAT emulator included - * Rfkill entries added to Wifi and Bluetooth panel plugins - * Updates to various standard applications, including Scratch and NodeRED - * Various bug fixes, tweaks and translation updates - * Updated firmware and kernel (https://github.com/raspberrypi/firmware/commit/ad8608c08b122b2c228dba0ff5070d6e9519faf5) -2016-05-27: - * Fixed crash of lxpanel when D-bus not accessible - * Fixed permissions for D-bus Bluetooth access - * Removed sudo from shutdown options - * Appearance of tooltips updated in theme - * Fixed ejecter plugin grabbing focus - * raspi-config command line and GUI apps tidied; unnecessary reboots removed - * More error detection in piclone; copying of volume names and IDs added - * Updated translation files -2016-05-10: - * New version of Scratch, which no longer requires sudo - * New version of BlueJ - * New version of NodeRED - * New version of pypy - * pigpio included - * geany editor included - * SD Card Copier added (can be used to duplicate or back up the Pi) - * Bluetooth plugin added to taskbar - * Volume control on taskbar now compatible with Bluetooth devices - * New shutdown helper application - * Mouse double-click speed setting added to mouse and keyboard preference application - * Option to enable / disable 1-wire interface and remote access to pigpio added to Raspberry Pi config application - * File system automatically expanded on first boot - * Empty Wastebasket option added to right-click menu - * Ctrl-Alt-T can be used to open a terminal window - * Various small bug fixes and appearance tweaks - * Updated firmware and kernel (https://github.com/raspberrypi/firmware/commit/cc6d7bf8b4c03a2a660ff9fdf4083fc165620866) -2016-03-18: - * updated firmware and kernel (https://github.com/raspberrypi/firmware/commit/951799bbcd795ddf27769d14acf4813fdcbe53dc) - * use serial0 in cmdline.txt - * wpa_supplicant.conf country default to GB (allows use of channels 12 and 13) -2016-02-26: - * Support added for Pi 3, including Wifi and Bluetooth - * Option to set wifi country code added to raspi-config -2016-02-09: - * dtb that uses mmc sdcard driver (fixes problems experienced with certain SD cards) -2016-02-03: - * new version of Sonic Pi (2.9) - * new version of Scratch (15/1/16) - * new version of Node-Red (2.5) - * new version of Wolfram (10.3) - * optional experimental GL desktop driver (can be enabled using advanced options in command-line raspi-config) - * new version of Java (1.8.0_65) - * new version of WiringPi - * raspi-gpio included - * ping no longer requires sudo (except NOOBS installs) - * support for more USB audio devices in lxpanel - * bug fix for creation of new menus in Alacarte - * various changes to raspi-config and GUI to tidy up board support and fix bugs, and updated translations - * small tweaks to theme to support GL driver -2015-11-21: - * Included IBM Node-RED IoT application - * Included graphical package manager - * Included accelerated pixman library - * Updated Epiphany browser to improve video compatibility - * Updated Scratch with performance improvements and bug fixes - * Updated Raspberry Pi configuration to allow boot to pause while - network is established - * Various minor bug fixes -2015-09-25: - * Based on Debian Jessie - * Upgraded applications - Epiphany browser, Scratch and Sonic Pi - * Included applications - LibreOffice, Claws Mail, Greenfoot, BlueJ - * Included utilities - Alacarte menu editor, Lxkeymap, scrot, tree, pip - * New GUI-based Raspberry Pi Configuration application - * GPIO control now possible without need for sudo - * Web link to Magpi magazine included - * New taskbar plugin to eject mounted USB drives - * Default boot is now to GUI not desktop - * Look and feel now based on GTK+3 default theme - * Print screen key launches scrot to produce screenshot - * Common keyboards autodetected by GUI and drivers loaded accordingly - * Numerous small tweaks and bugfixes -2015-05-05: - * Updated UI changes - * Updated firmware - * Install raspberrypi-net-mods - * Install avahi-daemon - * Add user pi to new i2c and spi groups - * Modified udev rules for i2c and spi devices -2015-02-16: - * Newer firmware with various fixes - * New Sonic Pi release - * Pi2 compatible RPi.GPIO - * Updated Wolfram Mathematica -2015-01-31: - * Support for Pi2 - * Newer firmware - * New Sonic Pi release - * Updated Scratch - * New Wolfram Mathematica release - * Updated Epiphany -2014-12-24: - * Fix regression with omission of python-pygame -2014-12-22: - * New firmware with variosu fixes and improvements - * New UI configuration for lxde - * Various package updates - * python3-pygame preinstalled - * 'nuscratch', scratch running on the Cog StackVM - * Misc other changes -2014-09-09: - * New firmware with various fixes and improvements - * Minecraft Pi pre-installed - * Sonic Pi upgraded to 2.0 - * Include Epiphany browser work from Collabora - * Switch to Java 8 from Java 7 - * Updated Mathematica - * Misc minor configuration changes -2014-06-20: - * New firmware with various fixes, and kernel bugfix -2014-06-02: - * Many, many firmware updates with major USB improvements - * pyserial installed by default - * picamera installed by default -2014-01-07: - * Firmware updated - * Some space saved on the root filesystem -2013-12-20: - * Firmware updated, includes V4L2 fixes - * Update omxplayer -2013-12-18: - * Firmware updated and now using kernel 3.10. Many, many improvements - * fbturbo XOrg driver is now included and enabled by default. Thanks to - ssvb https://github.com/ssvb/xf86-video-fbturbo - * Update Scratch image with further bug fixes - * Include Wolfram Mathematica - * Update to PyPy 2.2 - * Update omxplayer - * Include v4l-utils for use with experimental V4L2 Raspberry Pi camera driver - * Update squeak-vm to fix issues with loading JPEGs -2013-09-25: - * Update Scratch image for further performance improvements - * Include Oracle JDK - * At least a 4GiB SD card is now required (see above) - * Include PyPy 2.1 - * Include base piface packages - * Update raspi-config to include bugfix for inheriting language settings - from NOOBS -2013-09-10: - * Updated to current top of tree firmware - * Update squeak-vm, including fastblit optimised for the Raspbery Pi - * Include Sonic Pi and a fixed jackd2 package - * Support boot to Scratch - * Inherit keyboard and language settings from NOOBS diff --git a/builder/export-noobs/prerun.sh b/builder/export-noobs/prerun.sh deleted file mode 100755 index 54e0c59..0000000 --- a/builder/export-noobs/prerun.sh +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/bash -e - -IMG_FILE="${STAGE_WORK_DIR}/${IMG_FILENAME}${IMG_SUFFIX}.img" -NOOBS_DIR="${STAGE_WORK_DIR}/${IMG_DATE}-${IMG_NAME}${IMG_SUFFIX}" -unmount_image "${IMG_FILE}" - -mkdir -p "${STAGE_WORK_DIR}" -cp "${WORK_DIR}/export-image/${IMG_FILENAME}${IMG_SUFFIX}.img" "${STAGE_WORK_DIR}/" - -rm -rf "${NOOBS_DIR}" - -PARTED_OUT=$(parted -sm "${IMG_FILE}" unit b print) -BOOT_OFFSET=$(echo "$PARTED_OUT" | grep -e '^1:' | cut -d':' -f 2 | tr -d B) -BOOT_LENGTH=$(echo "$PARTED_OUT" | grep -e '^1:' | cut -d':' -f 4 | tr -d B) - -ROOT_OFFSET=$(echo "$PARTED_OUT" | grep -e '^2:' | cut -d':' -f 2 | tr -d B) -ROOT_LENGTH=$(echo "$PARTED_OUT" | grep -e '^2:' | cut -d':' -f 4 | tr -d B) - -BOOT_DEV=$(losetup --show -f -o "${BOOT_OFFSET}" --sizelimit "${BOOT_LENGTH}" "${IMG_FILE}") -ROOT_DEV=$(losetup --show -f -o "${ROOT_OFFSET}" --sizelimit "${ROOT_LENGTH}" "${IMG_FILE}") -echo "/boot: offset $BOOT_OFFSET, length $BOOT_LENGTH" -echo "/: offset $ROOT_OFFSET, length $ROOT_LENGTH" - -mkdir -p "${STAGE_WORK_DIR}/rootfs" -mkdir -p "${NOOBS_DIR}" - -mount "$ROOT_DEV" "${STAGE_WORK_DIR}/rootfs" -mount "$BOOT_DEV" "${STAGE_WORK_DIR}/rootfs/boot" - -ln -sv "/lib/systemd/system/apply_noobs_os_config.service" "$ROOTFS_DIR/etc/systemd/system/multi-user.target.wants/apply_noobs_os_config.service" - -bsdtar --numeric-owner --format gnutar -C "${STAGE_WORK_DIR}/rootfs/boot" -cpf - . | xz -T0 > "${NOOBS_DIR}/boot.tar.xz" -umount "${STAGE_WORK_DIR}/rootfs/boot" -bsdtar --numeric-owner --format gnutar -C "${STAGE_WORK_DIR}/rootfs" --one-file-system -cpf - . | xz -T0 > "${NOOBS_DIR}/root.tar.xz" - -unmount_image "${IMG_FILE}"