this post was submitted on 15 Nov 2025
280 points (98.6% liked)

Linux

59569 readers
764 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 6 years ago
MODERATORS
 

My parents have this old 2015 MacBook Air that they wanted to use but couldn’t due to no security updates and slow running. I convinced them to let me load up fedora on it instead of junking it. They only really need it for some basic document writing, email, and web surfing so I figured this is perfect for them.

Made a bootable drive with Fedora 43 work station on it, figured gnome would be the most Apple like spin. Everything went super smooth until I realized that the WiFi drivers weren’t installed lol. I also didn’t have a Ethernet adapter for usb-a so I had to overnight it to me while my parents swore I bricked their Mac all night. Got the adapter this AM, hooked it up, installed the drivers and other necessary tweaks, and viola! This Mac has new life.

So far my parents are liking it and understanding it (even though my mom seems more excited about the snoopy wallpaper and Firefox theme, lol). Getting their emails on thunderbird was driving me crazy. Nothing to do with thunderbird, they just didn’t know their passwords smh. All in all not bad. To new Linux converts

you are viewing a single comment's thread
view the rest of the comments
[–] Kelp@lemmy.world 1 points 5 hours ago (1 children)

Oh that would be great if you could. I’d appreciate it!

[–] anon5621@lemmy.ml 9 points 4 hours ago

First one

#!/usr/bin/env bash
set -euo pipefail


URL="https://updates.cdn-apple.com/2019/cert/041-88431-20191011-e7ee7d98-2878-4cd9-bc0a-d98b3a1e24b1/OSXUpd10.11.5.dmg"
RANGE=204909802-207733123
OSX_DRV="AppleCameraInterface"
OSX_DRV_DIR="System/Library/Extensions/AppleCameraInterface.kext/Contents/MacOS"
FILE="$OSX_DRV_DIR/$OSX_DRV"

DRV_HASH="f56e68a880b65767335071531a1c75f3cfd4958adc6d871adf8dbf3b788e8ee1"
FW_HASH="e3e6034a67dfdaa27672dd547698bbc5b33f47f1fc7f5572a2fb68ea09d32d3d"

OFFSET=81920
SIZE=603715


WORKDIR=$(mktemp -d)
cd "$WORKDIR"

echo "Downloading macOS driver..."
curl -k -L -r "$RANGE" "$URL" | xzcat -qq -Q | cpio --format odc -i -d "./$FILE" &> /dev/null || true

mv "$FILE" .

echo "Extracting firmware..."
dd bs=1 skip=$OFFSET count=$SIZE if=./$OSX_DRV of=./firmware.bin.gz &> /dev/null
gunzip ./firmware.bin.gz


echo "$DRV_HASH  $OSX_DRV" > firmware.sha256
echo "$FW_HASH  firmware.bin" >> firmware.sha256

sha256sum -c firmware.sha256


TARGET_DIR="/lib/firmware/facetimehd"
echo "Installing firmware to $TARGET_DIR (requires sudo)..."
sudo mkdir -p "$TARGET_DIR"
sudo cp firmware.bin "$TARGET_DIR/"

echo "Done. Firmware installed."

and second

#!/bin/bash

set -e

BOOTCAMP_ZIP_URL="https://download.info.apple.com/Mac_OS_X/031-30890-20150812-ea191174-4130-11e5-a125-930911ba098f/bootcamp5.1.5769.zip"
TMPDIR=$(mktemp -d)
FIRMWARE_DIR="/lib/firmware/facetimehd"
DAT_FILES=(
    "9112_01XX.dat:1663920:33060:479ae9b2b7ab018d63843d777a3886d1"
    "1771_01XX.dat:1644880:19040:a1831db76ebd83e45a016f8c94039406"
    "1871_01XX.dat:1606800:19040:017996a51c95c6e11bc62683ad1f356b"
    "1874_01XX.dat:1625840:19040:3c3cdc590e628fe3d472472ca4d74357"
)


for cmd in unzip unrar dd md5sum curl; do
    if ! command -v $cmd &> /dev/null; then
        echo "Missing required command: $cmd"
        exit 1
    fi
done


cd "$TMPDIR"
echo "Downloading Boot Camp Support Software..."
curl -L -o bootcamp.zip "$BOOTCAMP_ZIP_URL"


echo "Extracting Boot Camp package..."
unzip bootcamp.zip


cd BootCamp/Drivers/Apple/


echo "Extracting AppleCamera64.exe..."
unrar x AppleCamera64.exe


if [[ ! -f "AppleCamera.sys" ]]; then
    echo "AppleCamera.sys not found!"
    exit 1
fi


cd "$TMPDIR"


echo "Extracting calibration data..."
for entry in "${DAT_FILES[@]}"; do
    IFS=":" read -r filename skip count expected_md5 <<< "$entry"
    echo "Creating $filename..."
    dd bs=1 skip="$skip" count="$count" if=BootCamp/Drivers/Apple/AppleCamera.sys of="$filename" status=none
    actual_md5=$(md5sum "$filename" | awk '{print $1}')
    if [[ "$actual_md5" != "$expected_md5" ]]; then
        echo "Checksum mismatch for $filename (expected $expected_md5, got $actual_md5)"
        exit 1
    fi
done


echo "Copying .dat files to firmware directory..."
sudo mkdir -p "$FIRMWARE_DIR"
sudo cp *.dat "$FIRMWARE_DIR"


echo "Reloading facetimehd module..."
sudo modprobe -r facetimehd || true
sudo modprobe facetimehd

echo "Done. Please Reboot ."