You've already forked nixos-overlay
mirror of
https://github.com/t2linux/nixos-overlay.git
synced 2026-04-30 13:32:04 -07:00
67 lines
1.6 KiB
Bash
Executable File
67 lines
1.6 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
: "${NIXPKGS}"
|
|
|
|
wififw_models=(
|
|
MacBookAir8,1
|
|
MacBookAir9,1
|
|
MacBookPro15,1
|
|
MacBookPro15,2
|
|
MacBookPro15,3
|
|
MacBookPro16,1
|
|
MacBookPro16,2
|
|
)
|
|
|
|
packages=(
|
|
kernel/linux-mbp
|
|
)
|
|
|
|
modules=(
|
|
apple-bce
|
|
apple-ib-drv
|
|
)
|
|
|
|
built_drvs=()
|
|
|
|
nnix () {
|
|
nix --extra-experimental-features 'nix-command flakes' "${@}"
|
|
}
|
|
|
|
for p in ${packages[@]}; do
|
|
echo ">>> Building '${p}'"
|
|
|
|
drv="$(nix-build --no-out-link -I nixpkgs="${NIXPKGS}" -E 'let pkgs = import <nixpkgs> {}; in pkgs.callPackage ./packages/'"${p}"' {}')"
|
|
built_drvs+=($(nnix show-derivation "${drv}" | jq -r '.[keys[0]].outputs | .[].path'))
|
|
|
|
echo ">>> Built '${p}' (-> '${drv}')"
|
|
du -sh "${drv}"
|
|
done
|
|
|
|
for model in ${wififw_models[@]}; do
|
|
p='firmware/apple-wifi-firmware'
|
|
echo ">>> Building '${p}' for model '${model}'"
|
|
|
|
drv="$(nix-build --no-out-link -I nixpkgs="${NIXPKGS}" -E 'let pkgs = import <nixpkgs> {}; in pkgs.callPackage ./packages/'"${p}"' { macModel = "'"${model}"'"; }')"
|
|
built_drvs+=($(nnix show-derivation "${drv}" | jq -r '.[keys[0]].outputs | .[].path'))
|
|
|
|
echo ">>> Built '${p}' (-> '${drv}')"
|
|
du -sh "${drv}"
|
|
done
|
|
|
|
for p in ${modules[@]}; do
|
|
echo ">>> Building '${p}'"
|
|
|
|
drv="$(nix-build --no-out-link -I nixpkgs="${NIXPKGS}" -E 'let pkgs = import <nixpkgs> {}; mbp = pkgs.callPackage ./packages/kernel/linux-mbp {}; in pkgs.callPackage ./packages/kernel-modules/'"${p}"' { kernel = mbp; }')"
|
|
built_drvs+=($(nnix show-derivation "${drv}" | jq -r '.[keys[0]].outputs | .[].path'))
|
|
|
|
echo ">>> Built '${p}' (-> '${drv}')"
|
|
du -sh "${drv}"
|
|
done
|
|
|
|
if [ -n "${CACHIX_AUTH_TOKEN:-}" ]; then
|
|
for d in ${built_drvs[@]}; do
|
|
cachix push t2linux "${d}"
|
|
done
|
|
fi
|