particle-os-modules/modules/akmods/akmods.sh
fiftydinar e8272a4dd1
feat: Add akmods module (#89)
* feat: Add kmods installer module

Credits: @C0dePlayer

This is not ideal as it does not support custom kernels & it involves editing Containerfile.

I believe there is no other way but to make users edit Containerfile for those files to be even pulled of.

I would like this to be through the recipe only, so I will put this as a draft until some better ideas come.

* Rename kmods installer to akmods

* Update README

Address: 

https://github.com/ublue-os/startingpoint/pull/212#issuecomment-1870156327

https://github.com/ublue-os/bling/pull/89#discussion_r1436890002

* Fix README typo

* Remove non-needed space for yml in README

* Add support for Surface & Asus images

* Clarify tagged base image warning better

* Clarify tagged base image warning better pt.2

* There is no need to fetch main-nvidia build for now

* Use simpler =~ for conditioning instead of grep & sed

This finally fixes akmods module

* Install kernel-devel-matched for all builds

* Assure that Surface installs their version of kernel-devel-matched

* Mention that framework images can be used as a base

* Delete duplicate warning message

* Remove non-needed explanation on why only Universal Blue builds are supported

* Clarify 1st warning better

* Clarify `main` akmods compatibility better

This would avoid editing README if some other compatible image gets announced or discontinued.

* docs(akmods): grammar fixes

* docs: add link to akmod tag matrix

---------

Co-authored-by: xyny <60004820+xynydev@users.noreply.github.com>
2024-01-14 16:45:20 +00:00

20 lines
580 B
Bash

#!/usr/bin/env bash
set -oue pipefail
BASED_IMAGE=$(echo "${BASE_IMAGE}")
get_yaml_array INSTALL '.install[]' "$1"
INSTALL_PATH=("${INSTALL[@]/#/\/tmp/rpms/kmods/*}")
INSTALL_PATH=("${INSTALL_PATH[@]/%/*.rpm}")
INSTALL_STR=$(echo "${INSTALL_PATH[*]}" | tr -d '\n')
if [[ ${#INSTALL[@]} -gt 0 ]]; then
echo "Installing akmods"
echo "Installing: $(echo "${INSTALL[*]}" | tr -d '\n')"
if [[ "$BASED_IMAGE" =~ "surface" ]]; then
rpm-ostree install kernel-surface-devel-matched $INSTALL_STR
else
rpm-ostree install kernel-devel-matched $INSTALL_STR
fi
fi