pmaports/device/community/device-nokia-n900/APKBUILD
Sicelo A. Mhlongo 789343b8c7
device-nokia-n900: enable use of rtc time at boot (MR 3586)
Since N900 rtc works fine, remove swclock from boot as it causes time to be set
wrong. Additionally, rtc device is set correctly in kernel, so remove old,
adjusted hwclock config.

Partially reverts pmaports 0e502a5139
[ci:skip-build]: already built successfully in CI
2022-10-28 08:37:16 +02:00

197 lines
9.6 KiB
Text

# Reference: <https://postmarketos.org/devicepkg>
# Maintainer: Sicelo <absicsz@gmail.com>
# Co-Maintainer: Danct12 <danct12@disroot.org>
pkgname=device-nokia-n900
pkgver=8.3
pkgrel=1
pkgdesc="Nokia N900"
url="https://postmarketos.org"
arch="armv7"
license="MIT"
depends="postmarketos-base linux-nokia-n900 u-boot-tools kbd kbd-bkeymaps ofono alsa-utils"
makedepends="devicepkg-dev u-boot-tools kbd kbd-bkeymaps"
install="$pkgname.pre-upgrade $pkgname.post-install"
subpackages="
$pkgname-x11
$pkgname-xkeyboard-config:xkeyboard_config
$pkgname-i3wm
$pkgname-nonfree-firmware:nonfree_firmware
"
source="
10-initfs-keymap.files
10-initfs-keymap.sh
10-noroot-suspend
acpi.map
acpi_handler.sh
asound.state.headset
asound.state.speakers
backlight-enable.sh
device-nokia-n900.start
deviceinfo
i3wm/conky.conf
i3wm/i3blocks.conf
i3wm/i3wm.conf
i3wm/protip_shell.sh
i3wm/scripts/battery-bq27200
i3wm/scripts/calendar
i3wm/scripts/ofono
i3wm/scripts/wifi
keymaps/40-xkb.conf
keymaps/rx51_ch.map
keymaps/rx51_fise.map
keymaps/rx51_it.map
keymaps/rx51_us.map
n900-wlan-data.initd
pointercal
uboot-script.cmd
udev/10-nokia-modem.rules
udev/90-touchscreen-dev.rules
x11-keymap
xorg.conf
"
options="!check !archcheck"
build() {
devicepkg_build $startdir $pkgname
mkimage -A arm -O linux -T script -C none -a 0 -e 0 -n postmarketos -d "$srcdir"/uboot-script.cmd "$srcdir"/boot.scr
mkdir "$srcdir"/keymaps
loadkeys -b "$srcdir"/rx51_us.map > "$srcdir"/keymaps/rx51_us.bmap
gzip "$srcdir"/keymaps/rx51_us.bmap
loadkeys -b "$srcdir"/rx51_ch.map > "$srcdir"/keymaps/rx51_ch.bmap
gzip "$srcdir"/keymaps/rx51_ch.bmap
loadkeys -b "$srcdir"/rx51_it.map > "$srcdir"/keymaps/rx51_it.bmap
gzip "$srcdir"/keymaps/rx51_it.bmap
# Finnish and Swedish use the same mapping
loadkeys -b "$srcdir"/rx51_fise.map > "$srcdir"/keymaps/rx51_fi.bmap
gzip "$srcdir"/keymaps/rx51_fi.bmap
loadkeys -b "$srcdir"/rx51_fise.map > "$srcdir"/keymaps/rx51_se.bmap
gzip "$srcdir"/keymaps/rx51_se.bmap
return 0
}
package() {
devicepkg_package $startdir $pkgname
install -D -m644 "$srcdir"/boot.scr \
"$pkgdir"/boot/boot.scr
install -D -m644 "$srcdir"/backlight-enable.sh \
"$pkgdir"/etc/postmarketos-mkinitfs/hooks/00-$pkgname-backlight.sh
install -D -m644 "$srcdir"/pointercal \
"$pkgdir"/etc/pointercal
install -D -m644 "$srcdir"/asound.state.speakers \
"$pkgdir"/var/lib/alsa/asound.state.speakers
install -D -m644 "$srcdir"/asound.state.headset \
"$pkgdir"/var/lib/alsa/asound.state.headset
install -Dm644 "$srcdir"/10-initfs-keymap.files \
"$pkgdir"/etc/postmarketos-mkinitfs/files/10-initfs-keymap.files
install -Dm644 "$srcdir"/10-initfs-keymap.sh \
"$pkgdir"/etc/postmarketos-mkinitfs/hooks/10-initfs-keymap.sh
install -Dm755 "$srcdir"/$pkgname.start \
"$pkgdir"/etc/local.d/$pkgname.start
# Udev rules
install -D -m644 "$srcdir"/90-touchscreen-dev.rules \
"$pkgdir"/etc/udev/rules.d/90-touchscreen-dev.rules
install -D -m644 "$srcdir"/10-nokia-modem.rules \
"$pkgdir"/etc/udev/rules.d/10-nokia-modem.rules
# ACPI
mkdir "$pkgdir"/etc/acpi
install -D -m755 "$srcdir"/acpi_handler.sh \
"$pkgdir"/etc/acpi/handler.sh
install -D -m644 "$srcdir"/acpi.map \
"$pkgdir"/etc/acpi.map
# Keymap
install -D -m644 "$srcdir"/keymaps/rx51_us.bmap.gz \
"$pkgdir"/usr/share/bkeymaps/us/rx51_us.bmap.gz
install -D -m644 "$srcdir"/keymaps/rx51_ch.bmap.gz \
"$pkgdir"/usr/share/bkeymaps/ch/rx51_ch.bmap.gz
install -D -m644 "$srcdir"/keymaps/rx51_it.bmap.gz \
"$pkgdir"/usr/share/bkeymaps/it/rx51_it.bmap.gz
install -D -m644 "$srcdir"/keymaps/rx51_fi.bmap.gz \
"$pkgdir"/usr/share/bkeymaps/fi/rx51_fi.bmap.gz
install -D -m644 "$srcdir"/keymaps/rx51_se.bmap.gz \
"$pkgdir"/usr/share/bkeymaps/se/rx51_se.bmap.gz
postmarketos-mvcfg-package "$pkgdir" "$pkgname"
}
x11() {
install_if="$pkgname xorg-server"
install -D -m644 "$srcdir"/40-xkb.conf \
"$subpkgdir"/etc/X11/xorg.conf.d/40-xkb.conf
install -D -m644 "$srcdir"/xorg.conf \
"$subpkgdir"/etc/X11/xorg.conf.d/11-n900.conf
}
xkeyboard_config() {
install_if="$pkgname=$pkgver-r$pkgrel xkeyboard-config"
replaces="xkeyboard-config"
install -D -m644 "$srcdir"/x11-keymap \
"$subpkgdir"/usr/share/X11/xkb/symbols/nokia_vndr/rx-51
}
i3wm() {
install_if="$pkgname postmarketos-ui-i3wm"
depends="unclutter-xfixes conky feh postmarketos-artwork-wallpapers pm-utils i3blocks"
install -D -m644 "$srcdir"/i3wm.conf \
"$subpkgdir"/etc/skel/.config/i3/config
install -D -m644 "$srcdir"/i3blocks.conf \
"$subpkgdir"/etc/skel/.config/i3blocks/config
install -D -m755 "$srcdir"/battery-bq27200 \
"$subpkgdir"/etc/skel/.config/i3blocks/battery-bq27200
install -D -m755 "$srcdir"/ofono \
"$subpkgdir"/etc/skel/.config/i3blocks/ofono
install -D -m755 "$srcdir"/calendar \
"$subpkgdir"/etc/skel/.config/i3blocks/calendar
install -D -m755 "$srcdir"/wifi \
"$subpkgdir"/etc/skel/.config/i3blocks/wifi
install -D -m755 "$srcdir"/protip_shell.sh \
"$subpkgdir"/etc/skel/.protip_shell.sh
install -D -m644 "$srcdir"/conky.conf \
"$subpkgdir"/etc/skel/.config/conky/conky.conf
install -D -m440 "$srcdir"/10-noroot-suspend \
"$subpkgdir"/etc/sudoers.d/10-noroot-suspend
}
nonfree_firmware() {
pkgdesc="Wifi firmware"
depends="linux-firmware-ti-connectivity wl1251-cal"
install="$subpkgname.post-install"
triggers="$subpkgname.trigger=/lib/firmware/ti-connectivity"
install -Dm755 "$srcdir/n900-wlan-data.initd" "$subpkgdir/etc/init.d/n900-wlan-data"
}
sha512sums="
6b475c12eca8563be48c562a1cb4ad8ca6a05d70fc54b21288b2dd7435a80a6f53351aa870db96d5bbecf1b1c5cb00dfe35f5066e6d3fd0ad0369e66aeef5a21 10-initfs-keymap.files
4656d3b3ced0a86e2d6315c89322899f646a689e9cb64609aa8ad5a676b23d93706d8a37f3be6f6b12c6b1e8501b7d26ecafecf27322333850513a6805c61910 10-initfs-keymap.sh
38ecdf876b5aa9df2e5ea61c7ebb6f9ca871bdf433029808d028d563dfd740232b3dc21dba098a7622453212af1272e2e782be861b4a96a49fd475a618442d45 10-noroot-suspend
b3612348af1465c6dc21ce30153fc7e2cce3ae7f9bf9ff34d5a560e173e174275c1701dd7c45337fa56caaadb252b9494bddf997a698d665d3a8c01cde6955c7 acpi.map
ac2f8a50280f7d5f8c5ce3ab50d00f1a4c8c1415890347542c684b6e24874a23d57a8f48c62451c46466996decc58276d737bdb892f8b284881d3760948b09bb acpi_handler.sh
5b87071834313a389f83d29f86f6e3ea108d0921f17dc918be7a46de7e74c73a4418044ef600a0fbf72c8fad22b7730dcd5bfe3d6d01d76bf01556f8540f0b32 asound.state.headset
67acc17a33bc75113300393b4a5bba15319014032407e774d079abf310368e75f4f697dbb4856ba2d2d8ea184b056bb33561f42918de3ee91ab6a77df89a133c asound.state.speakers
3d55e34b95791636e44a5f41754f3d0de039dbba41f7a556d43a95c9e64afcfa930046b4b96b40020b6f196096ffba93514682927e32fa4488686fdd19c6da5a backlight-enable.sh
e6bbac8de1a198ba716f44ade76606e1e0adcc574156b855ac41be5eb5308389d3277fd89cc34b119fbc33d9801ab9f79a6ff213392596bff40bc17e931c05ef device-nokia-n900.start
a4e9196f8ca31fea6f74af078c1e1df1e7be89b63b5d0d292d7f198cfae5f30247dd002536f0f9251ed96518a54aa2b4783870046283e6cd30093115f60cce8e deviceinfo
16c31bf28b9dcc256821b153de199bd27decc76e4bde63130c1d1556a63cf2cafb64c4d4df42e00690564fce801c5216e8e97e4262a546440fd4bc2e14eaae1c conky.conf
826a3790b49324c1e61c75b6c0ffc043a2a1d7c13a8c554fb5eae4977af47a1ca93d70ef8c783d712b953b70e18ae58fa4c6a49bf97263398a01a0c4f91ebc8f i3blocks.conf
7e8a92b828a3cb823b8df0c67ff3cb72d220f2fdc4557a613ad051baaf7e6e3d0865cdfb5eadff7f4b04302ac650bc485863e26f4d54485d5a1c2389ac0793e3 i3wm.conf
0b80af9fd1f36e6bc06bdfdf48352897234ac7457210649016665da8570a5a64b8a0841b4fbeb64fd7054a5246a64718cf4412f8a53024ce39b28a80984972d8 protip_shell.sh
2ae4771eda9b151de3b47dc4e3081eb86b92fc04c4be4b4fbb98c28016762d24008e935bbba8f95ea0732019f615ee43f5d93dacb21bdc3471e505a07a684e26 battery-bq27200
d9ef88c714e9fce8822f63b7a9d7fc3e1ed472c8c876b44ba524d44efea322839f13ddd2fa652420608427ecf7279bfaac302c9b67667f32796ca21da332164d calendar
82038d38f94cb975a8d38914afca49b64957446bef7490ab684efa1df47ede2ea1c769045789bb9fded673345eea01911fbbf85fdb54c28685cad8022bfaafac ofono
9791ea5f3f0d1ad4f74e2bc18af2ceccb4b8df6262f1566c67f1fd292928bfc75504d0deed32d24495a0d58ca52a52a97ae5ecd2efc34688631af04b131867ad wifi
181187db6d88b872233f594759373f32fd08065ee340b60f0c3ff06396d99f4b1250192d70a054fcc9e51e067f6cc063c62b7d8dfff3427b292f1d0c766db206 40-xkb.conf
dc585e11bf4e06e36c5c62bcc024eaacecc30437d9da5257df14be05e247a2f2bc208874be3058edc6f87cc2877da2ecafd2f627d9b465d4fd24475fc21fdc71 rx51_ch.map
0a3e58a3a81c463937caf508a76461b4cc43f593f0817a52b6581fdd132cc894c0960fe7b950b6e6bfac1fad15cd9dd230c103fcf08a30b44ef7d8fbe31cea28 rx51_fise.map
082a5166e38296b097e873b0b4aeaf007e594d3bf4470c74e91ee3efedcf28ad25cd55c23dd63e460339898ae08e77e111b0e1092fa5e661db90bb40732103a1 rx51_it.map
e440ed7a3070c17e003b86b72dbe6d8194d01b577ca8dd56dd066f216b6dda32bb965c780950f1789a66f7c948290016b048da9f1cf63aba9e11d7e7fd6873ba rx51_us.map
b50e7f37ffb1fa0bb782b117a4e8bcfdb722b6127c3e5d643e90cd901a1f4e65e77a0773ed418673c8195595347482be0c8096f5a723e840315ad61ccd043b66 n900-wlan-data.initd
143c21f0b18a016d37cb44178e9daea09f128a90769b48353c03c3f245cb9b1f7e773b9ccee084973fc78ddd7a18c2642e54888a85bda7c7daecddc9a8c62eff pointercal
3ae550b50f963695be30eb0e03c31fe7a92aad73174873efe5b73d446b74da5763b6fe9495b91bbdbe307723f6510ebc6639437904815e9251a094ce9bec5b11 uboot-script.cmd
9e72035c88632d12895534e5aa5746f2c130c7dcdafa8702748d62b71ed0e1b5911b6e1f07f9b9e39b6072bbb662f66aead585baa1dcacb7d8c8953ca89b6762 10-nokia-modem.rules
c6012aef28b096141b924fced226ec99fb93eb53b69c064a8887d8fecdf8dc08a3ba3db399e18d88374c6ef4c59013a30699c7e4d76e5cb771040582573a0527 90-touchscreen-dev.rules
654f2e1b8b7b64fc8c82a5f3c2b76b9d88f56d8dda520c1ce162648d65031bf62702e3bd43e135ab040b927c403f9970d6efae53f957bf1e55954125b358b313 x11-keymap
a91f98daa60efa2beb2ff6b405097f92edca5f1bbb9e7675499139be52ca2570712f8f06f9032ef29f636f99c8f8da8b992f746eab6424aac04260c16158bcc2 xorg.conf
"