-
-
Save ukn/a2f85e3420ae7d0f64db2274a9bc106b to your computer and use it in GitHub Desktop.
#!/bin/bash | |
set -e | |
export CONFIG_MODULE_SIG=n | |
export CONFIG_MODULE_SIG_ALL=n | |
# For current kernel | |
export KERNELRELEASE=$(cat /proc/version | awk '{print $3}') | |
temp_dir=$(mktemp -d) | |
echo "Installing FacetimeHD camera for $KERNELRELEASE" | |
cd $temp_dir | |
git clone https://github.com/patjak/facetimehd-firmware.git | |
git clone https://github.com/patjak/bcwc_pcie.git | |
cd $temp_dir/facetimehd-firmware | |
pwd | |
make | |
make install | |
cd $temp_dir/bcwc_pcie | |
pwd | |
make | |
make install | |
rm -rf $temp_dir | |
if [ ! -d "/etc/modules-load.d" ]; then | |
mkdir -p "/etc/modules-load.d" | |
fi | |
cat > "/etc/modules-load.d/facetimehd.conf" << EOL | |
videobuf2-core | |
videobuf2_v4l2 | |
videobuf2-dma-sg | |
facetimehd | |
EOL | |
# Workaround for depmod being skipped above with error: | |
# Warning: modules_install: missing 'System.map' file. Skipping depmod | |
echo "Generate modules.dep and map files" | |
sudo depmod | |
echo "Adding kernel modules" | |
sudo modprobe -r bdc_pci | |
sudo modprobe facetimehd | |
echo "Install complete" |
It works perfectly on my MacBook Pro Retina 13″, Mid 2014, MX Linux 21.2
I updated the script to install kernel modules as root user and also added the color calibration files. You might want to check it out here:
on entering the bcwc-pcie directory the make command:
make -C /lib/modules/5.10.161-1-MANJARO/build M=/home/partha/Downloads/bcwc_pcie modules
returns the error:
make[1]: *** /lib/modules/5.10.161-1-MANJARO/build: No such file or directory. Stop. make: *** [Makefile:12: all] Error 2
Please help...
further, when the directory /lib/modules/5.10.161-1-MANJARO/build
was created and make
run from bcwc_pcie directory there is a further error message:
make -C /lib/modules/5.10.161-1-MANJARO/build M=/home/partha/Downloads/bcwc_pcie modules
make[1]: Entering directory '/usr/lib/modules/5.10.161-1-MANJARO/build'
make[1]: *** No rule to make target 'modules'. Stop.
make[1]: Leaving directory '/usr/lib/modules/5.10.161-1-MANJARO/build'
make: *** [Makefile:12: all] Error 2
So there is some problem here with the files in the directory; please help....
No rule to make target 'modules'.
I don't use this setup any more but have you tried searching the web for this error?
Check if you have kernel headers installed that match the current kernel version.
I have sort of gathered all I could find on this topic and the gist itself into another repo with some more info. I hope this can be useful to someone struggling with this.
I had a particular rough time making this work on Debian 12, and then this script helped.
Hope this helps!
P.S. sometimes Cheese is picky with the drivers - test on google meet to see if the fix the worked, then tackle Cheese separately.
This has saved my life.