Commit Graph

453 Commits

Author SHA1 Message Date
Martijn Braam a94cef3a35 Merge pull request #184 from craftyguy/rx51_weston_keyboard_layout
[RX51] Set keyboard layout for weston
2017-07-22 11:01:29 +02:00
Oliver Smith 9e5683f151
Fix #219: pmbootstrap could not find g++-armhf/g++-aarch64 2017-07-22 09:49:24 +02:00
Clayton Craft 530c5585d4 [RX51] Update to Linux-4.12.3 2017-07-21 16:00:47 -07:00
Oliver Smith 223f584e26
pmbootstrap shutdown: Make cryptsetup closing slightly more robust
I've had a strange case where `cryptsetup status` did not work
inside the chroot anymore, and only zapping it would resolve it.
But I couldn't zap, because the status check was preventing shutdown
(on which zap depends) from working. This commit works around that.
2017-07-21 23:44:28 +02:00
Clayton Craft c444a2d96c [RX51] Set keyboard layout for weston
This configures the keymap in weston so that the rx51 keyboard behaves
as expected (e.g. shift key, numbers, etc)
2017-07-21 13:47:00 -07:00
clayton craft 70fbed99da Re-enable XWayland for devices that had it enabled (#221)
This re-enables the XWayland module for devices which did not use the
'dirty hack' that was removed in #201.
2017-07-21 20:25:06 +00:00
clayton craft d931ac430c Handle generating weston.ini in post-install script (#201)
This PR automatically creates the weston.ini in the
postmarketos-base post-install script based on options set in the
deviceinfo file for a particular device. This replaces #191.
If weston.ini exists, then no modifications are made.

(Optional) options supported in this PR for deviceinfo are:
deviceinfo_weston_core_modules - defaults to NONE if none specified
deviceinfo_weston_core_backend - defaults to 'fbdev-backend.so' if none specified
deviceinfo_weston_keymap_rules - keymap rule, found under /usr/share/X11/xkb/rules/
deviceinfo_weston_keymap_model - keymap model
2017-07-21 19:46:40 +00:00
Oliver Smith 77d7ed1679
Close #215: Write explicity what passwords are for in install 2017-07-21 21:14:16 +02:00
Oliver Smith ccae499a89
Update busybox-static-* to upstream 2017-07-21 21:02:31 +02:00
Oliver Smith 5651c28b41
Fix #162: flash_system: meaningful error for missing image 2017-07-21 20:26:56 +02:00
Oliver Smith 56b34212f6 Various distccd related improvements, mostly respect --verbose (#216)
I've done some refactoring while debugging #209.
* Unused file `pmb/build/crosscompiler.py` removed (that was a
  left over from `_pmb_build_in_native_chroot` hack
* Do verbose logging in distccd, when `pmbootstrap --verbose` is
  being invoked
* Restart distccd, when the commandline has changed (e.g. when the
  currently running version was not verbose, and the new one is
  verbose.) Prior to this change, it only got restarted, when the
  architecture changed (so it did not allow changing the job count
  on the fly for example).
* Insert missing whitespace in arguments help.
2017-07-21 16:25:52 +00:00
Oliver Smith cf0dc2a989
Fix #209: Cross-compiling fails with C++ code 2017-07-21 17:21:32 +02:00
drebrez e241cca904 Add device HTC Desire (Bravo) support (#202)
* Add HTC Desire (Bravo) device-specific and kernel package

* Enable kernel virtual terminal support

* Add framebuffer and usb configuration in initfs-hook script

* Add udev required kernel options and set correct framebuffer resolution

* Add touchscreen device rules and enabled kernel logs (dmesg)

* Add deviceinfo_flash_offset_base in deviceinfo and update other offsets
2017-07-20 17:52:09 +00:00
Anton Lazarev d1da069c02 Add asus-grouper (#180) 2017-07-20 16:05:33 +00:00
Martijn Braam faaec71289 Merge pull request #192 from craftyguy/rx51_handle_phys_events
[RX51] Add support for physical events w/ acpid
2017-07-20 11:51:03 +02:00
Clayton Craft a48b1ac3c5 [RX51] Add support for physical events w/ acpid
This adds a way to handle physical events like keypad slide switch,
screen lock, camera lid, and others. This uses acpid from busybox (I was
wrong about the real acpid package), and anl acpi.map file to map events
to 'scripts'. The scripts are symlinked to /etc/acpi/handler.sh,
automatically by the new post-install script, where
they are handled based on which script was called. This allows for
easily adding whatever is necessary for #178.

If this PR is merged, I will create a new wiki page detailing how others
can use this framework on other devices.

There's an issue with Busybox's acpid, where it is unable to detect new
devices added after the daemon loads. This is the case on the N900,
where openrc starts acpid well before the kernel is done modprobing
drivers (e.g. gpio_keys), so it's necessary to restart the acpid daemon
after some time to 'load' the new devices.
2017-07-19 19:17:25 -07:00
Martijn Braam fc0dc340e9 Merge pull request #197 from craftyguy/rx51_enable_drm
[RX51] Enable DRM in kernel
2017-07-19 23:37:32 +02:00
Oliver Smith 57c3ac59bf
Adjust gcc-armhf/gcc-aarch64 to upstream 2017-07-19 23:07:34 +02:00
Oliver Smith 9677d89f84 Fix #145: add deviceinfo_flash_offset_base again (#175)
* Fix #145: add deviceinfo_flash_offset_base again

* Add default OFFSET_BASE value in flasher if deviceinfo_flash_offset_base variable is not set
...and set correct default base value in create_bootimg function
2017-07-19 20:44:12 +00:00
Oliver Smith ca5b8e3367
Fix #200: Parse depends_dev in APKBUILDs 2017-07-19 21:24:03 +02:00
Pablo Castellano 6be7d656ee Two trivial changes (typo + info message) (#179)
Thanks, Pablo Castellano!

* Fixed typo

* Guide user about what are the next steps after flashing kernel and password

* Increased postmarketos-mkinitfs' pkgver and rewording

Changes requested:
https://github.com/postmarketOS/pmbootstrap/pull/179
2017-07-19 18:05:34 +00:00
Clayton Craft e27fee6e0d [RX51] Enable DRM in kernel
This enables DRM (Direct Rendering Manager) support in the kernel for
the RX51. This opens up the possibility of using the Weston DRM backend,
which in turn allows for DPMS (I hope) and other cool tricks.

n900:~# glxinfo|head
name of display: :0
display: :0  screen: 0
direct rendering: Yes
server glx vendor string: SGI
server glx version string: 1.4

n900:~# glxgears
94 frames in 5.0 seconds = 18.772 FPS
2017-07-19 09:54:46 -07:00
Oliver Smith 1aae094b50 Close #174: Put frontend functions in extra file (#185) 2017-07-18 19:01:11 +00:00
Martijn Braam 69b26e7d48 Merge pull request #183 from PabloCastellano/weston
[weston] Added more patches
2017-07-18 15:34:38 +02:00
Pablo Castellano fae4ee5fb0 [weston] Added more patches
- Add support for ABGR (Asus grouper / Nexus 7 2012 tablet)
- Print guessed pixman type
2017-07-18 15:07:47 +02:00
Martijn Braam 3e94997857 Merge pull request #169 from craftyguy/rx51_fix_uImage_filename
[RX51] Export u-boot kernel image with flasher
2017-07-17 23:17:26 +02:00
clayton craft c1c9eccb46 Add acpid package (#170)
Thanks craftyguy!

This commit adds the acpid daemon. This requires a kernel with NETLINK
support compiled in before daemon will run. acpid will be extremely
helpful for devices that have external buttons which need event
handling. The nokia-rx51 is full of such devices/switched!

This was heavily leveraged from the Arch Linux PKGBUILD, thank you Arch
maintainers/contributors!
2017-07-17 20:11:53 +00:00
Clayton Craft 3ca54dc87b [RX51] Export u-boot kernel image with flasher
This properly exports the uImage kernel, which is used by u-boot, when
running 'flasher export'. Note the change to the uImage name to follow
the pattern "uImage-$flavor", which in the case of the RX 51 is
"uImage-nokia-rx51".
2017-07-17 12:14:05 -07:00
clayton craft fc3e4bfe4a Fix PR #160, Fix #172 (#173)
Thanks craftyguy!
Probably meant to call 'globals()' and not 'locals()'. As @MartijnBraam
pointed out in IRC, probably best to have these functions in a separate
module so they can be parsed with getattr
2017-07-17 18:41:39 +00:00
cclauss a502b50475 Reduce complexity in pmbootstrap.py (#160)
Thanks, @cclauss!

* Dictionary lookup of event loop actions

This was kind of an experiment that adds lots of blank lines to this script -- feel free to reject it.

The observation that triggered this was that in main() all actions can execute using just one parameter, args.  This means that it is possible to use args.action to do a dict lookup to get the corresponding function.  This approach adds tons of blank lines to the script in exchange for a rapid seek to the action implementation and a substantial reduction of the McCabe complexity of main().

$ __flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics__
```
./pmbootstrap.py:43:1: C901 'main' is too complex (23)
./pmb/aportgen/core.py:38:1: C901 'rewrite' is too complex (17)
[ ... ]
```

* Remove action_dict and use locals() instead
2017-07-17 15:38:45 +00:00
Martijn Braam 56b9c2206e Fixed checksums for device-nokia-rx51 after merge 2017-07-16 17:09:12 +02:00
Martijn Braam 7d920a626d Merge pull request #159 from craftyguy/rx51_kernel4.12
[RX51] Update to mainline kernel
2017-07-16 17:02:43 +02:00
Martijn Braam e50dafb380 Merge pull request #155 from craftyguy/master
[RX51] Account for uInitrd filename change in u-boot script
2017-07-16 16:59:29 +02:00
Martijn Braam 40a6267b74 Merge branch 'master' into rx51_kernel4.12 2017-07-16 16:58:21 +02:00
Martijn Braam ada271f1c7 Merge pull request #158 from craftyguy/rx51_fix_wifi
[RX51] Add linux-firmware package
2017-07-16 16:56:58 +02:00
Clayton Craft 594dcf6f9c [RX51] Update to mainline kernel
A couple of issues are resolved by moving to the mainline kernel (from Pali's
kernel):

1) 'reboot' command now works as intended
2) boot is *much* faster
3) charging LED seems to be working now
2017-07-15 21:12:16 -07:00
Clayton Craft 2578954e4e Account for uInitrd filename change in u-boot script (rx-51)
The uInitrd filename is appended with 'flavor' so, for example, with the
rx-51 the generated file is named 'uInitrd-nokia-rx51'. This corrects
the rx51's u-boot script to account for this change in filename.
2017-07-15 16:24:37 -07:00
Clayton Craft 3b4650c8f5 [RX51] Add linux-firmware package
This removes the call to `firmware_install` in the APKGBUILD for
linux-nokia-rx51, and adds the `linux-firmware` package as a dependency
for device-nokia-rx51.

There are two immediate benefits for this:
1) wifi now works

2) the FM radio device was causing the boot to take ~2 minutes longer
than it should, now that the firmware is present there's no delay in
initializing this device
2017-07-15 14:30:54 -07:00
Clayton Craft 0fb18b2bdf RX51 - Add touchscreen calibration udev rule 2017-07-15 12:40:17 -07:00
Oliver Smith ec57bd7df1 Merge pull request #144 from postmarketOS/heimdall-partitions-in-deviceinfo
Close #22: deviceinfo: add heimdall partitions / make flasher variables optional
2017-07-14 20:48:38 +00:00
drebrez 8c38ac8dca Update heimdall script to flash both (kernel+initramfs) at once 2017-07-14 22:35:59 +02:00
Oliver Smith 69bb66cbd4
Challenge APK files: less output by default 2017-07-14 19:32:57 +02:00
Oliver Smith b0dbff4c76
postmarketos-mkinitfs: Bump pkgver to 0.1.5 2017-07-14 18:10:56 +02:00
Oliver Smith 34e8e762f4
Merge branch 'configfs-usb' of https://github.com/Decatf/pmbootstrap 2017-07-14 18:09:26 +02:00
Oliver Smith fdbbc657cd
Update gcc-* to 6.4.0 2017-07-14 07:09:52 +02:00
Oliver Smith 50d23e2fd5
Fix #194: ismount() fails on symlinks 2017-07-14 07:05:45 +02:00
Oliver Smith 63aa1eae1b
AutoPEP8 1.3.2 slightly changed automatic formatting 2017-07-14 07:00:07 +02:00
ryang 346cc41ce6 Add ConfigFS based usb network configuration
This extends the initramfs init script to setup USB networking on kernels
using USB_CONFIGFS.
2017-07-13 11:17:48 -04:00
Oliver Smith 4616484cb7
Add new dependency test package: hello-world-wrapper 2017-07-12 22:19:01 +02:00
Oliver Smith f37367c57c
Properly support specifying a local folder as --mirror-pmOS
This is required for developing and testing the binary repository
scripts (see #64). Changes:
* When specified, the local folder gets mounted inside the chroots
  as /mnt/postmarketos-mirror
* The apkindex_files() function outputs the correct path to the local
  repository (it does *not* hash the URL in that case, which would
  be wrong)
* /etc/apk/repositories: when the pmOS mirror is a local folder,
  the path "/mnt/postmarketos-mirror" gets added to that file instead
  of the outside path (so apk finds it properly inside the chroot)
2017-07-12 21:55:47 +02:00