Commit Graph

434 Commits

Author SHA1 Message Date
Pablo Castellano 3954883547 Write custom os-release (closes #324) (#439)
* Write custom os-release (closes #324)
* Return empty string instead of crashing when the directory is not a git repository
* Use https in homepage URL
2017-08-23 16:40:16 +00:00
Yuval Adam ad17254e86 Better Mozilla Flame device support (#435)
* No need to append DTB to kernel
* Remove kernel module build for now
* Add device-specific firmware package
* Add special partitions to fstab
* Fix typo in screen width
2017-08-21 19:38:11 +00:00
Pablo Castellano e68f54356b 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 5eca2d9808 extract-dtb: update to v1.1 (#431) 2017-08-21 15:06:44 +00:00
Pablo Castellano 05fc3f453e 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 00b71dd881 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
Kevin Liu 963c9337d4 maguro: add wifi, framebuffer/weston, and touchscreen support (#425)
* Add maguro wifi support
* enable framebuffer and VT, WESTON STARTS
* make touchscreen work & fix merge conflict
Cherry-pick of lawl's commit, ed552e5d9272204c12f67bcb0401b3e08e57d35f.
2017-08-20 12:41:28 +00:00
indefini a0ba9895c3 If there is no resolv.conf, create an empty file. (#423) 2017-08-20 12:34:31 +00:00
Martijn Braam c536e4ea58 Add setting for device keymap for devices with keymaps (#379)
* Added rx51_us keymap to nokia n900
* Added keymap option to init
* Made install command run setup-keymap when neccesary
* Validate keymap on install
2017-08-19 21:40:20 +00:00
clayton craft c1a1f35239 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
clayton craft 2d6f9befca Disable zap on init for new devices (#418)
The device chroot shouldn't exist yet anyways. Also add a 'device_exists'
variable that can be used to determine if the device entered earlier in
the init has a deviceinfo under aports/device/device-*
2017-08-19 16:04:53 +00:00
Oliver Smith c323f21ca5 (binary repo reated) Don't specify pkgnames from "provides" as dependencies (#416)
* Don't specify pkgnames from "provides" as dependencies

Always use the regular pkgname. That way, we avoid listing all
kinds of so: files as dependencies (because Alpine automatically
adds them as depends= to the package database). This fixes building
weston, and reproducing the build with `pmbootstrap challenge`.

Additional changes.
* Clear the parsed APKINDEX cache for the current pmbootstrap
  session after building a package
* Avoid rebuilding a package, in case it was already built due to
  circular dependencies
2017-08-19 12:52:11 +00:00
Oliver Smith dcdb4d6f3e
Fix #381: Completely disable Travis mail notifications 2017-08-19 03:35:28 +02:00
NotKit 689eb5c3c9 Fix APKBUILD attribute parsing when opening quote is followed by line break (#415)
his adds a check to continue attribute parsing when end_char is found
in the end of first line, but is present only once. Found in gtk+2.0 APKBUILD:
https://git.alpinelinux.org/cgit/aports/plain/main/gtk+2.0/APKBUILD
2017-08-19 01:15:28 +00:00
drebrez 795d41e058 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 83b2b34e9d [RX51] Remove unneeded kernel cmdline options (#376)
Remove omapfb options since they are irrelevant now that we use omapdrm.
2017-08-18 21:43:31 +00:00
opendata26 e3cc9481c6 Add wifi and fix touchscreen on castor (#392)
* Add support for wifi and touchscreen on castor
* Various fixes
2017-08-18 21:20:53 +00:00
opendata26 a559c7e33f Add firmware-adreno package (#393)
* Add support for wifi and touchscreen on castor
* Various fixes
* Add firmware-adreno package
* Download firmware files
2017-08-18 21:13:38 +00:00
Oliver Smith 1c13ca4fd9 Fix #363: Omit /home/user when calculating system image size (#389)
* The system image size is now calculated as: root size - home size.
* New function in `pmb/helpers/other.py`: `folder_size()`, with a
  testcase.
* Instead of copying everything to the system image folder, and
  deleting the home folder afterwards, do not copy the home folder
  in the first place.
* Added `pmbootstrap -s` to skip generating the initramfs for faster
  debugging.
* Set the default value in the "are you sure, that your partition has
  at least..." to "y", so we can run `yes '' | pmbootstrap install`
  to make it run through the whole installation process.
* Increase full size to 120%, boot partition gets 15 MB free space now
2017-08-18 19:19:48 +00:00
Attila Szöllősi 2de2bd5bee Update sony-amami deviceinfo (#412) 2017-08-18 18:14:06 +00:00
clayton craft d0f09ca0d0 Resolve #361 by zapping existing chroots after init (#385)
This extends zap() to add a 'no_confirm' option (False by default), and
zap() is now called by init with no_confirm=True to automatically zap
any existing chroots after the user runs init. This helps insure that
what is installed in the chroots is exactly what the user expects after
setting options in init.

Additionally, we create `cache_http` to verify write access to the work
folder instead of `chroot_native`. So we can ask for zapping only if
no chroot folder exists.
2017-08-18 16:25:58 +00:00
PureTryOut 341c809874 telepathy-qt5: Add missing -dev to telepathy-farstream dependency (#408) 2017-08-18 15:57:58 +00:00
clayton craft 3324c268ca 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
Anton Lazarev fa3c21c1c3 Now with 100% more `pmbootstrap log`! (#406) 2017-08-17 23:27:06 +00:00
clayton craft c2eb77da18 [linux-postmarketos] Update to 4.12.8 (#401) 2017-08-17 16:20:22 +00:00
PureTryOut 3b6529dcf0 Added all missing makedepends, and removed some optional dependencies (#398)
* Added all missing makedepends, and removed some optional dependencies
* Made dbus-nox11-libs properly replace dbus-x11
* Add missing breeze-dev subpackage
2017-08-17 16:19:36 +00:00
Yuval Adam 7088c2d2f1 README refactoring (#367) 2017-08-16 20:45:31 +00:00
clayton craft 5144323137 Allow users to copy ssh pubkey to device (#387) 2017-08-16 17:30:38 +00:00
clayton craft 3800cd09f4 Do not modprobe loop if /dev/loop* exists (#391) 2017-08-15 18:10:04 +00:00
Oliver Smith ff9f2d620f Fix #271: properly resolve symlinks in all paths (#329)
I've replaced all instances in the code of `os.path.abspath`
with `os.path.realpath`, as this does the same as `abspath`
plus resolving symlinks.
See also: https://stackoverflow.com/a/40311142
2017-08-15 14:08:48 +00:00
clayton craft 2f8d589ed6 [linux-postmarketos] Update to 4.12.7 (#386) 2017-08-15 11:29:04 +02:00
PureTryOut 592dabd1be Update plasma-framework to 5.37.0 and package dbus-launch without x11 (#380)
Fix #377
2017-08-14 23:23:23 +00:00
drebrez a1370bafe1 Always use generated boot.img for `fastboot boot` command (#370) 2017-08-14 23:03:27 +00:00
Pablo Castellano 401c29af76 Close #326: Implement command to retrieve and set configuration values (#359)
* Implement command to retrieve and set configuration values
* qemu: show advice to use "pmbootstrap config"
* Allow "pmbootstrap config" without positional arguments (prints the full config)
* Check valid variable names
2017-08-14 14:25:28 +00:00
Pablo Castellano ab1bcd2e6f contributing: fixed typos and added some links (#372) 2017-08-14 14:23:35 +00:00
drebrez 3ea15dca1a Rename wrong `deviceinfo_flash_cmdline` to `deviceinfo_kernel_cmdline` (#369) 2017-08-14 14:22:38 +00:00
clayton craft 9e2a8e3af6 [linux-postmarketos] Update to linux-4.12.6 (#371) 2017-08-14 16:16:36 +02:00
clayton craft 49fd9e0e4e [RX51] misc improvements (#287)
* [RX51] enable hwdrivers service to 'fix' acpid

* [RX51] set rtc device for hwclock service

* [RX51] Enable networking service, add /etc/network/interfaces

* [RX51] Update APKBUILD checksums & pkgrel
2017-08-14 14:19:22 +02:00
Oliver Smith 600e4ee7d5 Update CONTRIBUTING.md (#368) 2017-08-12 16:23:48 +00:00
Oliver Smith c904ffc751 Make gcc-aarch64 reproducible (#366)
This fixes https://github.com/postmarketOS/binary-package-repo/issues/1

GCC generates hardlinks between files `A` and `B` in its `make install` step. The problem is, that `tar` randomly packages `A` as full binary, and links `B` to `A`, or the other way around! I was able to reproduce this issue consistently when re-building `gcc-aarch64` on Travis CI (interestingly, this did not appear for `gcc-armhf`).

The fix is, to delete `B` and create a symlink `B` that points to `A` instead.
2017-08-12 14:06:02 +00:00
Oliver Smith f3f21d3152 Fix #342: don't use distutils.version.LooseVersion anymore (#364)
Previously, distutils.version.LooseVersion was used, because it was
sort of close enough to how Alpine parses versions.

This new version uses the exact same algorithm, as `apk` does, and
it passes *all* of `apk`'s testcases for version checking (previously
we simply skipped the ones, that did not pass).

* Remove pmb/helpers/version.py left-over (it is in parse now)
* Make asserts consistent, do not use unnecessary parenthesis
2017-08-12 14:03:40 +00:00
opendata26 aaaceff297 Add Xperia Z2 Tablet WiFi (#339)
* Add Xperia Z2 Tablet WiFi config

* Various fixes for Z2 tablet

* Fix Checksums
2017-08-11 12:41:29 +02:00
Pablo Castellano 8d358837ee Minor fixes (#360)
* aports: Use $install variable inside $source

So these files also get fingerprinted

* qemu: Use shutil.which instead of pmb.helpers.run.user

* Fix typo in comment
2017-08-10 23:58:28 +00:00
Oliver Smith 9652e4ce27
Update busybox-static-* to upstream 2017-08-10 00:52:28 +02:00
PureTryOut 0a9ab230aa Fix usb networking on the Sony Amami (#357) 2017-08-09 21:54:01 +00:00
Yuval Adam b06a55f4a3 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 f829d0fe03 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 49b35ad32d 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
drebrez 96cb52847d Increase minimal system image size by 15% to have some free space (#336) 2017-08-09 19:16:04 +00:00
Oliver Smith 21c09b3b3c Fix various build issues (fix #189, fix #341) (#345)
Changes:
* Removed the apkindex_files cache. That particular cache caused
  bug #189 and didn't bring any real-world performance improvements
  (tested 3x with that cache and 3x without, no significant speed
  difference). I decided to remove it instead of keeping it/adding
  even more code to resolve the bug.
* Fix the check for already built packages: always use the architecture,
  that the package should be built for instead of the architecture of
  the build environment (e.g. use armhf, even when building a noarch
  package in the x86_64 chroot). This partially resolves #341.
* Make pmb.chroot.apk.install_is_necessary() more robust: If the binary
  package is missing, although it should be there, print a warning and
  build it with force.
2017-08-09 17:59:21 +00:00