Commit Graph

679 Commits

Author SHA1 Message Date
Oliver Smith 1bf892f5eb
Close #453: Support mesa-dri-virtio in Qemu (#861)
The mesa driver, which ends up in the installation image, needs to be known
before the installation is done (in other words: when running the qemu action,
it is to late as the image has already been generated). That's why one can
choose the Qemu mesa driver in `pmbootstrap init` now:

```
Device [qemu-amd64]:
Which mesa driver do you prefer for your Qemu device? Only select something other
than the default if you are having graphical problems (such as glitches).
Mesa driver (dri-swrast/dri-virtio) [dri-virtio]:
```

It is still possible to select `dri-swrast`, because `dri-virtio` may not work
in all cases, and that way we could easily debug it or experiment with other
mesa drivers (e.g. the "vmware" one, which is supported by mesa and Qemu).

Other changes:
* `pmbootstrap qemu` accepts a `--display` variable now, which passes the value
  directly to `qemu`'s `display` option. It defaults to `sdl,gl=on` (@PureTryOut
  reported that to work best with plasma mobile on his PC). `--display` and
  `--spice` (which is still working) are mutually exclusive.
* Removed obsolete telnet port pass-through: We only use the debug telnet port
  since osk-sdl has been merged.
* Add show-cursor to the Qemu command line, so it shows a cursor in X11
* Refactored the spice code (`command_spice` only returns the spice command,
  because it has all necessary information already) and the spice port can be
  specified on the commandline now (previously it was hardcoded in one place and
  then always looked up from there).
* Start comments with capital letters.
* Keep the log on the screen a bit shorter (e.g. Qemu command is written to the
  "pmbootstrap log" anyway, so there's no need to display it again).
* linux-postmarketos-stable: Adjust kernel configs
x86_64, armhf: enable as modules:
CONFIG_DRM_VIRTIO_GPU, CONFIG_VIRTIO_PCI, CONFIG_VIRTIO_BALLOON
aarch64: all 3 options were already enabled as built-in (no change)
* Set '-vga virtio' for mesa-dri-virtio
2017-11-05 13:48:49 +00:00
drebrez 6089b037dd Add PMOS_FORCE_PARTITION_RESIZE kernel boot parameter (#874) 2017-11-04 22:54:42 +00:00
Pablo Castellano fa0769a499 motorola-titan: Package wifi firmware (#771) 2017-11-04 22:30:03 +00:00
drebrez e388afd14c [huawei-y530] Cleanup kernel APK, fix compilation issue, remove unnecessary DTBs (#872) 2017-11-04 22:05:57 +00:00
drebrez af8ba21f94 Update musl-* to upstream (1.1.18-r0) (#873) 2017-11-04 19:50:48 +01:00
Oliver Smith 50faf5fe22
Close #865: Check line endings in APKBUILDs (#868) 2017-11-04 16:12:33 +00:00
Alex Roth 7ff0568d6f Add new device oneplus-onyx (Oneplus X) (#856) 2017-11-04 02:45:37 +00:00
clayton craft cacb05e7e6 Fix #818: Clean up updated repo list after zapping chroots (#867) 2017-11-04 02:43:06 +00:00
clayton craft 2987294ea6 Remove existing apk cache symlink before creating link (#866)
This removes any existing symlinks (which always seem to be broken when
this is encountered) to <workdir>/chroot_native/etc/apk/cache before
creating the symlink.
2017-11-04 02:19:23 +00:00
Oliver Smith 7eb3b6dda3
libsamsung-ipc, linux-postmarketos-mainline: Fix invalid pkgrels (#853)
* libsamsung-ipc, linux-postmarketos-mainline: Fix invalid pkgrels
* Update linux-postmarketos-mainline to 4.14_rc7
2017-11-04 02:13:25 +00:00
Oliver Smith 6962803fbb
Fix #831: Disallow work dir being inside the pmbootstrap dir (#852) 2017-11-04 02:04:55 +00:00
clayton craft 01d1643477 [rx51] Fix uboot script to use -stable kernel name (#864) 2017-11-03 23:56:56 +00:00
drebrez 6fb5b28e2f Add "flash_fastboot_vendor_id" deviceinfo variable for fastboot flash method (#857) 2017-11-03 23:20:55 +00:00
clayton craft e735be93e4 [linux-postmarketos-stable] Update to 4.13.11 (#858) 2017-11-03 18:50:46 +01:00
Luca Weiss 31ab3c6efd Add firmware-fairphone-fp2 (#773)
Currently includes firmware and configuration files for the prima/pronto
wlan driver
2017-11-02 17:35:32 +00:00
drebrez ba3e2f6d26 Add argument to zap (-o) older versions of packages from all chroots (#841)
- also moved the mismatch clean (-m) before zapping the chroots
- added confirmation questions to -o and -m
2017-11-02 17:33:14 +00:00
clayton craft 2b7dbb9433 [linux-postmarketos-stable] Update to 4.13.10 (#847) 2017-11-01 15:56:57 +00:00
Oliver Smith 6627599cf0
pmbootstrap init: Wizard for new port device- and linux-packages (#821)
* pmbootstrap init: Generate new port device- and linux-package
* adds `pmbootstrap aportgen device-*` and
  `pmbootstrap aportgen linux-*`
* ask for confirmation when selecting a non-existing device
* generate the packages directly from init
* refactor aportgen code
* fixed some easy things in the linux- APKBUILD (more to come in
  follow-up PRs!)

Testing:
* Test all questions to the user from pmb.config.init and pmb.aportgen.device
  (except for the timezone question, because we would need to monkeypatch the
  os.path.exists() function, which messes up pytest, so we'd need to refactor
  the timezone function to be more testsuite friendly first)
* Run the device wizard in a testcase a few times and check the output, that
  pmbootstrap.aportgen.device and pmbootstrap.aportgen.linux create by parsing
  the resulting APKBUILDs and deviceinfo and checking its contents.
* Build the generated device package once in the same testcase

Thanks a lot to @drebrez for all the help with this one:
<https://github.com/postmarketOS/pmbootstrap/pull/821>

See also the updated porting guide:
<https://wiki.postmarketos.org/wiki/Porting_to_a_new_device>
2017-10-30 19:56:38 +00:00
MoreRobustThanYou 883bda01db New device: amazon-thor (KFHDX 3rd Gen) (#823) 2017-10-29 21:33:52 +00:00
JBB 0a71ca1ddd Fix: #842: qemu-user-static-repack download URL didn't work (#844) 2017-10-29 14:00:02 +00:00
drebrez 11e44fe44a Some kernel APKBUILD cleanup (#833)
* Cleanup linux-htc-bravo APKBUILD
* Cleanup linux-samsung-tuna APKBUILD and rename the package to
  linux-samsung-maguro
* Cleanup linux-sony-aries APKBUILD
2017-10-28 19:43:28 +00:00
ajakk e770ccbd56 Update aports for busybox-static-* (to 1.27.2-r3) (#837) 2017-10-28 19:28:28 +00:00
Oliver Smith 94f8cece24
Update musl-* to upstream (1.1.17-r2) (Fix #838) 2017-10-28 21:15:56 +02:00
drebrez 9c1ef821b3 Add architecture argument for the buildroot chroot (#832)
* Add architecture argument for the buildroot chroot, defaults to device architecture
* Output pmbootstrap log file after failure to debug Travis failure
* Travis: disable timestamp based rebuilds
2017-10-28 00:45:15 +00:00
Oliver Smith a3c1e22dd9
kconfig_check: disable CONFIG_PFT (#830)
This caused builds to fail with a modern GCC at least once, and while it originally was meant as
security feature by Qualcomm, "it is unsupported by Qualcomm, and opens up to a wide range
of potential attack surfaces that has not been audited by anyone."
2017-10-27 20:41:44 +00:00
Attila Szöllősi ee2bbf8385 Don't hardcode kernel flavor when launching qemu (#827)
This makes qemu work again with linux-postmarketos-stable (we renamed it recently).
2017-10-26 19:19:42 +00:00
opendata26 9fd12510d2 sony-castor-windy: Various updates (#826)
* Fix wifi nvram file
* Add mesa-dri-freedreno dependency
* Fix touchscreen
* Add osk-sdl support
2017-10-26 18:13:18 +00:00
drebrez 40240e37db Cleanup linux-lg-mako APKBUILD (#825) 2017-10-26 18:11:31 +00:00
drebrez 732a94fd45 Unregister all binfmt architectures during `pmbootstrap shutdown` (#822)
* Unregister all binfmt architectures during `pmbootstrap shutdown`
* Remove `-r, --rootfs` argument from `pmbootstrap build_init` command
2017-10-25 22:54:17 +00:00
Oliver Smith df47b50013 Close #761: Integrate coveralls.io to show test coverage (#820)
* Enable coveralls.io coverage reports
* Add badge to README.md
2017-10-24 19:34:08 +00:00
Attila Szöllősi 70733e454a [linux-postmarketos-mainline] Avoid name conflict when downloading patches (#817)
The conflict happens, when we're on rc-1, the old naming only contains the target version, so there will be two file named `postmarketos-linux-mainline-4.15-rc1.patch`: one that updates the kernel from the latest stable, and one empty.
2017-10-24 16:41:33 +00:00
drebrez 459f97ef1d Support multiple architectures in `pmbootstrap menuconfig` command (#814) 2017-10-24 16:18:42 +00:00
Oliver Smith 860482f386 Various small xfce4/Hildon fixes (#792)
* XFCE4/Hildon: Log to syslog, see also:
  <https://github.com/postmarketOS/pmbootstrap/pull/762>
* Fix XFCE4 didn't start in qemu-amd64, because it required
  libEGL.so.1, which is provided by mesa-egl. This is a dependency
  of device-qemu-amd64-x11 now. (It worked for Hildon and Weston,
  because they pull mesa-egl in with other packages.)
2017-10-24 16:16:58 +00:00
Oliver Smith 2a17d67337 Disable keys testcase (#813)
This one also clones the entire aports repository from Alpine, so
disable it for now.
2017-10-23 22:11:55 +00:00
Oliver Smith eaaff660ea Flake8 checking: disable E722: do not use bare except (#812)
Travis suddenly fails, because flake8 has a new detection rule:
Using except to catch all exceptions triggers E722.

However, we only use it once and we really want to catch all exceptions,
as it wraps the whole program and shows a nice error message, with
the full trace in the log.
2017-10-23 20:54:07 +00:00
Attila Szöllősi 6769e4635e Add linux-postmarketos-mainline aport (#799)
* Rename linux-postmarketos to linux-postmarketos-stable
* Adjust all device-* packages using linux-postmarketos and bump pkgrel
2017-10-23 20:15:32 +00:00
Oliver Smith ed94ab7449 Run fast testcases in Travis CI, remove obsolete testcase (#760)
* Removed obsolete apkindex_files cache testcase (the corresponding
function has been removed in #345 already).
* Fix test_challenge_apk: It failed on Travis, because we're accessing
/etc/abuild.conf, which only exists after initializing the build environment.
It's a random dummy file anyway, so I've replaced it with another file.
* Fix test_folder_size: accept a tolerance in the result
2017-10-23 19:44:08 +00:00
drebrez b1c86d4586 Fix #808: Add SYSVIPC kernel config check (#809)
* Add SYSVIPC kernel config check
* Add SYSVIPC kernel config option to all linux-device packages
2017-10-23 19:25:40 +00:00
drebrez 14299899f6 Implement cache for initramfs-extra (#796)
Partially implements:
<https://github.com/postmarketOS/pmbootstrap/issues/411>
2017-10-22 21:00:39 +00:00
clayton craft db857ff708 [linux-postmarketos] Update to 4.13.9 (#802) 2017-10-21 20:17:47 +00:00
clayton craft 98cf80d6ad [ofono] delete, in favor of Alpine upstream (#803)
Alpine accepted the 1) update to 1.21 and 2) the patch to fix initialization on the n900 (which will be in ofono 1.22)
2017-10-21 20:17:03 +00:00
Oliver Smith 8ba2964b64 Fix #800: Menuconfig didn't build dependencies (#801) 2017-10-21 14:34:43 +00:00
Oliver Smith 0da9e05fad
Update busybox-static-* to upstream (1.27.2-r2) 2017-10-21 15:54:19 +02:00
clayton craft 05b271d2e3 Fix #708: Detect existing pmOS install on sd card, show different warning(#766)
The method of 'install detection' used here is to look for a partition with pmOS_boot in the partition label. It's not a guarantee, but it works when FDE is enabled without having to unlock the partition to read files within it.
2017-10-21 00:33:58 +00:00
clayton craft e1cfbc4776 Fix #774: Don't create device-mapper mapping without subpartitions (#775)
This causes initramfs to skip calling 'kpartx' when pmOS has been
installed on an external disk (e.g. sdcard). Fixes mounting pmOS_boot
by label (#774).
2017-10-20 17:20:40 +00:00
Oliver Smith 3ba6f372b5
Update musl-* to upstream (1.1.17) 2017-10-20 16:22:17 +02:00
clayton craft e7dfe9b904 Fix #499: Don't generate weston.ini from the deviceinfo anymore (#739)
@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
2017-10-20 00:07:00 +00:00
drebrez 8f93c13cfd Firmware packages: fix checksums, use commit in distfiles, general refactoring (#788) 2017-10-19 22:40:14 +00:00
clayton craft 9a9b7beb49 [linux-postmarketos] Update to 4.13.8 (#794) 2017-10-19 22:31:28 +00:00
clayton craft 7ab85bc4a5 Install dbus by default (#783)
Since we are starting it on boot, and wpa_supplicant is being run in 'dbus mode', it makes sense to have it installed by default.
2017-10-18 19:02:28 +00:00