| 19 |
19 |
SRC_URI="https://mirrors.edge.kernel.org/pub/linux/kernel/firmware/${P}.tar.xz"
|
| 20 |
20 |
fi
|
| 21 |
21 |
|
| 22 |
|
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
|
|
22 |
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
| 23 |
23 |
fi
|
| 24 |
24 |
|
| 25 |
25 |
DESCRIPTION="Linux firmware files"
|
| 26 |
26 |
HOMEPAGE="https://git.kernel.org/?p=linux/kernel/git/firmware/linux-firmware.git"
|
| 27 |
27 |
|
| 28 |
28 |
LICENSE="GPL-2 GPL-2+ GPL-3 BSD MIT || ( MPL-1.1 GPL-2 )
|
| 29 |
|
redistributable? ( linux-fw-redistributable BSD-2 BSD BSD-4 ISC MIT )
|
| 30 |
|
unknown-license? ( all-rights-reserved )"
|
|
29 |
redistributable? ( linux-fw-redistributable BSD-2 BSD BSD-4 ISC MIT )"
|
| 31 |
30 |
SLOT="0"
|
| 32 |
|
IUSE="bindist compress-xz compress-zstd deduplicate dist-kernel +initramfs +redistributable unknown-license"
|
|
31 |
IUSE="bindist compress-xz compress-zstd deduplicate dist-kernel +initramfs +redistributable"
|
| 33 |
32 |
REQUIRED_USE="initramfs? ( redistributable )
|
| 34 |
33 |
?? ( compress-xz compress-zstd )
|
| 35 |
34 |
savedconfig? ( !deduplicate )"
|
| 36 |
35 |
|
| 37 |
36 |
RESTRICT="binchecks strip test
|
| 38 |
|
!bindist? ( bindist )
|
| 39 |
|
unknown-license? ( bindist )"
|
|
37 |
!bindist? ( bindist )"
|
| 40 |
38 |
|
| 41 |
39 |
BDEPEND="initramfs? ( app-alternatives/cpio )
|
| 42 |
40 |
compress-xz? ( app-arch/xz-utils )
|
| ... | ... | |
| 51 |
49 |
!sys-block/qla-fc-firmware
|
| 52 |
50 |
!sys-firmware/raspberrypi-wifi-ucode
|
| 53 |
51 |
)
|
| 54 |
|
unknown-license? (
|
| 55 |
|
!sys-firmware/alsa-firmware[alsa_cards_korg1212,-deduplicate(-)]
|
| 56 |
|
!sys-firmware/alsa-firmware[alsa_cards_maestro3,-deduplicate(-)]
|
| 57 |
|
!sys-firmware/alsa-firmware[alsa_cards_sb16,-deduplicate(-)]
|
| 58 |
|
!sys-firmware/alsa-firmware[alsa_cards_ymfpci,-deduplicate(-)]
|
| 59 |
|
)
|
| 60 |
52 |
)
|
| 61 |
53 |
dist-kernel? (
|
| 62 |
54 |
virtual/dist-kernel
|
| ... | ... | |
| 218 |
210 |
mellanox/mlxsw_spectrum-13.2000.1122.mfa2
|
| 219 |
211 |
)
|
| 220 |
212 |
|
| 221 |
|
# blacklist of images with unknown license
|
| 222 |
|
local unknown_license=(
|
| 223 |
|
korg/k1212.dsp
|
| 224 |
|
ess/maestro3_assp_kernel.fw
|
| 225 |
|
ess/maestro3_assp_minisrc.fw
|
| 226 |
|
yamaha/ds1_ctrl.fw
|
| 227 |
|
yamaha/ds1_dsp.fw
|
| 228 |
|
yamaha/ds1e_ctrl.fw
|
| 229 |
|
ttusb-budget/dspbootcode.bin
|
| 230 |
|
emi62/bitstream.fw
|
| 231 |
|
emi62/loader.fw
|
| 232 |
|
emi62/midi.fw
|
| 233 |
|
emi62/spdif.fw
|
| 234 |
|
ti_3410.fw
|
| 235 |
|
ti_5052.fw
|
| 236 |
|
mts_mt9234mu.fw
|
| 237 |
|
mts_mt9234zba.fw
|
| 238 |
|
whiteheat.fw
|
| 239 |
|
whiteheat_loader.fw
|
| 240 |
|
cpia2/stv0672_vp4.bin
|
| 241 |
|
vicam/firmware.fw
|
| 242 |
|
edgeport/boot.fw
|
| 243 |
|
edgeport/boot2.fw
|
| 244 |
|
edgeport/down.fw
|
| 245 |
|
edgeport/down2.fw
|
| 246 |
|
edgeport/down3.bin
|
| 247 |
|
sb16/mulaw_main.csp
|
| 248 |
|
sb16/alaw_main.csp
|
| 249 |
|
sb16/ima_adpcm_init.csp
|
| 250 |
|
sb16/ima_adpcm_playback.csp
|
| 251 |
|
sb16/ima_adpcm_capture.csp
|
| 252 |
|
sun/cassini.bin
|
| 253 |
|
acenic/tg1.bin
|
| 254 |
|
acenic/tg2.bin
|
| 255 |
|
adaptec/starfire_rx.bin
|
| 256 |
|
adaptec/starfire_tx.bin
|
| 257 |
|
yam/1200.bin
|
| 258 |
|
yam/9600.bin
|
| 259 |
|
ositech/Xilinx7OD.bin
|
| 260 |
|
qlogic/isp1000.bin
|
| 261 |
|
myricom/lanai.bin
|
| 262 |
|
yamaha/yss225_registers.bin
|
| 263 |
|
lgs8g75.fw
|
| 264 |
|
)
|
| 265 |
|
|
| 266 |
|
if use !unknown-license; then
|
| 267 |
|
einfo "Removing files with unknown license ..."
|
| 268 |
|
rm -v "${unknown_license[@]}" || die
|
| 269 |
|
fi
|
| 270 |
|
|
| 271 |
213 |
if use !redistributable; then
|
| 272 |
|
# remove files _not_ in the free_software or unknown_license lists
|
|
214 |
# remove files _not_ in the free_software lists
|
| 273 |
215 |
# everything else is confirmed (or assumed) to be redistributable
|
| 274 |
216 |
# based on upstream acceptance policy
|
| 275 |
217 |
einfo "Removing non-redistributable files ..."
|
| ... | ... | |
| 277 |
219 |
local IFS=$'\n'
|
| 278 |
220 |
set -o pipefail
|
| 279 |
221 |
find ! -type d -printf "%P\n" \
|
| 280 |
|
| grep -Fvx -e "${misc_files[*]}" -e "${free_software[*]}" -e "${unknown_license[*]}" \
|
|
222 |
| grep -Fvx -e "${misc_files[*]}" -e "${free_software[*]}" \
|
| 281 |
223 |
| xargs -d '\n' --no-run-if-empty rm -v
|
| 282 |
224 |
|
| 283 |
225 |
[[ ${?} -ne 0 ]] && die "Failed to remove non-redistributable files"
|
| ... | ... | |
| 358 |
300 |
|
| 359 |
301 |
dodoc README.md
|
| 360 |
302 |
# some licenses require copyright and permission notice to be included
|
| 361 |
|
use bindist && dodoc WHENCE LICEN[CS]E.*
|
|
303 |
use bindist && dodoc -r WHENCE LICENCES
|
| 362 |
304 |
}
|
| 363 |
305 |
|
| 364 |
306 |
pkg_preinst() {
|