Use the start_weston.sh wrapper script again, and make it work with
lightdm. It makes custom weston configs possible, and allows starting
postmarketos-demos together with weston. The custom config logic uses a
default config from postmarketos-ui-weston unless it is overwritten
with a device specific config. Our default configs use fbdev in most
cases, as this is not the case since the change to lightdm, weston was
broken for most devices with downstream kernels, that only work with
framebuffer.
Lastly, set myself as maintainer for this UI. Resolves#289
Ollieparanoid extended this patch and made sure that this boots up
weston on the samsung-i9100 again.
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.
Do not add --pixman-type to the commandline, when
deviceinfo_weston_pixman_type is filled out.
--pixman-type was enabled in Weston with a custom patch, that currently
prevents us from upgrading Weston (#136).
The option allowed working around broken framebuffer drivers in
Android downstream kernels, which reported the wrong color format.
But it only works for Weston, the right way to patch this would be
patching the kernels, and we have some approaches here:
https://wiki.postmarketos.org/wiki/Troubleshooting:display#My_screen_is_red.21
Weston does not build for x86, because it depends on libunwind. And
libunwind is not available in Alpine for x86. I've also tried to
simply enable x86 in libunwind, but it does not build out of the box.
In order to start building again for x86 at all, let's disable weston
and all packages that depend on it on for now.
* 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)
@drebrez deserves much credit for this one for all the testing,
bisecting and for fixing everything. Thank you very much!
---
* devices which need a custom weston.ini ship it with a install_if
subpackage, so it only gets installed when weston is installed. This
sounds complicated, but is actually pretty clean in the APKBUILD.
* postmarketos-ui-weston: has a weston.ini.default, which enables
xwayland and uses fbdev as backend (because that's what most
devices use!). It defaults to the weston.ini.default if there is no
weston.ini (as installed by the device package).
* changed spaces to tabs for consistency, general minor refactoring of
device-APKBUILDs
Placing such files in /tmp/ is an unnecessary attack vector, as
@pavelmachek showed. All udev rules, which mentioned /tmp/weston.log
do not contain any path anymore.
Logs can be read with:
logread -f /var/log/messages | grep weston
See also: <https://wiki.alpinelinux.org/wiki/Syslog>
This way we could give the user a rough idea what will be installed,
and also use this to display a short warning about long compile times
(e.g. until the plasma mobile stuff is upstreamed).
* Allow to specify a custom username in "pmbootstrap init"
* Build chroots have "pmos" instead of "user" as username now
* Installation user UID is 1000 now (as in all other Linux distributions)
* Adjust autologins
* postmarketos-base: enable wheel group for sudo, removed previous sudoers file
* Implement safe upgrade path:
We save the version of the work folder format now, in $WORK/version.
When this file does not exist, it defaults to 0.
In case it does not match the currently required version
(pmb.config.work_version), then ask the user if it should
automatically be upgraded.
This commit disables root autologin for postmarketos-base and enabled
root autologin for postmarketos-ui-weston (since weston-launcher is not
built, weston can only be run by root).
Per the APKBUILD reference, , package *-install scripts should be checksummed to guard against incomplete/corrupt downloads. The postmarketos-base package is one example where this is not being implemented currently.