summaryrefslogtreecommitdiff
path: root/libre-testing/chromebook-kernel/PKGBUILD
blob: c566e5f7de32a6ec1bb90b50557df59d0da6bc97 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
# Maintainer: David P. <megver83@parabola.nu>

# This is just for testing, I may merge this
# into the main linux-libre PKGBUILD, or
# create a new linux-libre-chromebook pkg

pkgname=chromebook-kernel
pkgdesc='Kernel sign for linux-libre - Chromebooks'
pkgver=20181209
pkgrel=1
arch=(armv7h)
url="https://notabug.org/nuclearkev/dragora-c201/"
license=(GPL3)
source=('kernel.its' 'kernel.keyblock' 'kernel_data_key.vbprivk')
depends=('linux-libre')
makedepends=(uboot-tools vboot-utils dtc)
conflicts=(linux-libre-chromebook)
install=linux-chromebook.install
sha512sums=('fc47e98eabef01cd7bea61a2d590b0a83977d9c70c62564e4c56db7d1ecdbae9486b6f9f30a6bcc5baad0855c6841825050d392f76037b202983f3faf8874df8'
            'bb6718984a7357c9b00c37e4788480e5b8b75018c172ecc1441bc3fc5d2d42444eb5d8c7f9d2e3a7d6fed6d03acb565e3c0559486e494c40a7fe6bd0570c9ede'
            '143dea30c6da00e504c99984a98a0eb2411f558fcdd9dfa7f607d6c14e9e7dffff9cb00121d9317044b07e3e210808286598c785ee854084b993ec9cb14d8232')

pkgver() {
    date +%Y%m%d
}

package() {
  cd $srcdir

  msg2 "Setting options for device tree compiler..."
  #cp ../kernel.its .
  mkimage -D "-I dts -O dtb -p 2048" -f kernel.its vmlinux.uimg
  dd if=/dev/zero of=bootloader.bin bs=512 count=1
  echo 'console=tty0 init=/sbin/init root=PARTUUID=%U/PARTNROFF=1 rootwait rw noinitrd' > cmdline

  msg2 "Signing kernel image..."
  vbutil_kernel \
    --pack vmlinux.kpart \
    --version 1 \
    --vmlinuz vmlinux.uimg \
    --arch arm \
    --keyblock kernel.keyblock \
    --signprivate kernel_data_key.vbprivk \
    --config cmdline \
    --bootloader bootloader.bin

  msg2 "Installing kernel sign..."
  mkdir -p "$pkgdir/boot"
  cp vmlinux.kpart "$pkgdir/boot"
}