From 9f68bf8f125dcc82ddc14a0d743726f9185f9d54 Mon Sep 17 00:00:00 2001 From: procount Date: Mon, 1 Oct 2018 14:43:56 +0100 Subject: [PATCH] p2.8.5.5 - rebootp & bootmenutimeout for boot sticky --- BUILDME.sh | 10 +- README.md | 682 ++++++++++++++++------------------ README_PINN.md | 11 +- README_SUM.md | 10 + changes.md | 5 + history.md | 5 + recovery/config.h | 2 +- recovery/translation_ae.ts | 14 +- recovery/translation_ast.ts | 14 +- recovery/translation_ca.ts | 14 +- recovery/translation_de.ts | 14 +- recovery/translation_en.ts | 14 +- recovery/translation_es.ts | 14 +- recovery/translation_eu.ts | 14 +- recovery/translation_fi.ts | 14 +- recovery/translation_fr.ts | 14 +- recovery/translation_hu.ts | 14 +- recovery/translation_it.ts | 14 +- recovery/translation_ja.ts | 14 +- recovery/translation_ko.ts | 14 +- recovery/translation_nl.ts | 14 +- recovery/translation_no.ts | 14 +- recovery/translation_pl.ts | 14 +- recovery/translation_pt.ts | 14 +- recovery/translation_ru.ts | 14 +- recovery/translation_sv.ts | 14 +- recovery/translation_tr.ts | 14 +- recovery/translation_zh_TW.ts | 14 +- 28 files changed, 512 insertions(+), 507 deletions(-) diff --git a/BUILDME.sh b/BUILDME.sh index 0c108171f..d59a9b3ec 100755 --- a/BUILDME.sh +++ b/BUILDME.sh @@ -104,6 +104,7 @@ IMAGES_DIR="output/images" SKIP_KERNEL_REBUILD=0 SKIP_RECOVERY_REBUILD=0 +UPDATE_TS=0 for i in $*; do # Update raspberrypi/firmware master HEAD version in package/rpi-firmware/rpi-firmware.mk to latest @@ -121,6 +122,11 @@ for i in $*; do update_github_kernel_version raspberrypi/linux rpi-4.14.y fi + # Update language TS files + if [ $i = "update-ts" ]; then + UPDATE_TS=1 + fi + # Option to build just recovery without completely rebuilding both kernels if [ $i = "skip-kernel-rebuild" ]; then SKIP_KERNEL_REBUILD=1 @@ -148,7 +154,9 @@ fi make # copy any updated translation files -cp $BUILD_DIR/recovery-$(get_package_version recovery)/*.ts ../recovery +if [ $UPDATE_TS -eq 1 ]; then + cp $BUILD_DIR/recovery-$(get_package_version recovery)/*.ts ../recovery +fi # Create output dir and copy files FINAL_OUTPUT_DIR="../$NOOBS_OUTPUT_DIR" diff --git a/README.md b/README.md index 5f64c34dc..407920888 100644 --- a/README.md +++ b/README.md @@ -1,355 +1,327 @@ -# NOOBS (New Out of Box Software) -#### An easy Operating System installer for the Raspberry Pi - -NOOBS is designed to make it easy to select and install operating systems for the Raspberry Pi without having to worry about manually imaging your SD card. - -The latest official release of NOOBS can be downloaded from http://downloads.raspberrypi.org/NOOBS_latest - -For information on previous releases and version changelists, visit https://github.com/raspberrypi/noobs/releases - -![alt text](screenshots/os_installed.png "NOOBS Interface") - -*NOTE: The list of OSes in this image is indicative only. It will vary according to your Raspberry Pi model and the availability of OSes on our remote download repository. - -### About -On first boot NOOBS will format your SD card and allow you to select which OSes you want to install from a list. This OS list is automatically generated from both locally available OSes (i.e. those contained in the `/os` directory on disk) or those available from our remote repository (network connection required). - -Only the latest version of each OS will ever be displayed meaning that you can be sure that you have installed the most up-to-date release of your selected OS. - -On any subsequent boot you can then press the SHIFT key to enter the NOOBS interface and easily reinstall your choice of OSes. - -The NOOBS interface provides the following functionality: -- Install: Installs the selected OSes onto your SD card. Changing this selection erases all OSes currently installed. -- Edit Config: Opens a text editor allowing the cmdline and config for the selected installed OS to be edited. -- Online Help: [Networking Required] Open a browser that displays the Raspberry Pi Help page ( http://www.raspberrypi.org/help/ ), allowing people to quickly access help and troubleshooting. -- Exit: Quits NOOBS and reboots the Pi into the OS boot menu. -- Language Selection: Allows you to select the language to be displayed. -- Keyboard Layout Selection: Allows you to select the keyboard layout to be used. -- Display Mode Selection: By default, NOOBS will output over HDMI at your display's preferred resolution, even if no HDMI display is connected. If you do not see any output on your HDMI display or are using the composite output, press 1, 2, 3 or 4 on your keyboard to select HDMI preferred mode, HDMI safe mode, composite PAL mode or composite NTSC mode respectively. - -Note that all user settings (language, keyboard layout, display mode) will persist between reboots and will also be automatically passed to the installed OSes. This means that if you can see the NOOBS interface on your display device then you should be able to see the OS CLI/GUI when it boots too! -### Setup - -To set up a blank SD card with NOOBS: -- Format an SD card that is 8GB or greater in size as FAT32 (see instructions on how to do this below) -- Download and extract the files from the NOOBS zip file. (Windows built-in zip features may have trouble with this file. If so, use another program such as [7zip](http://www.7-zip.org/).) -- Copy the extracted files onto the SD card that you just formatted so that this file is at the root directory of the SD card. - Please note that in some cases it may extract the files into a folder, if this is the case then please copy across the files from inside the folder rather than the folder itself. - -On first boot the "RECOVERY" FAT partition will be automatically resized to a minimum and a list of OSes that are available to install will be displayed. - -### Operating System Choice - -NOOBS is available in 2 formats: -- `NOOBS Full` includes the installation files for Raspbian only. -- `NOOBS-Lite` does not include any Operating Systems at all. - -#### OS Network Download - -Both versions of NOOBS allow additional Operating Systems to be downloaded from our remote repository. To do this, the Raspberry Pi must be connected to a wired network, or it can connect over Wifi using the [Raspberry Pi USB wifi dongle](https://www.raspberrypi.org/products/usb-wifi-dongle/) or the Raspberry Pi 3 Model B built-in wifi. - -Once connected, the Pi will only show a list of Operating Systems that are appropriate to your Pi Model. If you want to see ALL available OSes, edit the `recovery.cmdline` file in the root NOOBS directory and append `showall` to the arguments list. - -#### Wired Networks - -If a wired ethernet cable is plugged into the Pi before NOOBS starts, NOOBS will connect via DHCP to our remote download repository and present a list of available Operating Systems that are available for installation. - -#### Wifi Networks - -If you have the official [Raspberry Pi USB wifi Dongle](https://www.raspberrypi.org/products/usb-wifi-dongle/), or are using the Raspberry Pi 3 Model B with built-in wifi, the wifi icon on the NOOBS toolbar will be available. Click on this to select your Wifi SSID network and enter the wifi password. - -![alt text](screenshots/wifi_selector.png "Select your wifi network and enter the password") - -### How to Format an SD card as FAT - -For Windows users, we recommend formatting your SD card using the SD Association's Formatting Tool, which can be downloaded from https://www.sdcard.org/downloads/formatter_4/ You will need to set "FORMAT SIZE ADJUSTMENT" option to "ON" in the "Options" menu to ensure that the entire SD card volume is formatted - not just a single partition. With the latest SD Association Formatting Tool (V5.0) that option has been removed and is now the default. For more detailed and beginner-friendly formatting instructions, please refer to http://www.raspberrypi.org/quick-start-guide - -The SD Association's Formatting Tool is also available for Mac users although the default OSX Disk Utility is also capable of formatting the entire disk (select the SD card volume and choose "Erase" with "MS-DOS" format). - -For Linux users we recommend `gparted` (or the command line version `parted`). (Update: Norman Dunbar has written up the following formatting instructions for Linux users: http://qdosmsq.dunbar-it.co.uk/blog/2013/06/noobs-for-raspberry-pi/ ) - -=== - -### Screenshots - -#### OS Installation - -Simply select the checkbox next to each OS you want to install using either a mouse or keyboard (arrow keys to traverse the list, enter to toggle the selected OS's checkbox), then click the "Install" icon (or press "i" on your keyboard) to install the selection. The icons shown on the right of the list indicate whether the OS is being installed from the SD card (SD card icon) or from the online OS repository (Ethernet icon). - -![alt text](screenshots/os_selected.png "Select your choice of OSes to install") - -*NOTE: The list of OSes in this image is indicative only. It will vary according to your Raspberry Pi model and the availability of OSes on our remote download repository. - - -#### Online Help via Web Browser - -The built-in Arora web browser allows you to easily get help via the Raspberry Pi Forums (wired network connection required). - -![alt text](screenshots/browser.png "Search the Raspberry Pi forums for help via the built-in web browser") - -#### Easy Config File Editor - -The built-in config file editor allows you to edit the config file of the OS currently highlighted in the OS list. This allows you to easily add license keys to different OS installs through the same interface. - -Note that the output mode selected by the user through pressing one of number keys 1 to 4 (for HDMI preferred, HDMI VGA, Composite PAL and Composite NTSC respectively), will be automatically set in the `config.txt` files of your installed OSes. This means that you shouldn't have to worry about manually changing your display settings to get your installed OS to display correctly on your display device. - -![alt text](screenshots/config_editor.png "Easily edit the config files of any installed OS") - -#### Installer Slideshow - -An installer slideshow guides you through your first steps with each OS while it installs. - -![alt text](screenshots/installer_slides.png "An installer slideshow guides you through your first steps with each OS") - -#### OS Boot Selector - -After multiple OSes have been installed, you can select which OS to boot through this selection window that is automatically displayed. NOOBS will remember your choice and boot this OS by default unless a different option has been selected within 10 seconds. - -Note that if only one OS is installed then the boot selector will not be displayed and the OS will be automatically booted. - -![alt text](screenshots/boot_select.png "Easily select which OS you want to boot from a list of those currently installed") - -== - -## Advanced Usage (for experts and teachers) - -### How to Automatically Install an OS - -Even if you are using your Pi without a display, you can still use NOOBS to easily install an OS of your choice. To set up NOOBS to automatically and silently (i.e. without requiring any user input) install a specific OS, follow these steps: - -1. Copy the OS folder for the OS you want to install into the `/os` dir (or alternatively delete all other OSes contained in the `/os` dir so that only your chosen OS remains. - -2. If the OS you want to automatically install has multiple flavours available, edit the `flavours.json` file so that it only contains the flavour entry that you want to install. - -3. Edit the `recovery.cmdline` file in the root NOOBS directory and append `silentinstall` to the arguments list. - -When you now boot your Pi using an SD card containing the modified version of NOOBS that you just created, it will automatically install the OS you chose and boot into it after the installation has finished. - -### Preconfiguring a WiFi network - -If you already know your WiFi details, you can preconfigure NOOBS to use it straight away. Put a copy of your `wpa_supplicant.conf` file on the NOOBS root partition and NOOBS will read it and store it in its settings for all future uses. - -### How to create a custom OS version - -There are two main use cases for which you may want to create a custom version of one of the standard OS releases that is suitable for installation via NOOBS: -- If you are a teacher wanting to easily deploy a custom OS release containing pre-defined set of packages and files onto a number of SD cards (e.g. to provision a class set of Raspberry Pi's or quickly restore a Raspberry Pi back to custom "factory" settings). -- If you want to be able to back up your existing installed packages and files so that any future OS re-install does not force you back to a clean install. - -The following steps allow you to create a modified copy of one of the standard OS releases that contains your custom files, packages and settings. - -1. Download a base version of NOOBS from http://downloads.raspberrypi.org/NOOBS_latest - -2. Extract the NOOBS zipfile - -3. Navigate to the `os` directory - -4. Create a copy of the folder containing the OS release that you want to modify and rename it with a custom name. - -5. Edit the following fields in the `os.json` file contained in the folder that you just created - 1. "name" - replace the name of the base OS with the name of your custom OS version - 2. "description" - replace the description of the standard OS install with one for your custom OS version - -6. [Optional] Rename or replace the existing `.png` icon file with one matching the name of your custom OS version - -7. [Optional] Replace the PNG image files in the `slides` and `slides_vga` directory with your own custom installer slides - -8. Edit the following fields in the `partitions.json` file contained in the folder that you just created - 1. "partition_size_nominal" - replace the numerical value with the size of the paritions in your custom OS version - 2. "uncompressed_tarball_size" - replace the numerical value with the size of your filesystem tarballs when uncompressed - -9. Replace the `.tar.xz` root and boot filesystem tarballs with copies created from your custom OS version (these instructions assume you're only using a single OS at a time with NOOBS - they won't work if you're running multiple OSes from a single SD card). The name of these tarballs needs to match the labels given in `partitions.json`. - 1. To create the root tarball you will need to run `bsdtar --numeric-owner --format gnutar --one-file-system -cpf