This renamed the u-boot package for Purism librem5 devices, since the
phone and devkit share the same u-boot version. It also updates the
various components to the latest versions
This updates ATF, DDR/HDMI firmmware, and u-boot versions, and generates
a unified image that can be flashed at an offset of 2KiB.
mkimage is also no longer used to generate the final image.
Some old unused functions copied when this APKBUILD was forked were also
removed.
Some of the DRI drivers are not moved to the correct subpackage
and therefore installed everywhere through the main package.
This wastes about 8 MB of disk space, so lets move them to the
correct subpackage.
Build src/git_sha1.h early to avoid build failure:
../src/vulkan/overlay-layer/overlay.cpp:31:10: fatal error: git_sha1.h: No such file or directory
31 | #include "git_sha1.h"
| ^~~~~~~~~~~~
Default dbus policy of ofono allows only root user and users who are
logged into tty using at_console policy. However since our dbus is not
built with elogind, at_console is never set.
This allows user in wheel group to access ofono
[ci:skip-build]: already built successfully in CI
Fix build with current abuild version by removing the "-devel" suffix
in /usr/lib/pkgconfig/*.pc. Set "pcprefix" instead, so abuild doesn't
confuse these packages with the regular mesa.
[ci:skip-build]: already built successfully in CI
Fixes: #386
Turns out, that the pkgrel was bumped in Alpine. I had looked at an
outdated error message from the postmarketos-ui-* related MR and
assumed that this issue is still present (somwhat confused by the other
upstream-compat issues).
This reverts commit 07653d60a8.
Needs a pkgrel bump because dependency libboost was upgraded. This is
currently breaking everything depending on libphonenumber, for example
plasma mobile.
>>> postmarketos-ui-plasma-mobile: Analyzing dependencies...
ERROR: unsatisfiable constraints:
so:libprotobuf.so.20 (missing):
required by: libphonenumber-8.10.21-r0[so:libprotobuf.so.20]
>>> ERROR: postmarketos-ui-plasma-mobile: builddeps failed
It was forked to build the 5.17 pre-release, which is not needed
anymore. Remove now to unclutter pmaports, and to get pretty much all
remaining packages for x86_64 out of the queue on
build.postmarketos.org.
For llvm8-dev llvm-config executable is no longer in PATH
(it is in PATH now for llvm9-dev) and now it is in
/usr/lib/llvm8/bin/llvm-config, so it is more reliable
to adjust $PATH before calling meson build.
It will work for all past, current and future llvm versions.
Fixes 90d3deb7b4
[ci:skip-build]: already built successfully in CI
This commit:
- Updates u-boot
- Updates arm trusted firmware
- Builds the m4 firmware using cross compilation (no more dependency on
downloading the binary from purism \o/)
postmarketos-ui-plasma-mobile has !armhf in its arches list, so it does
not make sense to build these packages for armhf either. Let's save some
building time.
[ci:skip-vercheck], [ci:skip-build]
- Remove the outdated patch, it has been fixed differently upstream
- Update patch for use-elf-tls slots
[ci:skip-build]: already built successfully in CI
I did not check if patches still applied yesterday, and it turns out
that almost all of them don't apply anymore (probably because the
changes are in the upstream source now?).
Note that I did not test if plasma mobile is working correctly again
with this version, I'm just making the build errors go away (which I
did not notice right away yesterday, as qt5-qtbase was still building
and we had to upgrade that anyway, so there was no point in waiting).
Build tested and working for x86_64.
Fixes: 86a0ecc04a ("temp/qt5-qt*: upgrade to 5.12.5")
The package was originally added with jemalloc to work around a deadlock
while compiling mesa. I've tested compiling the mesa-git package on
x86_64 for armhf and armv7 and it worked fine. Looking at the original
issue report, the problem only happened with the autotools build system
and not with meson - and as all our mesa or networkmanager aports are
using meson now, I think we can delete this.
[ci skip] Package output does not change except for meta
information (licenses), so don't build or verify checksums
of the packages to prevent outdated source URL's breaking it.
This will have to be looked at later
Increase pkgrels, so the resulting versions are higher than the aports
in Alpine. Seems like this was done in the upstream PR initially, but
then got lost during rebase.
Fork from Alpine to apply Martijn's patch:
https://github.com/alpinelinux/aports/pull/9894
"This makes wpa_supplicant run in dbus mode if no config file has been
created for it, fixing the networkmanager integration. This config has
been used for a long time in postmarketOS and works fine.
It also removes the iwd dependency from networkmanager again so
wpa_supplicant is used because iwd doesn't support as many chipsets as
wpa_supplicant and it doesn't run on older kernels."
[ci:skip-build]: already built successfully in CI for x86_64, I've
tested that it builds for armhf and aarch64 too.
Avoid build failure for x86:
>>> mesa-git-glapi*: Running postcheck for mesa-git-glapi
>>> ERROR: mesa-git-glapi*: Found textrels:
TEXTREL /home/pmos/build/pkg/mesa-git-glapi/usr/lib/libglapi.so.0.0.0
The package is only used for armhf, armv7, aarch64 devices currently, so
change the arch line in the APKBUILD accordingly.
$ cd device
$ for i in $(git grep mesa-git | cut -d/ -f1); do grep -H arch $i/deviceinfo; done
device-asus-flo/deviceinfo:deviceinfo_arch="armhf"
device-lg-hammerhead/deviceinfo:deviceinfo_arch="armv7"
device-pine-a64lts/deviceinfo:deviceinfo_arch="aarch64"
device-pine-dontbeevil/deviceinfo:deviceinfo_arch="aarch64"
device-sony-castor-windy/deviceinfo:deviceinfo_arch="armhf"
device-sony-sirius/deviceinfo:deviceinfo_arch="armv7"
[ci:skip-vercheck]: only changed arch line
Fixes: ce7e4d79e1 ("temp/mesa-git: new aport (!524)")
Freedreno is broken in latest mesa stable, but it is fixed in current
master. Let's use master for now.
Based on Brian Masney's patch, but with a hardcoded commit and a
separate package.
The description below is a quote from Brian Masney in #296.
The pmOS mesa packages need to have -Db_ndebug=true passed to the meson
build so that debug assertions and extra validations are disabled to
improve overall system performance. See [1] for more details. Fedora
also recently made this change: [2]
This change, along with using the master branch of mesa, gets the
Freedreno driver working properly with X11 on the Nexus 5 and presumably
other A3XX-based systems.
--buildtype=release should also be passed to meson for extra
optimizations. See the thread [3] for more details.
[1] https://gitlab.freedesktop.org/mesa/mesa/blob/master/docs/meson.html#L321
[2] https://bugzilla.redhat.com/show_bug.cgi?id=1692426.
[3] https://lists.freedesktop.org/archives/mesa-dev/2019-June/219960.html
[ci:skip-build]: already built successfully in CI
Alpine's build bot is stuck on another package, but this needs to be
rebuilt against the recently updated libhunspell. Otherwise Plasma
Mobile cannot be installed, as pmbootstrap fails with:
ERROR: Could not find dependency 'so:libhunspell-1.6.so.0' in any aports folder or APKINDEX.
I've tested that this builds properly.
Disable for arm arches, because there it fails with:
[89/300] Compiling C object 'xcursor/c7765ab@@wlr_xcursor@sta/xcursor.c.o'.
FAILED: xcursor/c7765ab@@wlr_xcursor@sta/xcursor.c.o
gcc -Ixcursor/c7765ab@@wlr_xcursor@sta -Ixcursor ...
cc1: error: /home/pmos/build/pkg/mesa/usr/include: No such file or directory [-Werror=missing-include-dirs]
I suspect, that this relates to our custom mesa packaging, which is only
built for arm architectures currently. Phosh isn't running on anything
other than x86_64 so far in postmarketOS, so let's just disable wlroots
arm too until this is figured out.
[ci:skip-vercheck]: only modified the arch line
Remove Alpine's maintainers and contributors from the APKBUILDs in temp
where we still had them. In general, we don't keep them there, because
we don't want them to get e-mailed about questions from the postmarketOS
aports. It is obvious that they were copy pasted from Alpine, with minor
adjustments.
Remove "Remember to increase pkgrel after changing _pkgver!" from
temp/mesa, because we have a CI check for that now.
[ci:skip-build]: cosmetic changes only
We need our build of qtdeclarative, otherwise building plasma/kde
components fails on arm with:
ld: /usr/lib/libQt5Quick.so.5.12.3: undefined reference to `QOpenGLFunctions_1_0::versionProfile()@Qt_5'
ld: /usr/lib/libQt5Quick.so.5.12.3: undefined reference to `QOpenGLFunctions_3_2_Core::versionProfile()@Qt_5'
That is, because Alpine's qt5-qtdeclarative is built against a
qt5-qtbase version, where the opengl version is not changed to
opengl es2, like it is done in pmaports.
Related: #270
Move Wayland meta packages to LightDM and replace ConsoleKit2 for
elogind for Plasma.
Now we don't need the hacky scripts in /etc/profile.d anymore!
This change requires elogind for both Weston and Plasma Mobile. Using
elogind allows us to use one patch less in kwin. Weston has logind
(which elogind provides) support disabled in Alpine Linux, so I put the
package in temp/ with it enabled for now, but will upstream this change
to Alpine.
Remove consolekit2 dependency in postmarketos-ui-xfce4.
[ci:skip-build]: already built successfully.
Fix the regression from the mesa refactoring and from switching to armv7
in hammerhead.
[ci:skip-build]: already built successfully in CI for x86_64; I've
tested manually that it builds for armv7.
- main: postmarketos-mkinitfs: Add /run
Create the /run directory in the initramfs so that cryptsetup doesn't
crash on not being able to create /run/cryptsetup for lockfiles
- device: pine-dontbeevil: Remove workaround for touchscreen
- main: linux-postmarketos-allwinner: Implemented supplies for touchscreen
This uses a slightly newer commit from the kernel repo that implements
requesting a regulator in the touchscreen driver
- device: pine-dontbeevil: Remove ethernet from initramfs
This actually makes debugging more complicated since networkmanager wont
touch the ethernet adapter afterwards and the initramfs can be debugged
over uart
- temp/u-boot: sync APKBUILD with upstream and update to 2019.04
- main: linux-postmarketos-allwinner: Use 20190521 git version
Fix missing symlink for the first driver in mv_dri() (caused by "shift"
at the wrong position). Build freedreno for arm only, not for all
arches.
Lima is for rendering and sun4i-drm (part of kmsro) for the display, so
split it into its own subpackage and use it in device-pine-*.
[ci:skip-build]: ollieparanoid made sure, that this builds. This won't
finish in time in CI.
Fix up for !359: the pkgrel was not bumped, and because the real mesa
version was stored in _pkgver instead of pkgver (which is set to 9999),
this means that the APKBUILD has exactly the same version as before. So
pmbootstrap will not try to build it, resulting in a missing
mesa-dri-lima package and general confusion.
See also:
https://gitlab.com/postmarketOS/pmaports/merge_requests/359#note_170054969
temp/mesa: enable mesa-dri-lima subpackage
temp/mesa: add a fix for Wayland on Lima
temp/mesa-purism-gc7000: update to latest Git and try to resolve conflicts with mesa
temp/mesa: switch version to 19.1.0-rc1
device/device-pine-a64lts: add mesa and mesa-dri-lima to depends
device/device-pine-dontbeevil: add mesa to depends
device/device-purism-librem5dev: remove now defunct mesa-purism-gc7000-dri-imx from depends
temp/mesa*: re-add X11 support
temp/mesa-purism-gc7000: fix build error which for some reason didn't cause problems earlier
temp/mesa*: fix X11 DRI symlinks
They are available in Alpine again for armhf and armv7.
Networkmanager is still missing, so we keep it it temp for now. Upstream
patch submitted: https://github.com/alpinelinux/aports/pull/7626
Related: #244
Due to the following dependency chain, it is currently not available
in Alpine for armhf and armv7. This breaks postmarketos-base.
postmarketos-base -> networkmanager -> polkit -> mozjs60
This can be reverted, when networkmanager is back for arm{hf,v7} in
Alpine. The mozjs60 arm fix is from here:
https://github.com/alpinelinux/aports/pull/7561
Related: #244
Rebuild to fix missing dependencies:
so:libicui18n.so.63, so:libicuuc.so.63
Currently we are facing another upstream compatibility issue with
Alpine, which is why CI will fail: polkit and therefore
networkmanager don't exist for armhf, armv7. See #244 for details.