diff options
author | GiacoLenzo2109 | 2021-02-25 22:00:27 +0100 |
---|---|---|
committer | GiacoLenzo2109 | 2021-02-25 22:00:27 +0100 |
commit | 9d1884e4d94058c5cac34d56bcb942c37c924b3d (patch) | |
tree | b86fac417923b5d9c0a7fa70c868e9c1508fafd9 | |
download | aur-mhwd-db-croco-git.tar.gz |
Upload
-rw-r--r-- | .SRCINFO | 28 | ||||
-rw-r--r-- | PKGBUILD | 66 | ||||
-rw-r--r-- | mhwd-db.install | 88 |
3 files changed, 182 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..6d526758b66d --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,28 @@ +pkgbase = mhwd-db-croco-git + pkgdesc = mhwd-db-croco(manjaro's mhwd-db backported to archlinux with additional features and limited to only dkms drivers) + pkgver = r17.e3f7adf + pkgrel = 1 + url = https://gitlab.com/croco-os/applications/mhwd-db-croco + arch = any + license = GPL + makedepends = git + makedepends = cmake + depends = gcc-libs + depends = hwinfo + source = git+https://gitlab.com/croco-os/applications/mhwd-db-croco.git#branch=master + sha256sums = SKIP + +pkgname = mhwd-db-croco-git + pkgdesc = mhwd-db-croco(manjaro's mhwd-db backported to archlinux with additional features and limited to only dkms drivers) + install = mhwd-db.install + arch = any + depends = mhwd-nvidia + depends = mhwd-ati + depends = mhwd-amdgpu + depends = mhwd-nvidia-390xx + provides = mhwd-db + provides = mhwd-db-croco + conflicts = mhwd-db + conflicts = mhwd-db-croco + replaces = mhwd-db-croco + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..6bf727c7d22a --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,66 @@ +# Maintainer: Librewish <librewish@gmail.com> +# Contributer : Philip Müller <philm[at]manjaro[dog]org> +# Contributer : Roland Singer <roland[at]manjaro[dog]org> + +pkgbase=mhwd-db-croco-git +pkgname=('mhwd-db-croco-git') +pkgver=r17.e3f7adf +pkgrel=1 +pkgdesc="mhwd-db-croco(manjaro's mhwd-db backported to archlinux with additional features and limited to only dkms drivers)" +arch=('any') +_branch='master' +url="https://gitlab.com/croco-os/applications/mhwd-db-croco" +license=('GPL') +depends=('gcc-libs' 'hwinfo') +makedepends=('git' 'cmake') +_git=yes +source=("git+$url.git#branch=${_branch}") +sha256sums=('SKIP') +pkgver() { + cd "$srcdir/mhwd-db-croco" + +# Git, no tags available + printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)" + +} + +build() { + cd ${srcdir}/mhwd-db-croco + + if [ -e ${srcdir}/../mhwd-${pkgver}-${pkgrel}.patch ]; then + patch -Np1 -i ${srcdir}/../mhwd-${pkgver}-${pkgrel}.patch + fi +} + +package_mhwd-db-croco-git() { + pkgdesc="mhwd-db-croco(manjaro's mhwd-db backported to archlinux with additional features and limited to only dkms drivers)" + arch=('any') + depends=('mhwd-nvidia' 'mhwd-ati' 'mhwd-amdgpu' 'mhwd-nvidia-390xx') + depends_x86_64=('mhwd-nvidia' 'mhwd-ati' 'mhwd-amdgpu' 'mhwd-nvidia-390xx') + replaces=("mhwd-db-croco") + provides=("mhwd-db" "mhwd-db-croco") + conflicts=("mhwd-db" "mhwd-db-croco") + install=mhwd-db.install + + cd ${srcdir}/mhwd-db-croco/ + + if [ -e ${srcdir}/../mhwd-db-${pkgver}-${pkgrel}.patch ]; then + patch -Np1 -i ${srcdir}/../mhwd-db-${pkgver}-${pkgrel}.patch + fi + + mkdir -p ${pkgdir}/var/lib/mhwd/db + mkdir -p ${pkgdir}/etc/X11/mhwd.d + + cp -r pci ${pkgdir}/var/lib/mhwd/db/ + # cp -r usb ${pkgdir}/var/lib/mhwd/db/ + + # remove nvidia on i686 + if [ "${CARCH}" = "i686" ]; then + rm -r ${pkgdir}/var/lib/mhwd/db/pci/graphic_drivers/nvidia-418xx/ + rm -r ${pkgdir}/var/lib/mhwd/db/pci/graphic_drivers/nvidia-430xx/ + rm -r ${pkgdir}/var/lib/mhwd/db/pci/graphic_drivers/nvidia-435xx/ + rm -r ${pkgdir}/var/lib/mhwd/db/pci/graphic_drivers/nvidia-440xx/ + rm -r ${pkgdir}/var/lib/mhwd/db/pci/graphic_drivers/hybrid-intel-nvidia-418xx-bumblebee/ + rm -r ${pkgdir}/var/lib/mhwd/db/pci/graphic_drivers/hybrid-intel-nvidia-430xx-bumblebee/ + fi +} diff --git a/mhwd-db.install b/mhwd-db.install new file mode 100644 index 000000000000..e2741127fdcd --- /dev/null +++ b/mhwd-db.install @@ -0,0 +1,88 @@ +#!/bin/sh +# arg 1: the new package version +# arg 2: the old package version + +local_config_dir="/var/lib/mhwd/local/pci" +db_config_dir="/var/lib/mhwd/db/pci" + +err() { + ALL_OFF="\e[1;0m" + BOLD="\e[1;1m" + RED="${BOLD}\e[1;31m" + local mesg=$1; shift + printf "${RED}==>${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2 +} + +msg() { + ALL_OFF="\e[1;0m" + BOLD="\e[1;1m" + GREEN="${BOLD}\e[1;32m" + local mesg=$1; shift + printf "${GREEN}==>${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2 +} + +# $1: old config name +# $2: new config name +# $3: new config path +rename_config() { + if [ -e "${local_config_dir}/${1}/MHWDCONFIG" ] ; then + msg "Renaming config: '${local_config_dir}/${1}'" + mkdir -p ${local_config_dir}/${2} + cp -f ${db_config_dir}/graphic_drivers/${3}/MHWDCONFIG ${local_config_dir}/${2}/MHWDCONFIG + rm -Rf ${local_config_dir}/${1} + fi +} + +update_configs() { + local_configs=$(ls ${local_config_dir}) + db_configs="$(ls ${db_config_dir}/graphic_drivers) $(ls ${db_config_dir}/network_drivers)" + + # Rename old configs + rename_config "video-hybrid-amd-nvidia-dkms-prime-render-offloading" "video-nvidia-prime-render-offload" "nvidia-prime-render-offload" + rename_config "video-hybrid-intel-nvidia-dkms-prime-render-offloading" "video-nvidia-prime-render-offload" "nvidia-prime-render-offload" + rename_config "video-hybrid-amd-chaotic-nvidia-dev-dkms-tkg-prime-render-offloading" "video-chaotic-nvidia-dev-tkg-prime-render-offload" "chaotic-nvidia-dev-tkg-prime-render-offload" + rename_config "video-hybrid-intel-chaotic-nvidia-dev-dkms-tkg-prime-render-offloading" "video-chaotic-nvidia-dev-tkg-prime-render-offload" "chaotic-nvidia-dev-tkg-prime-render-offload" + rename_config "video-hybrid-amd-chaotic-nvidia-dkms-tkg-prime-render-offloading" "video-chaotic-nvidia-tkg-prime-render-offload" "chaotic-nvidia-tkg-prime-render-offload" + rename_config "video-hybrid-intel-chaotic-nvidia-dkms-tkg-prime-render-offloading" "video-chaotic-nvidia-tkg-prime-render-offload" "chaotic-nvidia-tkg-prime-render-offload" + + # check for newer configs + for db_config in ${db_configs} ; do + if [ -e "${db_config_dir}/graphic_drivers/${db_config}/MHWDCONFIG" ] ; then + . "${db_config_dir}/graphic_drivers/${db_config}/MHWDCONFIG" + elif [ -e "${db_config_dir}/network_drivers/${db_config}/MHWDCONFIG" ] ; then + . "${db_config_dir}/network_drivers/${db_config}/MHWDCONFIG" + else + continue + fi + db_config_ver=${VERSION} + if [ -e "${local_config_dir}/${NAME}/MHWDCONFIG" ] ; then + . "${local_config_dir}/${NAME}/MHWDCONFIG" + local_config_ver=${VERSION} + if [ "$(echo ${local_config_ver} | sed -e 's/\.//g')" -lt "$(echo ${db_config_ver} | sed -e 's/\.//g')" ]; then + msg "Updating Config: '${local_config_dir}/${NAME}'" + if [ -e "${db_config_dir}/graphic_drivers/${db_config}/MHWDCONFIG" ] ; then + cp -f ${db_config_dir}/graphic_drivers/${db_config}/MHWDCONFIG ${local_config_dir}/${NAME} + else + cp -f ${db_config_dir}/network_drivers/${db_config}/MHWDCONFIG ${local_config_dir}/${NAME} + fi + fi + fi + done + # Update outdated configs + if [ -e "${local_config_dir}/video-nvidia/MHWDCONFIG" ] ; then + msg "Updating Config: '${local_config_dir}/video-nvidia-430xx'" + mkdir -p ${local_config_dir}/video-nvidia-430xx + cp -f ${db_config_dir}/graphic_drivers/nvidia-430xx/MHWDCONFIG ${local_config_dir}/video-nvidia-430xx/MHWDCONFIG + rm -Rf ${local_config_dir}/video-nvidia + fi + if [ -e "${local_config_dir}/video-hybrid-intel-nvidia-bumblebee/MHWDCONFIG" ] ; then + msg "Updating Config: '${local_config_dir}/video-hybrid-intel-nvidia-430xx-bumblebee'" + mkdir -p ${local_config_dir}/video-hybrid-intel-nvidia-430xx-bumblebee + cp -f ${db_config_dir}/graphic_drivers/hybrid-intel-nvidia-430xx-bumblebee/MHWDCONFIG ${local_config_dir}/video-hybrid-intel-nvidia-430xx-bumblebee/MHWDCONFIG + rm -Rf ${local_config_dir}/video-hybrid-intel-nvidia-bumblebee + fi +} + +post_upgrade() { + update_configs +} |