After removing the following files, $pkgdir/usr/share/deviceinfo is empty:
- $pkgdir/usr/share/deviceinfo/$pkgname
- $pkgdir/usr/share/deviceinfo/deviceinfo
Remove it when it's empty.
[ci:skip-build]: already built successfully in CI
The current invocation doesn't work:
$ busybox dc "100" "5" / p
dc: can't open '100': No such file or directory
Fix it so that it does:
$ busybox dc -e "100 5 / p"
20
One of the messages that is printed on failure was missing
the "WARNING:" prefix. Address that too.
Signed-off-by: Andrea Bolognani <eof@kiyuko.org>
This was a fallout from the /usr/share relocation, only found and
reported now by z3ntu. If the device package happened to be installed
later, then the link would point to the wrong location.
Fixes 1d748a93dd
Add a helper to generate a post-install script for device pmtest
subpackages. This script configures the console and enables logging in
the initramfs for images running in CI.
[ci:ignore-count]
In the process, add some tests and do some renaming on the existing ones, and
remove the workaround for #2228, will be solved appropriately in a follow-up
commit.
Fixes#1836
Since the modules are going to be installed into the initfs, it makes
sense to use a more verbose naming for the file. Otherwise there's the
risk of getting confused with other type of module files that exist in
device packages.
Fixes 65be0d7e81
Soon openrc-settingsd (hostnamed) will uses these properties so the
information can be exposed to apps like GNOME Settings.
Let's also move the shellcheck comment to the outer scope, otherwise
we'd need four of these comments now, and let's not use ${} but just $.
Allow calling the script with:
SPLASH_CONFIG=$srcdir/splash.ini devicepkg_build $startdir $pkgname
In order to pass a custom splash config, as it will be used with the
PineNote (MR 2910).
Kernel file names will be generic (/boot/vmlinuz).
Release path still has the 'flavor' in it so that pmbootstrap can still
get a reference to which kernel package is installed
Many device ports install extra modules-load.conf/modprobe.conf
configurations. Simplify this a bit by installing these automatically
to appropriate locations in the file system.
HOSTCC defaults to gcc, so we should only set it to override it
if we want to use an older GCC. Removing it avoids annoying linter
warnings caused by the HOSTCC="..." variable assignments.
We need to generate the splash screens separately for each device,
because they are specific to the device's display resolution.
At the moment we do this dynamically during the installation process.
This has the advantage that there is no need to re-build all device
packages when one of the splash screen is changed (or a new one is added).
In reality, however, the splash screens do not change very frequently.
On the other hand, generating the splash screens dynamically has signficant
disk usage overhead for a minimal ("none" UI) rootfs:
The Python interpreter together with the necessary libraries requires
about ~60 MB of disk space on aarch64.
The splash screens itself require about ~100 KB for 720x1280.
This is not necessary if we move the splash screen generation into
devicepkg-dev, which is used to build the device package for all devices.
Another advantage is that we no longer need the (rather complicated)
caching mechanism for splash screens - so we actually end up with less
lines than before.
rootfs size for samsung-a5ulte ("none" UI):
Before: 450M
After: 388M (-62M)
After this change, every(!) device package needs to be rebuilt once.
No changes are necessary in device packages.
Kernel subpackages may contain a "-" (e.g. -kernel-mainline-modem);
replace it with an underscore to make sure that we find the
kernel-specific variables in deviceinfo.
Instead of never overwriting compiler-gcc.h if it exists, overwrite it
by default except if OVERWRITE_GCCH=0 is set in the environment.
Most kernels *do* need this file replaced and won't build without this
patch.
The 5.0 kernel now includes -Werror= parameters in the makefile, this
changes downstreamkernel_prepare.sh to support them. Without this, the
script will replace, for example, -Werror=blah with =blah, which causes
the kernel compilation to fail.
We used to put a "compiler-gcc6.h" file inside every vendor kernel's
aport. This is redundant and only works with GCC6. With this patch,
a common "compiler-gcc.h" file will be used, that works independently
of the GCC version.
The file is from Decatf's android_kernel_samsung_p4 repository, where
it was taken from upstream Linux, but adjusted to work with older
vendor kernels (different #ifndef check at the top etc).
bd0772df21/include/linux/compiler-gcc.h
* Travis and Coveralls badges
* aports: instead of <https://github.com/postmarketOS>, use
<https://postmarketos.org>
* References to full URLs to issues and pull requests replaced with
a hash and the number
* grsec check: simplify error message, remove link to github issue
(nobody is using that anymore anyway)
* Automatically generate a calibration matrix for libinput
This takes the calibration matrix for wayland and divides the pixel
offsets by the device width/height.
* Bump pkgrels of devices using devicepkg-dev
This causes new packages to be generated, using the new devicepkg-dev
version.