Trying to run this in the background does not work correctly in its current iteration, setting the correct place on the screen for displaying did not work out.
Includes minor fixes and wording improvements.
- use Chrony with Network Manager
- use timesync with systemd-networkd
- use NetPlan with Network manager only
- move command-not-found to CLI image only
- improve firstlogin ip detection
* reload-or-restart ssh prevents botching if sshd is started by a systemd socket
* restart ssh prevents botching if sshd is started by a systemd socket
* move sshd activation from ssh.service to ssh.socket:
- more realiable, avoids possible race condition on first boot
- supplementary to PR#6586 - and commits ffee50a8a6 and 6725032191
* Add display_alert explaining the change in SSH activation
armbian-resize-filesystem wants to align partitions on 16 MB boundaries,
however due to an off-by-one error it would make the last sector of the
partition start at a 16 MB boundary instead of ending at a 16 MB boundary.
Original version destroyed journal on command postrotate as files in /var/log.hdd/journal are overwritten by cat. With the patch journal is not damaged anymore.
Sometimes we need to fix minor issues like changing the key or fixing other small problem on live OS. We can ship this as a part of BSP package, but its handling should be made easy.
This downloads script from CDN, verify its signature and executes after apt upgrade starts installing packages.
* Record patch output to syslog
* Enable armbian-live-patch as additional service and run patch mechanism at startup
* Additional security check
Improve naming confusion by changing build framework defaults. Set framework defaults VENDOR to Armbian-unofficial for self build images. Unsupported boards and unsupported distribution have framework defaults, except VENDOR and VENDORURL. We build images with predefined values.
ifconfig is no longer included in a default install of Armbian Bookworm, causing armbian-firstrun-config to silently fail when attempting to retrieve a list of network adapters. Using nmcli instead.
* armbian-install: The log file should be named identical to the originally called install script
- the log file should be named as:
- /var/log/armbian-install.log if script armbian-install was originally called
- /var/log/nand-sata-install.log
- same for directory /usr/lib/nand-sata-install:
- rename this directory to /usr/lib/armbian-install
- create a symbolic link nand-sata-install to this folder for backward compatibility
in a subsequent commit
- abort script armbian-install with an error message:
- if file ${EX_LIST} does not exist
- if dir ${BOOTLOADER} does not exist
- remove the "beta" from the version title of armbian-install
* Add symlink /usr/lib/nand-sata-install to /usr/lib/armbian-install
In commit 0aa61abe7 (armbian-audio-config: Massively speed up script)
this script was changed to not call amixer for each control, but just
once for each card, feeding commands for many controls in one invocation
with the `--stdin` option.
In that commit, two errors were introduced:
- Controls that were intended to be muted were turned on instead. This
affects the "CD", "Mic" and "Internal Speaker" controls.
This occured because there is a helper shell function whose arguments
were renumbered, but the last argument kept the old numbering,
keeping it always at the default value of "on", even when it should
have been "mute".
- Controls with a space in their name would be ignored. In the original
script, arguments (including these names) were quoted and passed
separately to the `amixer` command. Now, they are quoted when passed
to `echo`, but that produces an unstructured line with the quoting
removed that can no longer be correctly parsed by amixer for names
with spaces.
This commit fixes both problems be correctly numbering the arguments and
adding an additional layer of quoting.
* armbian-audio-config: Massively speed up script
This script calls amixer to set various mixer volumes, by simply trying
a bunch of mixer names for each sound card in the system. In practice,
this meant the amixer command was called 158 times for each sound card.
The overhead of all these forks and probably also amixer startup added
together to produce a noticable slowdown in startup.
For example on an Orange Pi PC, the script took about 6 seconds per
soundcard. This was on a system with a few extra USB soundcards (6 alsa
cards in total):
$ time bash ./armbian-audio-config.original
real 0m35.662s
user 0m20.145s
sys 0m15.145s
This commit modifies the script to spawn amixer only once per alsa card,
passing all the mixer set commands through stdin. This pretty much
completely kills the slowdown. On the same 6-card system:
$ time bash ./armbian-audio-config
real 0m0.406s
user 0m0.345s
sys 0m0.229s
* armbian-audio-config: Add quotes to fix lint errors
Commit c909864922 removed a prompt
asking the user if they want to change display settings, but didn't
remove the checks that later used the answer. Since it's been like
this for 2 years now apparently without issue, remove the checks and
the shellcheck workaround.
Make the two Y/n questions that firstlogin asks behave consistently
with each other, and more in line with user expectation:
- Reject anything that is not Y, y, N, n or <enter>. Previously the
"Connect via wireless? [Y/n]" question would interpret Y, y and
<enter> as "yes", and everything else as "no", whereas the
"Set user language based on your location? [Y/n]" question would
loop until the user selected Y, y, N or n.
- Make pressing enter equivalent to the default "Y", since that
is the capitalized option.
- Echo back what the user typed.