# Maintainer: Clayton Craft <clayton@craftyguy.net>
pkgname=device-generic-x86_64
pkgdesc="Generic x86_64 system, with EFI"
pkgver=11
pkgrel=0
url="https://postmarketos.org"
license="MIT"
arch="x86_64"
options="!check !archcheck"
depends="
	alsa-ucm-conf
	postmarketos-base
	systemd-boot
"
makedepends="devicepkg-dev"
source="
	deviceinfo
	modules-initfs
"
install="$pkgname.post-install $pkgname.post-upgrade"
subpackages="
	$pkgname-kernel-edge:kernel_edge
	$pkgname-kernel-lts:kernel_lts
	$pkgname-mesa
	$pkgname-nonfree-firmware:nonfree_firmware
	$pkgname-nonfree-firmware-amd:nonfree_firmware_amd
	$pkgname-nonfree-firmware-intel:nonfree_firmware_intel
"
_pmb_recommends="
	oem-intel
	oem-amd
"
provides="device-tablet-x64uefi=$pkgver-r$pkgrel device-tablet-x86uefi=$pkgver-r$pkgrel"
replaces="device-tablet-x64uefi device-tablet-x86uefi"

build() {
	devicepkg_build $startdir $pkgname
}

package() {
	devicepkg_package $startdir $pkgname
}

mesa() {
	install_if="$pkgname=$pkgver-r$pkgrel mesa-gl"
	provides="device-tablet-x64uefi-mesa=$pkgver-r$pkgrel device-tablet-x86uefi-mesa=$pkgver-r$pkgrel"
	replaces="device-tablet-x64uefi-mesa device-tablet-x86uefi-mesa"
	depends="mesa-dri-gallium"
	mkdir "$subpkgdir"
}

kernel_edge() {
	pkgdesc="Alpine Edge kernel"
	provides="device-tablet-x64uefi-kernel-edge=$pkgver-r$pkgrel device-tablet-x86uefi-kernel-edge=$pkgver-r$pkgrel"
	replaces="device-tablet-x64uefi-kernel-edge device-tablet-x86uefi-kernel-edge"
	depends="linux-edge"
	devicepkg_subpackage_kernel $startdir $pkgname $subpkgname
}

kernel_lts() {
	pkgdesc="Alpine LTS kernel"
	provides="device-tablet-x64uefi-kernel-lts=$pkgver-r$pkgrel device-tablet-x86uefi-kernel-lts=$pkgver-r$pkgrel"
	replaces="device-tablet-x64uefi-kernel-lts device-tablet-x86uefi-kernel-lts"
	depends="linux-lts"
	devicepkg_subpackage_kernel $startdir $pkgname $subpkgname
}

nonfree_firmware() {
	pkgdesc="Firmware for x86_64 devices"

	mkdir -p "$subpkgdir"
}

nonfree_firmware_amd() {
	install_if="$pkgname-nonfree-firmware=$pkgver-r$pkgrel oem-amd"
	depends="oem-amd-nonfree-firmware"

	mkdir -p "$subpkgdir"
}

nonfree_firmware_intel() {
	install_if="$pkgname-nonfree-firmware=$pkgver-r$pkgrel oem-intel"
	depends="oem-intel-nonfree-firmware"

	mkdir -p "$subpkgdir"
}

sha512sums="
33f0450413c7b364390fdc715578b41389bced5ff69f04a2128155f5ad828ed0e1cc17a20b610eccf4bd99560e21be91e362faaa72e9decad4623f8669e8ab7a  deviceinfo
7e968698e54583023cc73a9dec0c15ef91d6eb24ad31f0ce531a6eada0ff2dceb22c9edc443bf7cef362a9a5b23ea95d698c217e1f780495029f4a5451ed2882  modules-initfs
"
