Commit graph

45 commits

Author SHA1 Message Date
Caleb Connolly
3ed9591e41
treewide: drop PMOS_NO_OUTPUT_REDIRECT (MR 5240)
This cmdline argument is now a no-op. Drop it everywhere and add a new
CI check to enforce this.

Adjust the deprecated "minimal" initramfs variant to use
pmos.debug-shell to enable logging instead. It doesn't /support/
dropping to a shell, so the variable takes on a different meaning. But
that's ok since it's at least more consistent.

[ci:ignore-count]
[ci:skip-vercheck]
Signed-off-by: Caleb Connolly <caleb@postmarketos.org>
Tweaked-by: Oliver Smith <ollieparanoid@postmarketos.org>
[ci:skip-build]: kernel builds are very likely to go through now
2024-06-23 14:48:20 +02:00
Raymond Hackley
00f2bb6452
main/devicepkg-dev: remove empty folder /usr/share/deviceinfo (MR 4990)
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
2024-04-20 13:33:48 +02:00
Andrea Bolognani
9200f8fe1a
devicepkg-dev: fix call to dc (MR 4959)
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>
2024-03-23 11:46:12 +03:00
Pablo Correa Gómez
0a95f6ac31
main/devicepkg-dev: machine-info: remove manufacturer from HARDWARE_MODEL (MR 4551) 2024-01-22 19:32:30 +01:00
Pablo Correa Gómez
18e44a52ab
main/devicepkg-dev: remove deviceinfo link in kernel subpackages (MR 4596)
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
2023-12-07 09:02:58 +01:00
Caleb Connolly
ac1d78a246
devicepkg-dev: add pmtest helper (MR 4420)
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]
2023-10-31 19:53:22 +00:00
Pablo Correa Gómez
1d748a93dd
main/devicepkg-dev: install deviceinfo under /usr/share/deviceinfo (MR 4283)
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
2023-09-25 09:20:32 +02:00
Pablo Correa Gómez
7213fd54ca
main/devicepkg-dev: use modules-initfs to install modules into initramfs (MR 4169)
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
2023-08-04 08:27:38 +02:00
Anton Bambura
941486b663
main/devicepkg-dev: trigger mkinitfs (MR 4206)
[ci:skip-build]: already built successfully in CI
2023-07-31 09:11:11 +02:00
Pablo Correa Gómez
f3c7308f6f
main/devicepkg-dev: install modules file into initramfs (MR 4193)
So that the initramfs can get the list of modules that need to be loaded
once the deviceinfo_modules_initfs variable is gone
2023-07-10 11:07:32 -07:00
Pablo Correa Gómez
65be0d7e81
main/devicepkg-dev: automatically package modules into initramfs (MR 4193)
To simplify the future removal of deviceinfo_modules_initfs
2023-07-10 11:07:19 -07:00
Newbyte
be819d7474
main/devicepkg-dev: set to noarch (MR 4140)
No reason for this to be arch-specific.
2023-06-03 15:04:45 +02:00
Clayton Craft
886c0ab575
main/devicepkg-dev: don't try to install legacy splash images (MR 3951)
These are no longer used, and shouldn't exist.

[ci:skip-build]: already built successfully in CI
2023-03-13 23:09:42 -07:00
Luca Weiss
6460e7c967
main/devicepkg-dev: add hardware vendor & model into machine-info (MR 3950)
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 $.
2023-03-14 04:44:51 +00:00
Clayton Craft
d0f72c92fa
devicepkg-dev: support new mkintifs paths (MR 3895) 2023-03-08 21:30:25 -08:00
Caleb Connolly
80eb55a604 main/devicepkg-dev: don't generate splash images (MR 2878) 2023-02-18 01:40:28 +00:00
Anjandev Momi
7270f472e3
treewide: fix tabs, final newline, trailing whitespace (MR 3530) 2022-10-16 16:27:22 +02:00
Oliver Smith
f787cdace2
main/devicepkg-dev: allow overriding splash config (MR 2931)
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).
2022-02-13 19:42:12 +01:00
Luca Weiss
22b80dc8cc
main/devicepkg-dev: add netboot splashes (MR 2222) 2022-01-22 13:40:05 +01:00
Clayton Craft
50ee94d8e3
main/devicepkg-dev: don't use kernel 'flavor' in kernel filename (MR 2426)
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
2021-09-03 10:08:34 -07:00
Bobby The Builder
c78ed34a5f
main/devicepkg-dev: new resizefs splash (MR 1996) 2021-04-11 19:52:33 +02:00
Oliver Smith
e974e110b3
devicepkg-dev: patch Makefile.common too (MR 1738)
Remove -Werror from Makefile.common files too, as found in the
xiaomi-latte downstream kernel (MR 1692).
2020-11-19 14:32:31 +03:00
Luca Weiss
7fc1292b9b
main/devicepkg-dev: generate /etc/machine-info (MR 1246) 2020-05-24 06:35:02 +02:00
Minecrell
c3dcc196ea
*: remove quotes around pkgname (MR 1186)
TP:[AL3]:APKBUILD:5:pkgname must not be quoted

[skip ci]: won't finish within 3 hours
2020-04-25 12:06:47 +02:00
Dolphin von Chips
a4b1fb8371
devicepkg-dev: implement out-of-tree build for kernel (!1084) 2020-04-05 12:30:39 +02:00
Minecrell
4db63c0627
main/devicepkg-dev: install modules-load.conf/modprobe.conf (!1124)
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.
2020-04-04 21:17:18 +03:00
Dolphin von Chips
2ec1db16b5
main/devicepkg-dev: allow specifying kernel image in downstreamkernel_prepare (!1026) 2020-03-14 01:39:33 +01:00
Luca Weiss
3fe7e1601c
main/devicepkg-dev: remove Image.gz from list of kernels to consider (!1014)
This breaks booting on Librem 5 and is not needed on any device
currently using downstreamkernel_package, so remove it.
2020-03-01 10:35:04 +01:00
Minecrell
46371f042d
main/devicepkg-dev: make HOSTCC optional (!1007)
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.
2020-02-28 18:32:22 +01:00
Dolphin von Chips
6fee64ccd9
main/devicepkg-dev: add downstreamkernel_package helper (!976) 2020-02-27 23:29:38 +01:00
Minecrell
d4ee123079
main/devicepkg-dev: Fix shellcheck warnings in splash screen generation (!899)
(These were present before the code was moved to devicepkg-dev.)
2020-01-28 15:33:43 +01:00
Minecrell
e3d07c832c
main/{devicepkg-dev,postmarketos-mkinitfs}: statically generate splash screens (!899)
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.
2020-01-28 15:33:40 +01:00
Minecrell
81d8d03d5f
main/devicepkg-dev: Fix deviceinfo variables for kernels with "-" in name (!892)
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.
2020-01-18 11:47:54 +01:00
Oliver Smith
63544524b7
main/devicepkg-dev: make shellcheck happy (!636) 2019-09-26 21:43:34 +02:00
Grant Miller
6b3b08f08a main/devicepkg-dev: Automatically install initfs-hook.sh (!191) 2019-02-05 09:34:34 +01:00
Oliver Smith
4328e5fe2f
devicepkg-dev: opt-out compiler-gcc.h replacing (!186)
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.
2019-01-29 09:44:44 +01:00
Clayton Craft
ff25ad7a0c
main/devicepkg-dev: don't overwrite compiler-gcc.h (!141)
At least one newer kernel already includes the compiler support split
stuff, so don't overwrite it if it already exists.
2019-01-28 20:45:18 +01:00
Clayton Craft
db85aebd0f
devicepkg-dev: Properly replace -Werror= (!181)
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.
2019-01-28 08:13:52 +01:00
Daniele Debernardi
9249bf2122
Add support to different deviceinfo variables in mainline/downstream subpackages 2018-11-27 07:47:11 +01:00
Robert Yang
da08bebb0b
devicepkg-dev: Make downstreamkernel_prepare callable from any folder
Removes the need to cd $builddir before calling downstreamkernel_prepare
in a kernel APKBUILD prepare function.
2018-11-27 07:47:11 +01:00
Oliver Smith
ea45d2d4ed
devicepkg-dev: ship compiler-gcc.h for GCC8
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
2018-11-27 07:47:11 +01:00
Daniele Debernardi
758c056002 devicepkg-dev kernel prepare function 2018-07-02 00:12:49 +00:00
Oliver Smith
a31244d28a Remove github.com references
* 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)
2018-06-30 09:00:48 +02:00
Michael Hamann
99b398a7e5 devicepkg-dev: Generate calibration matrix for libinput (#1205)
* 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.
2018-02-11 10:20:31 +00:00
drebrez
4782ffd01f Add devicepkg-dev which generate the touchscreen udev rule based on the deviceinfo (#995)
* Use devicepkg-dev by default in new device wizard
* Add link to reference wiki page
2017-12-14 21:17:18 +00:00