Commit graph

1904 commits

Author SHA1 Message Date
Oliver Smith
a3310dbefc pmbootstrap build --src: override source for any package (#1210)
* New "pmbootstrap build --src=/local/source/path hello-world" syntax
* The local source path gets mounted inside the chroot
* From there, a copy of the source code gets created with rsync (so
  we can write into the source folder if necessary, for better
  compatibility with all kinds of APKBUILDs)
* After the aport gets copied into the chroot before building (as
  usually), we extend the APKBUILD with overrides to make it use
  mountpoint's source instead of downloading the package's source
  from the web as usually
* The package built with the local source gets _pYYYYMMDDHHMMSS
  appended to the pkgver
* linux-postmarketos-mainline: use $builddir, fix patch checksum
2018-02-19 22:04:01 +00:00
Martijn Braam
fa0dae0838 Wireguard for postmarketos-stable (#1231)
* Added modified wireguard APKBUILD from alpine
* Add required kernel options to postmarketos-stable
2018-02-19 16:51:00 +00:00
Pierre Rudloff
eb6ab4c641 gp-peak: display and touch screen (#1226)
Adds a /etc/local.d/ script in order to work around
udev being broken with this kernel.
2018-02-18 01:42:46 +00:00
Oliver Smith
b2495a917b linux-*: Don't depend on postmarketos-mkinitfs
Binary packages are rebuilding. If your kernel is not rebuilt yet, and
you don't want to build it yourself, just checkout the previous
pmbootstrap commit.

This commit also changes the arch from the postmarketOS kernels from
"all" to the ones where we actually have a kernel config.

Fixes #1229.
2018-02-17 18:26:31 +01:00
Oliver Smith
6aba5f73d4 Package kernel-scripts separately (#1234)
We have two methods of cross-compiling:
* native: everything runs with the host architecture, QEMU is not
  involved. This is the fastest, but requires the build system to be
  working with it. We use this for all linux-* packages currently.
* distcc: everything runs through QEMU emulating the target arch,
  *except* for the compiler. This is the most compatible approach
  working with all packages.

When compiling `linux-*` packages natively, kernel scripts needed
during the build process get generated. Some of these are C files that
get compiled as executables. In native mode, these get compied to the
native architecture, in distcc mode to the target architecture.

The problem is, that we need these scripts compiled for the target
architecture in the kernel's dev package in order to compile kernel
modules outside of the kernel's package (e.g. wireguard).

It is not possible to just rewrite this logic to generate target-arch
binaries when running in native mode, because these binaries require
musl-dev, linux-headers and some other packages to be installed for the
target architecture inside the native chroot.

We solve this by introducing a new `kernel-scripts` package. which
contains just the binary scripts. In case the dev package was
cross-compiled, it depends on `kernel-scripts` and symlinks these
binaries. The `kernel-scripts` package always gets compiled in distcc
mode since it does not have a `linux-` prefix.

Fixes #1230.
2018-02-16 22:00:37 +01:00
Oliver Smith
f05438b4e4 Various linux packages: Fix broken dev subpackage (#1228)
Fixes #1227.
This also updates the hash in linux-postmarketos-mainline, because the
hash changed upstream (they updated their git version server-side?).
2018-02-15 00:20:40 +01:00
Lucas Ramage
e5d88d4de7 mkbootimg: replace Python version with osm0sis' C version (#1193)
Closes #441. Adjust bootimg_analyze code:
* Install mkbootimg (which now provides unpackbootimg) instead of
  unpackbootimg. In theory, pmbootstrap should recognize this
  automatically, however right now it does not yet handle this case.
* The file names of the extracted files have changed.
2018-02-11 11:41:41 +00: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
alive4ever
f870333b99 Add triggerhappy: HID input device handler (#1211)
More information:
<https://wiki.postmarketos.org/wiki/Troubleshooting:HID_buttons>
2018-02-11 10:09:18 +00:00
Pavel Machek
ef60968c20 Update unicsy-demo to 0.4.6 (#1215) 2018-02-09 20:41:15 +00:00
Daniele Debernardi
4c91a72ff1 [fbdebug] Add panning functionality (#1207) 2018-02-06 21:21:25 +00:00
Daniele Debernardi
c818f9f054 fbdebug: Add initial framebuffer debug tool (#1196) 2018-02-03 19:09:59 +00:00
Oliver Smith
b165dd2c91 Testsuite: Run UIs in Qemu and check running processes and more (#982)
* Testsuite: Run UIs in Qemu and check running processes (and other changes)

* When `pmbootstrap qemu` gets killed, it now takes down the Qemu process with it
* `test/check_checksums.py` got a new optional `--build` parameter, which makes
  it build all changed packages instead of just checking the checksums
* We run this before running the testsuite now, so all changed packages get
  built before running tests (otherwise tests would hang without any output
  while a changed package is building)
* New testcase, that zaps all chroots, installs a specific UI (xfce4 and
  plasma-mobile currently, easy to extend), runs it via Qemu and checks the
  running processes via SSH.
* Version checking testcase: rewritten to include Alpine's testsuite file in
  our source tree, so we don't need to clone their git repo anymore. Now it
  is enabled for Travis.
* All this gives us a nice 10% code coverage boost
* Increased the `hello-world` pkgrel to verify that the Travis job is working.

* Various fixes
* Build device-packages for the device arch and don't raise an
  exception, but print a note if --ignore-depends is not specified
  and therefore the kernel gets installed, too.
* Don't use --force when building in Travis (because abuild doesn't
  check the checksums then. Bug report on the way.)
* Don't run the building process in the background, but wait for its
  completion
* Exit with 1 when showing usage in check_checksums.py
2018-02-02 00:16:29 +00:00
Oliver Smith
4c9b0de4f5 Fix invalid /etc/apk/repositories entry on device (#1189)
It used to have an entry for /mnt/pmbootstrap-packages, which only
makes sense while working on the chroot with pmbootstrap. After the
installation on the device, there's no repo in that path.
Furthermore, empty lines were added to the recovery installer script
for readability (thanks @ata2001!)
2018-02-01 22:44:20 +00:00
Oliver Smith
6d1af1b891 mkinitfs: Fail on missing depends / better usability in general (#1133)
* Fail if mkbootimg/uboot-tools are not installed, but creating a
  boot.img file / u-boot legacy image was requested via deviceinfo
  (fixes #312)
* Fail if /boot/dt.img is missing, but we have a qcdt device
* Fail if the dtb file specified in deviceinfo does not exist
* Fail if mkbootimg etc. exit with error code
* Don't try to add the ext4 module into the initramfs. We always
  compile it into the kernel. Instead, kconfig_check makes sure it
  is enabled now. (fixes #1037)
* Add a note that modprobe warnings can be ignored mostly
2018-01-31 19:39:09 +00:00
Oliver Smith
63247b469f libsamsung-ipc: update to 6.0.0003 and fix pkgver
Unfortunately pmbootstrap did not detect, that we had an invalid
pkgver in this package. See bug #1144.
2018-01-20 19:28:15 +00:00
Daniele Debernardi
8396a60cf3 abootimg: arch=all (#1131) 2018-01-18 00:58:50 +00:00
Oliver Smith
f5759c1e06 Gracefully handle packages breaking because of soname bumps (#1116)
Fixes #893. Changes:
* New action: "pmbootstrap pkgrel_bump"
* pmbootstrap detects missing soname depends when trying to install
  anyting, and suggests "pkgrel_bump --auto" to fix it
* Testcase test_soname_bump.py checks the pmOS binary package repo
  for soname breakage, so we see it when CI runs for new PRs
* libsamsung-ipc: bump pkgrel because of soname bump
2018-01-14 01:26:42 +00:00
rrooij
bf0a5f0a21 deviceinfo: add blobtools options (#1118)
Add a blobtools option to the deviceinfo file for creating specific
blobs for the Asus TF101 tablet. This will make it easier to flash
afterwards with ADB.
2018-01-13 20:38:29 +00:00
rrooij
6caddcb873 Add blobtools as package for tf101 (#1115)
This is for making a kernel image for the TF101 easier. See also:
ttps://github.com/postmarketOS/pmbootstrap/pull/1103#issuecomment-357035481

The TF101 does not support normal Android boot images and instead needs
a blob to be created.
2018-01-13 00:33:48 +00:00
Attila Szöllősi
ceefc5d8ec [recovery-installer] Copy contents of /etc/skel to home directory (#1114) 2018-01-12 21:53:15 +00:00
Alex Roth
6ae591471a postmarketos-artwork-wallpapers: Update to pull in JPG wallpapers (#1113) 2018-01-12 21:32:59 +00:00
Olgierd Nowakowski
bac4792f27 postmarketos-artwork: Spaces -> Tabs (#1110) 2018-01-10 19:00:55 +00:00
Filip Matijević
2cc6ae4a9d Add basic support for Nokia N9 (#1101)
Also added the watchdog-kick package:
Some devices (namely Nokia N9/950) use more than one watchdog, and
watchdog-kick package kicks all of /dev/watchdogs? every 10 seconds so
they don't reset the device
2018-01-09 16:42:55 +00:00
Olgierd Nowakowski
be5ae77c0a Artwork packages (corrected) (#1097)
* Packaged wallpapers and added a postmarketos-artwork metapackage

* Added artwork packages

* Spaces -> Tabs

* Merged postmarketos-artwork-wallpapers-extra to be a subpackage
Corrected maintainer email
2018-01-09 14:01:27 +01:00
Oliver Smith
73bd400ec0 qemu-amd64: make XFCE4, MATE work out of the box with SDL display (#1094)
* postmarketos-ui-xfce4: update to 0.1, depend on mesa-egl
* postmarketos-ui-mate: depend on mesa-egl
2018-01-08 18:29:11 +00:00
Olgierd Nowakowski
2cbff69bea Modified postmarketos-demo as discussed on IRC: (#1082)
Removed shutdown (as weston isn't running as root anymore)
Changed the firefox button to state that firefox needs to be installed
2018-01-05 03:06:16 +00:00
drebrez
a4dc750a3d Add initial packaging of MATE Desktop Environment (#1012)
Notably it has a loading delay (~30s) issue with marco (MATE window manager).
2018-01-03 18:43:13 +00:00
drebrez
5c2e83f051 [initramfs] Set framebuffer mode earlier in the script (before hooks) (#1070) 2018-01-03 00:38:32 +00:00
Bart Ribbers
75cd812fa3 postmarketos-ui-plasma-mobile: use kwin with framebuffer when missing /dev/dri (#1062)
Modified Plasma launch script to (crudely and unreliably)
detect if it has to run on the framebuffer or not
2018-01-02 22:53:21 +00:00
Luca Weiss
988aef6646 Update linux-postmarketos-mainline to 4.15-rc6 (#1067)
* Using full diff skipping v4.15-rc1
cgit doesn't generate proper patches for binary files (one was added in
v4.15-rc1 and removed in v4.15-rc5 because it also introduced a new
build-time dependency which is now solved). For 4.16 the "old" source
lines can be re-added but until then a full diff skipping v4.15-rc1
is needed.
* Add patch from linux-next to fix the build on some machines
  (sync-check.sh was not executable, see #950)
2018-01-01 23:53:01 +00:00
drebrez
1c71d748f5 [dtbTool] Fix version detection and find dtb in subfolders (#1057)
Fixes #1055.
2017-12-30 19:00:48 +00:00
clayton craft
d1c97617d6 linux-postmarketos-stable: Update to 4.14.9 (#1053) 2017-12-29 13:51:52 +00:00
Alex Roth
2a951d962d Add Teclast X80 Pro (EFI/x86_64 tablet) (#1050) 2017-12-29 02:02:29 +00:00
MoreRobustThanYou
6666f8a984 Replace dtbTool with the Skales dtbTool (#1048)
Should work the same, except it should also work in mainline,
because it uses libfdt (CM dtbtool often errors on mainline).
2017-12-28 20:44:50 +00:00
drebrez
0c63ff041c Feature debug-shell (#1028)
* Changed usb-shell behavior, it wait for some user action before continue booting
* Rename usb-shell to debug-shell and changed port to 23
* Add `20-debug-shell.sh` script to static code analysis
* Enable eth0 interface in initramfs (qemu)
* Add additional script to run a shell in order to be able to kill it from a telnet session
2017-12-23 19:22:28 +00:00
Oliver Smith
da9a4f99b7 Enable qt5-qtwebengine for aarch64 again
Compiling with the gold linker works \o/ - this fixes #1008.
2017-12-23 11:24:17 +01:00
Attila Szöllősi
7a92fc03d4 [recovery-installer] Log into one logfile instead of two (#1031) 2017-12-22 18:39:44 +00:00
Bart Ribbers
25d7b699c8 Add KDE debugging rules by default (#1032) 2017-12-22 18:37:36 +00:00
Attila Szöllősi
2f9ef89189 Rename deviceinfo variable flash_methods to flash_method (#1030)
* Rename deviceinfo variable flash_methods to flash_method
* Update pmb.config.deviceinfo_attributes / add sanity check
* Add test case that parses all deviceinfo files
2017-12-21 22:12:51 +00:00
Alex Roth
27b59a47bf Fix for qtwebengine not linking on armhf, re-add armhf arch for luna packages (#1025) 2017-12-19 23:28:26 +00:00
Oliver Smith
5584b04491 weston: bump pkgrel (soname bump of dependency libva) 2017-12-20 00:19:07 +01:00
Oliver Smith
204b7b4ef8 qt5-qtdeclarative (QML) compile for armv7 to enable JIT and make it work at all (#1022)
Also removed the Alpine maintainer (as we usually do so we don't
annoy him) and changed the pkgver to 9999 (this package is present
in upstream Alpine, we don't want it to get replaced when Alpine
updates their version).
2017-12-18 22:57:40 +00:00
Alex Roth
04d73a5824 Add packages and configuration changes to allow Luna to start in QEMU (#1016)
* Added a lot more Luna packages. It is now possible to start Luna, complete the first use app, and use the system. ARM support still broken.
* Cleanup & testing fixes. Starting in a fresh qemu environment works, but isn't quite deterministic. See wiki page for details
2017-12-17 18:25:59 +00:00
drebrez
db25689dfd apk-file: Command line front end for pkgs.alpinelinux.org (#1011) 2017-12-15 23:41:14 +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
Oliver Smith
b031017414 qt5-qtwebengine: disable aarch64 and armhf (see #1008)
(Not increasing the pkgrel, because we really don't want to build
this when not necessary.)
2017-12-14 22:00:10 +01:00
Alex Roth
6792641fd1 Add qtwebengine & qtwebchannel from luna work (#999) 2017-12-12 23:37:04 +00:00
drebrez
fd7b2bb9ba aports: packaged matchbox-keyboard (#1001) 2017-12-12 19:40:12 +00:00
Bart Ribbers
c615d769a5 Add qt5-qtbase with OpenGL ES2 enabled (#996)
Add qt5-qtbase with OpenGL ES2 enabled and adjust the
upstream compatibility test case.
* Test case: don't get the qt5-qtbase version from any APKINDEX, but
  only from Alpine's community APKINDEX
* Test case: If the pkgver is 9999, look at _pkgver
2017-12-11 20:24:30 +00:00
Oliver Smith
b31e799f40 postmarketos-ui-plasma-mobile: Remove compile time warning (downloading pre-built packages from the binary repo is working) 2017-12-09 03:33:25 +01:00
Oliver Smith
bc21aed803 Fix android recovery zip (thanks @kaendfinger for the patch!)
Fixes #937.
2017-12-09 02:58:17 +01:00
Bart Ribbers
d6efa94dd4 Re-add powerdevil and polkit-kde-agent as runtime deps to postmarketos-ui-plasma-mobile (#977)
* Re-add powerdevil and polkit-kde-agent as runtime deps to postmarketos-ui-plasma-mobile
* Add kwinrc to start applications maximized
2017-12-04 23:19:17 +00:00
Bart Ribbers
45d3d6f008 Upgrade Qt libs to 5.9.3 / add test case to check if we're in sync with Alpine (#976)
* Upgrade Qt libs to 5.9.3
* Add test case to make sure we are always in sync with Alpine's QT
and update qt5-qtsensors, too.
* Remove qt5-qtquickcontrols2 (it's in Alpine now)
2017-12-04 23:06:09 +00:00
Oliver Smith
b8e71b7eba postmarketos-ui-plasma-mobile: depend on kwin 2017-12-03 19:01:19 +01:00
Oliver Smith
31df88c66b Remove dbus-nox11
It made problems, see #956 and #952. Originally this was added, so
our plasma mobile packaging - which targets wayland - doesn't need
to depend on X11 stuff. And because dbus-x11 caused a 1 minute
wait for an X server (#377).

We have yet to figure out if this problem returns, but even if that
happens, it's better than having it completely broken. And we can
probably figure out a better way to fix it (for real).
2017-12-02 20:19:16 +01:00
MoreRobustThanYou
8b2710cd90 Adds consolekit2 to postmarketos-ui-plasma-mobile depends (#965) 2017-12-02 12:59:53 +00:00
Oliver Smith
9fe445af36 device-qemu-amd64: Use LTS kernel (#954) 2017-12-01 19:10:58 +00:00
Alex Roth
196d555092 Merge Luna work into master (#945)
Contains everything from #940, except on top of master now.
Also added a postmarketos-ui-luna package to be a meta-
package for all of the Luna work.

Every component included here builds & runs, but isn't
functional without a handful more packages.
2017-11-29 23:29:26 +00:00
clayton craft
9b30cd6a46 [linux-postmarketos-stable] update to 4.14.2 (#946) 2017-11-28 19:09:17 +00:00
Bart Ribbers
eef97ce49d Lots of Plasma Shell improvements (#440)
* Add postmarketos-ui-plasma-mobile
* Add more required packages
* Upgrade plasma sources
* Modernize APKBUILDs
* Make it run in general
* Support RGB32 framebuffer with BGR order (thanks @zhuowei!)
2017-11-26 17:08:10 +00:00
Attila Szöllősi
f205650259 Workaround for mdss-fb (#927) 2017-11-21 23:17:59 +00:00
Pablo Castellano
b7d1905f30 postmarketos-mkinitfs: Handle "deviceinfo_bootimg_qcdt" boolean properly (#914) 2017-11-19 14:25:10 +00:00
Attila Szöllősi
fdbbc774a9 Run recovery installer in chroot (#901)
The recovery installer now has as few dependencies on the
Android recovery system as possible.
2017-11-16 22:20:57 +00:00
Oliver Smith
585c08bad5 Workaround for Qemu aarch64 abuild-tar bug (#907)
See also: <https://github.com/postmarketOS/pmbootstrap/issues/546>
2017-11-15 22:28:10 +00:00
clayton craft
15d2dc6f97 [linux-postmarketos-stable] Update to 4.14 (#903)
Note, I have removed the rx51 DRM patch that worked around the boot display issue (#208), this issue should be resolved in this kernel.
2017-11-14 16:13:35 +00:00
clayton craft
de9bacf81e [osk-sdl] Update to 0.51 (#862) 2017-11-12 11:17:30 +00:00
MoreRobustThanYou
c1a92c993c Fix #895: Disable RDP in weston (#898) 2017-11-11 18:17:33 +00:00
Oliver Smith
536da3687b Fix linux-postmarketos-mainline depends (#880)
* Use libressl-dev instead of openssl-dev
* Remove busybox-static-armhf
2017-11-08 20:24:02 +00:00
clayton craft
5304b91935 [linux-postmarketos-stable] Update to 4.13.12 (#883) 2017-11-08 19:40:04 +00:00
Oliver Smith
12b5b1ebec 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
c33e5d823e Add PMOS_FORCE_PARTITION_RESIZE kernel boot parameter (#874) 2017-11-04 22:54:42 +00:00
Oliver Smith
965ad4f4c7 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
clayton craft
d87aed4903 [linux-postmarketos-stable] Update to 4.13.11 (#858) 2017-11-03 18:50:46 +01:00
clayton craft
3579c4086d [linux-postmarketos-stable] Update to 4.13.10 (#847) 2017-11-01 15:56:57 +00:00
Oliver Smith
b786a5a157 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
Attila Szöllősi
c886f41ead [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
Oliver Smith
a6d320df58 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
Attila Szöllősi
a31d168635 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
drebrez
95b694bda3 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
9b4807d874 [linux-postmarketos] Update to 4.13.9 (#802) 2017-10-21 20:17:47 +00:00
clayton craft
7bfd1a8788 [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
clayton craft
842db355c1 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
clayton craft
fdff56f4ec 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
clayton craft
f996de4076 [linux-postmarketos] Update to 4.13.8 (#794) 2017-10-19 22:31:28 +00:00
clayton craft
a6c9c353ff 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
Attila Szöllősi
9ba8b8fe2c [recovery-installer] Don't fail when reflashing after fail (#786) 2017-10-18 18:58:58 +00:00
Martijn Braam
f898709b68 Fix #790: pkgdesc for postmarketos-ui-xfce4 said it was GTK+3 already (#791) 2017-10-18 18:57:08 +00:00
Oliver Smith
ec65cb9968 Weston: log to syslog instead of /tmp/weston.log (#762)
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>
2017-10-17 20:38:47 +00:00
clayton craft
89f929565d [linux-postmarketos] Enable support for namespaces (#759)
See #693
2017-10-17 16:27:36 +00:00
drebrez
1ff598acd8 [huawei-y530] Add firmware-huawei-y530 package with wifi required files (#781) 2017-10-17 16:25:38 +00:00
Oliver Smith
6c07834748 pmbootstrap init: Show pkgdesc for each postmarketos-ui package (#763)
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).
2017-10-16 20:01:21 +00:00
Attila Szöllősi
08c9e0caaa Package firmware-sony-amami (wifi firmware) and wcnss-wlan (#770) 2017-10-15 16:32:12 +00:00
Attila Szöllősi
43a87e5c5c Add kernel updater script (#625) 2017-10-14 23:17:49 +00:00
Oliver Smith
8d927d43bb postmarketos-base-x11: Less dependencies (#720) 2017-10-14 23:14:19 +00:00
clayton craft
c7c2b2d02a Add osk-sdl as default luks unlock mechanism on boot (#476)
More information: <https://postmarketos.org/osk-port>
2017-10-14 18:10:12 +00:00
clayton craft
733823e198 [linux-postmarketos] Update to 4.13.7 (#772) 2017-10-14 17:01:39 +00:00
drebrez
50d682901e [android-recovery-zip] Add missing apk keys (#747) 2017-10-14 15:41:12 +00:00
clayton craft
fe9f90a820 [osk-sdl] Update to 0.50 (#764) 2017-10-14 09:50:09 +00:00
clayton craft
1d702fd28f Fix #588: Add chrony ntp client & timezone config (#674)
This adds chrony as the ntp client (starting on boot), and also adds a
prompt in the init step for configuring the timezone.
2017-10-13 19:18:24 +00:00
clayton craft
c4c14f006a [linux-postmarketos] Update to 4.13.6 (#752) 2017-10-12 20:14:15 +00:00
Pablo Castellano
114fdc0a68 Close #709: Improve user creation (#725)
* 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.
2017-10-12 20:08:10 +00:00
Pavel Machek
20f0418934 Update Unicsy-demo to v0.4 (#743) 2017-10-11 15:18:53 +00:00
Oliver Smith
d1ef0ded0e Fix #731: Create symlinks for noarch-subpackages (#740)
* apkindex:
  * Also parse the architecture field
* symlink_noarch_package:
  * Renamed to symlink_noarch_packages
  * Always work on all packages (so we don't need to guess which
    subpackages have been generated after a certain build)
  * Get invoked when running 'pmbootstrap index'
  * Use 'apk index' to generate one index, where the architecture
    does not get rewritten (abuild does that by default, due to
    Alpine's repos not having a 'noarch' folder and diverging from
    that doesn't make things easier for us). That goes super fast,
    and then we know which packages are noarch packages and can
    create the symlinks.
* Made output less verbose:
  * Use -q for 'apk index' when calling it directly (when it gets
    called by abuild we can't control that)
  * Output that the APKINDEXes get reindexed only to the 'pmbootstrap
    log'.
2017-10-11 15:11:25 +00:00
Luca Weiss
a83aa92d5a Fix weston arguments (#736)
See "man 1 weston". Fixes dc28cbf.
2017-10-10 19:40:20 +00:00
Oliver Smith
e06ca9853d postmarketos-ui-xfce4: depend on xorg-server (#721)
* postmarketos-ui-xfce4: depend on xorg-server
* Source archive must not contain pkgrel
2017-10-10 19:39:07 +00:00
clayton craft
caf386d8ec Set swclock to use recent date/time on first boot (#723) 2017-10-09 19:10:28 +00:00
zhuowei
7c01831c90 aports: add kmscube for testing kernel modesetting (#724)
kmscube is a command line utility for testing KMS-capable GPU drivers,
which may be useful for validating DRM rendering and OpenGL ES acceleration
capabilities required by accelerated Weston/KWin on supported devices.
2017-10-09 19:00:35 +00:00
drebrez
d4df6dc96b Add mkfs.ext2 and mkfs.ext4 binaries to the android-recovery-installer (#684) 2017-10-07 18:36:23 +00:00
Pavel Machek
4b3f15b63e Add postmarketos-ui-xfce4 with touchscreen-optimized config (#695) 2017-10-07 16:27:42 +00:00
drebrez
d82e8f7199 Fix #199: Run weston with user instead of root (#707) 2017-10-07 16:14:49 +00:00
Oliver Smith
4daffc77ce Fix #710: linux-postmarketos: use "olddefconfig" (#712) 2017-10-06 18:45:47 +00:00
Oliver Smith
de80b6bdb5 Package postmarketos-ui-hildon (#649) 2017-10-06 18:34:51 +00:00
Oliver Smith
8d2a1a417d Automatically install X11 and mesa dependencies (using install_if) (#696)
* device-qemu-amd64: subpackages for x11 and mesa
* postmarketos-base: add x11 subpackage
2017-10-06 18:19:47 +00:00
clayton craft
014a93f680 [ofono] update to 1.21 (#705)
This release (1.21) includes 3 patches upstreamed earlier. The 4th patch didn't make the cutoff, but has just been merged so it'll be in 1.22
2017-10-05 20:28:46 +00:00
clayton craft
80539f751c [linux-postmarketos] Update to 4.13.5 (#704) 2017-10-05 20:23:00 +00:00
Martijn Braam
a3375bb0ba Removed a lot of hardcoded modules in mkinitramfs (#691)
This removes a few globs from the mkinitramfs module copy part. This is an issue
in linux-postmarketos since it will copy gpu drivers for all possible hardware to the
initramfs.

This should be done in the deviceinfo variables for the modules instead and is
already done for the current devices that use module loading. This changes the
initramfs (uncompressed) from 16 MB to 11 MB just because the qemu graphics
drivers aren't included.
2017-10-04 18:16:31 +00:00
Oliver Smith
a68b9e0e40 Fix #633: start postmarketos-demos with weston (#648)
* Remove udev trigger/settle, because we start it properly now
* Try for 10 seconds to start postmarketos-demos, wait 0.5s after each try
2017-10-04 15:28:39 +00:00
Pablo Castellano
dbbdf7cfa4 Fix #436: Clean apkbuilds (#692)
* Remove empty build() functions
* Remove obsolete '|| return 1' statements
2017-10-04 15:05:00 +00:00
Pavel Machek
edbe7f92d7 Fix #669: Only do useradd via Python, properly install /etc/skel defaults (#685) 2017-10-03 18:10:28 +00:00
clayton craft
fc565f43f0 [osk-sdl] update to 0.49 (#641) 2017-10-03 17:33:29 +00:00
clayton craft
fe2e1217d9 Remove SDL2 package from aports (#640)
Now that SDL2 2.0.6 is out and updated in Alpine, there's no reason for
us to keep this package around, at least from an osk-sdl perspective!
2017-10-03 17:31:07 +00:00
clayton craft
d9e71b3ffa Remove directfb from aports (#686) 2017-10-03 17:30:04 +00:00
clayton craft
cefc04b47d Remove tslib from aports (#687) 2017-10-03 17:29:10 +00:00
clayton craft
775ba6ad36 Fix console blanking (#676)
So I was wrong.. /etc/issue needs to contain the escape sequence output
by setterm,  not the actual call to setterm itself. My previous testing
of this was faulty, which led me to believe the previous implementation
of this would work.
2017-10-02 22:41:19 +00:00
drebrez
84466cd0b6 Fix postmarketos-splash version detection during generation of splash screens (#668) 2017-10-02 22:39:09 +00:00
zhuowei
a6fdf65446 aports: clean up APKBUILD for unicsy-demo, sdl_net, and chocolate-doom (#664)
* aports: unicsy-demo: pure Python program should have noarch set

Per https://wiki.alpinelinux.org/wiki/APKBUILD_examples:Python#arch,
pure Python programs should be marked as noarch in the APKBUILD instead
of all.

* aports: sdl_net: fix build on aarch64

The version of config.guess and config.sub predate aarch64, so
./configure errors out with instructions to update them.
Add a prepare section in APKBUILD to do this.

* aports: sdl_net+chocolate-doom: pass CHOST and CBUILD to configure

Other Alpine packages pass these options in to aid cross compling; for
example, the template APKBUILD from
https://github.com/alpinelinux/abuild/blob/master/newapkbuild.in#L43
uses them. Add them to chocolate-doom and sdl_net.
2017-10-02 20:47:26 +00:00
clayton craft
08ada9641d Fix #570: postmarketos-base: Start swclock service on boot (#660)
This service will set system time from the mtime of a file written on shutdown.
2017-10-01 00:51:32 +00:00
clayton craft
c30957ca67 Fix #193: Enable console screen blanking (#661)
This enables console screen blanking/powersaving by default. Without it, the screen will stay on indefinitely, killing battery life and/or prolonging charge time. UIs should be able to override this with dpms (e.g. xset). I arbitrarily chose 5 min as the blank time.
2017-09-30 22:41:45 +00:00
Attila Szöllősi
e4fad30e2a android-recovery: Don't extract tar archive in tmpfs (#654) 2017-09-30 21:59:08 +00:00
Attila Szöllősi
41fcf67bc5 postmarketos-base: Write /boot to /etc/fstab (#653)
Also removed fstab entry from nokia-rx51 post-install script.
2017-09-30 21:52:33 +00:00
Pavel Machek
28b49f1dfa Package unicsy_demo (basic hardware demo) (#643) 2017-09-29 16:38:46 +00:00
Oliver Smith
09afa1f853 postmarketos-base: Execute setup-udev, remove mosh from dependencies (#647)
* postmarketos-base: Execute setup-udev, remove mosh from dependencies

* Run setup-udev [0], because that is what `setup-xorg-base` does [1].
It configures more than one OpenRC service and it also messes with the
runlevels. Only after running that, Hildon works (tested in Qemu).

[0]: 2fbea8b8da/main/eudev/setup-udev
[1]: 06300dd483/setup-xorg-base.in (L25)

* Remove `mosh` from `postmarketos-base` dependencies. I don't think anyone
uses it right now, and it's easy to add custom packages in `pmbootstrap init`
nowadays.

* Minor style changes in the `APKBUILD`
* [rx51] Remove udev-trigger service start
2017-09-29 16:10:09 +00:00
drebrez
e303ea7cf0 Set framebuffer mode in initramfs for all devices (#652) 2017-09-29 15:22:20 +00:00
Attila Szöllősi
06dc9adf4a Add support for isorec flashing in recovery installer (#609) 2017-09-28 22:05:00 +00:00
clayton craft
19f8a4a944 [linux-postmarketos] Update to 4.13.4 (#646) 2017-09-28 19:32:30 +02:00
clayton craft
f6de66028e [tslib] Update to 1.13 (#642) 2017-09-28 15:28:40 +00:00
Oliver Smith
d48f020477 Workaround for #633: increase sleep before pmOS-demos shows up (#638)
A proper fix will be implemented soon, see #633.
2017-09-27 20:48:08 +00:00
clayton craft
0d8260c621 [ofono] add patch submitted upstream (#630) (#635)
This adds a patch I submitted upstream to ofono: https://lists.ofono.org/pipermail/ofono/2017-September/017557.html
2017-09-27 17:20:44 +00:00
Pablo Castellano
6bf7ea3ea8 Qemu support for the QXL driver and SPICE (#481)
* pmb.helpers.run: support running processes in background
* enable QXL driver support in the linux kernel configurations so
that we can also use SPICE to connect to the VM.

QXL is a paravirtual graphics driver with 2D support

The SPICE project aims to provide a complete open source solution for remote
access to virtual machines in a seamless way.

Both DRM_QXL and DRM_BOCHS are enabled as modules.
According to [1], on Linux guests, the qxl and bochs_drm kernel modules
must be loaded in order to gain a decent performance

* qemu: add new option --spice to connect to VM using a SPICE client

If specified, 'pmbootstrap qemu' will look for some SPICE client in the
user's PATH and run qemu using the QXL driver.

Currently supported spice clients are 'spicy' and 'remote-viewer' but
adding support for more clients can be easily done.

qemu with qxl support will run on port 8077/tcp, which doesn't belong to
any well-known service and represents 'PM' in decimal.

References:
[0] https://www.linux-kvm.org/page/SPICE
[1] https://wiki.archlinux.org/index.php/QEMU#qxl
[2] https://wiki.archlinux.org/index.php/QEMU#SPICE
[3] https://github.com/postmarketOS/pmbootstrap/issues/453 (partially fixed)
2017-09-26 20:52:00 +00:00
clayton craft
174cfcd7eb Enable dbus service by default (#628)
Quite a few things use dbus (plasma, hildon, ofono, connman,
networkmanager, etc) that I think it makes sense to just have this
started by default in pmOS rather than have every device package
implement this on their own.

In case someone shows up with a use-case, where dbus by default
is not desired, please speak up. Possible solutions are in #628.
2017-09-25 20:33:04 +00:00
drebrez
fbc909b7f4 Implement cache for generated splash screens (#620) 2017-09-24 14:24:56 +00:00
Martijn Braam
7abec5849b Deterministic dhcp lease (#619)
* Ensure leased ip is always 172.16.42.2
* Bumped version for postmarketos-mkinitfs
2017-09-23 14:23:38 +00:00
clayton craft
89e7f54531 [osk-sdl] Update to 0.48 (#612) 2017-09-23 01:12:12 +00:00
clayton craft
8462820994 [sdl2] Update package to prevent installing upstream updates (#613) 2017-09-23 01:10:31 +00:00
clayton craft
c95390d499 [directfb] add gfx init patch and adjust configure options (#614) 2017-09-23 01:09:29 +00:00
Luca Weiss
3ecfa09d8e postmarketos-base: Update wiki link (#607) 2017-09-21 19:56:59 +00:00
clayton craft
a81d06005a [linux-postmarketos] update to 4.13.3 (#606) 2017-09-21 14:06:00 +02:00
clayton craft
1b35dd595d Improve copy in mkinitfs (#599)
'install' does not properly handle symlinks, it copies the entire file
instead of a symlink to it. This PR uses `cp -a` to preserve symlinks.

For example, with `install`, the files libc.musl-armhf.so.1 and
ld-musl-armhf.so.1 are the same size, despite the fact that in rootfs
libc.musl-armhf.so.1 is actually a symlink to ld-musl-armhf.so.1.

According to @drebrez research, the initramfs size shrunk from 
1 567 930 to 1 168 591.
2017-09-20 18:36:22 +00:00
clayton craft
28595f72ef Close #574: swap file support/encrypted swap on rx51 (#585)
This adds a custom swap file service, which allows specifying a
recommended swap size in the deviceinfo file via
`deviceinfo_swap_size_recommended`. For the N900 this defaults
to 1024 MB now. As the swap file is created in the root partition,
we have encrypted swap now (unless encryption is disabled with
`--no-fde`).
2017-09-20 18:32:19 +00:00
Attila Szöllősi
8e3ca34988 Close #554: kernel config checking (#589)
* Check kernel config
* Allow specifying multiple kernel packages, and also no packages
  which defaults to scanning all kernel configs (it is super fast
  anyway)
* Add the check to Travis CI
* Adjust existing kernel configs, so they pass the kconfig_check.
(We've had to put in a lot of defaults in the aarch64
linux-postmarketos configs, that's why the diff is a bit unclean.)
* Increase modified kernel pkgrels
2017-09-18 21:36:54 +00:00
clayton craft
1bef78c6df Add msm-fb-refresher package and initfs config (#587)
* Add msm-fb-refresher package and initfs config
* Bump version for pmos-mkinitfs
* Create msm-fb-refresher openrc service
* kill refresher when initfs is done
2017-09-18 19:17:30 +00:00
clayton craft
d842513f5c [postmarketos-base] Fix typo in sed statement (#586) 2017-09-16 00:01:25 +00:00
clayton craft
e473a6cf3f Fix wpa_supplicant configuration (#578) 2017-09-15 17:44:50 +00:00
clayton craft
a2cb1b4108 [linux-postmarketos] Update to 4.13.2 (#582) 2017-09-15 15:44:14 +00:00
Pavel Machek
320b8fa61f Reorder entries in the menu, so that shutdown is always available, (#569)
* Reorder entries in the menu, so that shutdown is always available,
even on N900.
* increase `pkgrel`
2017-09-14 18:42:39 +00:00
Tomas Safarik
97ad29c439 Add libsamsung-ipc to device-samsung-i9100 (#564)
* add libsamsung-ipc (from upstream replicant repository)
* add libsamsung-ipc as dependecy for device-samsung-i9100
* change device path for loading modem firmware on i9100
* add mounting of EFS to fstab
2017-09-14 18:18:12 +00:00
clayton craft
4eb52ddff0 Feature/rx51 ofono (#567)
* [rx-51] remove pm=0 for nokia-modem
* Add ofono-1.20 + n900/isimodem fixes
* [rx51] Enable ofono support
2017-09-13 19:20:46 +00:00
clayton craft
cdb003d9bd [linux-postmarketos] update to 4.13.1 (#563) 2017-09-12 21:33:46 +02:00
Tomas Safarik
8adead76ed Add libsamsung-ipc (#522) 2017-09-12 15:37:30 +00:00
Pablo Castellano
d548cc3d52 Upgrade weston to 3.0.0 (#495)
* weston: upgrade to 3.0.0
* removed no_0hz_refresh_rate patch, as this is upstreamed now
* fix regression in compositor-fbdev
* weston: compile with weston-launch enabled

The following patch is required in order to replace GNU's error()
https://lists.freedesktop.org/archives/wayland-devel/2016-September/031179.html
2017-09-11 16:23:42 +00:00
Pablo Castellano
5c3b5ba960 aports: packaged abootimg (fixes #135) (#539) 2017-09-10 10:18:31 +00:00
drebrez
0ede5ab353 Fix #533: postmarketos-demos: Add missing dbus dependency (#538) 2017-09-08 22:44:41 +00:00
Pablo Castellano
11d53cb13e linux-postmarketos: change kernel suffix to -postmarketOS (fixes #497) (#521)
See https://github.com/postmarketOS/pmbootstrap/pull/521#issuecomment-327919994 for an explanation, why we didn't touch CONFIG_LOCALVERSION instead.
2017-09-07 22:29:15 +00:00
Ben Iofel
ae40819471 postmarketos-demos: Add shutdown button (#516) 2017-09-06 16:29:17 +00:00
clayton craft
4374910057 [linux-postmarketos] Update to 4.13 (#510) 2017-09-04 22:43:23 +02:00
Jonty Sewell
ff6cbbfdf4 Fix #508: building weston fails (#509) 2017-09-04 17:02:09 +00:00
Pablo Castellano
61db96961f qemu: improve networking (#482)
* qemu: network improvements (fixes #433)
- Use hostfwd instead of -redir, which is deprecated
- qemu devices: add interfaces configuration and virtio_net module
- redirect telnet ports 23 and 24 (debug)

* Added 'interfaces' files
* qemu: added aarch64 network device
* qemu: use default_ip
2017-09-03 14:01:21 +00:00
James Heald
8c8d615665 Updated all outdated wiki links (#504) 2017-09-03 06:46:54 +00:00
Martijn Braam
3d58af930a Changed logo in the splash screens (#502)
* Changed logo in the splash screens
* Added spacing parameter for logo to the config
2017-09-02 20:49:34 +00:00
Attila Szöllősi
71ad48a487 Add ascii art to recovery installer (#498)
* Add ascii art
* Bump version number
2017-09-02 18:44:04 +00:00
James Heald
68ce75df26 Added chocolate-doom
Added chocolate-doom from Arch repos. Thanks to original package mantainer Mike Swanson <mikeonthecomputer@gmail.com>
2017-09-02 03:52:26 +00:00
clayton craft
c97198c1ba [linux-postmarketos] Update to 4.12.10 (#492) 2017-09-01 20:10:14 +00:00
clayton craft
28eca3acc8 [linux-postmarketos] update to 4.12.9 (#477) 2017-08-28 20:13:18 +00:00
Attila Szöllősi
b8423c02bc Fix shellcheck issue (#470) 2017-08-25 22:31:55 +00:00
Attila Szöllősi
5f754e3e64 Recovery installer zip (#404)
Supports flashing with TWRP and other Android recovery OS through adb sideload,
as well as exporting a generated recovery zip file.
See also:
https://github.com/postmarketOS/pmbootstrap/wiki/deviceinfo_flash_methods#recovery-mode-adb
2017-08-24 21:07:36 +00:00
clayton craft
43dba29089 Fix issue with deviceinfo modules not loading in init (#451)
When modules are surrounded with quotes, modprobe seems to be treating
them as all one module and none of them are actually loaded.
On the N900, where a watchdog module MUST be loaded on boot, this
results in the device shutting down after 30 seconds. This commit
corrects this in init.sh.in
2017-08-23 17:05:05 +00:00
Pablo Castellano
1e71befed4 Yet another minor fixes PR (#395)
* postmarketos-splash: print filename to log file
* postmarketos-mkinitfs: removed old unused check
The variable name was wrong and never happened
https://github.com/postmarketOS/pmbootstrap/pull/395#pullrequestreview-56977439
2017-08-21 15:08:14 +00:00
Pablo Castellano
d0f0d5b4b5 extract-dtb: update to v1.1 (#431) 2017-08-21 15:06:44 +00:00
Pablo Castellano
e0d3d1530f Close #362: Add deviceinfo to initramfs (#394)
* Added deviceinfo to initramfs
* init.sh.in: removed @MODULES@ variable
* Add and describe new copy_files parameter for changing file mode bits
2017-08-20 19:45:26 +00:00
Oliver Smith
2d53dcac33 Close #147: postmarketos-base: added udev rule / firmwareload.sh (#427)
See also:
https://github.com/postmarketOS/pmbootstrap/pull/374
2017-08-20 12:49:55 +00:00
clayton craft
ed0caeeaef Add osk-sdl, directfb, sdl2, tslib (#419)
The sdl2 package is forked from upstream Alpine and:
1) adds directfb video support
2) adds a patch to work around a compile issue when directfb is enabled
2017-08-19 16:50:59 +00:00
drebrez
b6ceef5138 Detect and resize root partition on QEMU (#414)
To increase the size of the partition you simply increase the size of the image using `truncate -s +200M /path/to/qemu.img` for example and then start QEMU.

More information:
https://github.com/postmarketOS/pmbootstrap/wiki/Common-Qemu-Notes#increase-partition-size
2017-08-18 22:39:32 +00:00
clayton craft
c08ac45efd Fix #396: No root autologin except for weston (#407)
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).
2017-08-18 15:55:30 +00:00
clayton craft
81ad74a274 [linux-postmarketos] Update to 4.12.8 (#401) 2017-08-17 16:20:22 +00:00
clayton craft
7bba1d0bba [linux-postmarketos] Update to 4.12.7 (#386) 2017-08-15 11:29:04 +02:00
clayton craft
12afb3db85 [linux-postmarketos] Update to linux-4.12.6 (#371) 2017-08-14 16:16:36 +02:00
PureTryOut
e0d464370c Fix usb networking on the Sony Amami (#357) 2017-08-09 21:54:01 +00:00
Yuval Adam
321156e59b Initial support for mozilla flame (#356)
* Initial Mozilla Flame packages

* Update dtbtool to use LineageOS upstream

* Use mkbootimg --dt flag only when deviceinfo_bootimg_qcdt is defined

* Update mkbootimg to use LineageOS upstream

* Add sparse image flashing on device-mozilla-flame

* Only support SD card install on Mozilla Flame

* Remove useless profile.sh on mozilla flame

* Package DTBs in /usr/lib/linux-mozilla-flame/

* Build and install modules in linux-mozilla-flame
2017-08-09 20:57:52 +00:00
Oliver Smith
a69344c067 Configfs network setup was broken (related to #338) (#353)
* Partially resolve #338: Configfs network setup was broken
* Ignore shellcheck warning
...because if we do what shellcheck recommends here, we end up with
exactly the code which we're reverting in this PR.
2017-08-09 20:30:41 +00:00
Pablo Castellano
5d011e30ff Close #226: Launch postmarketOS in a qemu virtual machine (#350)
Thanks to Pablo Castellano and Martijn Braam!
In postmarketOS we are now able to generate system images with the
correct configuration so that they can boot already using qemu

This commit brings the `pmbootstrap qemu` action.
This command is very handy because you don't have to set all the
qemu parameters, pmbootstrap does it for you.

* device-qemu-vexpress: Added kernel command line according to wiki
* qemu: Added workaround for image writing permissions
* qemu: Added support to launch postmarketOS in a QEMU virtual machine

- Support for emulating these architectures in QEMU: arm, aarch64, x86_84
- Generate QEMU command correctly depending no guest architecture (arm/x86)
- Run QEMU in the same architecture as the host by default
- Refactoring in pmb.parse.arch and pmb.qemu.run
- Raise exception if DTB file or system image are not present
- Display more useful information when something fails (e.g. image not found)
- Run qemu version depending on arch (host or argument), not device configured

* device-qemu-amd64: set deviceinfo_kernel_cmdline to "PMOS_NO_OUTPUT_REDIRECT"
* qemu: added --memory argument to specific guest RAM
* device-qemu-amd64: adjusted deviceinfo_kernel_cmdline (console=tty1)
* Added /etc/network/interfaces for qemu-amd64
* qemu: Added KVM support if /dev/kvm if present
* Specify separate machines for architecture
* qemu: Check if QEMU is installed instead of crashing
* Added graphics driver to qemu-aarch64

- Use arm (as used in qemu) instead of armhf (used in Alpine)
- qemu argument is -dtb
- Follow same style to build the command + arguments

* qemu: Added SSH port redirection: ./pmbootstrap.py qemu -p 2222
2017-08-09 20:26:40 +00:00
Oliver Smith
bbf1e22063 Fix 'install: can't stat' message, when no hook is installed (#310) 2017-08-06 13:12:43 +00:00
drebrez
4a3a02c60a Automatically compute the minimum size for the partition and resize it during the boot process (#127)
* Automatically compute the minimum size for the partitions
* Automatically resize the pmOS_root partition during the boot process
* Resize root partition only if there is unallocated space at the end of the device.
* Added more echos to make debugging easier while looking at the pmOS_init.log.
* Updated static_code_analysis.sh script to run shellcheck with `-x` option.
2017-08-03 16:01:00 +00:00
clayton craft
20b8f6ea83 [linux-postmarketos] enable maint. patching of kernel source (close #311) (#313)
This enables applying maint. release patchsets to the kernel source
tarball, in line with Alpine Linux's linux-vanilla APKBUILD.
This addresses #311.
2017-08-02 16:48:06 +00:00
Pablo Castellano
ff968a751e Implement sparse system images (fix #299) (#303)
* Packaged libsparse

libsparse from the Android project provides multiple tools like img2simg
and simg2img.
These are used to split a large image for the system partition into
separate smaller chunks with sparse headers

This is required for several devices (at least bullhead, fp2 and titan)
because it fixes the "Invalid sparse file format at header magi" error

https://github.com/postmarketOS/pmbootstrap/issues/299

* Added new variable deviceinfo_flash_sparse (fixes #299)

Right after the system image is generated, pmbootstrap checks this
variable. In case it is true, run img2simg on it

* motorola-titan: enable deviceinfo_flash_sparse

* libsparse: use source from github: anestisb/android-simg2img

It is not that easy to use the upstream archive because everytime
you download it, the files have the current date as creation date
and that makes the file have a different checksum every download
https://github.com/postmarketOS/pmbootstrap/pull/303#issuecomment-319017197
2017-08-02 16:21:50 +00:00
clayton craft
b0d7e1b483 [RX51] workaround lines issue (#309)
This works around the lines issue using a patch from Ti: https://lkml.org/lkml/2017/6/30/163
2017-07-31 21:25:45 +02:00
Martijn Braam
32241643c8 Fixed dtb installation with mainline kernel (#307)
* Fixed dtb installation with mainline kernel
2017-07-31 19:44:17 +02:00
Oliver Smith
7ea77e7215 Fix checksum of postmarketos-base 2017-07-30 16:15:51 +02:00
clayton craft
ea6d952978 Fix #288: Checksum *-install scripts in APKBUILDs (#294)
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.
2017-07-30 13:38:31 +00:00
clayton craft
88c753e5ae Move wpa_supplicant to default runlevel (#286)
Having it in boot doesn't actually work, the service is being started
too early and fails. This change moves it to the default runlevel. This
change also removes "wifi-handler" since that service doesn't actually
exist.
2017-07-30 13:19:43 +00:00
clayton craft
487bb362b8 Update to Linux Kernel 4.12.4 (#285)
This updates the linux-postmarketos kernel to 4.12.4, and fixes an issue
where the APKBUILD was pulling down the 4.12 source but not the 4.12.x
patches. I think that pulling down the major.minor source and a sep.
package for patches to update to the major.minor.minor(er?) release adds
unnecessary complexity since kernel.org already hosts the sources with
these patches applied (e.g. in this case the 4.12.4 source)
2017-07-29 23:52:01 +02:00
Oliver Smith
8234cc5f2b Move two cross-packages to the cross folder 2017-07-29 01:35:53 +02:00
Oliver Smith
c5004ead31 Move linux-postmarketos to from device to main 2017-07-29 01:14:09 +02:00
Oliver Smith
3e140ea690 Close #194: Aports subfolders! See migration guide in the wiki (#227)
Migration guide:
https://github.com/postmarketOS/pmbootstrap/wiki/Migration-to-aports-subfolders
2017-07-28 22:34:40 +00:00