* Don't display RX today: Error: No interface matching when wrong NIC is detected
* Improve checking
* Address shellcheck problem
* Switch conditions order
* Fix variable $root_partition_device to be a device path
- variable $root_partition_device is intended to be a
device path as /dev/$root_partition_device_name
* Fix determination and usage of variable $sduuid
- a) lookup mmc devices excluding the mmc device probably providing
the current root partition
- b) if there is no sduuid determined by this lookup,
then lookup any mmc partition matching /dev/mmcblk*p1
- c) move the sduuid calculation to the script header
to enable usage for scenario selection filtering
- d) hide installation scenario #1 selection,
if $sduuid is empty, since $sduuid is essential for that scenario
* Hide current root partition device from destination selection
- add new variable $root_partition_name
- use this variable to filter current root partition
from destination selection in check_partitions()
* Fix behavior in case of no available partition
- The logic in check_partitions() in case of no available
partition is improved not to fail for a hidden reason
and UX for fresh disk devices is improved
- Fix the calculation of $FREE_SPACE for devices without or
with an empty partition table
- Ask the user to proceed AFTER the minimum free capacity
required is verified
- Improve the logic for auto-creating initial partitions
as follows:
1. Check for a minimum free space of 4GB for a partition
2. Ask user to proceed with auto-created partition(s) or not
3. Distinguish between UEFI and non UEFI device
4. Create a partition of full free size for non UEFI devices also
* Add support for MTD char driven flash
- replace $spicheck by $mtdcheck
- add probable MTD char device partitions to $mtdcheck
- update comments and dialog content:
- replace "SPI Flash" by "MTD Flash"
- replace call of "create_armbian 'spi' ..." by "create_armbian 'mtd' ..."
- update description for /dev/nand1 /dev/nand2 as "legacy SUNXI NAND"
- additional parameters passed to import function "write_uboot_platform_mtd":
$3 - Log file name
$4 - SPACE separated list of all MTD device partition(s)
- function check_partitions():
- remove file system filter on lsblk commands
for listing probable target partitions
- fix typo "Destnation" -> "Destination"
- fix indentation on if scopes
fixes#4576
* 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.
* Enable additional motd tips showing some internal ads
33% probability of showing, just like for the armbian-config
* Update quotes and add expiration date support
* Change variable names
* Add support to download quotes from our server
* Fix curl parameters
* Keep only weekly update
* `armbian-audio-config`: do nothing if aplay/amixer/alsactl missing; shfmt
* `armbian-hardware-optimization`: fix for `case` without `esac` introduced in #4417; `shfmt`
Without this, when mkimage fails (for example because the boot partition
is too small), install.log shows an error like:
mkimage: Write only 16310208/17794920 bytes, probably no space left on the device
But this does not terminate the build, so the compile script shows no
error and an image is generated, but it is unbootable.
This runs the script with -e, so when mkimage fails, the script fails,
which makes update-initramfs fail, which makes the build fail.
* Fix to flush volatile journald to prevent full /var/log at startup
* re-introduce directory / in non-rsync copy, and exclude journal* in this copy
Note: this may need some testing if someone doesn't use rsync
* Fix for non-rsync copy to Disk, since journal cannot be copied onto itself
* Backed up journal files are removed with vacuum, so no need to delete them separately
* Make room at boot by removing old logs, in addition to the removal later
every 15 minutes
* remove old archived journal files modified more than 1 day ago
* make sure volatile logging is used, since journald sometimes turns persistent at boot
remove unused commented lines in ramlog
* Fix check for configured journald volatile logging
* revert #3799, the rsync --delete
* Exclude /var/log/journal from install, and create empty /var/log/journal directory when it exists during install
Co-authored-by: dennis laptop <dennis@smartstatetechnolgy.nl>
Co-authored-by: Igor Pečovnik <igorpecovnik@users.noreply.github.com>
Co-authored-by: Dennis <bijwaard@gmail.com>
Co-authored-by: dennis laptop <dennis@smartstatetechnolgy.nl>
* Add support for apt-mark hold warning
- we need to know if kernel packages are on hold
- when upgrade is finished, fix numbers and update list
* Add postupdate hook
* Bugfix
* Bugfix
* Small refactoring
* Improve UX
* Improve detection and change wording
* Add fallback for debug upload
in case ix.io is unreachable
* Update packages/bsp/common/usr/bin/armbianmonitor
Co-authored-by: hzyitc <h1260071766@126.com>
* adjust url
* fix missing sentence
* Fix broken logic
* Set paste.armbian.com as default service
y
Co-authored-by: hzyitc <h1260071766@126.com>
Co-authored-by: Igor Pečovnik <igorpecovnik@users.noreply.github.com>
Co-authored-by: Igor <igor@armbian.com>
* Root partition is not recognised properly
* Add support for ARM64 UEFI install
Work if installed to eMMC, installs also to NVME (T4), but u-boot fails to init PCI. Also u-boot 2022.10
Needs more testings.
* Lets clean the drive before
* Add preliminary support for UEFI install to nand-sata-install
Signed-off-by: Igor <igor@armbian.com>
* Add symbolic link
* Hardening and cleaning
* Removing obsolete NAND support
- create swal size of memory
- enable hibernation (S4) to have additional power saving mode
- enable GRUB search for another OS
* Move nand cleaning into separate commit
* Add support for UEFI install to eMMC
* Add support for install to empty UEFI target
Tested install to eMMC powered UP Square board
* Add UEFI improved script as standalone armbian-config
Once we are happy with functionality, remove the old and add a link
* Switch to a single 32 MB offset scheme.
* Improve readme
Signed-off-by: Igor <igor@armbian.com>
* Add wallpaper to grup, set fixed screen size, enable hidpi mode on lightdm
* Enable graphics terminal on UEFI x86, ARM64 can't test
* Missing folder
* Enable `Plymouth`
* Add proper HiDpi support and enable intel graphics auto probing
Tested on Intel and Nvidia, both works OOB. Plymouth works as expected, no text logs on screen, if OEM vendor logo is present, it picks it up auto, otherwise shows armbian (chip) logo
Co-authored-by: hzy <hzyitc@outlook.com>
* Install xfce4-power-manager by default on xfce desktop
- remove x11 config which is obsolete and prevent dkms functinality
- remove per board power manager install
* Update xfce4 configs
* Add plymouth-theme-armbian package
* Adjust all bootscripts to adapt plymouth
* Auto show logo accroding to BOOT_LOGO
* Enable plymouth detail mode when bootlogo=false
* Add a new board config var - HAS_VIDEO_OUTPUT
This var is used to indicate whether device has a HW video output.
If it's set to "no", we will disable kernel bootsplash, plymouth and BUILD_DESKTOP
* Rename package to be aligned with others
* Disable kernel bootloader, but keep the code for it
* Rather keep bootlogo in the kernel for a while, otherwise kernel upgrade will turn bootup into the darkness
Co-authored-by: Igor Pečovnik <igorpecovnik@users.noreply.github.com>
Co-authored-by: Igor <igor@armbian.com>
* bsp: quote pattern passed to grep
This fixes a regression from #4013
Signed-off-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
* bsp: refactor DISTRIBUTION_CODENAME logic
There's no need to repeat the check for /etc/armbian-distribution-status
over and over again, let's just use an if-statement instead.
Similarly, let's not repeat the logic to look up DISTRIBUTION_STATUS in
/etc/armbian-distribution-status; we can just do it at the end instead.
Signed-off-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
* bsp: only fallback to /etc/os-release if /etc/lsb-release failed
This fixes a regression from #3619
Signed-off-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
* bsp: only fallback to "lsb_release -c" if all else failed
Debian Bookwork and Sid both neither have the debian-edu-config package
by default (which provodes /etc/lsb-release in Debian), nor does their
version of base-files (12.2) contain the VERSION_CODENAME field.
So we need another fallback. We *do* have lsb_release, which can provide
this information as well. So let's do that, but add a check as well in
case neither the lsb-release nor the lsb-release-minimal packages is
installed on a user's system.
Signed-off-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Signed-off-by: Erik Faye-Lund <erik.faye-lund@collabora.com>