├── profiles
├── eapi
├── package.unmask
├── repo_name
├── updates
│ ├── 2Q-2024
│ ├── 4Q-2024
│ └── 3Q-2024
├── package.use
└── package.mask
├── sys-apps
├── asahi-configs
│ ├── files
│ │ ├── envvars-2
│ │ ├── baloo
│ │ ├── kcminput
│ │ ├── xorg-modeset
│ │ └── xorg-naturalscroll
│ ├── metadata.xml
│ └── asahi-configs-2.ebuild
├── asahi-scripts
│ ├── files
│ │ ├── 99-update-m1n1.install
│ │ ├── update-m1n1.gentoo.conf
│ │ └── asahi-scripts-macsmc-battery.openrc
│ ├── metadata.xml
│ ├── Manifest
│ ├── asahi-scripts-20250426.1.ebuild
│ └── asahi-scripts-20250713.ebuild
├── speakersafetyd
│ ├── files
│ │ ├── speakersafetyd
│ │ └── speakersafetyd-noroot
│ ├── metadata.xml
│ └── speakersafetyd-1.1.2.ebuild
├── asahi-nvram-meta
│ ├── asahi-nvram-meta-0.1.ebuild
│ └── metadata.xml
└── asahi-meta
│ ├── metadata.xml
│ └── asahi-meta-2-r11.ebuild
├── sys-kernel
├── asahi-kernel
│ ├── files
│ │ ├── linux-6.10_disable_debug_info_btf.config
│ │ ├── linux-6.10_drop_amdgpu.config
│ │ ├── linux-6.8_arch_apple_overrides.config
│ │ ├── linux-6.17_arm64_deselect_non_apple_arch.config
│ │ └── asahi-kernel-6.8-config-gentoo-Drop-RANDSTRUCT-from-GENTOO_KERNEL_SEL.patch
│ ├── metadata.xml
│ ├── Manifest
│ ├── asahi-kernel-6.17.11_p1.ebuild
│ └── asahi-kernel-6.17.7_p2-r1.ebuild
└── asahi-sources
│ ├── files
│ ├── 1740_revert_x86-insn-decoder-test-allow-longer-symbol-names.patch
│ ├── asahi-6.8-config-gentoo-Drop-RANDSTRUCT-from-GENTOO_KERNEL_SEL.patch
│ ├── 2980_revert_kbuild-gcc15-gnu23-to-gnu11-fix.patch
│ └── 2981-kbuild-gcc15-gnu23-to-gnu11-fix.patch
│ ├── metadata.xml
│ ├── asahi-sources-6.17.11_p1.ebuild
│ ├── asahi-sources-6.17.7_p2.ebuild
│ └── Manifest
├── metadata
├── pkgcheck.conf
├── md5-cache
│ ├── sys-apps
│ │ ├── asahi-configs-1.0
│ │ ├── asahi-scripts-20231219.1
│ │ ├── asahi-scripts-20231219.1-r1
│ │ ├── asahi-nvram-meta-0.1
│ │ ├── asahi-meta-2-r6
│ │ └── speakersafetyd-0.1.9-r1
│ ├── virtual
│ │ ├── dist-kernel-6.6.0_p16
│ │ └── linux-sources-3-r6
│ ├── media-libs
│ │ ├── widevine-installer-0.1-r2
│ │ ├── alsa-ucm-conf-asahi-5.0
│ │ ├── asahi-audio-1.8
│ │ └── bankstown-lv2-1.1.0
│ ├── sys-boot
│ │ └── m1n1-1.4.11
│ ├── app-arch
│ │ └── lzfse-1.0
│ ├── sys-firmware
│ │ └── asahi-firmware-0.6.25-r1
│ └── sys-kernel
│ │ └── asahi-kernel-6.6.0_p16-r1
├── layout.conf
└── news
│ ├── 2023-07-10-asahi-meta-package-now-available
│ └── 2023-07-10-asahi-meta-package-now-available.en.txt
│ ├── 2024-07-16-mesa-asahi-flatpak-available
│ └── 2024-07-16-mesa-asahi-flatpak-available.en.txt
│ ├── 2024-03-03-startup-disk-upstreamed
│ └── 2024-03-03-startup-disk-upstreamed.en.txt
│ ├── 2024-08-23-charge-threshold-restoration-now-available
│ └── 2024-08-23-charge-threshold-restoration-now-available.en.txt
│ ├── 2024-04-01-action-required-enable-unstable-globally
│ └── 2024-04-01-action-required-enable-unstable-globally.en.txt
│ ├── 2023-07-10-Major-changes-to-the-Asahi-repo
│ └── 2023-07-10-Major-changes-to-the-Asahi-repo.en.txt
│ ├── 2024-04-02-stable-users-you-can-now-remove-global-arm64
│ └── 2024-04-02-stable-users-you-can-now-remove-global-arm64.en.txt
│ ├── 2023-12-03-HDMI-out-now-available
│ └── 2023-12-03-HDMI-out-now-available.en.txt
│ ├── 2025-07-25-mesa-asahi-flatpak-changes
│ └── 2025-07-25-mesa-asahi-flatpak-changes.en.txt
│ ├── 2024-04-01-action-required-asahi-audio-now-slotted
│ └── 2024-04-01-action-required-asahi-audio-now-slotted.en.txt
│ ├── 2025-05-10-mesa-now-upstream
│ └── 2025-05-10-mesa-now-upstream.en.txt
│ ├── 2024-02-11-asahi-kernel-is-now-available
│ └── 2024-02-11-asahi-kernel-is-now-available.en.txt
│ ├── 2024-01-04-krunvm-support-has-been-removed
│ └── 2024-01-04-krunvm-support-has-been-removed.en.txt
│ ├── 2024-01-31-Upstreaming-efforts-have-begun
│ └── 2024-01-31-Upstreaming-efforts-have-begun.en.txt
│ ├── 2023-11-25-Limited-speaker-support-now-available
│ └── 2023-11-25-Limited-speaker-support-now-available.en.txt
│ ├── 2024-04-30-wireplumber-upgraded-to-0.5
│ └── 2024-04-30-wireplumber-upgraded-to-0.5.en.txt
│ └── 2023-10-09-Webcam-now-available
│ └── 2023-10-09-Webcam-now-available.en.txt
├── acct-group
└── speakersafetyd
│ ├── speakersafetyd-0.ebuild
│ └── metadata.xml
├── virtual
├── linux-sources
│ ├── metadata.xml
│ └── linux-sources-3-r6.ebuild
└── dist-kernel
│ ├── metadata.xml
│ ├── dist-kernel-6.17.11_p1.ebuild
│ └── dist-kernel-6.17.7_p2.ebuild
├── app-arch
└── lzfse
│ ├── Manifest
│ ├── metadata.xml
│ └── lzfse-1.0.ebuild
├── media-libs
├── asahi-audio
│ ├── Manifest
│ ├── metadata.xml
│ └── asahi-audio-3.4.ebuild
├── alsa-ucm-conf-asahi
│ ├── Manifest
│ ├── metadata.xml
│ └── alsa-ucm-conf-asahi-8.ebuild
├── widevine-installer
│ ├── Manifest
│ ├── files
│ │ └── disable-configs.patch
│ ├── metadata.xml
│ └── widevine-installer-0.2.ebuild
├── bankstown-lv2
│ ├── metadata.xml
│ ├── bankstown-lv2-1.1.0-r2.ebuild
│ └── Manifest
└── triforce-lv2
│ ├── metadata.xml
│ └── triforce-lv2-0.3.2.ebuild
├── sys-firmware
└── asahi-firmware
│ ├── Manifest
│ ├── metadata.xml
│ └── asahi-firmware-0.7.9-r1.ebuild
├── acct-user
└── speakersafetyd
│ ├── speakersafetyd-0.ebuild
│ └── metadata.xml
├── app-emulation
├── muvm
│ ├── metadata.xml
│ └── muvm-0.5.0.ebuild
├── fex-rootfs-gentoo
│ ├── metadata.xml
│ ├── Manifest
│ ├── fex-rootfs-gentoo-20250904.ebuild
│ └── fex-rootfs-gentoo-20250904-r1.ebuild
└── FEX
│ ├── metadata.xml
│ ├── files
│ ├── toolchain_x86_64.cmake
│ ├── toolchain_x86_32.cmake
│ ├── FEX-2503-thunkgen-gcc-install-dir.patch
│ ├── FEX-2503-unvendor-drm-headers.patch
│ ├── FEX-2511-unvendor-drm-headers.patch
│ └── FEX-2507-thunks-toolchain-paths.patch
│ ├── Manifest
│ ├── FEX-2510.ebuild
│ ├── FEX-2511.ebuild
│ └── FEX-2512.ebuild
├── .github
└── workflows
│ └── main.yml
├── dev-libs
├── libkrun
│ ├── metadata.xml
│ └── libkrun-1.16.0.ebuild
└── libkrunfw
│ ├── metadata.xml
│ ├── files
│ └── libkrunfw-4.5.1-do-not-strip.patch
│ ├── Manifest
│ └── libkrunfw-5.0.0.ebuild
├── sys-boot
├── u-boot
│ ├── metadata.xml
│ ├── Manifest
│ ├── u-boot-2025.07_p1.ebuild
│ └── u-boot-2025.04_p1.ebuild
└── m1n1
│ ├── metadata.xml
│ ├── Manifest
│ ├── m1n1-1.5.0.ebuild
│ └── m1n1-1.5.2.ebuild
├── games-util
└── steam
│ ├── metadata.xml
│ ├── Manifest
│ └── steam-0.0.2.ebuild
├── sys-devel
└── x86_64-multilib-toolchain
│ ├── metadata.xml
│ ├── files
│ └── gcc-13-fix-cross-fixincludes.patch
│ ├── Manifest
│ └── x86_64-multilib-toolchain-14.2.0_p1.ebuild
├── repositories.xml
└── README.md
/profiles/eapi:
--------------------------------------------------------------------------------
1 | 7
2 |
--------------------------------------------------------------------------------
/profiles/package.unmask:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/profiles/repo_name:
--------------------------------------------------------------------------------
1 | asahi
2 |
--------------------------------------------------------------------------------
/profiles/updates/2Q-2024:
--------------------------------------------------------------------------------
1 | slotmove media-libs/asahi-audio 1.0 0
2 |
--------------------------------------------------------------------------------
/profiles/updates/4Q-2024:
--------------------------------------------------------------------------------
1 | slotmove virtual/dist-kernel 0 asahi
2 |
--------------------------------------------------------------------------------
/profiles/updates/3Q-2024:
--------------------------------------------------------------------------------
1 | move app-emulation/krun app-emulation/muvm
2 |
--------------------------------------------------------------------------------
/sys-apps/asahi-configs/files/envvars-2:
--------------------------------------------------------------------------------
1 | export MOZ_ENABLE_WAYLAND=1
2 |
--------------------------------------------------------------------------------
/sys-apps/asahi-configs/files/baloo:
--------------------------------------------------------------------------------
1 | [General]
2 | only basic indexing=true
3 |
--------------------------------------------------------------------------------
/sys-apps/asahi-scripts/files/99-update-m1n1.install:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | update-m1n1
3 |
--------------------------------------------------------------------------------
/sys-apps/asahi-configs/files/kcminput:
--------------------------------------------------------------------------------
1 | [Libinput][Defaults][Touchpad]
2 | NaturalScroll=true
3 |
--------------------------------------------------------------------------------
/sys-apps/asahi-scripts/files/update-m1n1.gentoo.conf:
--------------------------------------------------------------------------------
1 | DTBS=/usr/src/linux/arch/arm64/boot/dts/apple/*.dtb
2 |
--------------------------------------------------------------------------------
/sys-kernel/asahi-kernel/files/linux-6.10_disable_debug_info_btf.config:
--------------------------------------------------------------------------------
1 | # CONFIG_DEBUG_INFO_BTF is not set
2 |
--------------------------------------------------------------------------------
/metadata/pkgcheck.conf:
--------------------------------------------------------------------------------
1 | [DEFAULT]
2 | profiles = stable,dev,-default/linux/arm64/23.0/musl,-default/linux/arm64/23.0/split-usr/musl
3 |
--------------------------------------------------------------------------------
/sys-apps/asahi-configs/files/xorg-modeset:
--------------------------------------------------------------------------------
1 | Section "OutputClass"
2 | Identifier "appledrm"
3 | MatchDriver "apple"
4 | Driver "modesetting"
5 | Option "PrimaryGPU" "true"
6 | EndSection
7 |
--------------------------------------------------------------------------------
/sys-kernel/asahi-kernel/files/linux-6.10_drop_amdgpu.config:
--------------------------------------------------------------------------------
1 | # CONFIG_DRM_AMDGPU is not set
2 | # CONFIG_DRM_AMDGPU_SI is not set
3 | # CONFIG_DRM_AMDGPU_CIK is not set
4 | # CONFIG_DRM_AMDGPU_USERPTR is not set
5 | # CONFIG_DRM_AMDGPU_WERROR is not set
6 |
--------------------------------------------------------------------------------
/metadata/md5-cache/sys-apps/asahi-configs-1.0:
--------------------------------------------------------------------------------
1 | DEFINED_PHASES=install unpack
2 | DESCRIPTION=Asahi Linux configurations
3 | EAPI=8
4 | HOMEPAGE=https://asahilinux.org/
5 | KEYWORDS=arm64
6 | LICENSE=MIT
7 | SLOT=0
8 | _md5_=a0a16fea00cbc7138a183a92656e9416
9 |
--------------------------------------------------------------------------------
/metadata/md5-cache/virtual/dist-kernel-6.6.0_p16:
--------------------------------------------------------------------------------
1 | DEFINED_PHASES=-
2 | DESCRIPTION=Virtual to depend on any Distribution Kernel
3 | EAPI=8
4 | KEYWORDS=arm64
5 | RDEPEND=~sys-kernel/asahi-kernel-6.6.0_p16
6 | SLOT=0/6.6.0_p16
7 | _md5_=30b8159cf810ac0182d5f9b6143dccd3
8 |
--------------------------------------------------------------------------------
/sys-apps/asahi-configs/files/xorg-naturalscroll:
--------------------------------------------------------------------------------
1 | Section "InputClass"
2 | Identifier "Enable natural scrolling by default"
3 | MatchIsTouchpad "on"
4 | MatchDevicePath "/dev/input/event*"
5 | MatchDriver "libinput"
6 | Option "Natural Scrolling" "on"
7 | EndSection
8 |
--------------------------------------------------------------------------------
/sys-apps/speakersafetyd/files/speakersafetyd:
--------------------------------------------------------------------------------
1 | #!/sbin/openrc-run
2 |
3 | pidfile="/run/speakersafetyd.pid"
4 | command="/usr/bin/speakersafetyd"
5 | command_args="-c /usr/share/speakersafetyd/ -b /var/lib/speakersafetyd/blackbox -m 7"
6 | supervisor="supervise-daemon"
7 |
8 |
--------------------------------------------------------------------------------
/metadata/layout.conf:
--------------------------------------------------------------------------------
1 | repo-name = asahi
2 | masters = gentoo
3 | auto-sync = true
4 | eapis-banned = 0 1 2 3 4 5 6
5 | eapis-deprecated =
6 | sign-commits = false
7 | sign-manifests = false
8 | thin-manifests = true
9 | use-manifests = strict
10 | cache-formats = md5-dict
11 |
--------------------------------------------------------------------------------
/acct-group/speakersafetyd/speakersafetyd-0.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 2025 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI=8
5 |
6 | inherit acct-group
7 |
8 | DESCRIPTION="speakersafetyd program group"
9 | ACCT_GROUP_ID=547
10 | SLOT="0"
11 |
--------------------------------------------------------------------------------
/sys-apps/speakersafetyd/files/speakersafetyd-noroot:
--------------------------------------------------------------------------------
1 | #!/sbin/openrc-run
2 |
3 | pidfile="/run/speakersafetyd.pid"
4 | command="/usr/bin/speakersafetyd"
5 | command_args="-c /usr/share/speakersafetyd/ -b /var/lib/speakersafetyd/blackbox -m 7"
6 | command_user="speakersafetyd"
7 | supervisor="supervise-daemon"
8 |
9 |
--------------------------------------------------------------------------------
/virtual/linux-sources/metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | jcalligeros99@gmail.com
6 | James Calligeros
7 |
8 |
9 |
--------------------------------------------------------------------------------
/app-arch/lzfse/Manifest:
--------------------------------------------------------------------------------
1 | DIST lzfse-1.0.tar.gz 50694 BLAKE2B b250ee7f438f4c813e5b60e8a3a224a95a187ea2e29de1a3db7a2eafd6a484ccd778c7be4b809b34dc9d1a51edcb7ba743b0e82ae43a8045114866944b159770 SHA512 9d7ca44e6d3d2bdf4b82b0eb66c14922369b8b6fe2cf891187a77c6708b8d26c2c1b2ccddec6059e85dbbbb37c497419549f02812b5f34d06238ac246a8cf912
2 |
--------------------------------------------------------------------------------
/profiles/package.use:
--------------------------------------------------------------------------------
1 | # Copyright 1999-2023 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | # Janne Grunau (2024-05-04)
5 | # Use +filecaps so that kwin_wayland gets CAP_SYS_NICE used for real time
6 | # input and kms commit threads.
7 | kde-plasma/kwin filecaps
8 |
--------------------------------------------------------------------------------
/media-libs/asahi-audio/Manifest:
--------------------------------------------------------------------------------
1 | DIST asahi-audio-3.4.tar.gz 2646735 BLAKE2B 2b30e62575a2597436b1e4dac5c39bf77ce27f2186ae6cc0f54d78a5ee355e667fa2b146f26f71f1bf9f3d480441d37bfe99d3912f73810bb16675029f3798f6 SHA512 d7c9d32ad520bf48f267c6b26d103e730d8b952ba1eb6518ba976090b8f773edc43024ebf3282dcab6d9753f4afc848783a362cb699885d961625fa017f55be5
2 |
--------------------------------------------------------------------------------
/sys-kernel/asahi-sources/files/1740_revert_x86-insn-decoder-test-allow-longer-symbol-names.patch:
--------------------------------------------------------------------------------
1 | --- b/arch/x86/tools/insn_decoder_test.c
2 | +++ a/arch/x86/tools/insn_decoder_test.c
3 | @@ -106,7 +106,7 @@
4 | }
5 | }
6 |
7 | +#define BUFSIZE 256
8 | -#define BUFSIZE 4096
9 |
10 | int main(int argc, char **argv)
11 | {
12 |
--------------------------------------------------------------------------------
/sys-firmware/asahi-firmware/Manifest:
--------------------------------------------------------------------------------
1 | DIST asahi-firmware-0.7.9.tar.gz 57023 BLAKE2B 1b6754652116da28d0ad3ba7c26f0d41f269da7c4d11bd776953088ba5765546add0e853106b1c39da5238be0f0e01e8be838630f0c03ec52c035aabbfaff68c SHA512 c533fd34cd2360f28c3ff76fa839bd2c9994cc457045a826c36e4f989af9b424375991a93246f264991289ad5aeb0a642c7d6bdfd7683dd6c6c77621f5d0129e
2 |
--------------------------------------------------------------------------------
/media-libs/alsa-ucm-conf-asahi/Manifest:
--------------------------------------------------------------------------------
1 | DIST alsa-ucm-conf-asahi-8.tar.gz 3680 BLAKE2B 5dcd87426ea277d98ca1d7b3ab1dee06d85bb8947022f1278389c35d1090c8b13ce2864a02e6b70a24e0970994accafa48e3a217283a4b527c8f1528a6ac8e2b SHA512 b925a2a5ab7e4e48ee300f2dbd045d8e3c642deeabbcc103ad10f119358350b4724ed4c408b7c0c897e90fd001ce6f1903598b5d819efb45e17ccd56155425ea
2 |
--------------------------------------------------------------------------------
/media-libs/widevine-installer/Manifest:
--------------------------------------------------------------------------------
1 | DIST widevine-installer-0.2.tar.gz 7968 BLAKE2B 416afe9489867b4fc242a1aeb8dd7cc5916f1b640ac72f1e288faf94df4aa7f3b520ad05150a465855b7fab9eda774c3ff14603376e6e9fd05c593e744f64dac SHA512 4cf42662ef8c66c6a404d1e042c74d299943f49b739bf964c344ecd3659e6e09857db89c31142593f566ddceee1d42fb517023e92052b7f7ef4372059d8c97fc
2 |
--------------------------------------------------------------------------------
/acct-user/speakersafetyd/speakersafetyd-0.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 2025 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI=8
5 |
6 | inherit acct-user
7 |
8 | DESCRIPTION="speakersafetyd program user"
9 | ACCT_USER_ID=547
10 | ACCT_USER_GROUPS=( audio speakersafetyd )
11 | acct-user_add_deps
12 | SLOT="0"
13 |
--------------------------------------------------------------------------------
/app-emulation/muvm/metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | asahi@gentoo.org
6 |
7 |
8 | slp/krun
9 |
10 |
11 |
--------------------------------------------------------------------------------
/virtual/dist-kernel/metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | dist-kernel@gentoo.org
6 | Distribution Kernel Project
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/.github/workflows/main.yml:
--------------------------------------------------------------------------------
1 | name: pkgcheck
2 |
3 | on:
4 | push:
5 | branches: [main]
6 | pull_request:
7 | branches: [main]
8 |
9 | jobs:
10 | build:
11 | runs-on: ubuntu-latest
12 | steps:
13 | - name: Checkout code
14 | uses: actions/checkout@v3
15 |
16 | - name: Run pkgcheck
17 | uses: pkgcore/pkgcheck-action@v1
18 |
--------------------------------------------------------------------------------
/dev-libs/libkrun/metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | asahi@gentoo.org
6 |
7 |
8 | containers/libkrun
9 |
10 |
11 |
--------------------------------------------------------------------------------
/sys-kernel/asahi-kernel/files/linux-6.8_arch_apple_overrides.config:
--------------------------------------------------------------------------------
1 | ## prefer simpledrm over frame buffer drivers
2 | CONFIG_DRM_SIMPLEDRM=y
3 | # CONFIG_FB_EFI is not set
4 | # CONFIG_FB_VESA is not set
5 |
6 | ## enable EFI_ZBOOT for systemd-boot support
7 | CONFIG_EFI_ZBOOT=y
8 |
9 | ## no ACPI on Apple silicon systems
10 | # CONFIG_ACPI_EXTLOG is not set
11 |
--------------------------------------------------------------------------------
/virtual/dist-kernel/dist-kernel-6.17.11_p1.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 2021-2024 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI=8
5 |
6 | DESCRIPTION="Virtual to depend on any Distribution Kernel"
7 | SLOT="asahi/${PVR}"
8 | KEYWORDS="~arm64"
9 |
10 | RDEPEND="
11 | ~sys-kernel/asahi-kernel-${PV}:asahi-${PV}=
12 | "
13 |
--------------------------------------------------------------------------------
/virtual/dist-kernel/dist-kernel-6.17.7_p2.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 2021-2024 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI=8
5 |
6 | DESCRIPTION="Virtual to depend on any Distribution Kernel"
7 | SLOT="asahi/${PVR}"
8 | KEYWORDS="arm64"
9 |
10 | RDEPEND="
11 | ~sys-kernel/asahi-kernel-${PV}:asahi-${PV}=
12 | "
13 |
--------------------------------------------------------------------------------
/dev-libs/libkrunfw/metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | asahi@gentoo.org
6 |
7 |
8 | containers/libkrunfw
9 |
10 |
11 |
--------------------------------------------------------------------------------
/app-arch/lzfse/metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | jcalligeros99@gmail.com
6 | James Calligeros
7 |
8 |
9 | lzfse/lzfse
10 |
11 |
12 |
--------------------------------------------------------------------------------
/app-emulation/fex-rootfs-gentoo/metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | asahi@gentoo.org
6 |
7 |
8 | WhatAmISupposedToPutHere/fex-rootfs
9 |
10 |
11 |
--------------------------------------------------------------------------------
/sys-boot/u-boot/metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | jcalligeros99@gmail.com
6 | James Calligeros
7 |
8 |
9 | AsahiLinux/u-boot
10 |
11 |
12 |
--------------------------------------------------------------------------------
/sys-apps/asahi-configs/metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | jcalligeros99@gmail.com
6 | James Calligeros
7 |
8 |
9 | AsahiLinux/PKGBUILDs
10 |
11 |
12 |
--------------------------------------------------------------------------------
/media-libs/asahi-audio/metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | jcalligeros99@gmail.com
6 | James Calligeros
7 |
8 |
9 | AsahiLinux/asahi-audio
10 |
11 |
12 |
--------------------------------------------------------------------------------
/sys-apps/asahi-scripts/metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | jcalligeros99@gmail.com
6 | James Calligeros
7 |
8 |
9 | AsahiLinux/asahi-scripts
10 |
11 |
12 |
--------------------------------------------------------------------------------
/media-libs/bankstown-lv2/metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | jcalligeros99@gmail.com
6 | James Calligeros
7 |
8 |
9 | chadmed/bankstown
10 |
11 |
12 |
--------------------------------------------------------------------------------
/media-libs/triforce-lv2/metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | jcalligeros99@gmail.com
6 | James Calligeros
7 |
8 |
9 | chadmed/triforce
10 |
11 |
12 |
--------------------------------------------------------------------------------
/sys-firmware/asahi-firmware/metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | jcalligeros99@gmail.com
6 | James Calligeros
7 |
8 |
9 | AsahiLinux/asahi-installer
10 |
11 |
12 |
--------------------------------------------------------------------------------
/media-libs/alsa-ucm-conf-asahi/metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | jcalligeros99@gmail.com
6 | James Calligeros
7 |
8 |
9 | AsahiLinux/alsa-ucm-conf-asahi
10 |
11 |
12 |
--------------------------------------------------------------------------------
/media-libs/widevine-installer/files/disable-configs.patch:
--------------------------------------------------------------------------------
1 | diff --git a/widevine-installer b/widevine-installer
2 | index 2feb4b2..b1d93e9 100755
3 | --- a/widevine-installer
4 | +++ b/widevine-installer
5 | @@ -4,7 +4,7 @@
6 | set -e
7 |
8 | # Set to 0 if packaged and the configs are pre-installed
9 | -: ${COPY_CONFIGS=1}
10 | +: ${COPY_CONFIGS=0}
11 | : ${DESTDIR:=/}
12 | : ${CONFDIR:=/etc}
13 | : ${LIBDIR:=/usr/lib64}
14 |
--------------------------------------------------------------------------------
/metadata/md5-cache/sys-apps/asahi-scripts-20231219.1:
--------------------------------------------------------------------------------
1 | BDEPEND=dev-build/make
2 | DEFINED_PHASES=compile install postinst prepare
3 | DESCRIPTION=Apple Silicon support scripts
4 | EAPI=8
5 | HOMEPAGE=https://asahilinux.org/
6 | KEYWORDS=arm64
7 | LICENSE=MIT
8 | SLOT=0
9 | SRC_URI=https://github.com/AsahiLinux/asahi-scripts/archive/refs/tags/20231219.1.tar.gz -> asahi-scripts-20231219.1.tar.gz
10 | _md5_=fc13f96c2cbabbf2e15d85c9dfa72b68
11 |
--------------------------------------------------------------------------------
/media-libs/widevine-installer/metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | jcalligeros99@gmail.com
6 | James Calligeros
7 |
8 |
9 | AsahiLinux/widevine-installer
10 |
11 |
12 |
--------------------------------------------------------------------------------
/metadata/md5-cache/sys-apps/asahi-scripts-20231219.1-r1:
--------------------------------------------------------------------------------
1 | BDEPEND=dev-build/make
2 | DEFINED_PHASES=compile install postinst prepare
3 | DESCRIPTION=Apple Silicon support scripts
4 | EAPI=8
5 | HOMEPAGE=https://asahilinux.org/
6 | KEYWORDS=arm64
7 | LICENSE=MIT
8 | SLOT=0
9 | SRC_URI=https://github.com/AsahiLinux/asahi-scripts/archive/refs/tags/20231219.1.tar.gz -> asahi-scripts-20231219.1.tar.gz
10 | _md5_=f04bb95a7d8500d6245d129e621d8e29
11 |
--------------------------------------------------------------------------------
/sys-apps/speakersafetyd/metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | jcalligeros99@gmail.com
6 | James Calligeros
7 |
8 |
9 | AsahiLinux/speakersafetyd
10 |
11 |
12 |
--------------------------------------------------------------------------------
/acct-group/speakersafetyd/metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | asahi@gentoo.org
6 | Gentoo Asahi Project
7 |
8 |
9 | jcalligeros99@gmail.com
10 | James Calligeros
11 |
12 |
13 |
--------------------------------------------------------------------------------
/acct-user/speakersafetyd/metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | asahi@gentoo.org
6 | Gentoo Asahi Project
7 |
8 |
9 | jcalligeros99@gmail.com
10 | James Calligeros
11 |
12 |
13 |
--------------------------------------------------------------------------------
/metadata/md5-cache/sys-apps/asahi-nvram-meta-0.1:
--------------------------------------------------------------------------------
1 | DEFINED_PHASES=-
2 | DESCRIPTION=Metapackage for asahi-nvram modules
3 | EAPI=8
4 | HOMEPAGE=https://github.com/WhatAmISupposedToPutHere/asahi-nvram
5 | IUSE=+bless bluetooth raw wifi
6 | KEYWORDS=~arm64
7 | LICENSE=MIT
8 | RDEPEND=bless? ( sys-apps/asahi-bless ) bluetooth? ( net-misc/asahi-btsync ) raw? ( sys-apps/asahi-nvram ) wifi? ( net-misc/asahi-wifisync )
9 | SLOT=0
10 | _md5_=6d79b3b371ef5d89340085c01fa28413
11 |
--------------------------------------------------------------------------------
/sys-boot/m1n1/metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | jcalligeros99@gmail.com
6 | James Calligeros
7 |
8 |
11 |
12 | AsahiLinux/m1n1
13 |
14 |
15 |
--------------------------------------------------------------------------------
/metadata/md5-cache/media-libs/widevine-installer-0.1-r2:
--------------------------------------------------------------------------------
1 | DEFINED_PHASES=install postinst unpack
2 | DESCRIPTION=Widevine installer for AArch64 systems
3 | EAPI=8
4 | HOMEPAGE=https://asahilinux.org/
5 | KEYWORDS=arm64
6 | LICENSE=MIT
7 | RDEPEND=>=sys-libs/glibc-2.36 sys-fs/squashfs-tools[zstd]
8 | SLOT=0
9 | SRC_URI=https://github.com/AsahiLinux/widevine-installer/archive/8fa12dd2d81c4b5d2a713e169cac70898512322e.tar.gz -> widevine-installer-0.1.tar.gz
10 | _md5_=92f8fadf9dddeda6bf70703a423eb4d8
11 |
--------------------------------------------------------------------------------
/games-util/steam/metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | jcalligeros99@gmail.com
6 | James Calligeros
7 |
8 |
9 | asahi@gentoo.org
10 |
11 |
12 | chadmed/steam-aarch64
13 |
14 |
15 |
--------------------------------------------------------------------------------
/metadata/md5-cache/virtual/linux-sources-3-r6:
--------------------------------------------------------------------------------
1 | DEFINED_PHASES=-
2 | DESCRIPTION=Virtual for Linux kernel sources
3 | EAPI=7
4 | KEYWORDS=arm64
5 | RDEPEND=|| ( sys-kernel/gentoo-sources sys-kernel/vanilla-sources sys-kernel/git-sources sys-kernel/mips-sources sys-kernel/pf-sources sys-kernel/rt-sources sys-kernel/zen-sources sys-kernel/raspberrypi-sources sys-kernel/gentoo-kernel sys-kernel/gentoo-kernel-bin sys-kernel/vanilla-kernel sys-kernel/asahi-sources )
6 | SLOT=0
7 | _md5_=63a29357490484c758b7acd39d77bc9c
8 |
--------------------------------------------------------------------------------
/app-arch/lzfse/lzfse-1.0.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 2022 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI=8
5 |
6 | CMAKE_MAKEFILE_GENERATOR="emake"
7 | CMAKE_INSTALL_PREFIX=""
8 |
9 | inherit cmake
10 |
11 | DESCRIPTION="LZFSE compression utilities"
12 | HOMEPAGE="https://github.com/lzfse/lzfse"
13 | SRC_URI="https://github.com/lzfse/lzfse/archive/refs/tags/lzfse-${PV}.tar.gz"
14 | S="${WORKDIR}/${PN}-lzfse-${PV}"
15 | LICENSE="BSD"
16 | SLOT="0"
17 | KEYWORDS="arm64"
18 |
--------------------------------------------------------------------------------
/metadata/news/2023-07-10-asahi-meta-package-now-available/2023-07-10-asahi-meta-package-now-available.en.txt:
--------------------------------------------------------------------------------
1 | Title: asahi-meta package now available
2 | Author: James Calligeros
3 | Posted: 2023-07-10
4 | Revision: 1
5 | News-Item-Format: 2.0
6 |
7 | A new metapackage is now available to simplify installation
8 | and dependency resolution. Steps to transition to it are
9 | as follows:
10 |
11 | 1) Deselect any Asahi-related packages
12 | 2) emerge -av asahi-meta
13 | 3) emerge --depclean
14 |
--------------------------------------------------------------------------------
/metadata/news/2024-07-16-mesa-asahi-flatpak-available/2024-07-16-mesa-asahi-flatpak-available.en.txt:
--------------------------------------------------------------------------------
1 | Title: Asahi Mesa Flatpak runtime now available
2 | Author: James Calligeros
3 | Posted: 2024-07-16
4 | Revision: 2
5 | News-Item-Format: 2.0
6 |
7 | You can now use flatpaks which require graphical acceleration on Asahi!
8 |
9 | Steps:
10 | 1. Emerge media-libs/mesa-asahi-flatpak
11 | 2. Log out and log back in
12 |
13 | That's it! Flatpaks which require GPU acceleration will now work!
14 |
--------------------------------------------------------------------------------
/metadata/md5-cache/media-libs/alsa-ucm-conf-asahi-5.0:
--------------------------------------------------------------------------------
1 | DEFINED_PHASES=install unpack
2 | DEPEND=>=media-libs/alsa-lib-1.2.1 media-libs/alsa-ucm-conf
3 | DESCRIPTION=ALSA ucm configuration files for Apple silicon devices
4 | EAPI=8
5 | HOMEPAGE=https://alsa-project.org/wiki/Main_Page
6 | KEYWORDS=arm64
7 | LICENSE=BSD
8 | RDEPEND=>=media-libs/alsa-lib-1.2.1
9 | SLOT=0
10 | SRC_URI=https://github.com/AsahiLinux/alsa-ucm-conf-asahi/archive/refs/tags/v4.tar.gz -> alsa-ucm-conf-asahi-5.0.tar.gz
11 | _md5_=191bb14b9b4a78813158de386273aaba
12 |
--------------------------------------------------------------------------------
/app-emulation/FEX/metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | asahi@gentoo.org
6 |
7 |
12 |
13 | FEX-Emu/FEX
14 |
15 |
16 |
--------------------------------------------------------------------------------
/metadata/md5-cache/sys-boot/m1n1-1.4.11:
--------------------------------------------------------------------------------
1 | BDEPEND=dev-build/make sys-apps/dtc clang? ( sys-devel/clang )
2 | DEFINED_PHASES=compile install postinst postrm
3 | DESCRIPTION=Apple Silicon bootloader and experimentation playground
4 | EAPI=7
5 | HOMEPAGE=https://asahilinux.org/
6 | IUSE=clang
7 | KEYWORDS=arm64
8 | LICENSE=MIT
9 | RDEPEND=sys-boot/u-boot || ( sys-kernel/asahi-sources sys-kernel/asahi-kernel )
10 | SLOT=0
11 | SRC_URI=https://github.com/AsahiLinux/m1n1/archive/refs/tags/v1.4.11.tar.gz -> m1n1-1.4.11.tar.gz
12 | _md5_=2533a2de2c8ce14dd503b22202c124e3
13 |
--------------------------------------------------------------------------------
/metadata/news/2024-03-03-startup-disk-upstreamed/2024-03-03-startup-disk-upstreamed.en.txt:
--------------------------------------------------------------------------------
1 | Title: startup-disk has been upstreamed
2 | Author: James Calligeros
3 | Posted: 2024-03-03
4 | Revision: 1
5 | News-Item-Format: 2.0
6 |
7 | The GTK4 frontend for asahi-bless, previously just called startup-disk, has
8 | been upstreamed into ::gentoo as asahi-startup-disk. As the name of the package
9 | has changed, you will need to manually uninstall sys-apps/startup-disk::asahi
10 | and install sys-apps/asahi-startup-disk::gentoo in its stead.
11 |
--------------------------------------------------------------------------------
/dev-libs/libkrunfw/files/libkrunfw-4.5.1-do-not-strip.patch:
--------------------------------------------------------------------------------
1 | diff --git a/Makefile b/Makefile
2 | index c80b805..a45fb61 100644
3 | --- a/Makefile
4 | +++ b/Makefile
5 | @@ -102,9 +102,6 @@ endif
6 |
7 | $(KRUNFW_BINARY_$(OS)): $(KERNEL_C_BUNDLE) $(QBOOT_C_BUNDLE) $(INITRD_C_BUNDLE)
8 | $(CC) -fPIC -DABI_VERSION=$(ABI_VERSION) -shared $(SONAME_$(OS)) -o $@ $(KERNEL_C_BUNDLE) $(QBOOT_C_BUNDLE) $(INITRD_C_BUNDLE)
9 | -ifeq ($(OS),Linux)
10 | - $(STRIP) $(KRUNFW_BINARY_$(OS))
11 | -endif
12 |
13 | install:
14 | install -d $(DESTDIR)$(PREFIX)/$(LIBDIR_$(OS))/
15 |
--------------------------------------------------------------------------------
/sys-apps/asahi-nvram-meta/asahi-nvram-meta-0.1.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 2024 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI=8
5 |
6 | DESCRIPTION="Metapackage for asahi-nvram modules"
7 | HOMEPAGE="https://github.com/WhatAmISupposedToPutHere/asahi-nvram"
8 | LICENSE="MIT"
9 | SLOT="0"
10 | KEYWORDS="~arm64"
11 | IUSE="+bless bluetooth raw wifi"
12 |
13 | RDEPEND="
14 | bless? ( sys-apps/asahi-bless )
15 | bluetooth? ( net-misc/asahi-btsync )
16 | raw? ( sys-apps/asahi-nvram )
17 | wifi? ( net-misc/asahi-wifisync )
18 | "
19 |
--------------------------------------------------------------------------------
/sys-kernel/asahi-kernel/metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | jcalligeros99@gmail.com
6 | James Calligeros
7 |
8 |
9 | asahi@gentoo.org
10 |
11 |
14 |
15 | AsahiLinux/linux
16 |
17 |
18 |
--------------------------------------------------------------------------------
/app-emulation/FEX/files/toolchain_x86_64.cmake:
--------------------------------------------------------------------------------
1 | set(CMAKE_EXE_LINKER_FLAGS_INIT "-fuse-ld=lld")
2 | set(CMAKE_MODULE_LINKER_FLAGS_INIT "-fuse-ld=lld")
3 | set(CMAKE_SHARED_LINKER_FLAGS_INIT "-fuse-ld=lld")
4 | set(CMAKE_C_COMPILER clang)
5 | set(CMAKE_CXX_COMPILER clang++)
6 | set(CLANG_FLAGS "-O2 -fPIC -nodefaultlibs -nostartfiles -target x86_64-linux-gnu --sysroot=${X86_DEV_ROOTFS} -idirafter /usr/include")
7 | set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${CLANG_FLAGS}")
8 | set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CLANG_FLAGS}")
9 | set(CMAKE_C_COMPILER_FORCED TRUE)
10 | set(CMAKE_CXX_COMPILER_FORCED TRUE)
11 |
--------------------------------------------------------------------------------
/app-emulation/FEX/files/toolchain_x86_32.cmake:
--------------------------------------------------------------------------------
1 | set(CMAKE_EXE_LINKER_FLAGS_INIT "-fuse-ld=lld")
2 | set(CMAKE_MODULE_LINKER_FLAGS_INIT "-fuse-ld=lld")
3 | set(CMAKE_SHARED_LINKER_FLAGS_INIT "-fuse-ld=lld")
4 | set(CMAKE_C_COMPILER clang)
5 | set(CMAKE_CXX_COMPILER clang++)
6 | set(CLANG_FLAGS "-O2 -fPIC -nodefaultlibs -target i686-linux-gnu --sysroot=${X86_DEV_ROOTFS} -msse2 -mfpmath=sse -idirafter /usr/include")
7 | set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${CLANG_FLAGS}")
8 | set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CLANG_FLAGS}")
9 | set(CMAKE_C_COMPILER_FORCED TRUE)
10 | set(CMAKE_CXX_COMPILER_FORCED TRUE)
11 |
--------------------------------------------------------------------------------
/sys-boot/m1n1/Manifest:
--------------------------------------------------------------------------------
1 | DIST m1n1-1.5.0.tar.gz 870688 BLAKE2B bb36d14bcfd553daacea0c171c82c9d9e5f72316b374c1e92d7358d5cc3a04d82bfd2bc3efd27c9ce3d90c8b30b53b68d4f95e8421163f8ad58a84221398898a SHA512 27fd6852c8046f59fd742bbeb99fbf4da28df9f2b70ca6ddcc75741e0c40df8e0a112444f1d18e8d47ca9896e55a9c463a1a4daa730e9914f6101445f77f0c6a
2 | DIST m1n1-1.5.2.tar.gz 875016 BLAKE2B 3fb8d8d7eb9a166bae225b0f8f01443fbc241506c976c701dddde9ad50cc0515aef73f3e41dbc63b764f4c84e41a903e59988c91f4984391fdbea8906254f921 SHA512 16b5c35b05325e4754c98269b86a6e27725a208ac058554b5b75b9984cc35daf96bf8a51feae040875c8ac84c38b79a9363020352092abd3cb892a53df214f19
3 |
--------------------------------------------------------------------------------
/dev-libs/libkrunfw/Manifest:
--------------------------------------------------------------------------------
1 | DIST libkrunfw-5.0.0.tar.gz 1828522 BLAKE2B c65a2252a4999654a14afb4fd9599cc03a816e5946ee6e2ce5063f9e9d7169ef4ea2a3ef64b25e17abbd1427a5e5eb68121bcaa6c45b9b004eade2801da37a01 SHA512 0e3ecdedb35565f794b6ed3fd582cf378b3f7f82e0efb92f5552e36200702b47b95a844dd648eba97371b24c8640d6b4d26e1903f91147b3986d7c29e0b0fb4c
2 | DIST linux-6.12.44.tar.xz 148217572 BLAKE2B b00a6d13dafb2947bacc79fc4b0ea0ffd569032df571123edc0bfec59d5601b77d97b46f0e50e521fdb4a0ee7b9dce70767d6928b4e6c81e4328e0a467dca446 SHA512 8578a2522c0f81eab1c10267a6baed8e406be924038dd786ca3026e44b93a6ee70c4b48a164c11aec6109d5b69bc8590bdc58df738c0bb0e1c701d1f38bc5b7e
3 |
--------------------------------------------------------------------------------
/sys-boot/u-boot/Manifest:
--------------------------------------------------------------------------------
1 | DIST u-boot-2025.04_p1.tar.gz 43561044 BLAKE2B 2f9b09d24b9d565482f715e2bf4df24d36b5d03b32d3e7c99ab4144e1db7e8090de099693150fdb8d86634d569b916b23e9dbcbedfd1ec3ddd1d0da4f20d62bd SHA512 bb111d092c8a63b6d70920e448fb56bcb807dd49be7a2f14ef8a363d3cbcd76d6b82032e0d40604e1222450f72181b0819100192d164b385a61dc79710f512e8
2 | DIST u-boot-2025.07_p1.tar.gz 44237018 BLAKE2B 597e89ef2ba604fbdb0be593bacb7137f3703d39ac06c8e3296958a023fe807bfab863e3c675ef5b3893bfd9a25b73b12d2fcdd89804ab5b14269f2e21f32558 SHA512 3dbe246339c9a89a78dbc300eefbc5795923d7023216592c368a820e5f0b25ff467e64c243d0a9eda6492832c14e29f1c0ec349f048e1d53068fb6f20c82a189
3 |
--------------------------------------------------------------------------------
/metadata/news/2024-08-23-charge-threshold-restoration-now-available/2024-08-23-charge-threshold-restoration-now-available.en.txt:
--------------------------------------------------------------------------------
1 | Title: Battery charge threshold persistence now available
2 | Author: James Calligeros
3 | Posted: 2024-08-23
4 | Revision: 1
5 | News-Item-Format: 2.0
6 |
7 | It is now possible to save and restore your set charge end threshold across
8 | boots! If you use systemd, no manual invervention is required. For OpenRC
9 | users, you will need to add the new macsmc-battery service to your default
10 | runlevel. Make sure to start the service manually after installation to
11 | ensure it works!
12 |
--------------------------------------------------------------------------------
/sys-kernel/asahi-sources/metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | jcalligeros99@gmail.com
6 | James Calligeros
7 |
8 |
9 | asahi@gentoo.org
10 |
11 |
14 |
15 | AsahiLinux/linux
16 |
17 |
18 |
--------------------------------------------------------------------------------
/sys-apps/asahi-scripts/Manifest:
--------------------------------------------------------------------------------
1 | DIST asahi-scripts-20250426.1.tar.gz 12609 BLAKE2B 7834ea3ae2650adcabe0cc22cd81e78e354cab6a71e005b00db855d72ce40f9c8d17791e8f70d539e9d180aaff27fc783993547d1d5c26b9b1322d20aa149543 SHA512 b92ff0b2c90a0fc10206cc1124d191d6b7658050e46c6ecd8475a098b9e2670c421288e32acf2d9e51a44355857b5078ec1f200b132b3e9539ec948254d3f91e
2 | DIST asahi-scripts-20250713.tar.gz 12852 BLAKE2B 22eb264d60bd83f2349e8dfc3eb7fb5e6931aef0b4866743791d6378daad2b69d64a486144c957ef268693b8978860e5f2ca645dc191d7471baea51a7959d2f9 SHA512 cb94711a556e4b8b4e171540d7026f93ad03afe3a359e8888bc63c09a17d521af1da3299fd3af89ad1fd3c3cb55b0b508ae307b4a9dacb48d45bbdfa50e4f767
3 |
--------------------------------------------------------------------------------
/games-util/steam/Manifest:
--------------------------------------------------------------------------------
1 | DIST steam-aarch64-111e86cd84f8d04a51a2d5237a35c377543176af.tar.gz 4773 BLAKE2B e3a4b7640bd9014abf37430e2d20f51fa65233ff4daf615b8291d9a92f837a688ed7f38e6b4540428a3cab0c2be78c74c074de228b465ad2a30df07ace75c08d SHA512 8ba834c9cc2a354794af3df56cc0ccc13a6a38297125cb907dab3c8267b646256970b84cd8bf8e86ef490556687b9888d60c6bc60757da6a353b9f793f7ab5aa
2 | DIST steam_1.0.0.81.tar.gz 4034361 BLAKE2B 3bd5deaa2aab8988bb071af3b2400699440af23795bad55f2040581431e2fe1aa02221bb4e4455677207689e9c7383cdf09290fd9b50334ce1ffabcd6c439f4b SHA512 adbb89f3af069d9ff417ca7789a3d275e6485212ec8e08a4b2d110a2f370fc6d1a564895ba58b0548ea1521ee90029a4bb397ef86f29e093907abd562f65d07f
3 |
--------------------------------------------------------------------------------
/metadata/news/2024-04-01-action-required-enable-unstable-globally/2024-04-01-action-required-enable-unstable-globally.en.txt:
--------------------------------------------------------------------------------
1 | Title: ACTION REQUIRED: enable unstable globally
2 | Author: James Calligeros
3 | Posted: 2024-04-01
4 | Revision: 1
5 | News-Item-Format: 2.0
6 |
7 | Due to some QA checks required for getting the overlay added to
8 | api.g.o, we have had to demote some packages back to ~arm64. This was
9 | necessary to prevent pkgcheck from complaining about unresolvable dependencies.
10 |
11 | User Action Required:
12 | 1. Add ACCEPT_KEYWORDS="~arm64" to your make.conf if you haven't already
13 | 2. emerge -auvDN @world
14 |
--------------------------------------------------------------------------------
/sys-apps/asahi-meta/metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | jcalligeros99@gmail.com
6 | James Calligeros
7 |
8 |
12 |
13 | https://github.com/chadmed/asahi-overlay
14 |
15 |
16 |
--------------------------------------------------------------------------------
/virtual/linux-sources/linux-sources-3-r6.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 1999-2022 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI=7
5 |
6 | DESCRIPTION="Virtual for Linux kernel sources"
7 | SLOT="0"
8 | KEYWORDS="arm64"
9 |
10 | RDEPEND="
11 | || (
12 | sys-kernel/gentoo-sources
13 | sys-kernel/vanilla-sources
14 | sys-kernel/git-sources
15 | sys-kernel/mips-sources
16 | sys-kernel/pf-sources
17 | sys-kernel/rt-sources
18 | sys-kernel/zen-sources
19 | sys-kernel/raspberrypi-sources
20 | sys-kernel/gentoo-kernel
21 | sys-kernel/gentoo-kernel-bin
22 | sys-kernel/vanilla-kernel
23 | sys-kernel/asahi-sources
24 | )"
25 |
--------------------------------------------------------------------------------
/media-libs/alsa-ucm-conf-asahi/alsa-ucm-conf-asahi-8.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 1999-2025 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI=8
5 |
6 | DESCRIPTION="ALSA ucm configuration files for Apple silicon devices"
7 | HOMEPAGE="https://alsa-project.org/wiki/Main_Page"
8 | SRC_URI="https://github.com/AsahiLinux/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${PF}.tar.gz"
9 |
10 | S="${WORKDIR}/${PN}-${PV}"
11 |
12 | LICENSE="BSD"
13 | SLOT="0"
14 | KEYWORDS="arm64"
15 |
16 | RDEPEND=">=media-libs/alsa-lib-1.2.1"
17 | DEPEND="${RDEPEND} media-libs/alsa-ucm-conf"
18 |
19 | src_install() {
20 | insinto /usr/share/alsa
21 | doins -r ucm2
22 | }
23 |
--------------------------------------------------------------------------------
/sys-apps/asahi-meta/asahi-meta-2-r11.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 1999-2023 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI=8
5 |
6 | DESCRIPTION="Metapackage for the Asahi support packages"
7 | HOMEPAGE="https://asahilinux.org/"
8 |
9 | LICENSE="metapackage"
10 | SLOT=0
11 | KEYWORDS="arm64"
12 | IUSE="kde +mesa sound"
13 |
14 | RDEPEND="
15 | sys-boot/m1n1
16 | sys-boot/u-boot
17 | sys-apps/asahi-scripts
18 | sys-apps/asahi-configs
19 | sys-firmware/asahi-firmware
20 | media-libs/alsa-ucm-conf-asahi
21 | sound? ( media-libs/asahi-audio )
22 | mesa? (
23 | >=media-libs/mesa-24.1.0_pre20240228[video_cards_asahi(-)]
24 | )
25 | kde? ( kde-plasma/kwin[filecaps] )
26 | "
27 |
--------------------------------------------------------------------------------
/metadata/md5-cache/app-arch/lzfse-1.0:
--------------------------------------------------------------------------------
1 | BDEPEND=dev-build/make >=dev-build/cmake-3.20.5
2 | DEFINED_PHASES=compile configure install prepare test
3 | DESCRIPTION=LZFSE compression utilities
4 | EAPI=8
5 | HOMEPAGE=https://github.com/lzfse/lzfse
6 | INHERIT=cmake
7 | KEYWORDS=arm64
8 | LICENSE=BSD
9 | SLOT=0
10 | SRC_URI=https://github.com/lzfse/lzfse/archive/refs/tags/lzfse-1.0.tar.gz
11 | _eclasses_=toolchain-funcs e56c7649b804f051623c8bc1a1c44084 multilib c19072c3cd7ac5cb21de013f7e9832e0 flag-o-matic 288c54efeb5e2aa70775e39032695ad4 multiprocessing 30ead54fa2e2b5f9cd4e612ffc34d0fe ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 xdg-utils baea6080dd821f5562d715887954c9d3 cmake c7c9a62d6232cac66d4ea32d575c3e7c
12 | _md5_=a18fbf0efbab1676590793f40e17338a
13 |
--------------------------------------------------------------------------------
/metadata/news/2023-07-10-Major-changes-to-the-Asahi-repo/2023-07-10-Major-changes-to-the-Asahi-repo.en.txt:
--------------------------------------------------------------------------------
1 | Title: Major changes to the Asahi Gentoo repo
2 | Author: James Calligeros
3 | Posted: 2023-07-10
4 | Revision: 1
5 | News-Item-Format: 2.0
6 |
7 | You may notice some rather large changes to some packages and ebuilds
8 | inside this repo. This is in an attempt to improve the integration
9 | of the repo with upstream Portage tools such as equery, and perhaps
10 | even attain "official" status on overlays.g.o.
11 |
12 | All reasonable efforts have been made to ensure that packages still
13 | build and install correctly. If, however, something is broken, pleaase
14 | drop by #asahi-alt on OFTC and ping me (@chadmed).
15 |
--------------------------------------------------------------------------------
/sys-apps/asahi-nvram-meta/metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | jcalligeros99@gmail.com
6 | James Calligeros
7 |
8 |
14 |
15 | WhatAmISupposedToPutHere/asahi-nvram
16 |
17 |
18 |
--------------------------------------------------------------------------------
/metadata/md5-cache/sys-apps/asahi-meta-2-r6:
--------------------------------------------------------------------------------
1 | DEFINED_PHASES=-
2 | DESCRIPTION=Metapackage for the Asahi support packages
3 | EAPI=8
4 | HOMEPAGE=https://asahilinux.org/
5 | IUSE=+audio +mesa +sources kernel
6 | KEYWORDS=arm64
7 | LICENSE=metapackage
8 | RDEPEND=sys-boot/m1n1 sys-boot/u-boot sys-apps/asahi-scripts sys-apps/asahi-configs sys-firmware/asahi-firmware kernel? ( sys-kernel/asahi-kernel ) sources? ( sys-kernel/asahi-sources ) media-libs/alsa-ucm-conf-asahi audio? ( media-libs/asahi-audio ) mesa? ( >=media-libs/mesa-24.1.0_pre20240228-r1[video_cards_asahi(-)] kernel? ( >=sys-kernel/asahi-kernel-6.6.0_p15 ) sources? ( >=sys-kernel/asahi-sources-6.6.0_p15 ) )
9 | REQUIRED_USE=sources? ( !kernel ) kernel? ( !sources )
10 | SLOT=0
11 | _md5_=7b16baeec9fab980f365b5cfa116dc4a
12 |
--------------------------------------------------------------------------------
/sys-devel/x86_64-multilib-toolchain/metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | asahi@gentoo.org
6 |
7 |
14 |
15 | cpe:/a:gnu:gcc
16 | cpe:/a:gnu:binutils
17 | cpe:/a:gnu:glibc
18 | cpe:/o:linux:linux_kernel
19 |
20 |
21 |
--------------------------------------------------------------------------------
/metadata/news/2024-04-02-stable-users-you-can-now-remove-global-arm64/2024-04-02-stable-users-you-can-now-remove-global-arm64.en.txt:
--------------------------------------------------------------------------------
1 | Title: Stable users: you can now remove global ~arm64!
2 | Author: James Calligeros
3 | Posted: 2024-04-02
4 | Revision: 1
5 | News-Item-Format: 2.0
6 |
7 | Thanks to the efforts of leio and sam, we now have enough stuff stable
8 | in arm64 for the global ~arm64 requirement to be dropped.
9 |
10 | User Action Required:
11 | 1. Accept ~arm64 for media-libs/mesa::asahi, dev-libs/libclc,
12 | and sys-apps/asahi-meta using /etc/portage/package.accept_keywords/
13 | 2. Drop ACCEPT_KEYWORDS="~arm64" from /etc/portage/make.conf
14 | 2. Sit tight and wait a bit. We will let you know when you can drop
15 | these keyword overrides too!
16 |
--------------------------------------------------------------------------------
/metadata/news/2023-12-03-HDMI-out-now-available/2023-12-03-HDMI-out-now-available.en.txt:
--------------------------------------------------------------------------------
1 | Title: HDMI out now available
2 | Author: James Calligeros
3 | Posted: 2023-12-03
4 | Revision: 3
5 | News-Item-Format: 2.0
6 |
7 | HDMI out is now available on MacBooks with a physical HDMI port
8 | (14" and 16" MacBook Pros), as well as on the M2 series Mac mini and Mac Studio!
9 |
10 | Enabling this support is simple:
11 | 1. emerge -auvDN @world
12 | 2. Build and install the new kernel as usual
13 | 3. Run update-m1n1
14 | 4. Reboot
15 |
16 | Your APFS stub must have the 13.5 firmware package or newer for HDMI
17 | out to work. If your installation is older than August this year, please wait until
18 | the Asahi installer is capable of in-place firmware upgrades. This is being
19 | worked on now.
20 |
--------------------------------------------------------------------------------
/metadata/news/2025-07-25-mesa-asahi-flatpak-changes/2025-07-25-mesa-asahi-flatpak-changes.en.txt:
--------------------------------------------------------------------------------
1 | Title: media-libs/mesa-asahi-flatpak changes
2 | Author: James Calligeros
3 | Posted: 2025-07-25
4 | Revision: 1
5 | News-Item-Format: 2.0
6 |
7 | As of June, the Freedesktop Runtime for Flatpak has shipped with Mesa 25.1.
8 | This negates the need to package a runtime extension, as the Asahi and
9 | Honeykrisp GPU drivers for Apple Silicon are enabled upstream as of this
10 | version.
11 |
12 | As such, the Flatpak runtime extension for version 24.08 will be removed
13 | from your system next time you update it. The extension for 23.08 will
14 | continue to work until 23.08 reaches end of life next month. At that time,
15 | the media-libs/mesa-asahi-flatpak package will be removed entirely.
16 |
--------------------------------------------------------------------------------
/sys-apps/asahi-configs/asahi-configs-2.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 2022 James Calligeros
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI="8"
5 |
6 | DESCRIPTION="Asahi Linux configurations"
7 | HOMEPAGE="https://asahilinux.org/"
8 | LICENSE="MIT"
9 | SLOT="0"
10 | KEYWORDS="arm64"
11 |
12 | src_unpack() {
13 | mkdir "${S}"
14 | cp "${FILESDIR}"/* "${S}/"
15 | }
16 |
17 | src_install() {
18 | insinto /etc/xdg/
19 | newins "${FILESDIR}/kcminput" kcminputrc
20 | newins "${FILESDIR}/baloo" baloofilerc
21 |
22 | insinto /etc/X11/xorg.conf.d/
23 | newins "${FILESDIR}/xorg-modeset" 30-modesetting.conf
24 | newins "${FILESDIR}/xorg-naturalscroll" 20-natural-scrolling.conf
25 |
26 | exeinto /etc/profile.d/
27 | newexe "${FILESDIR}/envvars-${PV}" asahi.sh
28 | }
29 |
--------------------------------------------------------------------------------
/repositories.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | asahi
5 | Asahi Linux overlay providing support packages for Apple Silicon devices
6 | https://github.com/chadmed/asahi-overlay
7 |
8 | chadmed
9 | jcalligeros99@gmail.com
10 |
11 | https://github.com/chadmed/asahi-overlay.git
12 | git://github.com/chadmed/asahi-overlay.git
13 | git@github.com:chadmed/asahi-overlay.git
14 | https://github.com/chadmed/asahi-overlay/commits/main.atom
15 |
16 |
17 |
--------------------------------------------------------------------------------
/media-libs/asahi-audio/asahi-audio-3.4.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 1999-2023 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI=8
5 |
6 | DESCRIPTION="PipeWire/WirePlumber configuration files for Apple Silicon"
7 | HOMEPAGE="https://github.com/AsahiLinux/asahi-audio"
8 | SRC_URI="https://github.com/AsahiLinux/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${PN}-${PV}.tar.gz"
9 | LICENSE="MIT"
10 | SLOT="0/2.0"
11 |
12 | KEYWORDS="arm64"
13 |
14 | RDEPEND="
15 | >=media-video/pipewire-1.0.2[extra,lv2,sound-server]
16 | >=media-video/wireplumber-0.5.2
17 | || (
18 | >=sys-kernel/asahi-sources-6.6.0_p11:*
19 | >=virtual/dist-kernel-6.6.0_p11:asahi
20 | )
21 | >=media-libs/alsa-ucm-conf-asahi-7
22 | >=media-libs/lsp-plugins-1.2.6[lv2]
23 | >=media-libs/bankstown-lv2-1.1.0
24 | sys-apps/speakersafetyd
25 | media-libs/triforce-lv2
26 | "
27 |
28 | DEPEND="
29 | ${RDEPEND}
30 | "
31 |
--------------------------------------------------------------------------------
/app-emulation/fex-rootfs-gentoo/Manifest:
--------------------------------------------------------------------------------
1 | DIST fex-rootfs-gentoo-20250904-chroot.sqfs 582602752 BLAKE2B 28df6e62a2ca46a000f2f93030026610b7b072814a34a90522ad04e23178281f28b9ddd64855ab980784f322329b3b5a9c6f81af92a8a8d8ea0e74a202fadf9a SHA512 bdf3b5d802177351034621e3c39c4603c3fbf7eaa8dd0501005b6333fee49e85d05c26fbde47acfab9e8c0f42d88714d9f26a4fbc30ab354ca5175945a50919a
2 | DIST fex-rootfs-gentoo-20250904-root.sqfs 601165824 BLAKE2B b5f5b8d24c8a8ef0b7053717e1430d9a49e057f066e64d4cbe30a8dece44f262386d1caccbe1aa63717c5b5e6e37082583a0f1f063760d7af6c6397002e1b71f SHA512 1adb0c90d45cd0aae2612ff2418ab7d7d0331436769a9b8bf39744fa5dc5663f04e7cf04beac7f1bbe049683c010aa07617a7b0dcd2aee01e4649d96a5afe69e
3 | DIST fex-rootfs-gentoo-20250904.tar.gz 6329 BLAKE2B 412594d2cd14896b97c4e5a506d407661f1f1fe848e5bcc9f1f7981c9d4b7a76ab2b0fa3eb5ab5074f50c0196fb24b183f3412adbac277fb8950b0042c2058e7 SHA512 1576df322c773d5e1c02cb0f4201540d5f93426903dc437db76c228f2dac045bf88bd8b4b928c30e9cd11d98366fd707f147483c2c0740434fd6fc6c40b0aaa3
4 |
--------------------------------------------------------------------------------
/metadata/md5-cache/media-libs/asahi-audio-1.8:
--------------------------------------------------------------------------------
1 | DEFINED_PHASES=-
2 | DEPEND=!!media-libs/asahi-audio:0 >=media-video/pipewire-0.3.85[extra,lv2,sound-server] media-video/wireplumber:0/0.4 || ( >=sys-kernel/asahi-sources-6.6.0_p11 >=sys-kernel/asahi-kernel-6.6.0_p11 ) >=media-libs/alsa-ucm-conf-asahi-5.0 >=media-libs/lsp-plugins-1.2.6[lv2] >=media-libs/bankstown-lv2-1.0.3 sys-apps/speakersafetyd
3 | DESCRIPTION=PipeWire/WirePlumber configuration files for Apple Silicon
4 | EAPI=8
5 | HOMEPAGE=https://github.com/AsahiLinux/asahi-audio
6 | KEYWORDS=arm64
7 | LICENSE=MIT
8 | RDEPEND=>=media-video/pipewire-0.3.85[extra,lv2,sound-server] media-video/wireplumber:0/0.4 || ( >=sys-kernel/asahi-sources-6.6.0_p11 >=sys-kernel/asahi-kernel-6.6.0_p11 ) >=media-libs/alsa-ucm-conf-asahi-5.0 >=media-libs/lsp-plugins-1.2.6[lv2] >=media-libs/bankstown-lv2-1.0.3 sys-apps/speakersafetyd
9 | SLOT=1.0
10 | SRC_URI=https://github.com/AsahiLinux/asahi-audio/archive/refs/tags/v1.8.tar.gz -> asahi-audio-1.8.tar.gz
11 | _md5_=79563f638c3bbac2c03291c6c8ffa844
12 |
--------------------------------------------------------------------------------
/metadata/news/2024-04-01-action-required-asahi-audio-now-slotted/2024-04-01-action-required-asahi-audio-now-slotted.en.txt:
--------------------------------------------------------------------------------
1 | Title: ACTION REQUIRED: asahi-audio is now SLOTted
2 | Author: James Calligeros
3 | Posted: 2024-04-01
4 | Revision: 1
5 | News-Item-Format: 2.0
6 |
7 | The media-libs/asahi-audio package has been slotted in preparation for
8 | WirePlumber 0.5 to be released for ~arm64. As we had to make a breaking change
9 | in asahi-audio to accommodate the API change for WirePlumber 0.5, development
10 | has diverged into two branches. To reflect this in Gentoo, we have SLOTted
11 | the two branches. If you try to update, you will notice a hard blocker between
12 | media-libs/asahi-audio:0 and media-libs/asahi-audio:1.0.
13 |
14 | User Action Required:
15 | 1. emerge -C media-libs/asahi-audio:0
16 | 2. emerge -1av media-libs/asahi-audio:1.0
17 |
18 | As the installed file trees are identical between the old :0 SLOT and :1.0,
19 | :0 must be manually removed *before* :1.0 can be merged.
20 |
--------------------------------------------------------------------------------
/sys-devel/x86_64-multilib-toolchain/files/gcc-13-fix-cross-fixincludes.patch:
--------------------------------------------------------------------------------
1 | Revert of https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=59e4c98173a79fcaa2c33253261409f38856c384
2 | for now to fix cross fixincludes builds.
3 |
4 | https://gcc.gnu.org/PR115416
5 | https://bugs.gentoo.org/905118
6 | https://bugs.gentoo.org/925204
7 | https://bugs.gentoo.org/926059
8 | --- a/gcc/gcc/Makefile.in
9 | +++ b/gcc/gcc/Makefile.in
10 | @@ -532,11 +532,7 @@ LINKER_PLUGIN_API_H = $(srcdir)/../include/plugin-api.h
11 | # Default native SYSTEM_HEADER_DIR, to be overridden by targets.
12 | NATIVE_SYSTEM_HEADER_DIR = @NATIVE_SYSTEM_HEADER_DIR@
13 | # Default cross SYSTEM_HEADER_DIR, to be overridden by targets.
14 | -ifeq (@includedir@,$(prefix)/include)
15 | - CROSS_SYSTEM_HEADER_DIR = @CROSS_SYSTEM_HEADER_DIR@
16 | -else
17 | - CROSS_SYSTEM_HEADER_DIR = @includedir@
18 | -endif
19 | +CROSS_SYSTEM_HEADER_DIR = @CROSS_SYSTEM_HEADER_DIR@
20 |
21 | # autoconf sets SYSTEM_HEADER_DIR to one of the above.
22 | # Purge it of unnecessary internal relative paths
23 |
--------------------------------------------------------------------------------
/metadata/news/2025-05-10-mesa-now-upstream/2025-05-10-mesa-now-upstream.en.txt:
--------------------------------------------------------------------------------
1 | Title: Upstream Mesa now supports Apple Silicon
2 | Author: James Calligeros
3 | Posted: 2025-05-10
4 | Revision: 1
5 | News-Item-Format: 2.0
6 |
7 | Now that the Asahi UAPI has been merged into the upstream kernel,
8 | the Asahi and Honeykrisp OpenGL and Vulkan drivers are now enabled
9 | in upstream Mesa as of 25.1.0.
10 |
11 | As Honeykrisp is still a rather immature driver, we will continue
12 | packaging our forked version to roll out important fixes faster
13 | than the upstream Mesa release cadence can allow. However, it is
14 | strongly advised that you unmask media-libs/mesa::gentoo to ensure
15 | you always have the latest and greatest version, no matter where
16 | it's coming from.
17 |
18 | If you used the asahi-gentoosupport scripts to install, you can
19 | unmask media-libs/mesa::gentoo by deleting the relevant line
20 | in /etc/portage/package.mask/asahi. Once media-libs/mesa-25.1*
21 | is unmasked in ::gentoo Portage will automatically offer it
22 | to you, superseding the version currently packaged in the overlay.
23 |
--------------------------------------------------------------------------------
/metadata/news/2024-02-11-asahi-kernel-is-now-available/2024-02-11-asahi-kernel-is-now-available.en.txt:
--------------------------------------------------------------------------------
1 | Title: asahi-kernel is now available
2 | Author: James Calligeros
3 | Posted: 2024-02-11
4 | Revision: 2
5 | News-Item-Format: 2.0
6 |
7 | The asahi-kernel dist-kernel is now available for use in unstable.
8 | It uses the config from the upstream ALARM PKGBUILD, which should cover
9 | virtually all use cases in terms of hardware features. Eventually, we
10 | will need to move to the Fedora config, but there's still work to be
11 | done before that can be viable.
12 |
13 | This is the final piece of the puzzle for creating completely vanilla
14 | boot media. Of course, the overlay will still be required for a properly
15 | useable system for quite some time. This merely enables us to offer
16 | LiveCDs bootable on Apple Silicon Macs as well as packaged stage4s for
17 | integration into the Asahi Installer.
18 |
19 | If you wish to use the dist-kernel now, please follow these steps:
20 | 1. Mask off virtual/dist-kernel::gentoo
21 | 2. emerge --deselect sys-kernel/asahi-sources
22 | 3. emerge -av asahi-kernel
23 | 4. Regenerate your GRUB config
24 | 5. emerge -c
25 |
26 |
--------------------------------------------------------------------------------
/sys-apps/asahi-scripts/files/asahi-scripts-macsmc-battery.openrc:
--------------------------------------------------------------------------------
1 | #!/sbin/openrc-run
2 | # Save and restore the SMC's charge end threshold
3 |
4 | extra_commands="save restore"
5 |
6 | depend() {
7 | need udev
8 | }
9 |
10 | has_battery() {
11 | if [ ! -e /sys/class/power_supply/macsmc-battery ]; then
12 | eerror "macsmc-battery was not found!"
13 | return 2
14 | fi
15 |
16 | return 0
17 | }
18 |
19 | restore() {
20 | ebegin "Restoring macsmc-battery saved charge end threshold"
21 |
22 | has_battery || return $?
23 |
24 | if [ ! -e /etc/udev/macsmc-battery.conf ]; then
25 | ewarn "No saved charge end threshold found! Saving current value..."
26 | save
27 | return $?
28 | fi
29 |
30 | sed -e 's/CHARGE_CONTROL_END_THRESHOLD=//' /etc/udev/macsmc-battery.conf > /sys/class/power_supply/macsmc-battery/charge_control_end_threshold
31 | return 0
32 | }
33 |
34 | save() {
35 | ebegin "Saving current macsmc-battery charge end threshold"
36 |
37 | has_battery || return $?
38 |
39 | sed -e 's/^/CHARGE_CONTROL_END_THRESHOLD=/' /sys/class/power_supply/macsmc-battery/charge_control_end_threshold > /etc/udev/macsmc-battery.conf
40 | return 0
41 | }
42 |
43 | start() {
44 | restore
45 | eend $?
46 | }
47 |
48 | stop() {
49 | save
50 | eend $?
51 | }
52 |
--------------------------------------------------------------------------------
/metadata/news/2024-01-04-krunvm-support-has-been-removed/2024-01-04-krunvm-support-has-been-removed.en.txt:
--------------------------------------------------------------------------------
1 | Title: krunvm support has been removed
2 | Author: James Calligeros
3 | Posted: 2024-01-04
4 | Revision: 1
5 | News-Item-Format: 2.0
6 |
7 | We have unfortunately had to remove support for krunvm/libkrun. This is due to
8 | the fact that many of the pieces required to make this work for the Asahi use
9 | case are actually hidden in private branches and repos, which are manually
10 | packaged into tarballs for the Fedora build infrastructure to pick up, rather
11 | than the usual paradigm of specifying a public repository of sources in the RPM
12 | spec file.
13 |
14 | If you have installed krunvm, please uninstall it by following these steps:
15 |
16 | 1. $ buildah unshare
17 | 2. $ krunvm delete [asahi vm name]
18 | 3. $ exit
19 | 4. # emerge -c app-containers/krunvm
20 |
21 | If you added libkrunfw, libkrun or virglrenderer to @world, remember to deselect
22 | and depclean them too.
23 |
24 | Until the branches used for the Fedora COPR are made public, we cannot support
25 | krunvm in Gentoo for the Asahi use case. It is possible that the upstream
26 | versions will land in ::gentoo soon if you are interested in using krunvm
27 | for other things.
28 |
--------------------------------------------------------------------------------
/metadata/news/2024-01-31-Upstreaming-efforts-have-begun/2024-01-31-Upstreaming-efforts-have-begun.en.txt:
--------------------------------------------------------------------------------
1 | Title: Upstreaming efforts have begun!
2 | Author: James Calligeros
3 | Posted: 2024-01-31
4 | Revision: 1
5 | News-Item-Format: 2.0
6 |
7 | Good news everyone! Upstreaming efforts have now begun in earnest! Starting
8 | with easy packages like tiny-dfr and the asahi-nvram suite, we hope to get even more
9 | packages out of this overlay and into ::gentoo in the coming months. The
10 | current focus is to get Apple Silicon-friendly install media up and running.
11 | This will take the form of a Gentoo-flavoured Asahi Installer, as well as a
12 | bootable LiveCD image for more adventurous users.
13 |
14 | User Action Required:
15 | The asahi-nvram-meta package has been deprecated as it was deemed to be
16 | superfluous and unable to be upstreamed. Please add the set of
17 | asahi-nvram packages you use to @world. The asahi-nvram-meta package
18 | will be dropped from the overlay on or after February 9, 2024.
19 |
20 | We have also set up an Official(tm) Gentoo project to better facilitate
21 | integration efforts and provide representation on official Gentoo infrastructure.
22 | More information is available at https://wiki.gentoo.org/wiki/Project:Asahi.
23 |
--------------------------------------------------------------------------------
/metadata/news/2023-11-25-Limited-speaker-support-now-available/2023-11-25-Limited-speaker-support-now-available.en.txt:
--------------------------------------------------------------------------------
1 | Title: Limited speaker support now available
2 | Author: James Calligeros
3 | Posted: 2023-11-25
4 | Revision: 3
5 | News-Item-Format: 2.0
6 |
7 | It's finally here! Speaker support has started rolling out, beginning
8 | with the 13" M1 MacBook Air. More machines are coming soon.
9 |
10 | Enabling/preparing for speaker support is quite simple:
11 | 1. Update your @world set, kernel and m1n1.
12 | 2. Emerge asahi-audio, which will pull in speakersafetyd
13 | 3. Enable speakersafetyd (standard OpenRC/systemd methods apply here)
14 | 4. Reboot
15 |
16 | This only has to be done once. Any enabling of future machines will be
17 | handled with a simple update of the asahi-audio and speakersafetyd packages.
18 |
19 | Both asahi-audio and speakersafetyd are gated behind ~arm64 as they depend
20 | on upstream packages which are also ~arm64.
21 |
22 | Note that asahi-audio depends on Pipewire and Wireplumber. If you are
23 | not using Pipewire for audio, emerge speakersafetyd directly instead. Understand that
24 | this setup will result in extremely low sound quality and is entirely unsupported.
25 | You will not be given assistance unless you are using the DSP graphs through
26 | Pipewire/Wireplumber.
27 |
28 |
--------------------------------------------------------------------------------
/metadata/news/2024-04-30-wireplumber-upgraded-to-0.5/2024-04-30-wireplumber-upgraded-to-0.5.en.txt:
--------------------------------------------------------------------------------
1 | Title: IMPORTANT: media-video/wireplumber has been upgraded to 0.5.2
2 | Author: James Calligeros
3 | Posted: 2024-04-30
4 | Revision: 1
5 | News-Item-Format: 2.0
6 |
7 | As some will be aware, WirePlumber 0.5.0 introduced a significant breaking change
8 | to its entire configuration system, eliminating the use of Lua scripts for
9 | basic config-like actions. This also came with a complete rework of how Lua scripts
10 | are registered with WirePlumber for execution.
11 |
12 | ANY CUSTOM FUNCTIONALITY WHICH RELIES ON WIREPLUMBER'S LUA API WILL BREAK ON UPGRADE
13 |
14 | If you rely on this functionality, please review the WirePlumber documentation on
15 | porting your Lua scripts to the new API and registering them with the system:
16 |
17 | https://pipewire.pages.freedesktop.org/wireplumber/daemon/configuration/migration.html
18 |
19 | Most typical desktop users, including EasyEffects users, should experience no regressions
20 | as a result of this. If for any reason you do, or if you encounter a dependency conflict
21 | when upgrading your system, please open an issue on the overlay:
22 |
23 | https://github.com/chadmed/asahi-overlay/issues
24 |
25 | We are deploying this to ::asahi as a canary for wider deployment to ::gentoo simply
26 | because media-libs/asahi-audio-2.1 relies on the WirePlumber 0.5.x API.
27 |
--------------------------------------------------------------------------------
/sys-firmware/asahi-firmware/asahi-firmware-0.7.9-r1.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 2022 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI=8
5 |
6 | DISTUTILS_USE_PEP517=setuptools
7 | PYTHON_COMPAT=( python3_{10..14} )
8 |
9 | inherit distutils-r1
10 |
11 | _name=asahi-installer
12 |
13 | DESCRIPTION="Asahi FW extraction script"
14 | HOMEPAGE="https://asahilinux.org"
15 | SRC_URI="https://github.com/AsahiLinux/${_name}/archive/refs/tags/v${PV}.tar.gz -> ${PN}-${PV}.tar.gz"
16 | S="${WORKDIR}/${_name}-${PV}"
17 | LICENSE="MIT"
18 | SLOT="0"
19 | KEYWORDS="arm64"
20 |
21 | DEPEND=">=sys-apps/asahi-scripts-20230606"
22 | RDEPEND="${DEPEND}
23 | app-arch/lzfse
24 | sys-kernel/linux-firmware
25 | "
26 |
27 | src_install() {
28 | distutils-r1_src_install
29 | keepdir /lib/firmware/vendor/
30 | }
31 |
32 | pkg_postinst() {
33 | elog "Asahi vendor firmware update script"
34 | elog "Please run 'asahi-fwupdate' after each update of this package."
35 |
36 | if [ -e ${ROOT}/bin/update-vendor-fw -o -e ${ROOT}/etc/local.d/apple-firmware.start ]; then
37 | ewarn "Please remember to remove '/{s}bin/update-vendor-fw' and"
38 | ewarn "'/etc/local.d/apple-firmware.start'"
39 | fi
40 |
41 | if [ -e ${ROOT}/etc/local.d/asahi-firmware.start ]; then
42 | ewarn "Please remove /etc/local.d/asahi-firmware.start as it is"
43 | ewarn "obsolete and no longer required."
44 | fi
45 |
46 | if [ -e ${ROOT}/sbin/update-vendor-firmware ]; then
47 | ewarn "Please remove /sbin/update-vendor-firmware"
48 | fi
49 | }
50 |
--------------------------------------------------------------------------------
/profiles/package.mask:
--------------------------------------------------------------------------------
1 | # Mask all asahi-overlay media-libs/virglrenderer versions. virglrenderer 1.2.0
2 | # fully supports asahi so the gentoo media-libs/virglrenderer-1.2.0 or later
3 | # ebuild can be used.
4 | # Install media-libs/virglrenderer from the gentoo repository.
5 | =media-libs/virglrenderer-1.1.1_p20250806
6 | =media-libs/virglrenderer-1.1.1_p202504240
7 | =media-libs/virglrenderer-1.1.1_p202508060
8 |
9 | # media-libs/mesa-asahi-flatpak is no longer necessary as the supported flatpak
10 | # FDO runtimes (24.08 and 25.08) include mesa-25.2 with full asahi support.
11 | # Please uninstall media-libs/mesa-asahi-flatpak.
12 | =media-libs/mesa-asahi-flatpak-25.1.0_pre20250425-r1
13 |
14 | # media-libs/mesa-25.1.9 and media-libs/mesa-25.2.0 in gentoo have full asahi
15 | # GPU support. The stable media-libs/mesa-25.1.7 (as of writing this) only
16 | # misses virtgpu support.
17 | # Install media-libs/mesa from the gentoo repository.
18 | =media-libs/mesa-25.1.0-r100
19 |
20 | # app-emulation/fex-rootfs-mesa-asahi-20250425 is incompatible with the
21 | # upstream asahi virtgpu DRM native context protocol.
22 | # Update app-emulation/fex-rootfs-gentoo to 20250904 or later and uninstall
23 | # app-emulation/fex-rootfs-mesa-asahi.
24 | =app-emulation/fex-rootfs-gentoo-20250425
25 | =app-emulation/fex-rootfs-mesa-asahi-20250425
26 |
27 | # James Calligeros (2025-12-10)
28 | # No longer required since FEX is now unconditionally built with clang/LLVM.
29 | # Will be removed 2026-01-01.
30 | sys-devel/x86_64-multilib-toolchain
31 |
--------------------------------------------------------------------------------
/sys-boot/m1n1/m1n1-1.5.0.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 2022 James Calligeros
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI="7"
5 |
6 | DESCRIPTION="Apple Silicon bootloader and experimentation playground"
7 | HOMEPAGE="https://asahilinux.org/"
8 | SRC_URI="https://github.com/AsahiLinux/m1n1/archive/refs/tags/v${PV}.tar.gz -> ${PN}-${PV}.tar.gz"
9 | LICENSE="MIT"
10 | SLOT="0"
11 | KEYWORDS="arm64"
12 | IUSE="clang"
13 |
14 | BDEPEND="dev-build/make"
15 |
16 | RDEPEND="
17 | sys-boot/u-boot
18 | || (
19 | sys-kernel/asahi-sources
20 | virtual/dist-kernel:asahi
21 | )
22 | "
23 |
24 | BDEPEND="${BDEPEND}
25 | clang? ( llvm-core/clang )
26 | "
27 |
28 | src_compile() {
29 | cd "${S}" || die
30 | if use clang; then
31 | emake USE_CLANG=1 \
32 | RELEASE=1 \
33 | ARCH="${CHOST}"
34 | else
35 | emake USE_CLANG=0 \
36 | RELEASE=1 \
37 | ARCH="${CHOST}-"
38 | fi
39 | }
40 |
41 | src_install() {
42 | dodir /usr/lib/asahi-boot
43 | cp "${S}"/build/m1n1.bin "${ED}"/usr/lib/asahi-boot/m1n1.bin || die
44 | }
45 |
46 | pkg_postinst() {
47 | elog "m1n1 has been installed at /usr/lib/asahi-boot/m1n1.bin"
48 | elog "You must run update-m1n1 for the new version to be installed"
49 | elog "in the ESP."
50 | elog "Please see the Asahi Linux Wiki for more information."
51 | }
52 |
53 | pkg_postrm() {
54 | elog "m1n1 has been removed from /usr/lib/asahi-boot/ but has not"
55 | elog "been removed from the ESP. You need to do this manually, though"
56 | elog "you really shouldn't."
57 | }
58 |
--------------------------------------------------------------------------------
/sys-boot/m1n1/m1n1-1.5.2.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 2022 James Calligeros
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI="7"
5 |
6 | DESCRIPTION="Apple Silicon bootloader and experimentation playground"
7 | HOMEPAGE="https://asahilinux.org/"
8 | SRC_URI="https://github.com/AsahiLinux/m1n1/archive/refs/tags/v${PV}.tar.gz -> ${PN}-${PV}.tar.gz"
9 | LICENSE="MIT"
10 | SLOT="0"
11 | KEYWORDS="~arm64"
12 | IUSE="clang"
13 |
14 | BDEPEND="dev-build/make"
15 |
16 | RDEPEND="
17 | sys-boot/u-boot
18 | || (
19 | sys-kernel/asahi-sources
20 | virtual/dist-kernel:asahi
21 | )
22 | "
23 |
24 | BDEPEND="${BDEPEND}
25 | clang? ( llvm-core/clang )
26 | "
27 |
28 | src_compile() {
29 | cd "${S}" || die
30 | if use clang; then
31 | emake USE_CLANG=1 \
32 | RELEASE=1 \
33 | ARCH="${CHOST}"
34 | else
35 | emake USE_CLANG=0 \
36 | RELEASE=1 \
37 | ARCH="${CHOST}-"
38 | fi
39 | }
40 |
41 | src_install() {
42 | dodir /usr/lib/asahi-boot
43 | cp "${S}"/build/m1n1.bin "${ED}"/usr/lib/asahi-boot/m1n1.bin || die
44 | }
45 |
46 | pkg_postinst() {
47 | elog "m1n1 has been installed at /usr/lib/asahi-boot/m1n1.bin"
48 | elog "You must run update-m1n1 for the new version to be installed"
49 | elog "in the ESP."
50 | elog "Please see the Asahi Linux Wiki for more information."
51 | }
52 |
53 | pkg_postrm() {
54 | elog "m1n1 has been removed from /usr/lib/asahi-boot/ but has not"
55 | elog "been removed from the ESP. You need to do this manually, though"
56 | elog "you really shouldn't."
57 | }
58 |
--------------------------------------------------------------------------------
/media-libs/widevine-installer/widevine-installer-0.2.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 1999-2023 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI=8
5 |
6 | MY_HASH="eab8c668ad3f9db27a444ee1f94b82d8f3ab5336"
7 |
8 | DESCRIPTION="Widevine installer for AArch64 systems"
9 | HOMEPAGE="https://asahilinux.org/"
10 |
11 | SRC_URI="https://github.com/AsahiLinux/widevine-installer/archive/${MY_HASH}.tar.gz -> ${PN}-${PV}.tar.gz"
12 |
13 | LICENSE="MIT"
14 | SLOT=0
15 |
16 | KEYWORDS="arm64"
17 |
18 | # Widevine only works with glibc 2.36 or above
19 | RDEPEND="
20 | >=sys-libs/glibc-2.36
21 | sys-fs/squashfs-tools[zstd]
22 | "
23 |
24 | PATCHES="${FILESDIR}/disable-configs.patch"
25 |
26 | src_unpack() {
27 | default
28 | mv "${PN}-${MY_HASH}" "${PN}-${PV}"
29 | }
30 |
31 | src_install() {
32 | dodir /opt/widevine-installer/
33 |
34 | keepdir /opt/widevine/WidevineCdm/
35 | insinto /usr/"$(get_libdir)"/chromium-browser/
36 | dosym -r /opt/widevine/WidevineCdm/ /usr/lib64/chromium-browser/WidevineCdm
37 |
38 | insinto /etc/profile.d/
39 | doins "${S}"/conf/gmpwidevine.sh
40 |
41 | insinto /usr/"$(get_libdir)"/firefox/defaults/pref/
42 | doins "${S}"/conf/gmpwidevine.js
43 |
44 | insinto /usr/libexec/widevine-installer/
45 | doins "${S}"/widevine_fixup.py
46 |
47 | exeinto /opt/widevine-installer/
48 | doexe "${S}"/widevine-installer
49 |
50 | dosym -r /opt/widevine-installer/widevine-installer /opt/bin/widevine-installer
51 | }
52 |
53 | pkg_postinst() {
54 | ewarn "Widevine has NOT been installed. You need to run /opt/bin/widevine-installer."
55 | }
56 |
--------------------------------------------------------------------------------
/metadata/news/2023-10-09-Webcam-now-available/2023-10-09-Webcam-now-available.en.txt:
--------------------------------------------------------------------------------
1 | Title: Webcam now available on Asahi
2 | Author: James Calligeros
3 | Posted: 2023-10-9
4 | Revision: 3
5 | News-Item-Format: 2.0
6 |
7 | Webcam support has finally been merged into the Asahi kernel! All users of
8 | machines equipped with a webcam can begin enjoying this functionality by upgrading
9 | to asahi-sources-6.5.0_p11.
10 |
11 | Requirements:
12 | - asahi-sources-6.5.0_p11 or later
13 | - asahi-firmware-0.6.8 or later
14 |
15 | If you installed Asahi on 21 August 2023 or later, simply update @world run
16 | asahi-fwupdate as root, then reboot. No further action is necessary.
17 |
18 | If your install predates 21 August 2023, some additional work will be required
19 | for you to get the maximum possible quality out of your webcam. To retrieve the calibration
20 | blobs for your machine, please follow these steps after updating your @world set:
21 |
22 | 1. Boot into macOS
23 | 2. Mount your ESP to /Volumes/EFI
24 | 3. cp /usr/sbin/appleh13camerad /Volumes/EFI/
25 | 4. Reboot into Linux and mount the ESP to /boot/efi/
26 | 5. mkdir /tmp/firmware
27 | 6. cd /tmp/firmware
28 | 7. mv /boot/efi/appleh13camerad .
29 | 8. sudo tar xzf /boot/efi/asahi/all_firmware.tar.gz
30 | 9. sudo tar czf /boot/efi/asahi/all_firmware.tar.gz .
31 | 10. sudo asahi-fwupdate
32 | 11. Reboot for the firmware loading script to pick up the changes
33 |
34 | You should now be able to enjoy your webcam at full quality. Note that your webcam will still work
35 | even without completing these steps, however it will produce a much lower quality image.
36 |
--------------------------------------------------------------------------------
/dev-libs/libkrunfw/libkrunfw-5.0.0.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 1999-2025 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI=8
5 |
6 | PYTHON_COMPAT=( python3_{11..14} )
7 |
8 | inherit python-any-r1 toolchain-funcs
9 |
10 | DESCRIPTION="A dynamic library bundling the guest payload consumed by libkrun"
11 | HOMEPAGE="https://github.com/containers/libkrunfw"
12 |
13 | KERNEL_VERSION=linux-6.12.44
14 |
15 | SRC_URI="
16 | https://cdn.kernel.org/pub/linux/kernel/v6.x/${KERNEL_VERSION}.tar.xz
17 | https://github.com/containers/libkrunfw/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz
18 | "
19 |
20 | LICENSE="GPL-2 LGPL-2.1"
21 | SLOT="0"
22 | KEYWORDS="-* ~amd64 ~arm64"
23 |
24 | BDEPEND="
25 | app-alternatives/bc
26 | app-alternatives/cpio
27 | dev-build/make
28 | dev-lang/perl
29 | $(python_gen_any_dep '
30 | dev-python/pyelftools[${PYTHON_USEDEP}]
31 | ')
32 | sys-devel/bison
33 | sys-devel/flex
34 | >=sys-libs/ncurses-5.2
35 | virtual/libelf
36 | virtual/pkgconfig
37 | "
38 |
39 | PATCHES="
40 | ${FILESDIR}/${PN}-4.5.1-do-not-strip.patch
41 | "
42 |
43 | python_check_deps() {
44 | python_has_version "dev-python/pyelftools[${PYTHON_USEDEP}]"
45 | }
46 |
47 | src_unpack() {
48 | unpack "${P}.tar.gz"
49 | }
50 |
51 | src_compile() {
52 | unset ARCH
53 | emake PREFIX=/usr KERNEL_TARBALL="${DISTDIR}/${KERNEL_VERSION}.tar.xz" $(tc-is-clang && echo LLVM=1)
54 | }
55 |
56 | src_install() {
57 | emake DESTDIR="${D}" PREFIX=/usr install
58 | # libkrun still expects libkrunfw.so.4 for some reason, but there
59 | # is no API or ABI here to worry about
60 | dosym -r /usr/lib64/libkrunfw.so.5 /usr/lib64/libkrunfw.so.4
61 | }
62 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Asahi Linux Gentoo Overlay
2 |
3 | An overlay for Gentoo providing packages to better support Apple Silicon
4 | devices.
5 |
6 | ## Installation
7 | If you used [asahi-gentoosupport](https://github.com/chadmed/asahi-gentoosupport), you should not need to
8 | do anything. That script sets up this repo automatically. For all other users:
9 |
10 | 1. Go clone asahi-gentoosupport
11 | 2. Copy `resources/package.mask` and `resources/package.use` to their homes in
12 | `/etc/portage/` (note: the `package.*` nodes in `/etc/portage/` should be folders)
13 | 3. Install `app-eselect/eselect-repository`
14 | 4. Run `eselect repository enable asahi`
15 | 5. Run `emaint sync -r asahi`
16 |
17 | Enjoy!
18 |
19 | If you intend to use a DE/WM with your system, please make sure to edit
20 | `package.use` according to the instructions contained therein.
21 |
22 | ## Usage
23 | No manual intervention is required to use this repo correctly as it
24 | takes precedence over the Gentoo overlay. You can override this
25 | behaviour and install a vanilla version of a package by appending
26 | `::gentoo` to the package atom.
27 |
28 | ### Installing software
29 | * To install our version of Mesa, you would run:
30 | ```shell
31 | emerge -av mesa
32 | ```
33 |
34 | * To use the default Gentoo ebuild for Mesa instead, you would run:
35 | ```shell
36 | emerge -av media-libs/mesa::gentoo
37 | ```
38 |
39 | ### Updating software
40 | In most cases, updating software involves nothing more than synchronising
41 | the repo and updating the world set as you would on any other machine.
42 |
43 | After updating m1n1, U-Boot or the kernel, it is important to run `update-m1n1`
44 | as root to ensure that m1n1, U-Boot and the DTBs are installed to the ESP.
45 |
--------------------------------------------------------------------------------
/games-util/steam/steam-0.0.2.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 1999-2025 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI=8
5 |
6 | inherit desktop xdg
7 |
8 | STEAMVER="1.0.0.81"
9 | ARM64_WRAPPER_COMMIT="111e86cd84f8d04a51a2d5237a35c377543176af"
10 |
11 | DESCRIPTION="Steam launcher bundled with AArch64/ARM64 wrapper for Asahi Linux systems"
12 | HOMEPAGE="
13 | https://steampowered.com/
14 | https://github.com/chadmed/steam-aarch64
15 | "
16 |
17 | SRC_URI="
18 | https://repo.steampowered.com/steam/archive/stable/steam_${STEAMVER}.tar.gz
19 | https://github.com/chadmed/steam-aarch64/archive/${ARM64_WRAPPER_COMMIT}.tar.gz -> ${PN}-aarch64-${ARM64_WRAPPER_COMMIT}.tar.gz
20 | "
21 |
22 | S="${WORKDIR}"
23 |
24 | LICENSE="GPL-2+ ValveSteamLicense MIT"
25 | SLOT="0"
26 |
27 | KEYWORDS="-* ~arm64"
28 |
29 | RDEPEND="
30 | app-emulation/FEX
31 | app-emulation/muvm
32 | || (
33 | gnome-extra/zenity
34 | kde-apps/kdialog
35 | )
36 | "
37 |
38 | src_configure() {
39 | true
40 | }
41 | src_compile() {
42 | true
43 | }
44 |
45 | src_install() {
46 | cd "${WORKDIR}/steam-launcher" || die
47 | emake DESTDIR="${D}" \
48 | install-bin \
49 | install-docs \
50 | install-icons \
51 | install-bootstrap \
52 | install-desktop \
53 | install-appdata
54 |
55 | # Install the wrapper manually
56 | cd "${WORKDIR}/steam-aarch64-${ARM64_WRAPPER_COMMIT}" || die
57 | dobin {steam-aarch64,steam-muvm}
58 | newmenu steam-aarch64.desktop steam.desktop
59 | }
60 |
61 | pkg_postinst() {
62 | xdg_pkg_postinst
63 | einfo "Steam has been installed. To launch steam, use the desktop entry or"
64 | einfo "run /usr/bin/steam-aarch64 from the terminal."
65 | }
66 |
67 | pkg_postrm() {
68 | xdg_pkg_postrm
69 | }
70 |
--------------------------------------------------------------------------------
/metadata/md5-cache/sys-firmware/asahi-firmware-0.6.25-r1:
--------------------------------------------------------------------------------
1 | BDEPEND=python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) >=dev-python/gpep517-15[python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?] >=dev-python/setuptools-67.8.0-r1[python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?]
2 | DEFINED_PHASES=compile configure install postinst prepare test
3 | DEPEND=>=sys-apps/asahi-scripts-20230606
4 | DESCRIPTION=Asahi FW extraction script
5 | EAPI=8
6 | HOMEPAGE=https://asahilinux.org
7 | INHERIT=distutils-r1
8 | IUSE=python_targets_python3_10 python_targets_python3_11 python_targets_python3_12
9 | KEYWORDS=arm64
10 | LICENSE=MIT
11 | RDEPEND=>=sys-apps/asahi-scripts-20230606 app-arch/lzfse sys-kernel/linux-firmware python_targets_python3_10? ( dev-lang/python:3.10 ) python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 )
12 | REQUIRED_USE=|| ( python_targets_python3_10 python_targets_python3_11 python_targets_python3_12 )
13 | SLOT=0
14 | SRC_URI=https://github.com/AsahiLinux/asahi-installer/archive/refs/tags/v0.6.25.tar.gz -> asahi-firmware-0.6.25.tar.gz
15 | _eclasses_=toolchain-funcs e56c7649b804f051623c8bc1a1c44084 multilib c19072c3cd7ac5cb21de013f7e9832e0 flag-o-matic 288c54efeb5e2aa70775e39032695ad4 out-of-source-utils 1a9007554652a6e627edbccb3c25a439 multibuild d67e78a235f541871c7dfe4cf7931489 multiprocessing 30ead54fa2e2b5f9cd4e612ffc34d0fe ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 python-utils-r1 8904b60325f22500b0c3ad4b68a42448 python-r1 8a28fa6d3e3bc96ff8a7eff2badbe71f distutils-r1 8262de2e5a28df8624b96e031d8d0f2b
16 | _md5_=573f2de55cd54b0e4c8a4bd5944da631
17 |
--------------------------------------------------------------------------------
/sys-boot/u-boot/u-boot-2025.07_p1.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 1999-2025 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI="8"
5 | PYTHON_COMPAT=( python3_{10..14} )
6 |
7 | # $PV is expected to be of following form: 2023.07_p2
8 | MY_TAG="$(ver_cut 4)"
9 | MY_P="asahi-v$(ver_cut 1-2)-${MY_TAG}"
10 |
11 | DESCRIPTION="Asahi Linux fork of Das U-Boot"
12 | HOMEPAGE="https://asahilinux.org/"
13 | SRC_URI="https://github.com/AsahiLinux/u-boot/archive/refs/tags/${MY_P}.tar.gz -> ${PN}-${PV}.tar.gz"
14 | LICENSE="GPL-2"
15 | SLOT="0"
16 |
17 | KEYWORDS="~arm64"
18 |
19 | PATCHES=(
20 | )
21 |
22 | BDEPEND="
23 | app-arch/cpio
24 | dev-lang/perl
25 | sys-devel/bc
26 | sys-devel/bison
27 | sys-devel/flex
28 | dev-build/make
29 | >=sys-libs/ncurses-5.2
30 | virtual/libelf
31 | virtual/pkgconfig
32 | sys-apps/dtc
33 | dev-vcs/git"
34 |
35 | RDEPEND="${BDEPEND}
36 | sys-apps/asahi-scripts"
37 |
38 | src_unpack() {
39 | unpack ${PN}-${PV}.tar.gz
40 | mv u-boot-${MY_P} ${PN}-${PV}
41 | }
42 |
43 | src_configure() {
44 | emake apple_m1_defconfig
45 | }
46 |
47 | src_compile() {
48 | cd "${S}" || die
49 | emake
50 | }
51 |
52 | src_install() {
53 | dodir /usr/lib/asahi-boot
54 | cp "${S}"/u-boot-nodtb.bin "${ED}"/usr/lib/asahi-boot/u-boot-nodtb.bin || die
55 | }
56 |
57 | pkg_postinst() {
58 | elog "U-Boot has been installed to /usr/lib/asahi-boot/u-boot-nodtb.bin."
59 | elog "You must run update-m1n1 for the new version to be installed"
60 | elog "in the ESP."
61 | elog "Please see the Asahi Linux Wiki for more information."
62 | }
63 |
64 | pkg_postrm() {
65 | elog "U-Boot has been removed from /usr/lib/asahi-boot/ but has not"
66 | elog "been removed from the ESP. You need to do this manually, though"
67 | elog "you really shouldn't."
68 | }
69 |
--------------------------------------------------------------------------------
/sys-kernel/asahi-sources/asahi-sources-6.17.11_p1.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 2023-2025 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI="8"
5 | ETYPE="sources"
6 |
7 | CKV="$(ver_cut 1-3)"
8 | K_SECURITY_UNSUPPORTED="1"
9 | K_WANT_GENPATCHES="base extras"
10 | K_GENPATCHES_VER="14"
11 | K_NODRYRUN="1"
12 |
13 | RUST_MIN_VER="1.85.0"
14 | RUST_REQ_USE='rust-src,rustfmt'
15 |
16 | inherit kernel-2 rust
17 | detect_version
18 | detect_arch
19 |
20 | if [[ ${PV} != ${PV/_rc} ]] ; then
21 | # $PV is expected to be of following form: 6.0_rc5_p1
22 | MY_TAG="$(ver_cut 6)"
23 | MY_BASE="$(ver_rs 2 - $(ver_cut 1-4))"
24 | else
25 | # $PV is expected to be of following form: 5.19.0_p1
26 | MY_TAG="$(ver_cut 5)"
27 | if [[ "$(ver_cut 3)" == "0" ]] ; then
28 | MY_BASE="$(ver_cut 1-2)"
29 | else
30 | MY_BASE="$(ver_cut 1-3)"
31 | fi
32 | fi
33 |
34 | EXTRAVERSION="-asahi-${MY_TAG}"
35 |
36 | ASAHI_TAG="asahi-${MY_BASE}-${MY_TAG}"
37 |
38 | DESCRIPTION="Asahi Linux kernel sources"
39 | HOMEPAGE="https://asahilinux.org"
40 | SRC_URI="${KERNEL_URI} ${GENPATCHES_URI} ${ARCH_URI}
41 | https://github.com/AsahiLinux/linux/compare/v${MY_BASE}...${ASAHI_TAG}.diff
42 | -> linux-${ASAHI_TAG}.diff
43 | "
44 | KV_FULL="${PVR/_p/-asahi-}"
45 | S="${WORKDIR}/linux-${KV_FULL}"
46 |
47 | KEYWORDS="~amd64 ~arm64"
48 |
49 | DEPEND="
50 | ${DEPEND}
51 | dev-util/bindgen
52 | "
53 |
54 | UNIPATCH_STRICTORDER="yes"
55 | UNIPATCH_LIST="
56 | ${FILESDIR}/asahi-6.8-config-gentoo-Drop-RANDSTRUCT-from-GENTOO_KERNEL_SEL.patch
57 | ${DISTDIR}/linux-${ASAHI_TAG}.diff
58 | "
59 |
60 | pkg_postinst() {
61 | einfo "For more information about Asahi Linux please visit ${HOMEPAGE},"
62 | einfo "or consult the Wiki at https://github.com/AsahiLinux/docs/wiki."
63 | kernel-2_pkg_postinst
64 | }
65 |
--------------------------------------------------------------------------------
/sys-kernel/asahi-sources/asahi-sources-6.17.7_p2.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 2023-2025 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI="8"
5 | ETYPE="sources"
6 |
7 | CKV="$(ver_cut 1-3)"
8 | K_SECURITY_UNSUPPORTED="1"
9 | K_WANT_GENPATCHES="base extras"
10 | K_GENPATCHES_VER="10"
11 | K_NODRYRUN="1"
12 |
13 | RUST_MIN_VER="1.85.0"
14 | RUST_REQ_USE='rust-src,rustfmt'
15 |
16 | inherit kernel-2 rust
17 | detect_version
18 | detect_arch
19 |
20 | if [[ ${PV} != ${PV/_rc} ]] ; then
21 | # $PV is expected to be of following form: 6.0_rc5_p1
22 | MY_TAG="$(ver_cut 6)"
23 | MY_BASE="$(ver_rs 2 - $(ver_cut 1-4))"
24 | else
25 | # $PV is expected to be of following form: 5.19.0_p1
26 | MY_TAG="$(ver_cut 5)"
27 | if [[ "$(ver_cut 3)" == "0" ]] ; then
28 | MY_BASE="$(ver_cut 1-2)"
29 | else
30 | MY_BASE="$(ver_cut 1-3)"
31 | fi
32 | fi
33 |
34 | EXTRAVERSION="-asahi-${MY_TAG}"
35 |
36 | ASAHI_TAG="asahi-${MY_BASE}-${MY_TAG}"
37 |
38 | DESCRIPTION="Asahi Linux kernel sources"
39 | HOMEPAGE="https://asahilinux.org"
40 | SRC_URI="${KERNEL_URI} ${GENPATCHES_URI} ${ARCH_URI}
41 | https://github.com/AsahiLinux/linux/compare/v${MY_BASE}...${ASAHI_TAG}.diff
42 | -> linux-${ASAHI_TAG}.diff
43 | "
44 | KV_FULL="${PVR/_p/-asahi-}"
45 | S="${WORKDIR}/linux-${KV_FULL}"
46 |
47 | KEYWORDS="amd64 arm64"
48 |
49 | DEPEND="
50 | ${DEPEND}
51 | dev-util/bindgen
52 | "
53 |
54 | UNIPATCH_STRICTORDER="yes"
55 | UNIPATCH_LIST="
56 | ${FILESDIR}/asahi-6.8-config-gentoo-Drop-RANDSTRUCT-from-GENTOO_KERNEL_SEL.patch
57 | ${DISTDIR}/linux-${ASAHI_TAG}.diff
58 | "
59 |
60 | pkg_postinst() {
61 | einfo "For more information about Asahi Linux please visit ${HOMEPAGE},"
62 | einfo "or consult the Wiki at https://github.com/AsahiLinux/docs/wiki."
63 | kernel-2_pkg_postinst
64 | }
65 |
--------------------------------------------------------------------------------
/sys-boot/u-boot/u-boot-2025.04_p1.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 2023 James Calligeros
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI="8"
5 | PYTHON_COMPAT=( python3_{10..14} )
6 |
7 | # $PV is expected to be of following form: 2023.07_p2
8 | MY_TAG="$(ver_cut 4)"
9 | MY_P="asahi-v$(ver_cut 1-2)-${MY_TAG}"
10 |
11 | DESCRIPTION="Asahi Linux fork of Das U-Boot"
12 | HOMEPAGE="https://asahilinux.org/"
13 | SRC_URI="https://github.com/AsahiLinux/u-boot/archive/refs/tags/${MY_P}.tar.gz -> ${PN}-${PV}.tar.gz"
14 | LICENSE="GPL-2"
15 | SLOT="0"
16 |
17 | KEYWORDS="arm64"
18 |
19 | PATCHES=(
20 | )
21 |
22 | BDEPEND="
23 | app-arch/cpio
24 | dev-lang/perl
25 | sys-devel/bc
26 | sys-devel/bison
27 | sys-devel/flex
28 | dev-build/make
29 | >=sys-libs/ncurses-5.2
30 | virtual/libelf
31 | virtual/pkgconfig
32 | sys-apps/dtc
33 | dev-vcs/git"
34 |
35 | RDEPEND="${BDEPEND}
36 | sys-apps/asahi-scripts"
37 |
38 | src_unpack() {
39 | unpack ${PN}-${PV}.tar.gz
40 | mv u-boot-${MY_P} ${PN}-${PV}
41 | }
42 |
43 | src_configure() {
44 | emake apple_m1_defconfig
45 | }
46 |
47 | src_compile() {
48 | cd "${S}" || die
49 | emake
50 | }
51 |
52 | src_install() {
53 | dodir /usr/lib/asahi-boot
54 | cp "${S}"/u-boot-nodtb.bin "${ED}"/usr/lib/asahi-boot/u-boot-nodtb.bin || die
55 | }
56 |
57 | pkg_postinst() {
58 | elog "U-Boot has been installed to /usr/lib/asahi-boot/u-boot-nodtb.bin."
59 | elog "You must run update-m1n1 for the new version to be installed"
60 | elog "in the ESP."
61 | elog "Please see the Asahi Linux Wiki for more information."
62 | }
63 |
64 | pkg_postrm() {
65 | elog "U-Boot has been removed from /usr/lib/asahi-boot/ but has not"
66 | elog "been removed from the ESP. You need to do this manually, though"
67 | elog "you really shouldn't."
68 | }
69 |
--------------------------------------------------------------------------------
/sys-apps/asahi-scripts/asahi-scripts-20250426.1.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 2022-2025 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI="8"
5 |
6 | DESCRIPTION="Apple Silicon support scripts"
7 | HOMEPAGE="https://asahilinux.org/"
8 | SRC_URI="https://github.com/AsahiLinux/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
9 |
10 | LICENSE="MIT"
11 | SLOT="0"
12 | KEYWORDS="arm64"
13 |
14 | BDEPEND="
15 | virtual/udev
16 | "
17 |
18 | src_install() {
19 | emake DESTDIR="${D}" PREFIX="/usr" SYS_PREFIX="" install-dracut
20 | emake DESTDIR="${D}" PREFIX="/usr" install-macsmc-battery
21 |
22 | newinitd "${FILESDIR}/${PN}-macsmc-battery.openrc" "macsmc-battery"
23 |
24 | # install gentoo sys config
25 | insinto /etc/default
26 | newins "${FILESDIR}"/update-m1n1.gentoo.conf update-m1n1
27 | exeinto /usr/lib/kernel/install.d/
28 | doexe "${FILESDIR}/99-update-m1n1.install"
29 | }
30 |
31 | pkg_postinst() {
32 | if [[ ! -e ${ROOT}/usr/lib/asahi-boot ]]; then
33 | ewarn "These scripts are intended for use on Apple Silicon"
34 | ewarn "machines with the Asahi tooling installed! Please"
35 | ewarn "install sys-boot/m1n1, sys-boot/u-boot and"
36 | ewarn "sys-firmware/asahi-firmware!"
37 | fi
38 |
39 | elog "Asahi scripts have been installed to /usr/. For more"
40 | elog "information on how to use them, please visit the Wiki."
41 |
42 | if [[ -e ${ROOT}/usr/local/share/asahi-scripts/functions.sh ]]; then
43 | ewarn "You have upgraded to a new version of ${PN}. Please"
44 | ewarn "remove /usr/local/share/asahi-scripts/,"
45 | ewarn " /usr/local/bin/update-m1n1, and"
46 | ewarn "/usr/local/bin/update-vendor-firmware."
47 | fi
48 |
49 | if [[ -e ${ROOT}/etc/dracut.conf.d/10-apple.conf ]]; then
50 | ewarn "Please remove /etc/dracut.conf.d/10-apple.conf"
51 | fi
52 | }
53 |
--------------------------------------------------------------------------------
/sys-apps/asahi-scripts/asahi-scripts-20250713.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 2022-2025 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI="8"
5 |
6 | DESCRIPTION="Apple Silicon support scripts"
7 | HOMEPAGE="https://asahilinux.org/"
8 | SRC_URI="https://github.com/AsahiLinux/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
9 |
10 | LICENSE="MIT"
11 | SLOT="0"
12 | KEYWORDS="~arm64"
13 |
14 | BDEPEND="
15 | virtual/udev
16 | "
17 |
18 | src_install() {
19 | emake DESTDIR="${D}" PREFIX="/usr" SYS_PREFIX="" install-dracut
20 | emake DESTDIR="${D}" PREFIX="/usr" install-macsmc-battery
21 |
22 | newinitd "${FILESDIR}/${PN}-macsmc-battery.openrc" "macsmc-battery"
23 |
24 | # install gentoo sys config
25 | insinto /etc/default
26 | newins "${FILESDIR}"/update-m1n1.gentoo.conf update-m1n1
27 | exeinto /usr/lib/kernel/install.d/
28 | doexe "${FILESDIR}/99-update-m1n1.install"
29 | }
30 |
31 | pkg_postinst() {
32 | if [[ ! -e ${ROOT}/usr/lib/asahi-boot ]]; then
33 | ewarn "These scripts are intended for use on Apple Silicon"
34 | ewarn "machines with the Asahi tooling installed! Please"
35 | ewarn "install sys-boot/m1n1, sys-boot/u-boot and"
36 | ewarn "sys-firmware/asahi-firmware!"
37 | fi
38 |
39 | elog "Asahi scripts have been installed to /usr/. For more"
40 | elog "information on how to use them, please visit the Wiki."
41 |
42 | if [[ -e ${ROOT}/usr/local/share/asahi-scripts/functions.sh ]]; then
43 | ewarn "You have upgraded to a new version of ${PN}. Please"
44 | ewarn "remove /usr/local/share/asahi-scripts/,"
45 | ewarn " /usr/local/bin/update-m1n1, and"
46 | ewarn "/usr/local/bin/update-vendor-firmware."
47 | fi
48 |
49 | if [[ -e ${ROOT}/etc/dracut.conf.d/10-apple.conf ]]; then
50 | ewarn "Please remove /etc/dracut.conf.d/10-apple.conf"
51 | fi
52 | }
53 |
--------------------------------------------------------------------------------
/media-libs/bankstown-lv2/bankstown-lv2-1.1.0-r2.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 2023 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | # Auto-Generated by cargo-ebuild 0.5.4
5 |
6 | EAPI=8
7 |
8 | CRATES="
9 | biquad@0.4.2
10 | libm@0.1.4
11 | lv2@0.6.0
12 | lv2-atom@2.0.0
13 | lv2-core@3.0.0
14 | lv2-core-derive@2.1.1
15 | lv2-midi@1.2.0
16 | lv2-sys@2.0.0
17 | lv2-units@0.1.3
18 | lv2-urid@2.1.0
19 | proc-macro2@1.0.69
20 | quote@1.0.33
21 | syn@1.0.109
22 | unicode-ident@1.0.12
23 | urid@0.1.0
24 | urid-derive@0.1.1
25 | wmidi@3.1.0
26 | "
27 |
28 | RUST_MIN_VER="1.72.0"
29 |
30 | inherit cargo
31 |
32 | DESCRIPTION="A barebones, fast LV2 bass enhancement plugin"
33 | # Double check the homepage as the cargo_metadata crate
34 | # does not provide this value so instead repository is used
35 | HOMEPAGE="https://github.com/chadmed/bankstown"
36 | SRC_URI="https://github.com/chadmed/bankstown/archive/refs/tags/${PV}.tar.gz -> ${PN}-${PV}.tar.gz ${CARGO_CRATE_URIS}"
37 | S="${WORKDIR}/bankstown-${PV}"
38 |
39 | # License set may be more restrictive as OR is not respected
40 | # use cargo-license for a more accurate license picture
41 | LICENSE="MIT"
42 | SLOT="0"
43 | KEYWORDS="arm64"
44 |
45 | DEPEND="
46 | media-libs/lv2
47 | "
48 | RDEPEND="${DEPEND}"
49 |
50 | # rust does not use *FLAGS from make.conf, silence portage warning
51 | # update with proper path to binaries this crate installs, omit leading /
52 | QA_FLAGS_IGNORED="usr/bin/${PN}"
53 |
54 | # cargo.eclass now builds arch-specific targets
55 | src_prepare() {
56 | sed -i \
57 | -e "s|target/release|$(cargo_target_dir)|" Makefile || die
58 | default
59 | }
60 |
61 | src_configure() {
62 | cargo_src_configure
63 | }
64 |
65 | src_install() {
66 | emake DESTDIR="${D}" LIBDIR="/usr/$(get_libdir)" install || die
67 | }
68 |
--------------------------------------------------------------------------------
/sys-kernel/asahi-kernel/files/linux-6.17_arm64_deselect_non_apple_arch.config:
--------------------------------------------------------------------------------
1 | # CONFIG_ARCH_ACTIONS is not set
2 | # CONFIG_ARCH_AIROHA is not set
3 | # CONFIG_ARCH_SUNXI is not set
4 | # CONFIG_ARCH_ALPINE is not set
5 | # CONFIG_ARCH_AXIADO is not set
6 | # CONFIG_ARCH_BCM is not set
7 | # CONFIG_ARCH_BCM2835 is not set
8 | # CONFIG_ARCH_BCM_IPROC is not set
9 | # CONFIG_ARCH_BCMBCA is not set
10 | # CONFIG_ARCH_BRCMSTB is not set
11 | # CONFIG_ARCH_BERLIN is not set
12 | # CONFIG_ARCH_BITMAIN is not set
13 | # CONFIG_ARCH_BLAIZE is not set
14 | # CONFIG_ARCH_CIX is not set
15 | # CONFIG_ARCH_EXYNOS is not set
16 | # CONFIG_ARCH_SPARX5 is not set
17 | # CONFIG_ARCH_K3 is not set
18 | # CONFIG_ARCH_LG1K is not set
19 | # CONFIG_ARCH_HISI is not set
20 | # CONFIG_ARCH_KEEMBAY is not set
21 | # CONFIG_ARCH_MEDIATEK is not set
22 | # CONFIG_ARCH_MESON is not set
23 | # CONFIG_ARCH_MMP is not set
24 | # CONFIG_ARCH_MVEBU is not set
25 | # CONFIG_ARCH_NXP is not set
26 | # CONFIG_ARCH_LAYERSCAPE is not set
27 | # CONFIG_ARCH_MXC is not set
28 | # CONFIG_ARCH_S32 is not set
29 | # CONFIG_ARCH_MA35 is not set
30 | # CONFIG_ARCH_NPCM is not set
31 | # CONFIG_ARCH_PENSANDO is not set
32 | # CONFIG_ARCH_QCOM is not set
33 | # CONFIG_ARCH_REALTEK is not set
34 | # CONFIG_ARCH_RENESAS is not set
35 | # CONFIG_ARCH_ROCKCHIP is not set
36 | # CONFIG_ARCH_SEATTLE is not set
37 | # CONFIG_ARCH_INTEL_SOCFPGA is not set
38 | # CONFIG_ARCH_SOPHGO is not set
39 | # CONFIG_ARCH_STM32 is not set
40 | # CONFIG_ARCH_SYNQUACER is not set
41 | # CONFIG_ARCH_TEGRA is not set
42 | # CONFIG_ARCH_SPRD is not set
43 | # CONFIG_ARCH_THUNDER is not set
44 | # CONFIG_ARCH_THUNDER2 is not set
45 | # CONFIG_ARCH_UNIPHIER is not set
46 | # CONFIG_ARCH_VEXPRESS is not set
47 | # CONFIG_ARCH_VISCONTI is not set
48 | # CONFIG_ARCH_XGENE is not set
49 | # CONFIG_ARCH_ZYNQMP is not set
50 |
--------------------------------------------------------------------------------
/app-emulation/FEX/files/FEX-2503-thunkgen-gcc-install-dir.patch:
--------------------------------------------------------------------------------
1 | diff --git a/ThunkLibs/GuestLibs/CMakeLists.txt b/ThunkLibs/GuestLibs/CMakeLists.txt
2 | index be88e1d..e8a1ee3 100644
3 | --- a/ThunkLibs/GuestLibs/CMakeLists.txt
4 | +++ b/ThunkLibs/GuestLibs/CMakeLists.txt
5 | @@ -81,7 +81,7 @@ function(generate NAME SOURCE_FILE)
6 | OUTPUT "${OUTFILE}"
7 | DEPENDS "${GENERATOR_EXE}"
8 | DEPENDS "${SOURCE_FILE}"
9 | - COMMAND "${GENERATOR_EXE}" "${SOURCE_FILE}" "${NAME}" "-guest" "${OUTFILE}" "${X86_DEV_ROOTFS}" ${BITNESS_FLAGS} -- -std=c++20 ${BITNESS_FLAGS2}
10 | + COMMAND "${GENERATOR_EXE}" "${SOURCE_FILE}" "${NAME}" "-guest" "${OUTFILE}" "${X86_DEV_ROOTFS}" ${BITNESS_FLAGS} -- -std=c++20 ${BITNESS_FLAGS2} --config=/etc/clang/gentoo-gcc-install.cfg
11 | # Expand compile definitions to space-separated list of -D parameters
12 | "$<$:;-D$>"
13 | # Expand include directories to space-separated list of -isystem parameters
14 | diff --git a/ThunkLibs/HostLibs/CMakeLists.txt b/ThunkLibs/HostLibs/CMakeLists.txt
15 | index cec5b81..0ccbb20 100644
16 | --- a/ThunkLibs/HostLibs/CMakeLists.txt
17 | +++ b/ThunkLibs/HostLibs/CMakeLists.txt
18 | @@ -53,7 +53,7 @@ function(generate NAME SOURCE_FILE GUEST_BITNESS)
19 | OUTPUT "${OUTFILE}"
20 | DEPENDS "${SOURCE_FILE}"
21 | DEPENDS thunkgen
22 | - COMMAND thunkgen "${SOURCE_FILE}" "${NAME}" "-host" "${OUTFILE}" "${X86_DEV_ROOTFS}" ${BITNESS_FLAGS} -- -std=c++20
23 | + COMMAND thunkgen "${SOURCE_FILE}" "${NAME}" "-host" "${OUTFILE}" "${X86_DEV_ROOTFS}" ${BITNESS_FLAGS} -- -std=c++20 --config=/etc/clang/gentoo-gcc-install.cfg
24 | # Expand compile definitions to space-separated list of -D parameters
25 | "$<$:;-D$>"
26 | # Expand include directories to space-separated list of -isystem parameters
27 |
--------------------------------------------------------------------------------
/media-libs/triforce-lv2/triforce-lv2-0.3.2.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 2025 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | # Autogenerated by pycargoebuild 0.13.5
5 |
6 | EAPI=8
7 |
8 | CRATES="
9 | approx@0.5.1
10 | autocfg@1.4.0
11 | bytemuck@1.23.0
12 | lv2-atom@2.0.0
13 | lv2-core-derive@2.1.1
14 | lv2-core@3.0.0
15 | lv2-midi@1.2.0
16 | lv2-sys@2.0.0
17 | lv2-units@0.1.3
18 | lv2-urid@2.1.0
19 | lv2@0.6.0
20 | matrixmultiply@0.3.10
21 | nalgebra-macros@0.2.2
22 | nalgebra@0.33.2
23 | num-bigint@0.4.6
24 | num-complex@0.4.6
25 | num-integer@0.1.46
26 | num-rational@0.4.2
27 | num-traits@0.2.19
28 | paste@1.0.15
29 | primal-check@0.3.4
30 | proc-macro2@1.0.95
31 | quote@1.0.40
32 | rawpointer@0.2.1
33 | rustfft@6.3.0
34 | safe_arch@0.7.4
35 | simba@0.9.0
36 | strength_reduce@0.2.4
37 | syn@1.0.109
38 | syn@2.0.101
39 | transpose@0.2.3
40 | typenum@1.18.0
41 | unicode-ident@1.0.18
42 | urid-derive@0.1.1
43 | urid@0.1.0
44 | version_check@0.9.5
45 | wide@0.7.32
46 | wmidi@3.1.0
47 | "
48 |
49 | inherit cargo
50 |
51 | DESCRIPTION="Minimum variance distortionless response beamformer for Apple mic arrays"
52 | HOMEPAGE="https://github.com/chadmed/triforce"
53 | SRC_URI="
54 | https://github.com/chadmed/triforce/archive/refs/tags/${PV}.tar.gz -> ${PN}-${PV}.tar.gz
55 | ${CARGO_CRATE_URIS}
56 | "
57 |
58 | S="${WORKDIR}/triforce-${PV}"
59 |
60 | LICENSE="GPL-2+"
61 | # Dependent crate licenses
62 | LICENSE+=" Apache-2.0 MIT Unicode-3.0"
63 | SLOT="0"
64 | KEYWORDS="arm64"
65 |
66 | DEPEND="
67 | media-libs/lv2
68 | "
69 | RDEPEND="${DEPEND}"
70 |
71 | # cargo.eclass now builds arch-specific targets
72 | src_prepare() {
73 | sed -i \
74 | -e "s|target/release|$(cargo_target_dir)|" Makefile || die
75 | default
76 | }
77 |
78 | src_configure() {
79 | cargo_src_configure
80 | }
81 |
82 | src_install() {
83 | emake DESTDIR="${D}" LIBDIR="/usr/$(get_libdir)" install || die
84 | }
85 |
--------------------------------------------------------------------------------
/sys-kernel/asahi-sources/files/asahi-6.8-config-gentoo-Drop-RANDSTRUCT-from-GENTOO_KERNEL_SEL.patch:
--------------------------------------------------------------------------------
1 | From 7bc5223ed71bdee422c01c67b0456c4238b4a36e Mon Sep 17 00:00:00 2001
2 | From: Janne Grunau
3 | Date: Sat, 18 May 2024 11:47:46 +0200
4 | Subject: [PATCH 1/1] config: gentoo: Drop RANDSTRUCT from
5 | GENTOO_KERNEL_SELF_PROTECTION_COMMON
6 |
7 | It is incompatible with RUST and the current method of selected it
8 | results in Kconfig breakage due to circular dependencies. Drop it for
9 | asahi-kernel.
10 |
11 | Signed-off-by: Janne Grunau
12 | ---
13 | distro/Kconfig | 4 +---
14 | 1 file changed, 1 insertion(+), 3 deletions(-)
15 |
16 | diff --git a/distro/Kconfig b/distro/Kconfig
17 | index 9166e4a9abe6..ad4b417e0da7 100644
18 | --- a/distro/Kconfig
19 | +++ b/distro/Kconfig
20 | @@ -174,7 +174,7 @@ if GENTOO_KERNEL_SELF_PROTECTION
21 | config GENTOO_KERNEL_SELF_PROTECTION_COMMON
22 | bool "Enable Kernel Self Protection Project Recommendations"
23 |
24 | - depends on GENTOO_LINUX && !ACPI_CUSTOM_METHOD && !COMPAT_BRK && !PROC_KCORE && !COMPAT_VDSO && !KEXEC && !HIBERNATION && !LEGACY_PTYS && !X86_X32_ABI && !MODIFY_LDT_SYSCALL && GCC_PLUGINS && !IOMMU_DEFAULT_DMA_LAZY && !IOMMU_DEFAULT_PASSTHROUGH && IOMMU_DEFAULT_DMA_STRICT && SECURITY && !ARCH_EPHEMERAL_INODES && RANDSTRUCT_PERFORMANCE
25 | + depends on GENTOO_LINUX && !ACPI_CUSTOM_METHOD && !COMPAT_BRK && !PROC_KCORE && !COMPAT_VDSO && !KEXEC && !HIBERNATION && !LEGACY_PTYS && !X86_X32_ABI && !MODIFY_LDT_SYSCALL && GCC_PLUGINS && !IOMMU_DEFAULT_DMA_LAZY && !IOMMU_DEFAULT_PASSTHROUGH && IOMMU_DEFAULT_DMA_STRICT && SECURITY && !ARCH_EPHEMERAL_INODES
26 |
27 | select BUG
28 | select STRICT_KERNEL_RWX
29 | @@ -221,8 +221,6 @@ config GENTOO_KERNEL_SELF_PROTECTION_COMMON
30 | select GCC_PLUGIN_LATENT_ENTROPY
31 | select GCC_PLUGIN_STRUCTLEAK
32 | select GCC_PLUGIN_STRUCTLEAK_BYREF_ALL
33 | - select GCC_PLUGIN_RANDSTRUCT
34 | - select GCC_PLUGIN_RANDSTRUCT_PERFORMANCE
35 | select ZERO_CALL_USED_REGS if CC_HAS_ZERO_CALL_USED_REGS
36 |
37 | help
38 | --
39 | 2.45.0
40 |
41 |
--------------------------------------------------------------------------------
/sys-kernel/asahi-kernel/files/asahi-kernel-6.8-config-gentoo-Drop-RANDSTRUCT-from-GENTOO_KERNEL_SEL.patch:
--------------------------------------------------------------------------------
1 | From 7bc5223ed71bdee422c01c67b0456c4238b4a36e Mon Sep 17 00:00:00 2001
2 | From: Janne Grunau
3 | Date: Sat, 18 May 2024 11:47:46 +0200
4 | Subject: [PATCH 1/1] config: gentoo: Drop RANDSTRUCT from
5 | GENTOO_KERNEL_SELF_PROTECTION_COMMON
6 |
7 | It is incompatible with RUST and the current method of selected it
8 | results in Kconfig breakage due to circular dependencies. Drop it for
9 | asahi-kernel.
10 |
11 | Signed-off-by: Janne Grunau
12 | ---
13 | distro/Kconfig | 4 +---
14 | 1 file changed, 1 insertion(+), 3 deletions(-)
15 |
16 | diff --git a/distro/Kconfig b/distro/Kconfig
17 | index 9166e4a9abe6..ad4b417e0da7 100644
18 | --- a/distro/Kconfig
19 | +++ b/distro/Kconfig
20 | @@ -174,7 +174,7 @@ if GENTOO_KERNEL_SELF_PROTECTION
21 | config GENTOO_KERNEL_SELF_PROTECTION_COMMON
22 | bool "Enable Kernel Self Protection Project Recommendations"
23 |
24 | - depends on GENTOO_LINUX && !ACPI_CUSTOM_METHOD && !COMPAT_BRK && !PROC_KCORE && !COMPAT_VDSO && !KEXEC && !HIBERNATION && !LEGACY_PTYS && !X86_X32_ABI && !MODIFY_LDT_SYSCALL && GCC_PLUGINS && !IOMMU_DEFAULT_DMA_LAZY && !IOMMU_DEFAULT_PASSTHROUGH && IOMMU_DEFAULT_DMA_STRICT && SECURITY && !ARCH_EPHEMERAL_INODES && RANDSTRUCT_PERFORMANCE
25 | + depends on GENTOO_LINUX && !ACPI_CUSTOM_METHOD && !COMPAT_BRK && !PROC_KCORE && !COMPAT_VDSO && !KEXEC && !HIBERNATION && !LEGACY_PTYS && !X86_X32_ABI && !MODIFY_LDT_SYSCALL && GCC_PLUGINS && !IOMMU_DEFAULT_DMA_LAZY && !IOMMU_DEFAULT_PASSTHROUGH && IOMMU_DEFAULT_DMA_STRICT && SECURITY && !ARCH_EPHEMERAL_INODES
26 |
27 | select BUG
28 | select STRICT_KERNEL_RWX
29 | @@ -221,8 +221,6 @@ config GENTOO_KERNEL_SELF_PROTECTION_COMMON
30 | select GCC_PLUGIN_LATENT_ENTROPY
31 | select GCC_PLUGIN_STRUCTLEAK
32 | select GCC_PLUGIN_STRUCTLEAK_BYREF_ALL
33 | - select GCC_PLUGIN_RANDSTRUCT
34 | - select GCC_PLUGIN_RANDSTRUCT_PERFORMANCE
35 | select ZERO_CALL_USED_REGS if CC_HAS_ZERO_CALL_USED_REGS
36 |
37 | help
38 | --
39 | 2.45.0
40 |
41 |
--------------------------------------------------------------------------------
/metadata/md5-cache/media-libs/bankstown-lv2-1.1.0:
--------------------------------------------------------------------------------
1 | BDEPEND=>=virtual/rust-1.53
2 | DEFINED_PHASES=compile configure install test unpack
3 | DEPEND=virtual/rust media-libs/lv2
4 | DESCRIPTION=A barebones, fast LV2 bass enhancement plugin
5 | EAPI=8
6 | HOMEPAGE=https://github.com/chadmed/bankstown
7 | INHERIT=cargo
8 | IUSE=debug
9 | KEYWORDS=arm64
10 | LICENSE=MIT
11 | RDEPEND=virtual/rust media-libs/lv2
12 | SLOT=0
13 | SRC_URI=https://github.com/chadmed/bankstown/archive/refs/tags/1.1.0.tar.gz -> bankstown-lv2-1.1.0.tar.gz https://crates.io/api/v1/crates/biquad/0.4.2/download -> biquad-0.4.2.crate https://crates.io/api/v1/crates/libm/0.1.4/download -> libm-0.1.4.crate https://crates.io/api/v1/crates/lv2/0.6.0/download -> lv2-0.6.0.crate https://crates.io/api/v1/crates/lv2-atom/2.0.0/download -> lv2-atom-2.0.0.crate https://crates.io/api/v1/crates/lv2-core/3.0.0/download -> lv2-core-3.0.0.crate https://crates.io/api/v1/crates/lv2-core-derive/2.1.1/download -> lv2-core-derive-2.1.1.crate https://crates.io/api/v1/crates/lv2-midi/1.2.0/download -> lv2-midi-1.2.0.crate https://crates.io/api/v1/crates/lv2-sys/2.0.0/download -> lv2-sys-2.0.0.crate https://crates.io/api/v1/crates/lv2-units/0.1.3/download -> lv2-units-0.1.3.crate https://crates.io/api/v1/crates/lv2-urid/2.1.0/download -> lv2-urid-2.1.0.crate https://crates.io/api/v1/crates/proc-macro2/1.0.69/download -> proc-macro2-1.0.69.crate https://crates.io/api/v1/crates/quote/1.0.33/download -> quote-1.0.33.crate https://crates.io/api/v1/crates/syn/1.0.109/download -> syn-1.0.109.crate https://crates.io/api/v1/crates/unicode-ident/1.0.12/download -> unicode-ident-1.0.12.crate https://crates.io/api/v1/crates/urid/0.1.0/download -> urid-0.1.0.crate https://crates.io/api/v1/crates/urid-derive/0.1.1/download -> urid-derive-0.1.1.crate https://crates.io/api/v1/crates/wmidi/3.1.0/download -> wmidi-3.1.0.crate
14 | _eclasses_=toolchain-funcs e56c7649b804f051623c8bc1a1c44084 multilib c19072c3cd7ac5cb21de013f7e9832e0 flag-o-matic 288c54efeb5e2aa70775e39032695ad4 multiprocessing 30ead54fa2e2b5f9cd4e612ffc34d0fe cargo 4dede41d64d595673f6da62ab5540fa0
15 | _md5_=c972338c8d9c13abd2ebae200b38f288
16 |
--------------------------------------------------------------------------------
/sys-kernel/asahi-sources/Manifest:
--------------------------------------------------------------------------------
1 | DIST genpatches-6.17-10.base.tar.xz 460752 BLAKE2B bf1ab16a457e016fe1acc187cf62b70071d74c29d38b16927be5cbe24c8c9796260a6f9cc67e31785ef160d083e9dbec62ad2c520cd93ba6f6e02935316135c6 SHA512 a1edf3438e8490b594ae2ce19f5e36e03a7688e51f905d6b6dd8b0621c84067d4cfc68c0c3dcfa24dc32da02cc78f48f645d0a71b1bce89bd8412162e3f83a07
2 | DIST genpatches-6.17-10.extras.tar.xz 4068 BLAKE2B 53593b2d94cedba2331e359ac69a9471a4dc14c83fb9bacb7217b448f07a4d23d0611b0dbec9ae6369c3efb61837ddfeea5ab06b038a3b1f3f751a4ea650cb31 SHA512 47a2e6b99bd675156fcaad395f3424ec01fc4e6104ccebd1c4265e10e9376facb8e7e2af413f9d2e81ef7ebc1a170155339e110e1b0a44e501bf87481a5ea291
3 | DIST genpatches-6.17-14.base.tar.xz 878808 BLAKE2B 884338a7aa434094ab62f9d5eaffe6c42ee313a63b442b51db2ddf4d6108ce411fc21bbc21655e222baeb457b547b58a6edf145f0f80381482e0b24aae08b36d SHA512 373d7f68280e1c536eeb46c8fb2e5f10223ad3c1187c8745c044d456ae14533da515c54aacae6ea3af72c2058715072e7fb19849e0d5b1f8aada8c0f60903ffd
4 | DIST genpatches-6.17-14.extras.tar.xz 4324 BLAKE2B 1420020762d21a1c0c1eb00b9d9e55b62f63f80688d23236b0f79f416f57e958968f223e2ffaa5a040db6175e02dd769ecab201526487648130e9b9550237010 SHA512 0f3b1748bf5c08bc5c97a3a083e366f06d066ed82bdabf7509f82e8c07de0752382445cc6594164970e72b8e79b0957fa084b2e46531f20729276ab401382e99
5 | DIST linux-6.17.tar.xz 153382068 BLAKE2B 0edb2324be5638aa75984128aafdba3e50824187d2fcdff8794eab99d85c10c3a17d1e840053c2c83df5ee11fdf69f1c9452c57ecc9dae01c4af38180fe7821a SHA512 063999d7b819970657f6b7713fdb4173da2065ffdeed7cae197026dbb1edfd7f1d50374f073a1e19ef9686539594824ff6ecb8a930d97c4f272cb12f1c6d8355
6 | DIST linux-asahi-6.17.11-1.diff 3119229 BLAKE2B 41fbcc6795dc98d0b7c2e209a94b27f37f814f87486c8820b6d557069b26502bd9a655c4d930aa267496e324ef7dc48f1d78469b97229425cc3e563f4107375b SHA512 4536d3d4d0e3cac623b0a3eb36d6f722fdc4b6060303c491372dd0d7325dc11179051ccde3a6f8cf6e9fb33af2f7eff7ebfaca8511837a9381fa3a2bfcc30109
7 | DIST linux-asahi-6.17.7-2.diff 3110876 BLAKE2B c5c0bad5ab4c6c19dcb1160a057fd68e5604887c21dabac1dd585b1586136fa54e35f439d5b90287eac86aa4c470494e33e174c3eeba4d4a20ff9b5efaac9a85 SHA512 aaf1b5a3d543df473e5a2684d2664920d52f0fe22027062017bfa6b263989304bdaabb8b3c6dfb964011c96b4368476c54c70814907e060672beaf9ff843d9d5
8 |
--------------------------------------------------------------------------------
/app-emulation/fex-rootfs-gentoo/fex-rootfs-gentoo-20250904.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 1999-2025 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI=8
5 |
6 | inherit systemd linux-info
7 |
8 | DESCRIPTION="A x86 system image used for FEX"
9 | HOMEPAGE="https://github.com/WhatAmISupposedToPutHere/fex-rootfs"
10 |
11 | SRC_URI="
12 | https://github.com/WhatAmISupposedToPutHere/fex-rootfs/releases/download/${PV}/fex-rootfs.sqfs -> ${P}-root.sqfs
13 | https://github.com/WhatAmISupposedToPutHere/fex-rootfs/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
14 | "
15 |
16 | S="${WORKDIR}/fex-rootfs-${PV}"
17 |
18 | LICENSE="metapackage MIT"
19 | SLOT="0"
20 | KEYWORDS="-* ~arm64"
21 | RDEPEND="
22 | gnome-extra/zenity
23 | sys-apps/xdg-desktop-portal
24 | systemd? ( sys-apps/systemd )
25 | !app-emulation/fex-rootfs-mesa-asahi
26 | "
27 | DEPEND="${RDEPEND}"
28 | IUSE="systemd"
29 |
30 | pkg_pretend() {
31 | CONFIG_CHECK="~SQUASHFS ~SQUASHFS_ZSTD"
32 | check_extra_config
33 | [[ "${MERGE_TYPE}" != "buildonly" && "$(systemd_is_booted)" == 0 ]] || return
34 | ewarn "This package depends on systemd being the init system for correct operation"
35 | ewarn "On non-systemd systems assembling all the mount points correctly is left"
36 | ewarn "as an excercise for the user."
37 | }
38 |
39 | src_install() {
40 | local base="/usr/share/fex-emu-rootfs-layers/gentoo"
41 | insinto "${base}/images/"
42 | newins "${DISTDIR}/${P}-root.sqfs" 00-base.sqfs
43 | keepdir "${base}/work/"
44 | keepdir "${base}/writable/"
45 | gen_dir="$(systemd_get_systemgeneratordir)"
46 | exeinto "${gen_dir#"${EPREFIX}"}"
47 | doexe systemd/fex-gentoo-rootfs-generator
48 | systemd_dounit 'systemd/usr-share-fex\x2demu\x2drootfs\x2dlayers-gentoo-layers-00\x2dbase.mount'
49 | }
50 |
51 | pkg_prerm() {
52 | [[ "${MERGE_TYPE}" == "buildonly" || "$(systemd_is_booted)" == 0 ]] && return
53 | systemctl daemon-reload
54 | systemctl stop 'usr-share-fex\x2demu\x2drootfs\x2dlayers-gentoo-layers-00\x2dbase.mount'
55 | }
56 |
57 | pkg_postinst() {
58 | [[ "${MERGE_TYPE}" == "buildonly" || "$(systemd_is_booted)" == 0 ]] && return
59 | systemctl daemon-reload
60 | systemctl start 'usr-share-fex\x2demu-RootFS-Gentoo.mount'
61 | }
62 |
--------------------------------------------------------------------------------
/app-emulation/fex-rootfs-gentoo/fex-rootfs-gentoo-20250904-r1.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 1999-2025 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI=8
5 |
6 | inherit systemd linux-info
7 |
8 | DESCRIPTION="A x86 system image used for FEX"
9 | HOMEPAGE="https://github.com/WhatAmISupposedToPutHere/fex-rootfs"
10 |
11 | SRC_URI="
12 | https://github.com/WhatAmISupposedToPutHere/fex-rootfs/releases/download/${PV}/fex-rootfs.sqfs -> ${P}-root.sqfs
13 | https://github.com/WhatAmISupposedToPutHere/fex-rootfs/releases/download/${PV}/fex-chroot.sqfs -> ${P}-chroot.sqfs
14 | https://github.com/WhatAmISupposedToPutHere/fex-rootfs/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
15 | "
16 |
17 | S="${WORKDIR}/fex-rootfs-${PV}"
18 |
19 | LICENSE="metapackage MIT"
20 | SLOT="0"
21 | KEYWORDS="-* ~arm64"
22 | RDEPEND="
23 | gnome-extra/zenity
24 | sys-apps/xdg-desktop-portal
25 | systemd? ( sys-apps/systemd )
26 | !app-emulation/fex-rootfs-mesa-asahi
27 | "
28 | DEPEND="${RDEPEND}"
29 | IUSE="systemd"
30 |
31 | pkg_pretend() {
32 | CONFIG_CHECK="~SQUASHFS ~SQUASHFS_ZSTD"
33 | check_extra_config
34 | [[ "${MERGE_TYPE}" != "buildonly" && "$(systemd_is_booted)" == 0 ]] || return
35 | ewarn "This package depends on systemd being the init system for correct operation"
36 | ewarn "On non-systemd systems assembling all the mount points correctly is left"
37 | ewarn "as an excercise for the user."
38 | }
39 |
40 | src_install() {
41 | local base="/usr/share/fex-emu-rootfs-layers/gentoo"
42 | insinto "${base}/images/"
43 | newins "${DISTDIR}/${P}-root.sqfs" 00-base.sqfs
44 | insinto "${base}/extra/"
45 | newins "${DISTDIR}/${P}-chroot.sqfs" chroot.sqfs
46 | keepdir "${base}/work/"
47 | keepdir "${base}/writable/"
48 | gen_dir="$(systemd_get_systemgeneratordir)"
49 | exeinto "${gen_dir#"${EPREFIX}"}"
50 | doexe systemd/fex-gentoo-rootfs-generator
51 | systemd_dounit 'systemd/usr-share-fex\x2demu\x2drootfs\x2dlayers-gentoo-layers-00\x2dbase.mount'
52 | }
53 |
54 | pkg_prerm() {
55 | [[ "${MERGE_TYPE}" == "buildonly" || "$(systemd_is_booted)" == 0 ]] && return
56 | systemctl daemon-reload
57 | systemctl stop 'usr-share-fex\x2demu\x2drootfs\x2dlayers-gentoo-layers-00\x2dbase.mount'
58 | }
59 |
60 | pkg_postinst() {
61 | [[ "${MERGE_TYPE}" == "buildonly" || "$(systemd_is_booted)" == 0 ]] && return
62 | systemctl daemon-reload
63 | systemctl start 'usr-share-fex\x2demu-RootFS-Gentoo.mount'
64 | }
65 |
--------------------------------------------------------------------------------
/metadata/md5-cache/sys-kernel/asahi-kernel-6.6.0_p16-r1:
--------------------------------------------------------------------------------
1 | BDEPEND=test? ( dev-tcltk/expect sys-apps/coreutils sys-kernel/dracut sys-fs/e2fsprogs amd64? ( app-emulation/qemu[qemu_softmmu_targets_x86_64] ) arm64? ( app-emulation/qemu[qemu_softmmu_targets_aarch64] ) ppc? ( app-emulation/qemu[qemu_softmmu_targets_ppc] ) ppc64? ( app-emulation/qemu[qemu_softmmu_targets_ppc64] ) sparc? ( app-emulation/qemu[qemu_softmmu_targets_sparc,qemu_softmmu_targets_sparc64] ) x86? ( app-emulation/qemu[qemu_softmmu_targets_i386] ) ) || ( dev-lang/python:3.12 dev-lang/python:3.11 dev-lang/python:3.10 ) app-alternatives/cpio app-alternatives/bc sys-devel/bison sys-devel/flex virtual/libelf arm? ( sys-apps/dtc ) arm64? ( sys-apps/dtc ) riscv? ( sys-apps/dtc )
2 | DEFINED_PHASES=compile config configure install postinst postrm preinst prepare prerm pretend setup test
3 | DEPEND=virtual/rust || ( ~dev-lang/rust-bin-1.75.0[rust-src,rustfmt] dev-lang/rust:stable/1.75[rust-src,rustfmt] ) dev-util/bindgen debug? ( dev-util/pahole )
4 | DESCRIPTION=Asahi Linux kernel sources
5 | EAPI=8
6 | HOMEPAGE=https://asahilinux.org
7 | IDEPEND=!initramfs? ( >=sys-kernel/installkernel-14 ) initramfs? ( >=sys-kernel/installkernel-14[dracut(-)] )
8 | INHERIT=kernel-build
9 | IUSE=debug savedconfig +initramfs test +strip
10 | KEYWORDS=arm64
11 | LICENSE=GPL-2
12 | PDEPEND=~virtual/dist-kernel-6.6.0_p16
13 | RDEPEND=virtual/libelf
14 | RESTRICT=!test? ( test ) test? ( userpriv ) arm? ( test )
15 | SLOT=6.6.0_p16
16 | SRC_URI=https://github.com/AsahiLinux/linux/archive/refs/tags/asahi-6.6-16.tar.gz -> asahi-kernel-6.6.0_p16.tar.gz https://github.com/projg2/gentoo-kernel-config/archive/g11.tar.gz -> gentoo-kernel-config-g11.tar.gz https://copr-dist-git.fedorainfracloud.org/cgit/@asahi/kernel/kernel.git/plain/kernel-aarch64-16k-fedora.config?id=be420b20d9a73b16a6ee7b6cdb34194efd89bb91 -> kernel-aarch64-16k-fedora.config-6.6.3-414-gentoo
17 | _eclasses_=multiprocessing 30ead54fa2e2b5f9cd4e612ffc34d0fe toolchain-funcs e56c7649b804f051623c8bc1a1c44084 multilib c19072c3cd7ac5cb21de013f7e9832e0 python-utils-r1 8904b60325f22500b0c3ad4b68a42448 python-any-r1 f5169813d1619761b459800587005fd2 portability 225656ad6c6594fe3b0187bdd50707fb savedconfig 8b5f9d995a970e49cd427c55d5840285 dist-kernel-utils 145861da258122cbba5240a850f1a5e8 mount-boot 3945d351ee3192381911f938f4ee527a kernel-install 8b3f309ac423799839f1fb3253b473b8 kernel-build 99eb00d7450b05352eb000bfb702db53
18 | _md5_=ea0674ef8d1ddbe68917f133ff1a9b2a
19 |
--------------------------------------------------------------------------------
/sys-devel/x86_64-multilib-toolchain/Manifest:
--------------------------------------------------------------------------------
1 | DIST binutils-2.43.1.tar.xz 28174300 BLAKE2B c4cd765cea326cd00b5cfe306e2937d820603b42f07a714ceb1349d36ddba0d45c3e125599dadf290d97954035c381781067155600ed87066e494cb9c4b34b45 SHA512 20977ad17729141a2c26d358628f44a0944b84dcfefdec2ba029c2d02f40dfc41cc91c0631044560d2bd6f9a51e1f15846b4b311befbe14f1239f14ff7d57824
2 | DIST binutils-2.44.tar.xz 27285788 BLAKE2B 0eb031ace9fb5a7047b81b5a05b1760f7d332c8ed67f98899f153a45f181b83e661a484551af05c0a9b2adc422da84619103c7b1f3c9fad5327872832b5446aa SHA512 b85d3bbc0e334cf67a96219d3c7c65fbf3e832b2c98a7417bf131f3645a0307057ec81cd2b29ff2563cec53e3d42f73e2c60cc5708e80d4a730efdcc6ae14ad7
3 | DIST gcc-14.2.0.tar.xz 92306460 BLAKE2B 87baf2a06dfa75d8fb6cd62c747ef1f57d3b9bbbe33a360d9ed3de4b4dbeaa8d920504c67e409bd9863414202c14fd854b46108e984418171205119216d03d3b SHA512 932bdef0cda94bacedf452ab17f103c0cb511ff2cec55e9112fc0328cbf1d803b42595728ea7b200e0a057c03e85626f937012e49a7515bc5dd256b2bf4bc396
4 | DIST gcc-15.1.0.tar.xz 98268344 BLAKE2B a902ce99db4e93615879e435bcd0b96d5a16ea0af42598ca0e6d12913b2ce3651a98574c3264b2717b848e6b5a823b403ccca0adde463938d5b41aa3f1da0d34 SHA512 ddd35ca6c653dffa88f7c7ef9ee4cd806e156e0f3b30f4d63e75a8363361285cd566ee73127734cde6a934611de815bee3e32e24bfd2e0ab9f7ff35c929821c1
5 | DIST glibc-2.40.tar.xz 18752204 BLAKE2B 8593cab5b2549b77159b6866fbb40b917e491fd5bc0814f7f85b6529166d78d4583436450c479b86cdfe468304fc4d2a9ba8294230a55dbc4c15e89c3ab6c000 SHA512 33caf91dbfddde6480b7cdf7a68b36aff8c522bfee56160af26af297f1b768668edb08bc4e1a7ff61c64721e3c1d49c347a5dd01c5edd3b914ee6479c8b27885
6 | DIST glibc-2.41.tar.xz 19344868 BLAKE2B 4da62f489ba7a95bb069c2cfea8cf78e4d37e3a5f7e1736239670ba1dca12b69aa77bd00ced078c27d91b1e622c58cbd70258161a9d18c5b3bcc95863b8d744d SHA512 894a3e5a796bc13df30c26a5bfbe4d60b5dbdaac54e7763432235124b547070c7dda88c50584536870cab79183d8cad73a3ac6ed09bfe54fa8482aad07253169
7 | DIST linux-6.10.tar.xz 145142812 BLAKE2B bb243ea7493b9d63aa2df2050a3f1ae2b89ee84a20015239cf157e3f4f51c7ac5efedc8a51132b2d7482f9276ac418de6624831c8a3b806130d9c2d2124c539b SHA512 baa2487954044f991d2ae254d77d14a1f0185dd62c9f0fcaff69f586c9f906823017b8db1c4588f27b076dfa3ebb606929fec859f60ea419e7974330b9289cc2
8 | DIST linux-6.14.tar.xz 149408504 BLAKE2B 11835719804b406fe281ea1c276a84dc0cbaa808552ddcca9233d3eaeb1c001d0455c7205379b02de8e8db758c1bae6fe7ceb6697e63e3cf9ae7187dc7a9715e SHA512 71dcaa3772d8d9797c3ae30cae9c582b11a7047a3bbcb8dfd479a4dffb40ff0da74cf3d45175f50cc9992e338bcadd46c9c570f54054ca3bde6661768d3d22eb
9 |
--------------------------------------------------------------------------------
/app-emulation/FEX/Manifest:
--------------------------------------------------------------------------------
1 | DIST FEX-2510.tar.gz 2291211 BLAKE2B 5161dd0d02cc8d850a1b94a0d3ca3928d13d56e0c1fad4dc7cfec36e32ceff7e3e7e37522a4c2c31cbcf37c134ead31192bebb8e58508405379d7b26f879c33a SHA512 0e906af106593e648144dd6d6dfb1266ad7210bf480798c940de7dd7aba02ef9ac9d1bda9285bf4c612b4503c630ca94af37130ea8cc2ab8a01e5f01f3a61472
2 | DIST FEX-2511.tar.gz 2289580 BLAKE2B 067343ae5d252098c8dff8f05ec6addbb1785d47191e7edd71d1f184edf5d8d1e912f91f1d56442e61e58f6e2ff58ff0d730b1b6474ea09e82e20788b603989e SHA512 204cbcb93428991d877641dd68e52927d588a7f027495f217c633428ea9ecc7ec078fdd832c18dc389741e5f6bbdc5a4448e2782fbc765e810eb769cc3ebfd84
3 | DIST FEX-2512.tar.gz 2314078 BLAKE2B 4130c7e97ec45689cbc5ffcd372f4c84c6c15757bd6e2380dd15f33c7117572c4a4a7665eb3a59a45085431b459885c0bb273ff170c725d94049a548ca1cc4e2 SHA512 1cbf2d75120915f53d3e22e85684b040cb694dd96e8bb77141e0ad85f9165b8fc606b89736c0df13476b981ae6ab9513770672d27057962e7336b0b3693c1ab2
4 | DIST Vulkan-Headers-cacef3039d277c448c89336290ec3937270b0996.tar.gz 2587521 BLAKE2B da640cb49c47c1cdadeb6f04a988ba4cefe4209be00dbb7a6b9f691f56fb6723e0c780aad1456c5e8e8d552bd271329e2f467e56ba951f43c7c79080e86e1ca1 SHA512 042c2c051f419f180d4af78faaa2b50a7505e0baf7ed677773356ab3a0ddecc9b8667b8f75db53db6498fbf113621ac10d4e173a8dd58cb5865a85237368ccb0
5 | DIST cpp-optparse-9f94388a339fcbb0bc95c17768eb786c85988f6e.tar.gz 13218 BLAKE2B 8a9857b639509d66e59732e3cf84879da6eb714f48d55fe2e00c7ee3e5ae2e0be093eeb1b004b6d070766f5fedfd4173f11f6205a961f9e65bfa7848eb225024 SHA512 600559354c8a3e233f7d2d855a8325b747b6656eb05fe13b3fae31f7f41154968b995bc3a519b0c61e5db904d4bca4cb17eb72a2f35a1a273e275ec34593b92f
6 | DIST jemalloc-ce24593018ca5d5af7e5661ceda9744e02b59f8f.tar.gz 847968 BLAKE2B 704b955dba18b154d46ae4c741d36bccd54d9f34d61ca4519d8247f558e6e9a83309facc1f71745f2524f2d52d03a4ca4db69a1bd19933e4bd5393d366f0ab3d SHA512 6152af0cc312c1583daaea06f99347d57a43628a6243854885bd9e769f98c5e75b537882aa9e79d49e5a4a16dcbf85513c939d5dd6425fb6492ea08bc04f1342
7 | DIST jemalloc-glibc-8436195ad5e1bc347d9b39743af3d29abee59f06.tar.gz 825254 BLAKE2B afe13491537888adee3f331b140566147542bc74c7d38c47b60c689f4223a43555a49405caae1c4108db86d874f0cd1662b77a3716a4936dab3c7ad9d57a04f7 SHA512 093ad013d6de08c8c4822ff0b8256ed022f7139561dabd2295beb79f86e45536e8b673a869cb9d81905e734708fa4be17d04bbfaaaeb3d25e8d6c1c204fc5d9b
8 | DIST robin-map-d5683d9f1891e5b04e3e3b2192b5349dc8d814ea.tar.gz 70652 BLAKE2B 03ca6c6c333661ece0ac818d43eee37ead3e0a0acb71c45df201bff30715db89b8f2be3f5bac0991379327f2fac4273ba1bd3d6c4102e5a472a7c7567fae4651 SHA512 23fe18c7d2dda9bc4216201a7e5935c8dc9f51066173e95d514360e3310c994c4dc7786a33f43cb7d15dcceb913375a48b8c02529eacde58c0a80f0e91e9b94d
9 |
--------------------------------------------------------------------------------
/sys-apps/speakersafetyd/speakersafetyd-1.1.2.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 2024 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | # Autogenerated by pycargoebuild 0.13.3
5 |
6 | EAPI=8
7 |
8 | CRATES="
9 | alsa-sys@0.3.1
10 | alsa@0.9.1
11 | android-tzdata@0.1.1
12 | android_system_properties@0.1.5
13 | anstream@0.6.18
14 | anstyle-parse@0.2.6
15 | anstyle-query@1.1.2
16 | anstyle-wincon@3.0.7
17 | anstyle@1.0.10
18 | autocfg@1.4.0
19 | bitflags@2.9.0
20 | bumpalo@3.17.0
21 | cc@1.2.17
22 | cfg-if@1.0.0
23 | chrono@0.4.40
24 | clap-verbosity-flag@2.2.3
25 | clap@4.5.34
26 | clap_builder@4.5.34
27 | clap_derive@4.5.32
28 | clap_lex@0.7.4
29 | colorchoice@1.0.3
30 | colored@2.2.0
31 | configparser@3.1.0
32 | core-foundation-sys@0.8.7
33 | deranged@0.4.1
34 | equivalent@1.0.2
35 | hashbrown@0.15.2
36 | heck@0.5.0
37 | iana-time-zone-haiku@0.1.2
38 | iana-time-zone@0.1.62
39 | indexmap@2.8.0
40 | is_terminal_polyfill@1.70.1
41 | itoa@1.0.15
42 | js-sys@0.3.77
43 | json@0.12.4
44 | lazy_static@1.5.0
45 | libc@0.2.171
46 | log@0.4.27
47 | num-conv@0.1.0
48 | num-traits@0.2.19
49 | num_threads@0.1.7
50 | once_cell@1.21.3
51 | pkg-config@0.3.32
52 | powerfmt@0.2.0
53 | proc-macro2@1.0.94
54 | quote@1.0.40
55 | rustversion@1.0.20
56 | serde@1.0.219
57 | serde_derive@1.0.219
58 | shlex@1.3.0
59 | signal-hook-registry@1.4.2
60 | signal-hook@0.3.17
61 | simple_logger@4.3.3
62 | strsim@0.11.1
63 | syn@2.0.100
64 | time-core@0.1.4
65 | time-macros@0.2.22
66 | time@0.3.41
67 | unicode-ident@1.0.18
68 | utf8parse@0.2.2
69 | wasm-bindgen-backend@0.2.100
70 | wasm-bindgen-macro-support@0.2.100
71 | wasm-bindgen-macro@0.2.100
72 | wasm-bindgen-shared@0.2.100
73 | wasm-bindgen@0.2.100
74 | windows-core@0.52.0
75 | windows-link@0.1.1
76 | windows-sys@0.48.0
77 | windows-sys@0.59.0
78 | windows-targets@0.48.5
79 | windows-targets@0.52.6
80 | windows_aarch64_gnullvm@0.48.5
81 | windows_aarch64_gnullvm@0.52.6
82 | windows_aarch64_msvc@0.48.5
83 | windows_aarch64_msvc@0.52.6
84 | windows_i686_gnu@0.48.5
85 | windows_i686_gnu@0.52.6
86 | windows_i686_gnullvm@0.52.6
87 | windows_i686_msvc@0.48.5
88 | windows_i686_msvc@0.52.6
89 | windows_x86_64_gnu@0.48.5
90 | windows_x86_64_gnu@0.52.6
91 | windows_x86_64_gnullvm@0.48.5
92 | windows_x86_64_gnullvm@0.52.6
93 | windows_x86_64_msvc@0.48.5
94 | windows_x86_64_msvc@0.52.6
95 | "
96 |
97 | inherit cargo udev
98 |
99 | DESCRIPTION="Speaker protection daemon for embedded Linux systems"
100 | HOMEPAGE="https://github.com/AsahiLinux/speakersafetyd/"
101 | SRC_URI="https://github.com/AsahiLinux/speakersafetyd/archive/refs/tags/${PV}.tar.gz -> ${PN}-${PV}.tar.gz
102 | ${CARGO_CRATE_URIS}"
103 |
104 | LICENSE="MIT"
105 | SLOT="0"
106 | KEYWORDS="arm64"
107 |
108 | DEPEND="
109 | acct-user/speakersafetyd
110 | media-libs/alsa-ucm-conf-asahi
111 | "
112 | RDEPEND="${DEPEND}"
113 |
114 | QA_FLAGS_IGNORED="usr/bin/${PN}"
115 |
116 | src_install() {
117 | cargo_src_install
118 | emake DESTDIR="${D}" install-data
119 | doinitd "${FILESDIR}/speakersafetyd-noroot"
120 | }
121 |
122 | pkg_postinst() {
123 | udev_reload
124 | }
125 |
126 | pkg_postrm() {
127 | udev_reload
128 | }
129 |
--------------------------------------------------------------------------------
/app-emulation/FEX/files/FEX-2503-unvendor-drm-headers.patch:
--------------------------------------------------------------------------------
1 | commit 763000de8d4f8aee1eb0bc0cf36f3f45fba07a1f
2 | Author: Sasha Finkelstein
3 | Date: Wed Aug 21 13:31:16 2024 +0200
4 |
5 | unvendor drm-headers
6 |
7 | diff --git a/Source/Tools/LinuxEmulation/CMakeLists.txt b/Source/Tools/LinuxEmulation/CMakeLists.txt
8 | index 3076a31..6deb0e6 100644
9 | --- a/Source/Tools/LinuxEmulation/CMakeLists.txt
10 | +++ b/Source/Tools/LinuxEmulation/CMakeLists.txt
11 | @@ -72,7 +72,6 @@ target_include_directories(LinuxEmulation
12 | PRIVATE
13 | ${CMAKE_BINARY_DIR}/generated
14 | ${CMAKE_CURRENT_SOURCE_DIR}/
15 | - ${PROJECT_SOURCE_DIR}/External/drm-headers/include/
16 | )
17 |
18 | target_include_directories(LinuxEmulation
19 | diff --git a/Source/Tools/LinuxEmulation/LinuxSyscalls/x32/Ioctl/drm.h b/Source/Tools/LinuxEmulation/LinuxSyscalls/x32/Ioctl/drm.h
20 | index efecf2c..cded3a0 100644
21 | --- a/Source/Tools/LinuxEmulation/LinuxSyscalls/x32/Ioctl/drm.h
22 | +++ b/Source/Tools/LinuxEmulation/LinuxSyscalls/x32/Ioctl/drm.h
23 | @@ -10,21 +10,21 @@ extern "C" {
24 | // drm headers use a `__user` define that has an address_space attribute. This allows their tooling to see unsafe user-space accesses.
25 | // Define this to nothing so we don't need to modify those headers.
26 | #define __user
27 | -#include "fex-drm/drm.h"
28 | -#include "fex-drm/drm_mode.h"
29 | -#include "fex-drm/i915_drm.h"
30 | -#include "fex-drm/amdgpu_drm.h"
31 | -#include "fex-drm/lima_drm.h"
32 | -#include "fex-drm/panfrost_drm.h"
33 | -#include "fex-drm/msm_drm.h"
34 | -#include "fex-drm/nouveau_drm.h"
35 | -#include "fex-drm/radeon_drm.h"
36 | -#include "fex-drm/vc4_drm.h"
37 | -#include "fex-drm/v3d_drm.h"
38 | -#include "fex-drm/panthor_drm.h"
39 | -#include "fex-drm/pvr_drm.h"
40 | -#include "fex-drm/virtgpu_drm.h"
41 | -#include "fex-drm/xe_drm.h"
42 | +#include
43 | +#include
44 | +#include
45 | +#include
46 | +#include
47 | +#include
48 | +#include
49 | +#include
50 | +#include
51 | +#include
52 | +#include
53 | +#include
54 | +#include
55 | +#include
56 | +#include
57 | }
58 | #include
59 |
60 | diff --git a/Source/Tools/LinuxEmulation/LinuxSyscalls/x64/Ioctl/drm.h b/Source/Tools/LinuxEmulation/LinuxSyscalls/x64/Ioctl/drm.h
61 | index ae8b0fa..ddb565f 100644
62 | --- a/Source/Tools/LinuxEmulation/LinuxSyscalls/x64/Ioctl/drm.h
63 | +++ b/Source/Tools/LinuxEmulation/LinuxSyscalls/x64/Ioctl/drm.h
64 | @@ -7,17 +7,17 @@
65 |
66 | #include
67 | extern "C" {
68 | -#include "fex-drm/drm.h"
69 | -#include "fex-drm/drm_mode.h"
70 | -#include "fex-drm/i915_drm.h"
71 | -#include "fex-drm/amdgpu_drm.h"
72 | -#include "fex-drm/lima_drm.h"
73 | -#include "fex-drm/panfrost_drm.h"
74 | -#include "fex-drm/msm_drm.h"
75 | -#include "fex-drm/nouveau_drm.h"
76 | -#include "fex-drm/vc4_drm.h"
77 | -#include "fex-drm/v3d_drm.h"
78 | -#include "fex-drm/virtgpu_drm.h"
79 | +#include
80 | +#include
81 | +#include
82 | +#include
83 | +#include
84 | +#include
85 | +#include
86 | +#include
87 | +#include
88 | +#include
89 | +#include
90 | }
91 | #include
92 |
93 |
--------------------------------------------------------------------------------
/sys-kernel/asahi-sources/files/2980_revert_kbuild-gcc15-gnu23-to-gnu11-fix.patch:
--------------------------------------------------------------------------------
1 | --- b/Makefile
2 | +++ a/Makefile
3 | @@ -416,8 +416,6 @@
4 | # SHELL used by kbuild
5 | CONFIG_SHELL := sh
6 |
7 | -CSTD_FLAG := -std=gnu11
8 | -
9 | HOST_LFS_CFLAGS := $(shell getconf LFS_CFLAGS 2>/dev/null)
10 | HOST_LFS_LDFLAGS := $(shell getconf LFS_LDFLAGS 2>/dev/null)
11 | HOST_LFS_LIBS := $(shell getconf LFS_LIBS 2>/dev/null)
12 | @@ -439,7 +437,7 @@
13 | HOSTPKG_CONFIG = pkg-config
14 |
15 | KBUILD_USERHOSTCFLAGS := -Wall -Wmissing-prototypes -Wstrict-prototypes \
16 | + -O2 -fomit-frame-pointer -std=gnu11
17 | - -O2 -fomit-frame-pointer $(CSTD_FLAG)
18 | KBUILD_USERCFLAGS := $(KBUILD_USERHOSTCFLAGS) $(USERCFLAGS)
19 | KBUILD_USERLDFLAGS := $(USERLDFLAGS)
20 |
21 | @@ -547,7 +545,7 @@
22 | KBUILD_AFLAGS := -D__ASSEMBLY__ -fno-PIE
23 |
24 | KBUILD_CFLAGS :=
25 | +KBUILD_CFLAGS += -std=gnu11
26 | -KBUILD_CFLAGS += $(CSTD_FLAG)
27 | KBUILD_CFLAGS += -fshort-wchar
28 | KBUILD_CFLAGS += -funsigned-char
29 | KBUILD_CFLAGS += -fno-common
30 | @@ -591,7 +589,7 @@
31 | export PERL PYTHON3 CHECK CHECKFLAGS MAKE UTS_MACHINE HOSTCXX
32 | export KGZIP KBZIP2 KLZOP LZMA LZ4 XZ ZSTD
33 | export KBUILD_HOSTCXXFLAGS KBUILD_HOSTLDFLAGS KBUILD_HOSTLDLIBS LDFLAGS_MODULE
34 | +export KBUILD_USERCFLAGS KBUILD_USERLDFLAGS
35 | -export KBUILD_USERCFLAGS KBUILD_USERLDFLAGS CSTD_FLAG
36 |
37 | export KBUILD_CPPFLAGS NOSTDINC_FLAGS LINUXINCLUDE OBJCOPYFLAGS KBUILD_LDFLAGS
38 | export KBUILD_CFLAGS CFLAGS_KERNEL CFLAGS_MODULE
39 | --- b/arch/arm64/kernel/vdso32/Makefile
40 | +++ a/arch/arm64/kernel/vdso32/Makefile
41 | @@ -65,7 +65,7 @@
42 | -fno-strict-aliasing -fno-common \
43 | -Werror-implicit-function-declaration \
44 | -Wno-format-security \
45 | + -std=gnu11
46 | - $(CSTD_FLAG)
47 | VDSO_CFLAGS += -O2
48 | # Some useful compiler-dependent flags from top-level Makefile
49 | VDSO_CFLAGS += $(call cc32-option,-Wno-pointer-sign)
50 | --- b/arch/x86/Makefile
51 | +++ a/arch/x86/Makefile
52 | @@ -47,7 +47,7 @@
53 |
54 | # How to compile the 16-bit code. Note we always compile for -march=i386;
55 | # that way we can complain to the user if the CPU is insufficient.
56 | +REALMODE_CFLAGS := -std=gnu11 -m16 -g -Os -DDISABLE_BRANCH_PROFILING -D__DISABLE_EXPORTS \
57 | -REALMODE_CFLAGS := $(CSTD_FLAG) -m16 -g -Os -DDISABLE_BRANCH_PROFILING -D__DISABLE_EXPORTS \
58 | -Wall -Wstrict-prototypes -march=i386 -mregparm=3 \
59 | -fno-strict-aliasing -fomit-frame-pointer -fno-pic \
60 | -mno-mmx -mno-sse $(call cc-option,-fcf-protection=none)
61 | --- b/drivers/firmware/efi/libstub/Makefile
62 | +++ a/drivers/firmware/efi/libstub/Makefile
63 | @@ -7,7 +7,7 @@
64 | #
65 |
66 | # non-x86 reuses KBUILD_CFLAGS, x86 does not
67 | +cflags-y := $(KBUILD_CFLAGS)
68 | -cflags-y := $(KBUILD_CFLAGS) $(CSTD_FLAG)
69 |
70 | cflags-$(CONFIG_X86_32) := -march=i386
71 | cflags-$(CONFIG_X86_64) := -mcmodel=small
72 | @@ -18,7 +18,7 @@
73 | $(call cc-disable-warning, address-of-packed-member) \
74 | $(call cc-disable-warning, gnu) \
75 | -fno-asynchronous-unwind-tables \
76 | + $(CLANG_FLAGS)
77 | - $(CLANG_FLAGS) $(CSTD_FLAG)
78 |
79 | # arm64 uses the full KBUILD_CFLAGS so it's necessary to explicitly
80 | # disable the stackleak plugin
81 | @@ -42,7 +42,7 @@
82 | -ffreestanding \
83 | -fno-stack-protector \
84 | $(call cc-option,-fno-addrsig) \
85 | + -D__DISABLE_EXPORTS
86 | - -D__DISABLE_EXPORTS $(CSTD_FLAG)
87 |
88 | #
89 | # struct randomization only makes sense for Linux internal types, which the EFI
90 |
--------------------------------------------------------------------------------
/app-emulation/FEX/files/FEX-2511-unvendor-drm-headers.patch:
--------------------------------------------------------------------------------
1 | commit 763000de8d4f8aee1eb0bc0cf36f3f45fba07a1f
2 | Author: Sasha Finkelstein
3 | Date: Wed Aug 21 13:31:16 2024 +0200
4 |
5 | unvendor drm-headers
6 |
7 | diff --git a/Source/Tools/LinuxEmulation/CMakeLists.txt b/Source/Tools/LinuxEmulation/CMakeLists.txt
8 | index 3076a31..6deb0e6 100644
9 | --- a/Source/Tools/LinuxEmulation/CMakeLists.txt
10 | +++ b/Source/Tools/LinuxEmulation/CMakeLists.txt
11 | @@ -72,7 +72,6 @@ target_include_directories(LinuxEmulation
12 | PRIVATE
13 | ${CMAKE_BINARY_DIR}/generated
14 | ${CMAKE_CURRENT_SOURCE_DIR}/
15 | - ${PROJECT_SOURCE_DIR}/External/drm-headers/include/
16 | )
17 |
18 | target_include_directories(LinuxEmulation
19 | diff --git a/Source/Tools/LinuxEmulation/LinuxSyscalls/x32/Ioctl/drm.h b/Source/Tools/LinuxEmulation/LinuxSyscalls/x32/Ioctl/drm.h
20 | index efecf2c..cded3a0 100644
21 | --- a/Source/Tools/LinuxEmulation/LinuxSyscalls/x32/Ioctl/drm.h
22 | +++ b/Source/Tools/LinuxEmulation/LinuxSyscalls/x32/Ioctl/drm.h
23 | @@ -10,23 +10,23 @@ extern "C" {
24 | // drm headers use a `__user` define that has an address_space attribute. This allows their tooling to see unsafe user-space accesses.
25 | // Define this to nothing so we don't need to modify those headers.
26 | #define __user
27 | -#include "fex-drm/drm.h"
28 | -#include "fex-drm/drm_mode.h"
29 | -#include "fex-drm/i915_drm.h"
30 | -#include "fex-drm/amdgpu_drm.h"
31 | -#include "fex-drm/asahi_drm.h"
32 | -#include "fex-drm/lima_drm.h"
33 | -#include "fex-drm/panfrost_drm.h"
34 | -#include "fex-drm/msm_drm.h"
35 | -#include "fex-drm/nouveau_drm.h"
36 | -#include "fex-drm/nova_drm.h"
37 | -#include "fex-drm/radeon_drm.h"
38 | -#include "fex-drm/vc4_drm.h"
39 | -#include "fex-drm/v3d_drm.h"
40 | -#include "fex-drm/panthor_drm.h"
41 | -#include "fex-drm/pvr_drm.h"
42 | -#include "fex-drm/virtgpu_drm.h"
43 | -#include "fex-drm/xe_drm.h"
44 | +#include
45 | +#include
46 | +#include
47 | +#include
48 | +#include
49 | +#include
50 | +#include
51 | +#include
52 | +#include
53 | +#include
54 | +#include
55 | +#include
56 | +#include
57 | +#include
58 | +#include
59 | +#include
60 | +#include
61 | }
62 | #include
63 |
64 | diff --git a/Source/Tools/LinuxEmulation/LinuxSyscalls/x64/Ioctl/drm.h b/Source/Tools/LinuxEmulation/LinuxSyscalls/x64/Ioctl/drm.h
65 | index ae8b0fa..ddb565f 100644
66 | --- a/Source/Tools/LinuxEmulation/LinuxSyscalls/x64/Ioctl/drm.h
67 | +++ b/Source/Tools/LinuxEmulation/LinuxSyscalls/x64/Ioctl/drm.h
68 | @@ -7,17 +7,17 @@
69 |
70 | #include
71 | extern "C" {
72 | -#include "fex-drm/drm.h"
73 | -#include "fex-drm/drm_mode.h"
74 | -#include "fex-drm/i915_drm.h"
75 | -#include "fex-drm/amdgpu_drm.h"
76 | -#include "fex-drm/lima_drm.h"
77 | -#include "fex-drm/panfrost_drm.h"
78 | -#include "fex-drm/msm_drm.h"
79 | -#include "fex-drm/nouveau_drm.h"
80 | -#include "fex-drm/vc4_drm.h"
81 | -#include "fex-drm/v3d_drm.h"
82 | -#include "fex-drm/virtgpu_drm.h"
83 | +#include
84 | +#include
85 | +#include
86 | +#include
87 | +#include
88 | +#include
89 | +#include
90 | +#include
91 | +#include
92 | +#include
93 | +#include
94 | }
95 | #include
96 |
97 |
--------------------------------------------------------------------------------
/app-emulation/FEX/files/FEX-2507-thunks-toolchain-paths.patch:
--------------------------------------------------------------------------------
1 | diff --git a/CMakeLists.txt b/CMakeLists.txt
2 | index 14e15e370..551d3120f 100644
3 | --- a/CMakeLists.txt
4 | +++ b/CMakeLists.txt
5 | @@ -481,6 +481,9 @@ if (BUILD_THUNKS)
6 | "-DFEX_PROJECT_SOURCE_DIR=${FEX_PROJECT_SOURCE_DIR}"
7 | "-DGENERATOR_EXE=$"
8 | "-DX86_DEV_ROOTFS=${X86_DEV_ROOTFS}"
9 | + "-DX86_CFLAGS=${X86_CFLAGS}"
10 | + "-DX86_CXXFLAGS=${X86_CXXFLAGS}"
11 | + "-DX86_LDFLAGS=${X86_LDFLAGS}"
12 | INSTALL_COMMAND ""
13 | BUILD_ALWAYS ON
14 | DEPENDS thunkgen
15 | diff --git a/ThunkLibs/GuestLibs/CMakeLists.txt b/ThunkLibs/GuestLibs/CMakeLists.txt
16 | index cff9943e9..3b7482489 100644
17 | --- a/ThunkLibs/GuestLibs/CMakeLists.txt
18 | +++ b/ThunkLibs/GuestLibs/CMakeLists.txt
19 | @@ -67,10 +67,10 @@ function(generate NAME SOURCE_FILE)
20 |
21 | if (BITNESS EQUAL 32)
22 | set(BITNESS_FLAGS "-for-32bit-guest")
23 | - set(BITNESS_FLAGS2 "-m32" "--target=i686-linux-gnu" "-isystem" "/usr/i686-linux-gnu/include/")
24 | + set(BITNESS_FLAGS2 "-m32" "--target=i686-linux-gnu")
25 | else()
26 | set(BITNESS_FLAGS "")
27 | - set(BITNESS_FLAGS2 "--target=x86_64-linux-gnu" "-isystem" "/usr/x86_64-linux-gnu/include/")
28 | + set(BITNESS_FLAGS2 "--target=x86_64-linux-gnu")
29 | endif()
30 |
31 | add_custom_command(
32 | @@ -110,6 +110,7 @@ function(add_guest_lib NAME SONAME)
33 |
34 | add_library(${NAME}-guest ${TARGET_TYPE} ${SOURCE_FILE} ${GEN_lib${NAME}})
35 | target_include_directories(${NAME}-guest PRIVATE "${CMAKE_CURRENT_BINARY_DIR}/gen/")
36 | + target_include_directories(${NAME}-guest PRIVATE "__REPLACE_ME_WITH_HEADER_DIR__")
37 | target_compile_definitions(${NAME}-guest PRIVATE GUEST_THUNK_LIBRARY)
38 | target_link_libraries(${NAME}-guest PRIVATE lib${NAME}-guest-deps)
39 |
40 | diff --git a/ThunkLibs/libwayland-client/libwayland-client_interface.cpp b/ThunkLibs/libwayland-client/libwayland-client_interface.cpp
41 | index 575d2e195..c82672e3f 100644
42 | --- a/ThunkLibs/libwayland-client/libwayland-client_interface.cpp
43 | +++ b/ThunkLibs/libwayland-client/libwayland-client_interface.cpp
44 | @@ -1,3 +1,9 @@
45 | +#ifndef __aarch64__
46 | +#define _GLIBCXX_MATH_H 1
47 | +#define _MATH_H 1
48 | +double round(double);
49 | +#endif
50 | +
51 | #include
52 |
53 | #include
54 | diff --git a/Data/CMake/toolchain_x86_32.cmake b/Data/CMake/toolchain_x86_32.cmake
55 | index 89e3134d3..18fe655d1 100644
56 | --- a/Data/CMake/toolchain_x86_32.cmake
57 | +++ b/Data/CMake/toolchain_x86_32.cmake
58 | @@ -15,6 +15,11 @@ if (ENABLE_CLANG_THUNKS)
59 | set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${CLANG_FLAGS}")
60 | set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CLANG_FLAGS}")
61 | else()
62 | - set(CMAKE_C_COMPILER x86_64-linux-gnu-gcc -m32)
63 | - set(CMAKE_CXX_COMPILER x86_64-linux-gnu-g++ -m32)
64 | + set(CMAKE_C_FLAGS "${X86_CFLAGS}")
65 | + set(CMAKE_CXX_FLAGS "${X86_CXXFLAGS}")
66 | + set(CMAKE_C_COMPILER __REPLACE_ME_WITH_C_COMPILER__)
67 | + set(CMAKE_CXX_COMPILER __REPLACE_ME_WITH_CXX_COMPILER__)
68 | + set(CMAKE_EXE_LINKER_FLAGS "${X86_LDFLAGS}")
69 | + set(CMAKE_MODULE_LINKER_FLAGS "${X86_LDFLAGS}")
70 | + set(CMAKE_SHARED_LINKER_FLAGS "${X86_LDFLAGS}")
71 | endif()
72 | diff --git a/Data/CMake/toolchain_x86_64.cmake b/Data/CMake/toolchain_x86_64.cmake
73 | index 9aa856a01..8da9da8ee 100644
74 | --- a/Data/CMake/toolchain_x86_64.cmake
75 | +++ b/Data/CMake/toolchain_x86_64.cmake
76 | @@ -15,6 +15,11 @@ if (ENABLE_CLANG_THUNKS)
77 | set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${CLANG_FLAGS}")
78 | set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CLANG_FLAGS}")
79 | else()
80 | - set(CMAKE_C_COMPILER x86_64-linux-gnu-gcc)
81 | - set(CMAKE_CXX_COMPILER x86_64-linux-gnu-g++)
82 | + set(CMAKE_C_FLAGS "${X86_CFLAGS}")
83 | + set(CMAKE_CXX_FLAGS "${X86_CXXFLAGS}")
84 | + set(CMAKE_C_COMPILER __REPLACE_ME_WITH_C_COMPILER__)
85 | + set(CMAKE_CXX_COMPILER __REPLACE_ME_WITH_CXX_COMPILER__)
86 | + set(CMAKE_EXE_LINKER_FLAGS "${X86_LDFLAGS}")
87 | + set(CMAKE_MODULE_LINKER_FLAGS "${X86_LDFLAGS}")
88 | + set(CMAKE_SHARED_LINKER_FLAGS "${X86_LDFLAGS}")
89 | endif()
90 |
--------------------------------------------------------------------------------
/app-emulation/muvm/muvm-0.5.0.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 1999-2025 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI=8
5 |
6 | CRATES="
7 | addr2line@0.22.0
8 | adler@1.0.2
9 | aho-corasick@1.1.3
10 | anstream@0.6.14
11 | anstyle-parse@0.2.4
12 | anstyle-query@1.0.3
13 | anstyle-wincon@3.0.3
14 | anstyle@1.0.7
15 | anyhow@1.0.91
16 | autocfg@1.4.0
17 | backtrace@0.3.72
18 | bindgen@0.69.4
19 | bitflags@2.5.0
20 | bpaf@0.9.12
21 | byteorder@1.5.0
22 | bytes@1.6.0
23 | cc@1.0.99
24 | cexpr@0.6.0
25 | cfg-if@1.0.0
26 | cfg_aliases@0.2.1
27 | clang-sys@1.7.0
28 | colorchoice@1.0.1
29 | const-str@0.6.2
30 | darling@0.14.4
31 | darling_core@0.14.4
32 | darling_macro@0.14.4
33 | derive_builder@0.11.2
34 | derive_builder_core@0.11.2
35 | derive_builder_macro@0.11.2
36 | either@1.11.0
37 | env_filter@0.1.0
38 | env_logger@0.11.8
39 | errno@0.3.8
40 | fastrand@2.1.0
41 | fnv@1.0.7
42 | futures-core@0.3.30
43 | futures-sink@0.3.30
44 | getrandom@0.2.15
45 | getset@0.1.5
46 | gimli@0.29.0
47 | glob@0.3.1
48 | hermit-abi@0.3.9
49 | hex@0.4.3
50 | ident_case@1.0.1
51 | input-linux-sys@0.9.0
52 | input-linux@0.7.1
53 | io-lifetimes@1.0.11
54 | is_terminal_polyfill@1.70.0
55 | itertools@0.12.1
56 | itoa@1.0.11
57 | jiff-static@0.2.10
58 | jiff@0.2.10
59 | lazy_static@1.4.0
60 | lazycell@1.3.0
61 | libc@0.2.172
62 | libudev-sys@0.1.4
63 | linux-raw-sys@0.4.13
64 | lock_api@0.4.12
65 | log@0.4.21
66 | memchr@2.7.2
67 | memoffset@0.9.1
68 | minimal-lexical@0.2.1
69 | miniz_oxide@0.7.3
70 | mio@0.8.11
71 | neli-proc-macros@0.2.0-rc3
72 | neli@0.7.0-rc3
73 | nix@0.29.0
74 | nix@0.30.1
75 | nom@7.1.3
76 | num_cpus@1.16.0
77 | object@0.35.0
78 | parking_lot@0.12.3
79 | parking_lot_core@0.9.10
80 | pin-project-lite@0.2.14
81 | pkg-config@0.3.31
82 | portable-atomic-util@0.2.4
83 | portable-atomic@1.11.0
84 | proc-macro-error-attr2@2.0.0
85 | proc-macro-error2@2.0.1
86 | proc-macro2@1.0.95
87 | procfs-core@0.17.0
88 | procfs@0.17.0
89 | quote@1.0.40
90 | redox_syscall@0.5.10
91 | regex-automata@0.4.6
92 | regex-syntax@0.8.3
93 | regex@1.10.4
94 | rustc-demangle@0.1.24
95 | rustc-hash@1.1.0
96 | rustix@0.38.34
97 | ryu@1.0.18
98 | scopeguard@1.2.0
99 | serde@1.0.203
100 | serde_derive@1.0.203
101 | serde_json@1.0.117
102 | shlex@1.3.0
103 | signal-hook-registry@1.4.2
104 | smallvec@1.14.0
105 | socket2@0.5.7
106 | strsim@0.10.0
107 | syn@1.0.109
108 | syn@2.0.100
109 | tempfile@3.10.1
110 | tokio-macros@2.3.0
111 | tokio-stream@0.1.15
112 | tokio-util@0.7.11
113 | tokio@1.38.0
114 | udev@0.9.1
115 | unicode-ident@1.0.12
116 | utf8parse@0.2.1
117 | uuid@1.10.0
118 | wasi@0.11.0+wasi-snapshot-preview1
119 | windows-sys@0.48.0
120 | windows-sys@0.52.0
121 | windows-targets@0.48.5
122 | windows-targets@0.52.5
123 | windows_aarch64_gnullvm@0.48.5
124 | windows_aarch64_gnullvm@0.52.5
125 | windows_aarch64_msvc@0.48.5
126 | windows_aarch64_msvc@0.52.5
127 | windows_i686_gnu@0.48.5
128 | windows_i686_gnu@0.52.5
129 | windows_i686_gnullvm@0.52.5
130 | windows_i686_msvc@0.48.5
131 | windows_i686_msvc@0.52.5
132 | windows_x86_64_gnu@0.48.5
133 | windows_x86_64_gnu@0.52.5
134 | windows_x86_64_gnullvm@0.48.5
135 | windows_x86_64_gnullvm@0.52.5
136 | windows_x86_64_msvc@0.48.5
137 | windows_x86_64_msvc@0.52.5
138 | "
139 |
140 | RUST_MIN_VER="1.72.0"
141 |
142 | inherit cargo
143 |
144 | DESCRIPTION="Run programs from your system in a microVM"
145 | HOMEPAGE="https://github.com/AsahiLinux/muvm"
146 |
147 | SRC_URI="
148 | ${CARGO_CRATE_URIS}
149 | https://github.com/AsahiLinux/muvm/archive/refs/tags/${P}.tar.gz
150 | "
151 |
152 | S="${WORKDIR}/muvm-${P}"
153 |
154 | LICENSE="0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD Boost-1.0 MIT Unicode-DFS-2016 Unlicense ZLIB"
155 | SLOT="0"
156 | KEYWORDS="~arm64"
157 |
158 | BDEPEND="
159 | virtual/pkgconfig
160 | "
161 |
162 | DEPEND="
163 | >=dev-libs/libkrun-1.10.1
164 | "
165 | RDEPEND="
166 | ${DEPEND}
167 | >=dev-libs/libkrunfw-4.7.1
168 | net-misc/passt
169 | net-misc/socat
170 | "
171 |
172 | src_compile() {
173 | cargo_src_compile --workspace
174 | }
175 |
176 | src_install() {
177 | local bin
178 | for bin in muvm{,-guest}; do
179 | dobin "$(cargo_target_dir)/$bin"
180 | done
181 | insinto /usr/share/wireplumber/scripts/client
182 | doins share/wireplumber/scripts/client/access-muvm.lua
183 | insinto /usr/share/wireplumber/wireplumber.conf.d
184 | doins share/wireplumber/wireplumber.conf.d/50-muvm-access.conf
185 | }
186 |
--------------------------------------------------------------------------------
/app-emulation/FEX/FEX-2510.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 1999-2025 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI=8
5 |
6 | LLVM_COMPAT=( 19 20 21 )
7 | LLVM_OPTIONAL=1
8 |
9 | inherit flag-o-matic cmake toolchain-funcs llvm-r1 check-reqs
10 |
11 | DESCRIPTION="A fast usermode x86 and x86-64 emulator for Arm64 Linux"
12 | HOMEPAGE="https://fex-emu.com"
13 |
14 | JEMALLOC_HASH="ce24593018ca5d5af7e5661ceda9744e02b59f8f"
15 | JEMALLOC_GLIBC_HASH="8436195ad5e1bc347d9b39743af3d29abee59f06"
16 | CPP_OPTPARSE_HASH="9f94388a339fcbb0bc95c17768eb786c85988f6e"
17 | ROBIN_MAP_HASH="d5683d9f1891e5b04e3e3b2192b5349dc8d814ea"
18 |
19 | # This need to be vendored since thunk generator does not support the latest version
20 | VULKAN_HEADERS_HASH="cacef3039d277c448c89336290ec3937270b0996"
21 |
22 | SRC_URI="
23 | https://github.com/FEX-Emu/jemalloc/archive/${JEMALLOC_HASH}.tar.gz -> jemalloc-${JEMALLOC_HASH}.tar.gz
24 | https://github.com/FEX-Emu/jemalloc/archive/${JEMALLOC_GLIBC_HASH}.tar.gz -> jemalloc-glibc-${JEMALLOC_GLIBC_HASH}.tar.gz
25 | https://github.com/Sonicadvance1/cpp-optparse/archive/${CPP_OPTPARSE_HASH}.tar.gz -> cpp-optparse-${CPP_OPTPARSE_HASH}.tar.gz
26 | https://github.com/FEX-Emu/robin-map/archive/${ROBIN_MAP_HASH}.tar.gz -> robin-map-${ROBIN_MAP_HASH}.tar.gz
27 | thunks? (
28 | https://github.com/KhronosGroup/Vulkan-Headers/archive/${VULKAN_HEADERS_HASH}.tar.gz -> Vulkan-Headers-${VULKAN_HEADERS_HASH}.tar.gz
29 | )
30 | https://github.com/FEX-Emu/${PN}/archive/refs/tags/${P}.tar.gz
31 | "
32 |
33 | S="${WORKDIR}/${PN}-${P}"
34 |
35 | LICENSE="MIT"
36 | SLOT="0"
37 | KEYWORDS="-* ~arm64"
38 | BDEPEND="
39 | llvm-core/clang
40 | llvm-core/llvm
41 | llvm-core/lld
42 | thunks? (
43 | sys-fs/squashfs-tools[zstd]
44 | $(llvm_gen_dep '
45 | llvm-core/clang:${LLVM_SLOT}=
46 | llvm-core/llvm:${LLVM_SLOT}=
47 | ')
48 | )
49 | "
50 | RDEPEND="
51 | dev-libs/xxhash
52 | >=dev-libs/libfmt-11.0.2:=
53 | qt6? (
54 | dev-qt/qtbase:6[gui,wayland(-),widgets,X(-)]
55 | dev-qt/qtdeclarative:6
56 | )
57 | thunks? (
58 | x11-libs/libX11
59 | x11-libs/libdrm
60 | dev-libs/wayland
61 | media-libs/alsa-lib
62 | media-libs/libglvnd
63 | x11-libs/libxcb
64 | )
65 | >=app-emulation/fex-rootfs-gentoo-20250904-r1
66 | "
67 | DEPEND="
68 | dev-cpp/range-v3
69 | >=sys-kernel/linux-headers-6.14
70 | ${RDEPEND}
71 | "
72 |
73 | PATCHES="
74 | ${FILESDIR}/${PN}-2503-unvendor-drm-headers.patch
75 | ${FILESDIR}/${PN}-2503-thunkgen-gcc-install-dir.patch
76 | "
77 |
78 | IUSE="+fexconfig +qt6 +thunks"
79 |
80 | REQUIRED_USE="
81 | fexconfig? ( qt6 )
82 | thunks? ( ${LLVM_REQUIRED_USE} )
83 | "
84 |
85 | pkg_pretend() {
86 | use thunks || return
87 | CHECKREQS_DISK_BUILD=4G
88 | check-reqs_pkg_pretend
89 | }
90 |
91 | pkg_setup() {
92 | use thunks || return
93 | CHECKREQS_DISK_BUILD=4G
94 | check-reqs_pkg_pretend
95 | llvm-r1_pkg_setup
96 | }
97 |
98 | src_unpack() {
99 | default
100 | local -A deps=(
101 | jemalloc "jemalloc-${JEMALLOC_HASH}"
102 | jemalloc_glibc "jemalloc-${JEMALLOC_GLIBC_HASH}"
103 | robin-map "robin-map-${ROBIN_MAP_HASH}"
104 | )
105 | use thunks && deps[Vulkan-Headers]="Vulkan-Headers-${VULKAN_HEADERS_HASH}"
106 | for dep in "${!deps[@]}"; do
107 | rmdir "${S}/External/${dep}" || die
108 | mv "${WORKDIR}/${deps[${dep}]}" "${S}/External/${dep}"
109 | done
110 | rmdir "${S}/Source/Common/cpp-optparse" || die
111 | mv "${WORKDIR}/cpp-optparse-${CPP_OPTPARSE_HASH}" "${S}/Source/Common/cpp-optparse" || die
112 | cp "${FILESDIR}/toolchain_x86_32.cmake" "${S}/Data/CMake/" || die
113 | cp "${FILESDIR}/toolchain_x86_64.cmake" "${S}/Data/CMake/" || die
114 | if use thunks ; then
115 | unsquashfs -d "${WORKDIR}/fex-rootfs" "${ESYSROOT}/usr/share/fex-emu-rootfs-layers/gentoo/images/00-base.sqfs" || die
116 | unsquashfs -d "${WORKDIR}/fex-rootfs" -f "${ESYSROOT}/usr/share/fex-emu-rootfs-layers/gentoo/extra/chroot.sqfs" || die
117 | fi
118 | }
119 |
120 | src_configure() {
121 | if ! tc-is-clang ; then
122 | AR=llvm-ar
123 | CC=clang
124 | CXX=clang++
125 | NM=llvm-nm
126 | RANLIB=llvm-ranlib
127 | STRIP=llvm-strip
128 |
129 | strip-unsupported-flags
130 | fi
131 |
132 | local mycmakeargs=(
133 | -DBUILD_TESTING=False
134 | -DENABLE_CCACHE=False
135 | -DENABLE_LTO=$(if tc-is-lto; then echo True; else echo False; fi)
136 | -DBUILD_FEXCONFIG=$(usex fexconfig)
137 | -DBUILD_THUNKS=$(usex thunks)
138 | -DENABLE_CLANG_THUNKS=True
139 | )
140 |
141 | if use thunks; then
142 | mycmakeargs+=(
143 | -DX86_DEV_ROOTFS="${WORKDIR}/fex-rootfs"
144 | )
145 | fi
146 |
147 | cmake_src_configure
148 | }
149 |
150 | src_install() {
151 | cmake_src_install
152 | tc-is-lto && dostrip -x /usr/lib/libFEXCore.a
153 | rm "${ED}/usr/share/man/man1/FEX.1.gz" || die
154 | if use thunks; then
155 | dostrip -x /usr/share/fex-emu/GuestThunks{,_32}/
156 | fi
157 | }
158 |
159 | pkg_postinst() {
160 | if [[ "$(getconf PAGESIZE)" -ne 4096 ]] && ! type -P "${EPREFIX}/usr/bin/muvm" >/dev/null ; then
161 | ewarn "Your system page size is not 4096 and as such"
162 | ewarn "you need to install app-emulation/muvm or a similar solution"
163 | ewarn "for FEX to work on your machine."
164 | fi
165 | }
166 |
--------------------------------------------------------------------------------
/app-emulation/FEX/FEX-2511.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 1999-2025 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI=8
5 |
6 | LLVM_COMPAT=( 19 20 21 )
7 | LLVM_OPTIONAL=1
8 |
9 | inherit flag-o-matic cmake toolchain-funcs llvm-r1 check-reqs
10 |
11 | DESCRIPTION="A fast usermode x86 and x86-64 emulator for Arm64 Linux"
12 | HOMEPAGE="https://fex-emu.com"
13 |
14 | JEMALLOC_HASH="ce24593018ca5d5af7e5661ceda9744e02b59f8f"
15 | JEMALLOC_GLIBC_HASH="8436195ad5e1bc347d9b39743af3d29abee59f06"
16 | CPP_OPTPARSE_HASH="9f94388a339fcbb0bc95c17768eb786c85988f6e"
17 | ROBIN_MAP_HASH="d5683d9f1891e5b04e3e3b2192b5349dc8d814ea"
18 |
19 | # This need to be vendored since thunk generator does not support the latest version
20 | VULKAN_HEADERS_HASH="cacef3039d277c448c89336290ec3937270b0996"
21 |
22 | SRC_URI="
23 | https://github.com/FEX-Emu/jemalloc/archive/${JEMALLOC_HASH}.tar.gz -> jemalloc-${JEMALLOC_HASH}.tar.gz
24 | https://github.com/FEX-Emu/jemalloc/archive/${JEMALLOC_GLIBC_HASH}.tar.gz -> jemalloc-glibc-${JEMALLOC_GLIBC_HASH}.tar.gz
25 | https://github.com/Sonicadvance1/cpp-optparse/archive/${CPP_OPTPARSE_HASH}.tar.gz -> cpp-optparse-${CPP_OPTPARSE_HASH}.tar.gz
26 | https://github.com/FEX-Emu/robin-map/archive/${ROBIN_MAP_HASH}.tar.gz -> robin-map-${ROBIN_MAP_HASH}.tar.gz
27 | thunks? (
28 | https://github.com/KhronosGroup/Vulkan-Headers/archive/${VULKAN_HEADERS_HASH}.tar.gz -> Vulkan-Headers-${VULKAN_HEADERS_HASH}.tar.gz
29 | )
30 | https://github.com/FEX-Emu/${PN}/archive/refs/tags/${P}.tar.gz
31 | "
32 |
33 | S="${WORKDIR}/${PN}-${P}"
34 |
35 | LICENSE="MIT"
36 | SLOT="0"
37 | KEYWORDS="-* ~arm64"
38 | BDEPEND="
39 | llvm-core/clang
40 | llvm-core/llvm
41 | llvm-core/lld
42 | thunks? (
43 | sys-fs/squashfs-tools[zstd]
44 | $(llvm_gen_dep '
45 | llvm-core/clang:${LLVM_SLOT}=
46 | llvm-core/llvm:${LLVM_SLOT}=
47 | ')
48 | )
49 | "
50 | RDEPEND="
51 | dev-libs/xxhash
52 | >=dev-libs/libfmt-11.0.2:=
53 | qt6? (
54 | dev-qt/qtbase:6[gui,wayland(-),widgets,X(-)]
55 | dev-qt/qtdeclarative:6
56 | )
57 | thunks? (
58 | x11-libs/libX11
59 | x11-libs/libdrm
60 | dev-libs/wayland
61 | media-libs/alsa-lib
62 | media-libs/libglvnd
63 | x11-libs/libxcb
64 | )
65 | >=app-emulation/fex-rootfs-gentoo-20250904-r1
66 | "
67 | DEPEND="
68 | dev-cpp/range-v3
69 | >=sys-kernel/linux-headers-6.17
70 | ${RDEPEND}
71 | "
72 |
73 | PATCHES="
74 | ${FILESDIR}/${PN}-2511-unvendor-drm-headers.patch
75 | ${FILESDIR}/${PN}-2503-thunkgen-gcc-install-dir.patch
76 | "
77 |
78 | IUSE="+fexconfig +qt6 +thunks"
79 |
80 | REQUIRED_USE="
81 | fexconfig? ( qt6 )
82 | thunks? ( ${LLVM_REQUIRED_USE} )
83 | "
84 |
85 | pkg_pretend() {
86 | use thunks || return
87 | CHECKREQS_DISK_BUILD=4G
88 | check-reqs_pkg_pretend
89 | }
90 |
91 | pkg_setup() {
92 | use thunks || return
93 | CHECKREQS_DISK_BUILD=4G
94 | check-reqs_pkg_pretend
95 | llvm-r1_pkg_setup
96 | }
97 |
98 | src_unpack() {
99 | default
100 | local -A deps=(
101 | jemalloc "jemalloc-${JEMALLOC_HASH}"
102 | jemalloc_glibc "jemalloc-${JEMALLOC_GLIBC_HASH}"
103 | robin-map "robin-map-${ROBIN_MAP_HASH}"
104 | )
105 | use thunks && deps[Vulkan-Headers]="Vulkan-Headers-${VULKAN_HEADERS_HASH}"
106 | for dep in "${!deps[@]}"; do
107 | rmdir "${S}/External/${dep}" || die
108 | mv "${WORKDIR}/${deps[${dep}]}" "${S}/External/${dep}"
109 | done
110 | rmdir "${S}/Source/Common/cpp-optparse" || die
111 | mv "${WORKDIR}/cpp-optparse-${CPP_OPTPARSE_HASH}" "${S}/Source/Common/cpp-optparse" || die
112 | cp "${FILESDIR}/toolchain_x86_32.cmake" "${S}/Data/CMake/" || die
113 | cp "${FILESDIR}/toolchain_x86_64.cmake" "${S}/Data/CMake/" || die
114 | if use thunks ; then
115 | unsquashfs -d "${WORKDIR}/fex-rootfs" "${ESYSROOT}/usr/share/fex-emu-rootfs-layers/gentoo/images/00-base.sqfs" || die
116 | unsquashfs -d "${WORKDIR}/fex-rootfs" -f "${ESYSROOT}/usr/share/fex-emu-rootfs-layers/gentoo/extra/chroot.sqfs" || die
117 | fi
118 | }
119 |
120 | src_configure() {
121 | if ! tc-is-clang ; then
122 | AR=llvm-ar
123 | CC=clang
124 | CXX=clang++
125 | NM=llvm-nm
126 | RANLIB=llvm-ranlib
127 | STRIP=llvm-strip
128 |
129 | strip-unsupported-flags
130 | fi
131 |
132 | local mycmakeargs=(
133 | -DBUILD_TESTING=False
134 | -DENABLE_CCACHE=False
135 | -DENABLE_LTO=$(if tc-is-lto; then echo True; else echo False; fi)
136 | -DBUILD_FEXCONFIG=$(usex fexconfig)
137 | -DBUILD_THUNKS=$(usex thunks)
138 | -DENABLE_CLANG_THUNKS=True
139 | )
140 |
141 | if use thunks; then
142 | mycmakeargs+=(
143 | -DX86_DEV_ROOTFS="${WORKDIR}/fex-rootfs"
144 | )
145 | fi
146 |
147 | cmake_src_configure
148 | }
149 |
150 | src_install() {
151 | cmake_src_install
152 | tc-is-lto && dostrip -x /usr/lib/libFEXCore.a
153 | rm "${ED}/usr/share/man/man1/FEX.1.gz" || die
154 | if use thunks; then
155 | dostrip -x /usr/share/fex-emu/GuestThunks{,_32}/
156 | fi
157 | }
158 |
159 | pkg_postinst() {
160 | if [[ "$(getconf PAGESIZE)" -ne 4096 ]] && ! type -P "${EPREFIX}/usr/bin/muvm" >/dev/null ; then
161 | ewarn "Your system page size is not 4096 and as such"
162 | ewarn "you need to install app-emulation/muvm or a similar solution"
163 | ewarn "for FEX to work on your machine."
164 | fi
165 | }
166 |
--------------------------------------------------------------------------------
/app-emulation/FEX/FEX-2512.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 1999-2025 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI=8
5 |
6 | LLVM_COMPAT=( 19 20 21 )
7 | LLVM_OPTIONAL=1
8 |
9 | inherit flag-o-matic cmake toolchain-funcs llvm-r1 check-reqs
10 |
11 | DESCRIPTION="A fast usermode x86 and x86-64 emulator for Arm64 Linux"
12 | HOMEPAGE="https://fex-emu.com"
13 |
14 | JEMALLOC_HASH="ce24593018ca5d5af7e5661ceda9744e02b59f8f"
15 | JEMALLOC_GLIBC_HASH="8436195ad5e1bc347d9b39743af3d29abee59f06"
16 | CPP_OPTPARSE_HASH="9f94388a339fcbb0bc95c17768eb786c85988f6e"
17 | ROBIN_MAP_HASH="d5683d9f1891e5b04e3e3b2192b5349dc8d814ea"
18 |
19 | # This need to be vendored since thunk generator does not support the latest version
20 | VULKAN_HEADERS_HASH="cacef3039d277c448c89336290ec3937270b0996"
21 |
22 | SRC_URI="
23 | https://github.com/FEX-Emu/jemalloc/archive/${JEMALLOC_HASH}.tar.gz -> jemalloc-${JEMALLOC_HASH}.tar.gz
24 | https://github.com/FEX-Emu/jemalloc/archive/${JEMALLOC_GLIBC_HASH}.tar.gz -> jemalloc-glibc-${JEMALLOC_GLIBC_HASH}.tar.gz
25 | https://github.com/Sonicadvance1/cpp-optparse/archive/${CPP_OPTPARSE_HASH}.tar.gz -> cpp-optparse-${CPP_OPTPARSE_HASH}.tar.gz
26 | https://github.com/FEX-Emu/robin-map/archive/${ROBIN_MAP_HASH}.tar.gz -> robin-map-${ROBIN_MAP_HASH}.tar.gz
27 | thunks? (
28 | https://github.com/KhronosGroup/Vulkan-Headers/archive/${VULKAN_HEADERS_HASH}.tar.gz -> Vulkan-Headers-${VULKAN_HEADERS_HASH}.tar.gz
29 | )
30 | https://github.com/FEX-Emu/${PN}/archive/refs/tags/${P}.tar.gz
31 | "
32 |
33 | S="${WORKDIR}/${PN}-${P}"
34 |
35 | LICENSE="MIT"
36 | SLOT="0"
37 | KEYWORDS="-* ~arm64"
38 | BDEPEND="
39 | llvm-core/clang
40 | llvm-core/llvm
41 | llvm-core/lld
42 | thunks? (
43 | sys-fs/squashfs-tools[zstd]
44 | $(llvm_gen_dep '
45 | llvm-core/clang:${LLVM_SLOT}=
46 | llvm-core/llvm:${LLVM_SLOT}=
47 | ')
48 | )
49 | "
50 | RDEPEND="
51 | dev-libs/xxhash
52 | >=dev-libs/libfmt-11.0.2:=
53 | qt6? (
54 | dev-qt/qtbase:6[gui,wayland(-),widgets,X(-)]
55 | dev-qt/qtdeclarative:6
56 | )
57 | thunks? (
58 | x11-libs/libX11
59 | x11-libs/libdrm
60 | dev-libs/wayland
61 | media-libs/alsa-lib
62 | media-libs/libglvnd
63 | x11-libs/libxcb
64 | )
65 | >=app-emulation/fex-rootfs-gentoo-20250904-r1
66 | "
67 | DEPEND="
68 | dev-cpp/range-v3
69 | >=sys-kernel/linux-headers-6.17
70 | ${RDEPEND}
71 | "
72 |
73 | PATCHES="
74 | ${FILESDIR}/${PN}-2511-unvendor-drm-headers.patch
75 | ${FILESDIR}/${PN}-2503-thunkgen-gcc-install-dir.patch
76 | "
77 |
78 | IUSE="+fexconfig +qt6 +thunks"
79 |
80 | REQUIRED_USE="
81 | fexconfig? ( qt6 )
82 | thunks? ( ${LLVM_REQUIRED_USE} )
83 | "
84 |
85 | pkg_pretend() {
86 | use thunks || return
87 | CHECKREQS_DISK_BUILD=4G
88 | check-reqs_pkg_pretend
89 | }
90 |
91 | pkg_setup() {
92 | use thunks || return
93 | CHECKREQS_DISK_BUILD=4G
94 | check-reqs_pkg_pretend
95 | llvm-r1_pkg_setup
96 | }
97 |
98 | src_unpack() {
99 | default
100 | local -A deps=(
101 | jemalloc "jemalloc-${JEMALLOC_HASH}"
102 | jemalloc_glibc "jemalloc-${JEMALLOC_GLIBC_HASH}"
103 | robin-map "robin-map-${ROBIN_MAP_HASH}"
104 | )
105 | use thunks && deps[Vulkan-Headers]="Vulkan-Headers-${VULKAN_HEADERS_HASH}"
106 | for dep in "${!deps[@]}"; do
107 | rmdir "${S}/External/${dep}" || die
108 | mv "${WORKDIR}/${deps[${dep}]}" "${S}/External/${dep}"
109 | done
110 | rmdir "${S}/Source/Common/cpp-optparse" || die
111 | mv "${WORKDIR}/cpp-optparse-${CPP_OPTPARSE_HASH}" "${S}/Source/Common/cpp-optparse" || die
112 | cp "${FILESDIR}/toolchain_x86_32.cmake" "${S}/Data/CMake/" || die
113 | cp "${FILESDIR}/toolchain_x86_64.cmake" "${S}/Data/CMake/" || die
114 | if use thunks ; then
115 | unsquashfs -d "${WORKDIR}/fex-rootfs" "${ESYSROOT}/usr/share/fex-emu-rootfs-layers/gentoo/images/00-base.sqfs" || die
116 | unsquashfs -d "${WORKDIR}/fex-rootfs" -f "${ESYSROOT}/usr/share/fex-emu-rootfs-layers/gentoo/extra/chroot.sqfs" || die
117 | fi
118 | }
119 |
120 | src_configure() {
121 | if ! tc-is-clang ; then
122 | AR=llvm-ar
123 | CC=clang
124 | CXX=clang++
125 | NM=llvm-nm
126 | RANLIB=llvm-ranlib
127 | STRIP=llvm-strip
128 |
129 | strip-unsupported-flags
130 | fi
131 |
132 | local mycmakeargs=(
133 | -DBUILD_TESTING=False
134 | -DENABLE_CCACHE=False
135 | -DENABLE_LTO=$(if tc-is-lto; then echo True; else echo False; fi)
136 | -DBUILD_FEXCONFIG=$(usex fexconfig)
137 | -DBUILD_THUNKS=$(usex thunks)
138 | -DENABLE_CLANG_THUNKS=True
139 | )
140 |
141 | if use thunks; then
142 | mycmakeargs+=(
143 | -DX86_DEV_ROOTFS="${WORKDIR}/fex-rootfs"
144 | )
145 | fi
146 |
147 | cmake_src_configure
148 | }
149 |
150 | src_install() {
151 | cmake_src_install
152 | tc-is-lto && dostrip -x /usr/lib/libFEXCore.a
153 | rm "${ED}/usr/share/man/man1/FEX.1.gz" || die
154 | if use thunks; then
155 | dostrip -x /usr/share/fex-emu/GuestThunks{,_32}/
156 | fi
157 | }
158 |
159 | pkg_postinst() {
160 | if [[ "$(getconf PAGESIZE)" -ne 4096 ]] && ! type -P "${EPREFIX}/usr/bin/muvm" >/dev/null ; then
161 | ewarn "Your system page size is not 4096 and as such"
162 | ewarn "you need to install app-emulation/muvm or a similar solution"
163 | ewarn "for FEX to work on your machine."
164 | fi
165 | }
166 |
--------------------------------------------------------------------------------
/sys-kernel/asahi-sources/files/2981-kbuild-gcc15-gnu23-to-gnu11-fix.patch:
--------------------------------------------------------------------------------
1 | From 1f56570ab7f6fc4feaa10ca351a8dea90f97bab7 Mon Sep 17 00:00:00 2001
2 | From: Janne Grunau
3 | Date: Thu, 20 Mar 2025 21:50:07 +0100
4 | Subject: [PATCH 2981/2981] kbuild: gcc15 gnu23 to gnu11 fix
5 |
6 | iGCC 15 defaults to -std=gnu23. While most of the kernel builds with -std=gnu11,
7 | some of it forgets to pass that flag. Hack in CSTD_FLAG to pass -std=gnu11
8 | everywhere.
9 |
10 | https://lore.kernel.org/linux-kbuild/20241119044724.GA2246422@thelio-3990X/
11 | ---
12 | Makefile | 8 +++++---
13 | arch/arm64/kernel/vdso32/Makefile | 2 +-
14 | arch/x86/Makefile | 2 +-
15 | drivers/firmware/efi/libstub/Makefile | 6 +++---
16 | 4 files changed, 10 insertions(+), 8 deletions(-)
17 |
18 | diff --git a/Makefile b/Makefile
19 | index cde448edb403..2c68761d976e 100644
20 | --- a/Makefile
21 | +++ b/Makefile
22 | @@ -441,6 +441,8 @@ export KCONFIG_CONFIG
23 | # SHELL used by kbuild
24 | CONFIG_SHELL := sh
25 |
26 | +CSTD_FLAG := -std=gnu11
27 | +
28 | HOST_LFS_CFLAGS := $(shell getconf LFS_CFLAGS 2>/dev/null)
29 | HOST_LFS_LDFLAGS := $(shell getconf LFS_LDFLAGS 2>/dev/null)
30 | HOST_LFS_LIBS := $(shell getconf LFS_LIBS 2>/dev/null)
31 | @@ -462,7 +464,7 @@ HOSTRUSTC = rustc
32 | HOSTPKG_CONFIG = pkg-config
33 |
34 | KBUILD_USERHOSTCFLAGS := -Wall -Wmissing-prototypes -Wstrict-prototypes \
35 | - -O2 -fomit-frame-pointer -std=gnu11
36 | + -O2 -fomit-frame-pointer $(CSTD_FLAG)
37 | KBUILD_USERCFLAGS := $(KBUILD_USERHOSTCFLAGS) $(USERCFLAGS)
38 | KBUILD_USERLDFLAGS := $(USERLDFLAGS)
39 |
40 | @@ -576,7 +578,7 @@ LINUXINCLUDE := \
41 | KBUILD_AFLAGS := -D__ASSEMBLY__ -fno-PIE
42 |
43 | KBUILD_CFLAGS :=
44 | -KBUILD_CFLAGS += -std=gnu11
45 | +KBUILD_CFLAGS += $(CSTD_FLAG)
46 | KBUILD_CFLAGS += -fshort-wchar
47 | KBUILD_CFLAGS += -funsigned-char
48 | KBUILD_CFLAGS += -fno-common
49 | @@ -623,7 +625,7 @@ export CPP AR NM STRIP OBJCOPY OBJDUMP READELF PAHOLE RESOLVE_BTFIDS LEX YACC AW
50 | export PERL PYTHON3 CHECK CHECKFLAGS MAKE UTS_MACHINE HOSTCXX
51 | export KGZIP KBZIP2 KLZOP LZMA LZ4 XZ ZSTD
52 | export KBUILD_HOSTCXXFLAGS KBUILD_HOSTLDFLAGS KBUILD_HOSTLDLIBS KBUILD_PROCMACROLDFLAGS LDFLAGS_MODULE
53 | -export KBUILD_USERCFLAGS KBUILD_USERLDFLAGS
54 | +export KBUILD_USERCFLAGS KBUILD_USERLDFLAGS CSTD_FLAG
55 |
56 | export KBUILD_CPPFLAGS NOSTDINC_FLAGS LINUXINCLUDE OBJCOPYFLAGS KBUILD_LDFLAGS
57 | export KBUILD_CFLAGS CFLAGS_KERNEL CFLAGS_MODULE
58 | diff --git a/arch/arm64/kernel/vdso32/Makefile b/arch/arm64/kernel/vdso32/Makefile
59 | index 25a2cb6317f3..5f9d5c38ed9e 100644
60 | --- a/arch/arm64/kernel/vdso32/Makefile
61 | +++ b/arch/arm64/kernel/vdso32/Makefile
62 | @@ -65,7 +65,7 @@ VDSO_CFLAGS += -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs \
63 | -fno-strict-aliasing -fno-common \
64 | -Werror-implicit-function-declaration \
65 | -Wno-format-security \
66 | - -std=gnu11
67 | + $(CSTD_FLAG)
68 | VDSO_CFLAGS += -O2
69 | # Some useful compiler-dependent flags from top-level Makefile
70 | VDSO_CFLAGS += $(call cc32-option,-Wno-pointer-sign)
71 | diff --git a/arch/x86/Makefile b/arch/x86/Makefile
72 | index 5b773b34768d..d5c851dd0653 100644
73 | --- a/arch/x86/Makefile
74 | +++ b/arch/x86/Makefile
75 | @@ -47,7 +47,7 @@ endif
76 |
77 | # How to compile the 16-bit code. Note we always compile for -march=i386;
78 | # that way we can complain to the user if the CPU is insufficient.
79 | -REALMODE_CFLAGS := -std=gnu11 -m16 -g -Os -DDISABLE_BRANCH_PROFILING -D__DISABLE_EXPORTS \
80 | +REALMODE_CFLAGS := $(CSTD_FLAG) -m16 -g -Os -DDISABLE_BRANCH_PROFILING -D__DISABLE_EXPORTS \
81 | -Wall -Wstrict-prototypes -march=i386 -mregparm=3 \
82 | -fno-strict-aliasing -fomit-frame-pointer -fno-pic \
83 | -mno-mmx -mno-sse $(call cc-option,-fcf-protection=none)
84 | diff --git a/drivers/firmware/efi/libstub/Makefile b/drivers/firmware/efi/libstub/Makefile
85 | index 1141cd06011f..b5c831a8602e 100644
86 | --- a/drivers/firmware/efi/libstub/Makefile
87 | +++ b/drivers/firmware/efi/libstub/Makefile
88 | @@ -7,7 +7,7 @@
89 | #
90 |
91 | # non-x86 reuses KBUILD_CFLAGS, x86 does not
92 | -cflags-y := $(KBUILD_CFLAGS)
93 | +cflags-y := $(KBUILD_CFLAGS) $(CSTD_FLAG)
94 |
95 | cflags-$(CONFIG_X86_32) := -march=i386
96 | cflags-$(CONFIG_X86_64) := -mcmodel=small
97 | @@ -18,7 +18,7 @@ cflags-$(CONFIG_X86) += -m$(BITS) -D__KERNEL__ -std=gnu11 \
98 | $(call cc-disable-warning, address-of-packed-member) \
99 | $(call cc-disable-warning, gnu) \
100 | -fno-asynchronous-unwind-tables \
101 | - $(CLANG_FLAGS)
102 | + $(CLANG_FLAGS) $(CSTD_FLAG)
103 |
104 | # arm64 uses the full KBUILD_CFLAGS so it's necessary to explicitly
105 | # disable the stackleak plugin
106 | @@ -42,7 +42,7 @@ KBUILD_CFLAGS := $(subst $(CC_FLAGS_FTRACE),,$(cflags-y)) \
107 | -ffreestanding \
108 | -fno-stack-protector \
109 | $(call cc-option,-fno-addrsig) \
110 | - -D__DISABLE_EXPORTS
111 | + -D__DISABLE_EXPORTS $(CSTD_FLAG)
112 |
113 | #
114 | # struct randomization only makes sense for Linux internal types, which the EFI
115 | --
116 | 2.48.1
117 |
118 |
--------------------------------------------------------------------------------
/media-libs/bankstown-lv2/Manifest:
--------------------------------------------------------------------------------
1 | DIST bankstown-lv2-1.1.0.tar.gz 6655 BLAKE2B 209d02ea59c5bf4eee46d7ef503b528e48f8c39b270bfb28f9b72eeca6dfb108ff647afd955c45c45099dd67f13422e09965da6885df9b228420c7fa1b0ceacc SHA512 74dbb96440f0260e08b3f96b28c310326d63bdb4360d4f43f2e1f9c89ff9c0fd4f3c81c78837e64df77e16034e28a23be217b647f3008cf5293c959a26f895d2
2 | DIST biquad-0.4.2.crate 11032 BLAKE2B b7eb20732f876e6ad59ad76552e6da69752cc9fd1df0a6be46881e39a6fb93e442143fca8cbeba23798d7e2d43270a8e9538dbebf58d68f969f085d929390f27 SHA512 354b1c3c2693e522daca5a3a5ab0c0174f173cf69ad1e65297a0774be69bda049a59ce1492f2e107e64b8f0be892bd493b327a9db5ca5f1cfdb0c905ddc27881
3 | DIST libm-0.1.4.crate 110593 BLAKE2B 5018f4efbc8fd45ff88a28e92c273bb3b48724009e17eadd0d4abb8e34b0fc8784607f71eebaa2f308dedb3185969f092d4305cd1d2cef7a53f7d8774390e38f SHA512 6bc647425ec8be5995ad4798427a86e28282b06532b8e6a53745e2a2ac16652d087b84c0946a4858a49d98995b9e543e1764765d270bf5569cd2ad92d52b81f2
4 | DIST lv2-0.6.0.crate 21100 BLAKE2B 67d18f38629071b8fd68239cc5fdfe8e3801b4178dff1a3470a93d21e04a8ecc3f8184acc05465f0b249691540739261121140a647791b2818465fc028f1bf8e SHA512 062c3fd2f642fb9dc1e97a3bd38c7cfc84f501866f540466b48bd075f81f30f02bee165079140be3ec2772a58aa3263b6f130e0d23ff95b123e679480dcf64ad
5 | DIST lv2-atom-2.0.0.crate 27543 BLAKE2B 92f4254b086ccdae6a6c9145aaecc1588e4e7df603ad6c55033eb0eeecd97e0591625ae4cecd86ab466937c3908324e08bc5794441d26bac40b3e0c2c60e04d1 SHA512 81a16bd6d3d761a63a647d2fbecb63b04ca2e77a480185f2f78a7dd1aee15e7c90c8e50ae7b21e52cb7d5dab9052ccfce9676c0547318676cd308ee08349f9fc
6 | DIST lv2-core-3.0.0.crate 19734 BLAKE2B 917eb55123ac77313e4c08329db0d943a9a6da84cb3d74dc49c0e578726f93500681e5ff03fbf9b951c976fa9af0c724e3d567afd2829ebe4e04e54425ea63d8 SHA512 53e67ca411e6f14fcde9dbffa8192127480ec3802a076f3d54227ac6aa7d852fe8fbc71a7a3a1b3aed505ed5ed262044b5f857b32b93f34599f39dc0f753bb7a
7 | DIST lv2-core-derive-2.1.1.crate 9012 BLAKE2B 6679efa0aeead8ca92fac0043e1dfc40e1c74343b5e0380f37fa608954d85bcf09591ba82616412c35ee48890e2c7b03cb0c883f4644852d3c4b45f0f1e2b21e SHA512 bcea40f70591c765001626cc93fa09cac25f2921372539e5311a8d7e38fc3ca466082b44c043dd503c3fe847a26e152808fec0679736eaa1b66f95a2ba38d581
8 | DIST lv2-midi-1.2.0.crate 9257 BLAKE2B 9ee1af327f32e9187fc28480ed774256be34cec9947f6d7111c8902c1f417a2c1530578966bba2d882e30cd92174862aee5b24e3cb12691f8d10c945acf8fa07 SHA512 499e1a77c2853d33acbbb5ee13d79d3bc0f1712ce0cbe4b04824c35dccaa3c2936eaf6c66360c311a4a5ef106bf7d43d4c5c2c63ff7cf4a00fae39d5146f78ba
9 | DIST lv2-sys-2.0.0.crate 142443 BLAKE2B 5d25a008a30cb0c83e26e7d4e9c9f16f01a26b2e68a942cb08d5e59daa5668657b9a36eb4acec4ae4337ecd5f1a99febb331d73694d983690c12d5fd96603f78 SHA512 f9267bf0efb547e59c39f48b7180b86515bdf67e47226f36e08309ed5e4253afc4d6a608e8d3b48a10d450ebe4e48c37aa8b63477a6186a97ca5ef17c8f1959f
10 | DIST lv2-units-0.1.3.crate 6875 BLAKE2B 4b6e3588c003b7ee4751847619ce4c0b4c6983d833e5d36b38f1f1e03ccefa065432eef75217185ba569c53210018c3bedba8755790333cfef6decb085632b00 SHA512 f95316a912ed461e1a7db4f033831c8b8ed53f5a0837b1fb51513f9ee4f7a486724274e0dac19674bc91526f9d3a76999ad4bf8b2636d2a0521909c285f02adf
11 | DIST lv2-urid-2.1.0.crate 7912 BLAKE2B a015349a93331c605089e590d68e337ec3f89789cc2634a7a31a0be7d8e5382f80a56a6920c2b5b94c2cc8a43845702b88f00cd46692707431738b030cc9344c SHA512 b97704bdfc7738574535a1355cc3777de3574fa364545519ebbaf6a79dc33e18a1987b7866924cf4bb7daf2013e343c6e0dc761452e747e656466df3ecadad6c
12 | DIST proc-macro2-1.0.69.crate 44271 BLAKE2B 9d1531a0b123e6238363d574bee03ad050454b65710b9800c12597f3a9ae2f9bf50c617da0472b7ac0b549afaca19c546ccd6519e648598500efda9c0db2ef6d SHA512 d197cbe9b6100c3193a01fd7dd6b4e49d440290012ababb5d9f139409f0afe816f213d67a03abeb1f3227228e0a1f2446d1dc0a2775363a15d1237c38b45d6a1
13 | DIST quote-1.0.33.crate 28090 BLAKE2B 77c4b166f1200e1ee2ab94a5014acd334c1fe4b7d72851d73768d491c56c6779a0882a304c1f30c88732a6168351f0f786b10516ae537cff993892a749175848 SHA512 c1e76c3c017e8554eebe309f8167fd56fce931981c06798aa85a0cc6d64a9cba6ab103f5a1324e69c6f9ca5dc47a8e31ff2e847850542748697afcd265b5939c
14 | DIST syn-1.0.109.crate 237611 BLAKE2B e827445d00c79a8eeb91eacde472f1987addd6ce9e1df95d7abf6446a77ff4173a8006845f3ae71c1da47193cfb72e0ead9a6d6bad2573be12c17e90735d9ad9 SHA512 12816b9e8cf984024b2fbce9f0ae14cf94d4d2c06f08cc54fb793ce78770bb4cc1288eb7df0ba5e8e937756e1e8e295c53fe07a0c5dde1ea8ddba03b6203b37d
15 | DIST unicode-ident-1.0.12.crate 42168 BLAKE2B 4cede03c08758ccd6bf53a0d0057d7542dfdd0c93d342e89f3b90460be85518a9fd24958d8b1da2b5a09b5ddbee8a4263982194158e171c2bba3e394d88d6dac SHA512 bc1824e1e4452a40732fc69874d7e1a66f7803717a314790dcf48867eba34bc9441331ef031e386912e52c385645c25b6ed39d4f149973b5b97371b1b96b1920
16 | DIST urid-0.1.0.crate 11158 BLAKE2B b9181e3deba0ca7b81c262eb7748c2ed4a3d1a38ec6597ec7fa13159dc6cb843f3ef82a513a01548bbcf9bfcb57447eddb1b8ba4fefa91cb8715e398d3bf2453 SHA512 1b90267323b3609e467fe47ee4e5b82d60cae86f8f0604779f4a07063fb2d14f733f1fb16ff857efed1797ffe7134abcb5173e61ee52f66808d3632d4751c812
17 | DIST urid-derive-0.1.1.crate 6976 BLAKE2B b16f166ee78318627972b96f442d3c4e93430e6762d603cb20480bbfa1292895792e95161d216d5f5f20c6087f6eeb402cac72ed5f23a30b74d34e774949b811 SHA512 15229f247556366a7c7ca23bb3dbd5de8bfe566af4c1e98647087cf910bce84852d57d2456fdea11bd3d454d368a6b5840f43f3d3acaa55e98b9bfc0466b1bed
18 | DIST wmidi-3.1.0.crate 11511 BLAKE2B 6cfcda61ac0dafab3c991af783f275bf674713db54a7f0f63cf117acacab37f931cdff7fa385bc18d2d74d1a9bc39c45ccb98d12b329a6a54202b03b197dbb25 SHA512 c349166378d4a4e80139f374bef413036ceb4fc11a6c9b52f61fd00e2754505f3fc30594babb8286b40477690fc7a0303df351ea0b4b0f6679911eaed5d0aaa8
19 |
--------------------------------------------------------------------------------
/dev-libs/libkrun/libkrun-1.16.0.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 1999-2025 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI=8
5 |
6 | CRATES="
7 | addr2line@0.24.2
8 | adler2@2.0.0
9 | aho-corasick@1.1.3
10 | allocator-api2@0.2.21
11 | annotate-snippets@0.9.2
12 | anstream@0.6.19
13 | anstyle-parse@0.2.7
14 | anstyle-query@1.1.3
15 | anstyle-wincon@3.0.9
16 | anstyle@1.0.11
17 | anyhow@1.0.98
18 | async-trait@0.1.88
19 | autocfg@1.4.0
20 | backtrace@0.3.75
21 | base64@0.22.1
22 | bincode@1.3.3
23 | bindgen@0.69.5
24 | bindgen@0.72.0
25 | bitfield-macros@0.19.1
26 | bitfield@0.19.1
27 | bitflags@1.3.2
28 | bitflags@2.9.1
29 | block-buffer@0.10.4
30 | bumpalo@3.18.1
31 | byteorder@1.5.0
32 | bzip2-sys@0.1.13+1.0.8
33 | bzip2@0.5.2
34 | caps@0.5.5
35 | cc@1.2.26
36 | cexpr@0.6.0
37 | cfg-expr@0.15.8
38 | cfg-if@1.0.0
39 | cfg_aliases@0.2.1
40 | clang-sys@1.8.1
41 | codicon@3.0.0
42 | colorchoice@1.0.4
43 | convert_case@0.6.0
44 | cookie-factory@0.3.3
45 | cpufeatures@0.2.17
46 | crc32fast@1.4.2
47 | crossbeam-channel@0.5.15
48 | crossbeam-utils@0.8.21
49 | crypto-common@0.1.6
50 | digest@0.10.7
51 | dirs-sys@0.5.0
52 | dirs@6.0.0
53 | either@1.15.0
54 | env_filter@0.1.3
55 | env_logger@0.11.8
56 | equivalent@1.0.2
57 | flate2@1.1.1
58 | foldhash@0.1.5
59 | foreign-types-shared@0.1.1
60 | foreign-types@0.3.2
61 | futures-channel@0.3.31
62 | futures-core@0.3.31
63 | futures-executor@0.3.31
64 | futures-io@0.3.31
65 | futures-macro@0.3.31
66 | futures-sink@0.3.31
67 | futures-task@0.3.31
68 | futures-util@0.3.31
69 | futures@0.3.31
70 | generic-array@0.14.7
71 | getrandom@0.2.16
72 | getrandom@0.3.3
73 | gimli@0.31.1
74 | glob@0.3.2
75 | hashbrown@0.15.3
76 | heck@0.5.0
77 | hex@0.4.3
78 | imago@0.1.5
79 | indexmap@2.9.0
80 | iocuddle@0.1.1
81 | is_terminal_polyfill@1.70.1
82 | itertools@0.12.1
83 | itoa@1.0.15
84 | jiff-static@0.2.14
85 | jiff@0.2.14
86 | jobserver@0.1.33
87 | js-sys@0.3.77
88 | kbs-types@0.13.0
89 | kvm-bindings@0.12.0
90 | kvm-ioctls@0.22.0
91 | lazy_static@1.5.0
92 | lazycell@1.3.0
93 | libc@0.2.172
94 | libloading@0.8.8
95 | libredox@0.1.3
96 | libspa-sys@0.8.0
97 | libspa@0.8.0
98 | linux-loader@0.13.0
99 | log@0.4.27
100 | lru@0.14.0
101 | memchr@2.7.4
102 | memoffset@0.7.1
103 | memoffset@0.9.1
104 | minimal-lexical@0.2.1
105 | miniz_oxide@0.8.8
106 | nitro-enclaves@0.3.0
107 | nix@0.26.4
108 | nix@0.27.1
109 | nix@0.29.0
110 | nix@0.30.1
111 | nom@7.1.3
112 | object@0.36.7
113 | once_cell@1.21.3
114 | once_cell_polyfill@1.70.1
115 | openssl-macros@0.1.1
116 | openssl-src@300.5.0+3.5.0
117 | openssl-sys@0.9.109
118 | openssl@0.10.73
119 | option-ext@0.2.0
120 | page_size@0.6.0
121 | pin-project-lite@0.2.16
122 | pin-utils@0.1.0
123 | pipewire-sys@0.8.0
124 | pipewire@0.8.0
125 | pkg-config@0.3.32
126 | portable-atomic-util@0.2.4
127 | portable-atomic@1.11.1
128 | ppv-lite86@0.2.21
129 | proc-macro2@1.0.95
130 | quote@1.0.40
131 | r-efi@5.2.0
132 | rand@0.9.2
133 | rand_chacha@0.9.0
134 | rand_core@0.6.4
135 | rand_core@0.9.3
136 | rdrand@0.8.3
137 | redox_users@0.5.0
138 | regex-automata@0.4.9
139 | regex-syntax@0.8.5
140 | regex@1.11.1
141 | remain@0.2.15
142 | rustc-demangle@0.1.24
143 | rustc-hash@1.1.0
144 | rustc-hash@2.1.1
145 | rustc_version@0.4.1
146 | rustversion@1.0.21
147 | ryu@1.0.20
148 | semver@1.0.26
149 | serde-big-array@0.5.1
150 | serde@1.0.219
151 | serde_bytes@0.11.17
152 | serde_derive@1.0.219
153 | serde_json@1.0.140
154 | serde_spanned@0.6.9
155 | sev@6.2.1
156 | sha2@0.10.9
157 | shlex@1.3.0
158 | slab@0.4.9
159 | sm3@0.4.2
160 | smallvec@1.15.0
161 | static_assertions@1.1.0
162 | strum@0.27.2
163 | strum_macros@0.27.2
164 | syn@2.0.101
165 | system-deps@6.2.2
166 | target-lexicon@0.12.16
167 | tdx@0.1.0
168 | thiserror-impl@1.0.69
169 | thiserror-impl@2.0.12
170 | thiserror@1.0.69
171 | thiserror@2.0.12
172 | tokio@1.45.1
173 | toml@0.8.23
174 | toml_datetime@0.6.11
175 | toml_edit@0.22.27
176 | tracing-attributes@0.1.29
177 | tracing-core@0.1.34
178 | tracing@0.1.41
179 | typenum@1.18.0
180 | unicode-ident@1.0.18
181 | unicode-segmentation@1.12.0
182 | unicode-width@0.1.14
183 | utf8parse@0.2.2
184 | uuid@1.17.0
185 | vcpkg@0.2.15
186 | version-compare@0.2.0
187 | version_check@0.9.5
188 | virtio-bindings@0.2.6
189 | vm-fdt@0.3.0
190 | vm-memory@0.16.2
191 | vmm-sys-util@0.12.1
192 | vmm-sys-util@0.14.0
193 | vsock@0.5.1
194 | wasi@0.11.0+wasi-snapshot-preview1
195 | wasi@0.14.2+wasi-0.2.4
196 | wasm-bindgen-backend@0.2.100
197 | wasm-bindgen-macro-support@0.2.100
198 | wasm-bindgen-macro@0.2.100
199 | wasm-bindgen-shared@0.2.100
200 | wasm-bindgen@0.2.100
201 | winapi-i686-pc-windows-gnu@0.4.0
202 | winapi-x86_64-pc-windows-gnu@0.4.0
203 | winapi@0.3.9
204 | windows-sys@0.59.0
205 | windows-targets@0.52.6
206 | windows_aarch64_gnullvm@0.52.6
207 | windows_aarch64_msvc@0.52.6
208 | windows_i686_gnu@0.52.6
209 | windows_i686_gnullvm@0.52.6
210 | windows_i686_msvc@0.52.6
211 | windows_x86_64_gnu@0.52.6
212 | windows_x86_64_gnullvm@0.52.6
213 | windows_x86_64_msvc@0.52.6
214 | winnow@0.7.10
215 | wit-bindgen-rt@0.39.0
216 | yansi-term@0.1.2
217 | zerocopy-derive@0.8.26
218 | zerocopy@0.8.26
219 | zstd-safe@7.2.4
220 | zstd-sys@2.0.15+zstd.1.5.7
221 | zstd@0.13.3
222 | "
223 |
224 | inherit cargo
225 |
226 | DESCRIPTION="A dynamic library providing Virtualization-based process isolation capabilities"
227 | HOMEPAGE="https://github.com/containers/libkrun"
228 |
229 | SRC_URI="
230 | ${CARGO_CRATE_URIS}
231 | https://github.com/containers/libkrun/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz
232 | "
233 |
234 | LICENSE="0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD BSD-2 Boost-1.0 ISC MIT MPL-2.0 Unicode-DFS-2016 Unlicense ZLIB"
235 | SLOT="0"
236 | KEYWORDS="-* ~amd64 ~arm64"
237 |
238 | RDEPEND="
239 | dev-libs/libkrunfw
240 | media-libs/virglrenderer
241 | media-video/pipewire
242 | "
243 | DEPEND="
244 | ${RDEPEND}
245 | "
246 | src_compile() {
247 | unset ARCH
248 | emake PREFIX=/usr GPU=1 BLK=1 NET=1 SND=1
249 | }
250 |
251 | src_install() {
252 | emake DESTDIR="${D}" PREFIX=/usr install
253 | }
254 |
--------------------------------------------------------------------------------
/sys-kernel/asahi-kernel/Manifest:
--------------------------------------------------------------------------------
1 | DIST gentoo-kernel-config-g17.tar.gz 6024 BLAKE2B 53ecea1c19cc83bc3f6e13ad3b2e813999a09e2b29526115480e8ea7b870da2f4728918713f8eb0b351730b2cdd9f75e7515dc99a9b34a4079f7d15a1cd78425 SHA512 a5a78da8027492a229f54bfbcddf4e8e14304280db01d856071a9eb1ed9cd86111254498c5546a9908d617a012c914e8ded0afad5bdf28e9f237e321b9ab0f63
2 | DIST kernel-aarch64-fedora.config.6.17.10-gentoo 299506 BLAKE2B 1121c2399e67310f7db62d0b2896327fa0c81ae66d7c9053bdcf62eeca015936a1d0752a542915f8765bf98bb977f2de91e8809c9ff5417f95064a62693806d1 SHA512 afa7f11efdb48c61b0bab8403d3a25d09ac2b61c2f416b3e680e02e7d89d5bdd0603b7da3adb36a16038f420cf6f84c09c5f72cd3f06c964971c4f2a6fc1057d
3 | DIST kernel-aarch64-fedora.config.6.17.3-gentoo 299506 BLAKE2B 94d31403019edf5c31599308b07fcde9d8534b025035cef2974055190aaa457997848a4ea788218767c0542d47969fa1976a557aeaefebc596029713c5239109 SHA512 aaa8536fc97653c2454175f51e90c3c9c91c3fdba31b3e5264ab21760b13fea79dfdb08a926adbf06a8e4116fcdbc94713c559ae04b8f6d0c6b8604e04c8ebd4
4 | DIST kernel-i686-fedora.config.6.17.10-gentoo 265947 BLAKE2B efce7edf95788ca539c4ce9ea6630d4de76f09673239348208b234ff9798d963489823b2581f431fdf95b00aca2fe3ecd2a1be1f4397a4fac3ce99b4d975668e SHA512 6c3923cc3f75a9ce344405bfd6e731b4e6222a707e4c03e44dce376acfe55988ee369c3314ac23cf33782bbc118947cc114c091ab2c8057e13b66f42913422ef
5 | DIST kernel-i686-fedora.config.6.17.3-gentoo 265947 BLAKE2B efce7edf95788ca539c4ce9ea6630d4de76f09673239348208b234ff9798d963489823b2581f431fdf95b00aca2fe3ecd2a1be1f4397a4fac3ce99b4d975668e SHA512 6c3923cc3f75a9ce344405bfd6e731b4e6222a707e4c03e44dce376acfe55988ee369c3314ac23cf33782bbc118947cc114c091ab2c8057e13b66f42913422ef
6 | DIST kernel-ppc64le-fedora.config.6.17.10-gentoo 249262 BLAKE2B ff80a57f4f2b1598a90c7afb0e71708396f059058179fc4bc024195be2a504e24946f3e7356c2d3d461c0d5cba7b5744159e4f3c7018cc4275321e47df59dab6 SHA512 8b4341bc1d11719ef14d4c717fc2ac73a3bf53bef497930ef663313995e66726e7ed4be84e0704bc9f5f8468a6a01e038d14c0f0a9469c0e29f28af185681714
7 | DIST kernel-ppc64le-fedora.config.6.17.3-gentoo 249262 BLAKE2B ff80a57f4f2b1598a90c7afb0e71708396f059058179fc4bc024195be2a504e24946f3e7356c2d3d461c0d5cba7b5744159e4f3c7018cc4275321e47df59dab6 SHA512 8b4341bc1d11719ef14d4c717fc2ac73a3bf53bef497930ef663313995e66726e7ed4be84e0704bc9f5f8468a6a01e038d14c0f0a9469c0e29f28af185681714
8 | DIST kernel-riscv64-fedora.config.6.17.10-gentoo 253885 BLAKE2B 7ec9d7570a3fde72f181d571ef2dc6a92067cd70334cc98186e451ae3f204bbbb9f2c904c90802b43788e95265f867f6f1b61e77f057322ce132440b7a269c84 SHA512 2da86c5a5cadca1956332cff8f078dfea9841c9a8f7596cd9c589d0076b8c4a8dc3ecb42ec0557a7c892d58333806754a9f705defc13de373c28b8a9f946028b
9 | DIST kernel-riscv64-fedora.config.6.17.3-gentoo 253885 BLAKE2B 7ec9d7570a3fde72f181d571ef2dc6a92067cd70334cc98186e451ae3f204bbbb9f2c904c90802b43788e95265f867f6f1b61e77f057322ce132440b7a269c84 SHA512 2da86c5a5cadca1956332cff8f078dfea9841c9a8f7596cd9c589d0076b8c4a8dc3ecb42ec0557a7c892d58333806754a9f705defc13de373c28b8a9f946028b
10 | DIST kernel-x86_64-fedora.config.6.17.10-gentoo 267029 BLAKE2B 8640bdbaac5658542cd683e08d5abbbd5fe96c856364b1a73342a58632269b76e370277697c424a060c10912e162d329ca3089e90e3327809204071cd8537062 SHA512 9f62da015a50f83368dc87f06a0f704f97187a582931bb8371707da4397e52eb72b0d23dbee5f90baf5fca4ef10f454ee9d264f94bf4d934d37950c62d7cf73c
11 | DIST kernel-x86_64-fedora.config.6.17.3-gentoo 267029 BLAKE2B 8640bdbaac5658542cd683e08d5abbbd5fe96c856364b1a73342a58632269b76e370277697c424a060c10912e162d329ca3089e90e3327809204071cd8537062 SHA512 9f62da015a50f83368dc87f06a0f704f97187a582931bb8371707da4397e52eb72b0d23dbee5f90baf5fca4ef10f454ee9d264f94bf4d934d37950c62d7cf73c
12 | DIST linux-6.17.tar.xz 153382068 BLAKE2B 0edb2324be5638aa75984128aafdba3e50824187d2fcdff8794eab99d85c10c3a17d1e840053c2c83df5ee11fdf69f1c9452c57ecc9dae01c4af38180fe7821a SHA512 063999d7b819970657f6b7713fdb4173da2065ffdeed7cae197026dbb1edfd7f1d50374f073a1e19ef9686539594824ff6ecb8a930d97c4f272cb12f1c6d8355
13 | DIST linux-6.x-sha256sums-20251102.asc 182885 BLAKE2B b68fd39a212bc82676cc3bf552170aec347b02a9201ba653fe902fce7d455176ff1b25e8dfaaf16a80ef8939bd94200d30db4ad2d899b47d9891598a20533bf4 SHA512 0401c17568aae8ac9220f8074831cd0b1d390863f158fa2b08a3b0cb78c796ab83ac18f5236e52ac63da9090f00c9d54f3967a3d52b34449613e382ba976fe2a
14 | DIST linux-6.x-sha256sums-20251201.asc 187298 BLAKE2B 41904c59d9fd208fa07909eb545ac5829d510c45ae37bb4180df556fbbbd83c2c2285c74372e7d6b214f6057503becdb4d87e846219e5355703f8c0a23296b8f SHA512 62e3f162563a30ee3b3c636a099eae59cd1e0d73e43532bfbac19b89b899b8f886a05a7e9ae80a9775b8571d31a5be14cb243692df14e3113c90f610d4a47b92
15 | DIST linux-asahi-6.17.11-1.diff 3119229 BLAKE2B 41fbcc6795dc98d0b7c2e209a94b27f37f814f87486c8820b6d557069b26502bd9a655c4d930aa267496e324ef7dc48f1d78469b97229425cc3e563f4107375b SHA512 4536d3d4d0e3cac623b0a3eb36d6f722fdc4b6060303c491372dd0d7325dc11179051ccde3a6f8cf6e9fb33af2f7eff7ebfaca8511837a9381fa3a2bfcc30109
16 | DIST linux-asahi-6.17.7-2.diff 3110876 BLAKE2B c5c0bad5ab4c6c19dcb1160a057fd68e5604887c21dabac1dd585b1586136fa54e35f439d5b90287eac86aa4c470494e33e174c3eeba4d4a20ff9b5efaac9a85 SHA512 aaf1b5a3d543df473e5a2684d2664920d52f0fe22027062017bfa6b263989304bdaabb8b3c6dfb964011c96b4368476c54c70814907e060672beaf9ff843d9d5
17 | DIST linux-gentoo-patches-6.17.10.tar.xz 86940 BLAKE2B 29eb529f3757a9c3f085674f8c6f2e71ad3df5c95f43cda5a3b9f1389941fa5fe47728b71b8bf5d24451ecd9ba2967e354a60f8248e2f5a6d9b3fb1c013d7bed SHA512 5bd964697e067280061cdf9069e48748f93df9a17349a8f259c25abfc6274fa696dc8457d4aac2b4a03e1c70de66b2378fa4e126d2eb12fd2515dae7360cf809
18 | DIST linux-gentoo-patches-6.17.2.tar.xz 99184 BLAKE2B 867bbf3a8cce987dba3381a874985e614187649e5341bc8c43f97e0b501ed4cfc4bce2ee7d8114ce54d75605151c7dbfdea51e9e5da7af3a834b169bb6998eb1 SHA512 149946fd38c22ef5a8b198011f4a044d3c00a93635f85b3c0d0f1f4d74faead20355acf3ff0ee55df89361fd48e8270219f52feeae0688b92d090a1c59a20ba8
19 | DIST patch-6.17.11.xz 844648 BLAKE2B 4adf688aadee196cd4afe94eb05d9e98b0e844d7ee4148c25bed76a47b1c06f665dc9587cc5f7f4f340fac1d0ebac32ee8cacdc0eca9c2850ccce670d9cb00a3 SHA512 dba734bb5b76ee7fb829b299f65efd9575b01a1dbf2e172a50f7d42ecdc75adfa6c99f66b2bfda68b889d6565591d2b01af5fd236abc6e2313baa9f47c7f5208
20 | DIST patch-6.17.7.xz 443556 BLAKE2B 732800a96e7be442d190a70ff7476a3f21116741338895f24f2f24e5fd8cc7073ef7606cec8b878d9103395ed7a7b0692bdfcbe5f03b978f3c5508b0fa48e758 SHA512 8388e1271e03d99a6edd05169bb44037fa20cd585f632f50da1aa677a5a466feb716dffaa6482bce35d22699abdb3ba9901443869683b520cc84e5ea3f9bfd6f
21 |
--------------------------------------------------------------------------------
/sys-kernel/asahi-kernel/asahi-kernel-6.17.11_p1.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 2020-2025 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI=8
5 | K_SECURITY_UNSUPPORTED="1"
6 | K_NODRYRUN="1"
7 |
8 | #KERNEL_IUSE_GENERIC_UKI=1
9 | KERNEL_IUSE_MODULES_SIGN=1
10 |
11 | RUST_MIN_VER="1.85.0"
12 | RUST_REQ_USE='rust-src,rustfmt'
13 |
14 | inherit kernel-build rust toolchain-funcs verify-sig
15 |
16 | BASE_P=linux-${PV%.*}
17 | PATCH_PV=${PV%_p*}
18 | PATCHSET=linux-gentoo-patches-6.17.10
19 | # https://koji.fedoraproject.org/koji/packageinfo?packageID=8
20 | # forked to https://github.com/projg2/fedora-kernel-config-for-gentoo
21 | CONFIG_VER=6.17.10-gentoo
22 | GENTOO_CONFIG_VER=g17
23 | SHA256SUM_DATE=20251201
24 |
25 | # asahi specific tag and version parsing
26 | ASAHI_TAGV=${PV#*_p}
27 | ASAHI_TAG="asahi-${PATCH_PV}-${ASAHI_TAGV}"
28 | # BASE_ASAHI_TAG is the first used TAG of specific release, i.e. usually
29 | # the first tag of a linux 6.x or linux stable 6.x.y release
30 | #BASE_ASAHI_TAG="asahi-${MY_BASE}-3"
31 | BASE_ASAHI_TAG="${ASAHI_TAG}"
32 |
33 | DESCRIPTION="Linux kernel built with Asahi and Gentoo patches"
34 | HOMEPAGE="
35 | https://asahilinux.org
36 | https://wiki.gentoo.org/wiki/Project:Distribution_Kernel
37 | https://www.kernel.org/
38 | "
39 |
40 | SRC_URI+="
41 | https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${BASE_P}.tar.xz
42 | https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/patch-${PATCH_PV}.xz
43 | https://dev.gentoo.org/~mgorny/dist/linux/${PATCHSET}.tar.xz
44 | https://github.com/projg2/gentoo-kernel-config/archive/${GENTOO_CONFIG_VER}.tar.gz
45 | -> gentoo-kernel-config-${GENTOO_CONFIG_VER}.tar.gz
46 | https://github.com/AsahiLinux/linux/compare/v${PATCH_PV}...${BASE_ASAHI_TAG}.diff
47 | -> linux-${BASE_ASAHI_TAG}.diff
48 | verify-sig? (
49 | https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/sha256sums.asc
50 | -> linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc
51 | )
52 | amd64? (
53 | https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-x86_64-fedora.config
54 | -> kernel-x86_64-fedora.config.${CONFIG_VER}
55 | )
56 | arm64? (
57 | https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-aarch64-fedora.config
58 | -> kernel-aarch64-fedora.config.${CONFIG_VER}
59 | )
60 | ppc64? (
61 | https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-ppc64le-fedora.config
62 | -> kernel-ppc64le-fedora.config.${CONFIG_VER}
63 | )
64 | riscv? (
65 | https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-riscv64-fedora.config
66 | -> kernel-riscv64-fedora.config.${CONFIG_VER}
67 | )
68 | x86? (
69 | https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-i686-fedora.config
70 | -> kernel-i686-fedora.config.${CONFIG_VER}
71 | )
72 | "
73 | S=${WORKDIR}/${BASE_P}
74 |
75 | LICENSE="GPL-2"
76 | SLOT="asahi-${PV}"
77 | KEYWORDS="~arm64"
78 | IUSE="debug experimental hardened"
79 | # mask untested USE flags
80 | REQUIRED_USE="
81 | arm64? ( !experimental !secureboot )
82 | arm? ( savedconfig )
83 | hppa? ( savedconfig )
84 | sparc? ( savedconfig )
85 | "
86 |
87 | # Rust is non-negotiable for the dist kernel
88 | DEPEND="
89 | ${DEPEND}
90 | sys-boot/m1n1
91 | sys-boot/u-boot
92 | "
93 | BDEPEND="
94 | dev-util/bindgen
95 | debug? ( dev-util/pahole )
96 | verify-sig? ( >=sec-keys/openpgp-keys-kernel-20250702 )
97 | "
98 | PDEPEND="
99 | >=virtual/dist-kernel-${PATCH_PV}
100 | "
101 |
102 | QA_FLAGS_IGNORED="
103 | usr/src/linux-.*/scripts/gcc-plugins/.*.so
104 | usr/src/linux-.*/vmlinux
105 | usr/src/linux-.*/arch/powerpc/kernel/vdso.*/vdso.*.so.dbg
106 | "
107 |
108 | VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kernel.org.asc
109 |
110 | src_unpack() {
111 | if use verify-sig; then
112 | cd "${DISTDIR}" || die
113 | verify-sig_verify_signed_checksums \
114 | "linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc" \
115 | sha256 "${BASE_P}.tar.xz patch-${PATCH_PV}.xz"
116 | cd "${WORKDIR}" || die
117 | fi
118 |
119 | default
120 | }
121 |
122 | src_prepare() {
123 | local patch
124 | eapply "${WORKDIR}/patch-${PATCH_PV}"
125 | for patch in "${WORKDIR}/${PATCHSET}"/*.patch; do
126 | eapply "${patch}"
127 | # non-experimental patches always finish with Gentoo Kconfig
128 | # when ! use experimental, stop applying after it
129 | if [[ ${patch} == *Add-Gentoo-Linux-support-config-settings* ]] &&
130 | ! use experimental
131 | then
132 | break
133 | fi
134 | done
135 |
136 | eapply "${DISTDIR}/linux-${BASE_ASAHI_TAG}.diff"
137 |
138 | default
139 |
140 | # add Gentoo patchset version
141 | local extraversion=${PV#${PATCH_PV}}
142 | sed -i -e "s:^\(EXTRAVERSION =\).*:\1 ${extraversion/_/-}:" Makefile || die
143 |
144 | local biendian=false
145 |
146 | # prepare the default config
147 | case ${ARCH} in
148 | arm | hppa | loong | sparc)
149 | > .config || die
150 | ;;
151 | amd64)
152 | cp "${DISTDIR}/kernel-x86_64-fedora.config.${CONFIG_VER}" .config || die
153 | ;;
154 | arm64)
155 | cp "${DISTDIR}/kernel-aarch64-fedora.config.${CONFIG_VER}" .config || die
156 | biendian=true
157 | ;;
158 | ppc)
159 | # assume powermac/powerbook defconfig
160 | # we still package.use.force savedconfig
161 | cp "${WORKDIR}/${BASE_P}/arch/powerpc/configs/pmac32_defconfig" .config || die
162 | ;;
163 | ppc64)
164 | cp "${DISTDIR}/kernel-ppc64le-fedora.config.${CONFIG_VER}" .config || die
165 | biendian=true
166 | ;;
167 | riscv)
168 | cp "${DISTDIR}/kernel-riscv64-fedora.config.${CONFIG_VER}" .config || die
169 | ;;
170 | x86)
171 | cp "${DISTDIR}/kernel-i686-fedora.config.${CONFIG_VER}" .config || die
172 | ;;
173 | *)
174 | die "Unsupported arch ${ARCH}"
175 | ;;
176 | esac
177 |
178 | # use CONFIG_LOCALVERSION to provide "asahi" and "dist" annotations.
179 | local myversion="-asahi-dist"
180 | use hardened && myversion+="-hardened"
181 | echo "CONFIG_LOCALVERSION=\"${myversion}\"" > "${T}"/version.config || die
182 | local dist_conf_path="${WORKDIR}/gentoo-kernel-config-${GENTOO_CONFIG_VER}"
183 |
184 | local merge_configs=(
185 | "${T}"/version.config
186 | "${dist_conf_path}"/base.config
187 | "${dist_conf_path}"/6.12+.config
188 | )
189 | use debug || merge_configs+=(
190 | "${dist_conf_path}"/no-debug.config
191 | "${FILESDIR}"/linux-6.10_disable_debug_info_btf.config
192 | )
193 | if use hardened; then
194 | merge_configs+=( "${dist_conf_path}"/hardened-base.config )
195 |
196 | tc-is-gcc && merge_configs+=( "${dist_conf_path}"/hardened-gcc-plugins.config )
197 |
198 | if [[ -f "${dist_conf_path}/hardened-${ARCH}.config" ]]; then
199 | merge_configs+=( "${dist_conf_path}/hardened-${ARCH}.config" )
200 | fi
201 | fi
202 |
203 | # this covers ppc64 and aarch64_be only for now
204 | if [[ ${biendian} == true && $(tc-endian) == big ]]; then
205 | merge_configs+=( "${dist_conf_path}/big-endian.config" )
206 | fi
207 |
208 | use secureboot && merge_configs+=(
209 | "${dist_conf_path}/secureboot.config"
210 | "${dist_conf_path}/zboot.config"
211 | )
212 |
213 | # deselect all non APPLE arm64 ARCHs
214 | merge_configs+=(
215 | "${FILESDIR}"/linux-6.17_arm64_deselect_non_apple_arch.config
216 | )
217 | # adjust base config for Apple silicon systems
218 | merge_configs+=(
219 | "${FILESDIR}"/linux-6.8_arch_apple_overrides.config
220 | )
221 |
222 | # amdgpu no longer builds with clang (issue #113)
223 | merge_configs+=(
224 | "${FILESDIR}"/linux-6.10_drop_amdgpu.config
225 | )
226 |
227 | # apple silicon specific configs
228 | merge_configs+=(
229 | arch/arm64/configs/asahi.config
230 | )
231 |
232 | kernel-build_merge_configs "${merge_configs[@]}"
233 | }
234 |
235 | src_install() {
236 | # call kernel-build's scr_install
237 | kernel-build_src_install
238 |
239 | # symlink installed *.dtbs back into kernel "source" directory
240 | for dtb in "${ED}/lib/modules/${KV_FULL}/dtb/apple/"*.dtb; do
241 | local basedtb=$(basename ${dtb})
242 | dosym -r "${dtb##${ED}}" "/usr/src/linux-${KV_FULL}/arch/arm64/boot/dts/apple/${basedtb}"
243 | done
244 | }
245 |
246 | pkg_postinst() {
247 | einfo "For more information about Asahi Linux please visit ${HOMEPAGE},"
248 | einfo "or consult the Wiki at https://github.com/AsahiLinux/docs/wiki."
249 | kernel-build_pkg_postinst
250 | }
251 |
--------------------------------------------------------------------------------
/sys-kernel/asahi-kernel/asahi-kernel-6.17.7_p2-r1.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 2020-2025 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI=8
5 | K_SECURITY_UNSUPPORTED="1"
6 | K_NODRYRUN="1"
7 |
8 | #KERNEL_IUSE_GENERIC_UKI=1
9 | KERNEL_IUSE_MODULES_SIGN=1
10 |
11 | RUST_MIN_VER="1.85.0"
12 | RUST_REQ_USE='rust-src,rustfmt'
13 |
14 | inherit kernel-build rust toolchain-funcs verify-sig
15 |
16 | BASE_P=linux-${PV%.*}
17 | PATCH_PV=${PV%_p*}
18 | PATCHSET=linux-gentoo-patches-6.17.2
19 | # https://koji.fedoraproject.org/koji/packageinfo?packageID=8
20 | # forked to https://github.com/projg2/fedora-kernel-config-for-gentoo
21 | CONFIG_VER=6.17.3-gentoo
22 | GENTOO_CONFIG_VER=g17
23 | SHA256SUM_DATE=20251102
24 |
25 | # asahi specific tag and version parsing
26 | ASAHI_TAGV=${PV#*_p}
27 | ASAHI_TAG="asahi-${PATCH_PV}-${ASAHI_TAGV}"
28 | # BASE_ASAHI_TAG is the first used TAG of specific release, i.e. usually
29 | # the first tag of a linux 6.x or linux stable 6.x.y release
30 | #BASE_ASAHI_TAG="asahi-${MY_BASE}-3"
31 | BASE_ASAHI_TAG="${ASAHI_TAG}"
32 |
33 | DESCRIPTION="Linux kernel built with Asahi and Gentoo patches"
34 | HOMEPAGE="
35 | https://asahilinux.org
36 | https://wiki.gentoo.org/wiki/Project:Distribution_Kernel
37 | https://www.kernel.org/
38 | "
39 |
40 | SRC_URI+="
41 | https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${BASE_P}.tar.xz
42 | https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/patch-${PATCH_PV}.xz
43 | https://dev.gentoo.org/~mgorny/dist/linux/${PATCHSET}.tar.xz
44 | https://github.com/projg2/gentoo-kernel-config/archive/${GENTOO_CONFIG_VER}.tar.gz
45 | -> gentoo-kernel-config-${GENTOO_CONFIG_VER}.tar.gz
46 | https://github.com/AsahiLinux/linux/compare/v${PATCH_PV}...${BASE_ASAHI_TAG}.diff
47 | -> linux-${BASE_ASAHI_TAG}.diff
48 | verify-sig? (
49 | https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/sha256sums.asc
50 | -> linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc
51 | )
52 | amd64? (
53 | https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-x86_64-fedora.config
54 | -> kernel-x86_64-fedora.config.${CONFIG_VER}
55 | )
56 | arm64? (
57 | https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-aarch64-fedora.config
58 | -> kernel-aarch64-fedora.config.${CONFIG_VER}
59 | )
60 | ppc64? (
61 | https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-ppc64le-fedora.config
62 | -> kernel-ppc64le-fedora.config.${CONFIG_VER}
63 | )
64 | riscv? (
65 | https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-riscv64-fedora.config
66 | -> kernel-riscv64-fedora.config.${CONFIG_VER}
67 | )
68 | x86? (
69 | https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-i686-fedora.config
70 | -> kernel-i686-fedora.config.${CONFIG_VER}
71 | )
72 | "
73 | S=${WORKDIR}/${BASE_P}
74 |
75 | LICENSE="GPL-2"
76 | SLOT="asahi-${PV}"
77 | KEYWORDS="arm64"
78 | IUSE="debug experimental hardened"
79 | # mask untested USE flags
80 | REQUIRED_USE="
81 | arm64? ( !experimental !secureboot )
82 | arm? ( savedconfig )
83 | hppa? ( savedconfig )
84 | sparc? ( savedconfig )
85 | "
86 |
87 | # Rust is non-negotiable for the dist kernel
88 | DEPEND="
89 | ${DEPEND}
90 | sys-boot/m1n1
91 | sys-boot/u-boot
92 | "
93 | BDEPEND="
94 | dev-util/bindgen
95 | debug? ( dev-util/pahole )
96 | verify-sig? ( >=sec-keys/openpgp-keys-kernel-20250702 )
97 | "
98 | PDEPEND="
99 | >=virtual/dist-kernel-${PATCH_PV}
100 | "
101 |
102 | QA_FLAGS_IGNORED="
103 | usr/src/linux-.*/scripts/gcc-plugins/.*.so
104 | usr/src/linux-.*/vmlinux
105 | usr/src/linux-.*/arch/powerpc/kernel/vdso.*/vdso.*.so.dbg
106 | "
107 |
108 | VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kernel.org.asc
109 |
110 | src_unpack() {
111 | if use verify-sig; then
112 | cd "${DISTDIR}" || die
113 | verify-sig_verify_signed_checksums \
114 | "linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc" \
115 | sha256 "${BASE_P}.tar.xz patch-${PATCH_PV}.xz"
116 | cd "${WORKDIR}" || die
117 | fi
118 |
119 | default
120 | }
121 |
122 | src_prepare() {
123 | local patch
124 | eapply "${WORKDIR}/patch-${PATCH_PV}"
125 | for patch in "${WORKDIR}/${PATCHSET}"/*.patch; do
126 | eapply "${patch}"
127 | # non-experimental patches always finish with Gentoo Kconfig
128 | # when ! use experimental, stop applying after it
129 | if [[ ${patch} == *Add-Gentoo-Linux-support-config-settings* ]] &&
130 | ! use experimental
131 | then
132 | break
133 | fi
134 | done
135 |
136 | eapply "${DISTDIR}/linux-${BASE_ASAHI_TAG}.diff"
137 | eapply "${FILESDIR}/${PN}-6.8-config-gentoo-Drop-RANDSTRUCT-from-GENTOO_KERNEL_SEL.patch"
138 |
139 | default
140 |
141 | # add Gentoo patchset version
142 | local extraversion=${PV#${PATCH_PV}}
143 | sed -i -e "s:^\(EXTRAVERSION =\).*:\1 ${extraversion/_/-}:" Makefile || die
144 |
145 | local biendian=false
146 |
147 | # prepare the default config
148 | case ${ARCH} in
149 | arm | hppa | loong | sparc)
150 | > .config || die
151 | ;;
152 | amd64)
153 | cp "${DISTDIR}/kernel-x86_64-fedora.config.${CONFIG_VER}" .config || die
154 | ;;
155 | arm64)
156 | cp "${DISTDIR}/kernel-aarch64-fedora.config.${CONFIG_VER}" .config || die
157 | biendian=true
158 | ;;
159 | ppc)
160 | # assume powermac/powerbook defconfig
161 | # we still package.use.force savedconfig
162 | cp "${WORKDIR}/${BASE_P}/arch/powerpc/configs/pmac32_defconfig" .config || die
163 | ;;
164 | ppc64)
165 | cp "${DISTDIR}/kernel-ppc64le-fedora.config.${CONFIG_VER}" .config || die
166 | biendian=true
167 | ;;
168 | riscv)
169 | cp "${DISTDIR}/kernel-riscv64-fedora.config.${CONFIG_VER}" .config || die
170 | ;;
171 | x86)
172 | cp "${DISTDIR}/kernel-i686-fedora.config.${CONFIG_VER}" .config || die
173 | ;;
174 | *)
175 | die "Unsupported arch ${ARCH}"
176 | ;;
177 | esac
178 |
179 | # use CONFIG_LOCALVERSION to provide "asahi" and "dist" annotations.
180 | local myversion="-asahi-dist"
181 | use hardened && myversion+="-hardened"
182 | echo "CONFIG_LOCALVERSION=\"${myversion}\"" > "${T}"/version.config || die
183 | local dist_conf_path="${WORKDIR}/gentoo-kernel-config-${GENTOO_CONFIG_VER}"
184 |
185 | local merge_configs=(
186 | "${T}"/version.config
187 | "${dist_conf_path}"/base.config
188 | "${dist_conf_path}"/6.12+.config
189 | )
190 | use debug || merge_configs+=(
191 | "${dist_conf_path}"/no-debug.config
192 | "${FILESDIR}"/linux-6.10_disable_debug_info_btf.config
193 | )
194 | if use hardened; then
195 | merge_configs+=( "${dist_conf_path}"/hardened-base.config )
196 |
197 | tc-is-gcc && merge_configs+=( "${dist_conf_path}"/hardened-gcc-plugins.config )
198 |
199 | if [[ -f "${dist_conf_path}/hardened-${ARCH}.config" ]]; then
200 | merge_configs+=( "${dist_conf_path}/hardened-${ARCH}.config" )
201 | fi
202 | fi
203 |
204 | # this covers ppc64 and aarch64_be only for now
205 | if [[ ${biendian} == true && $(tc-endian) == big ]]; then
206 | merge_configs+=( "${dist_conf_path}/big-endian.config" )
207 | fi
208 |
209 | use secureboot && merge_configs+=(
210 | "${dist_conf_path}/secureboot.config"
211 | "${dist_conf_path}/zboot.config"
212 | )
213 |
214 | # deselect all non APPLE arm64 ARCHs
215 | merge_configs+=(
216 | "${FILESDIR}"/linux-6.17_arm64_deselect_non_apple_arch.config
217 | )
218 | # adjust base config for Apple silicon systems
219 | merge_configs+=(
220 | "${FILESDIR}"/linux-6.8_arch_apple_overrides.config
221 | )
222 |
223 | # amdgpu no longer builds with clang (issue #113)
224 | merge_configs+=(
225 | "${FILESDIR}"/linux-6.10_drop_amdgpu.config
226 | )
227 |
228 | # apple silicon specific configs
229 | merge_configs+=(
230 | arch/arm64/configs/asahi.config
231 | )
232 |
233 | kernel-build_merge_configs "${merge_configs[@]}"
234 | }
235 |
236 | src_install() {
237 | # call kernel-build's scr_install
238 | kernel-build_src_install
239 |
240 | # symlink installed *.dtbs back into kernel "source" directory
241 | for dtb in "${ED}/lib/modules/${KV_FULL}/dtb/apple/"*.dtb; do
242 | local basedtb=$(basename ${dtb})
243 | dosym -r "${dtb##${ED}}" "/usr/src/linux-${KV_FULL}/arch/arm64/boot/dts/apple/${basedtb}"
244 | done
245 | }
246 |
247 | pkg_postinst() {
248 | einfo "For more information about Asahi Linux please visit ${HOMEPAGE},"
249 | einfo "or consult the Wiki at https://github.com/AsahiLinux/docs/wiki."
250 | kernel-build_pkg_postinst
251 | }
252 |
--------------------------------------------------------------------------------
/metadata/md5-cache/sys-apps/speakersafetyd-0.1.9-r1:
--------------------------------------------------------------------------------
1 | BDEPEND=>=virtual/rust-1.53 virtual/pkgconfig
2 | DEFINED_PHASES=compile configure install test unpack
3 | DEPEND=virtual/rust media-libs/alsa-ucm-conf-asahi
4 | DESCRIPTION=Speaker protection daemon for embedded Linux systems
5 | EAPI=8
6 | HOMEPAGE=https://github.com/AsahiLinux/speakersafetyd/
7 | INHERIT=cargo udev
8 | IUSE=debug
9 | KEYWORDS=arm64
10 | LICENSE=MIT
11 | RDEPEND=virtual/rust media-libs/alsa-ucm-conf-asahi
12 | SLOT=0
13 | SRC_URI=https://github.com/AsahiLinux/speakersafetyd/archive/refs/tags/0.1.9.tar.gz -> speakersafetyd-0.1.9.tar.gz https://crates.io/api/v1/crates/alsa/0.8.1/download -> alsa-0.8.1.crate https://crates.io/api/v1/crates/alsa-sys/0.3.1/download -> alsa-sys-0.3.1.crate https://crates.io/api/v1/crates/android-tzdata/0.1.1/download -> android-tzdata-0.1.1.crate https://crates.io/api/v1/crates/android_system_properties/0.1.5/download -> android_system_properties-0.1.5.crate https://crates.io/api/v1/crates/atty/0.2.14/download -> atty-0.2.14.crate https://crates.io/api/v1/crates/autocfg/1.1.0/download -> autocfg-1.1.0.crate https://crates.io/api/v1/crates/bitflags/1.3.2/download -> bitflags-1.3.2.crate https://crates.io/api/v1/crates/bitflags/2.4.0/download -> bitflags-2.4.0.crate https://crates.io/api/v1/crates/bumpalo/3.14.0/download -> bumpalo-3.14.0.crate https://crates.io/api/v1/crates/cc/1.0.79/download -> cc-1.0.79.crate https://crates.io/api/v1/crates/cfg-if/1.0.0/download -> cfg-if-1.0.0.crate https://crates.io/api/v1/crates/chrono/0.4.31/download -> chrono-0.4.31.crate https://crates.io/api/v1/crates/clap/4.1.6/download -> clap-4.1.6.crate https://crates.io/api/v1/crates/clap-verbosity-flag/2.0.0/download -> clap-verbosity-flag-2.0.0.crate https://crates.io/api/v1/crates/clap_derive/4.1.0/download -> clap_derive-4.1.0.crate https://crates.io/api/v1/crates/clap_lex/0.3.1/download -> clap_lex-0.3.1.crate https://crates.io/api/v1/crates/colored/1.9.4/download -> colored-1.9.4.crate https://crates.io/api/v1/crates/configparser/3.0.3/download -> configparser-3.0.3.crate https://crates.io/api/v1/crates/core-foundation-sys/0.8.4/download -> core-foundation-sys-0.8.4.crate https://crates.io/api/v1/crates/equivalent/1.0.1/download -> equivalent-1.0.1.crate https://crates.io/api/v1/crates/errno/0.2.8/download -> errno-0.2.8.crate https://crates.io/api/v1/crates/errno-dragonfly/0.1.2/download -> errno-dragonfly-0.1.2.crate https://crates.io/api/v1/crates/hashbrown/0.14.3/download -> hashbrown-0.14.3.crate https://crates.io/api/v1/crates/heck/0.4.1/download -> heck-0.4.1.crate https://crates.io/api/v1/crates/hermit-abi/0.1.19/download -> hermit-abi-0.1.19.crate https://crates.io/api/v1/crates/hermit-abi/0.3.1/download -> hermit-abi-0.3.1.crate https://crates.io/api/v1/crates/iana-time-zone/0.1.58/download -> iana-time-zone-0.1.58.crate https://crates.io/api/v1/crates/iana-time-zone-haiku/0.1.2/download -> iana-time-zone-haiku-0.1.2.crate https://crates.io/api/v1/crates/indexmap/2.1.0/download -> indexmap-2.1.0.crate https://crates.io/api/v1/crates/io-lifetimes/1.0.5/download -> io-lifetimes-1.0.5.crate https://crates.io/api/v1/crates/is-terminal/0.4.3/download -> is-terminal-0.4.3.crate https://crates.io/api/v1/crates/itoa/1.0.5/download -> itoa-1.0.5.crate https://crates.io/api/v1/crates/js-sys/0.3.64/download -> js-sys-0.3.64.crate https://crates.io/api/v1/crates/json/0.12.4/download -> json-0.12.4.crate https://crates.io/api/v1/crates/lazy_static/1.4.0/download -> lazy_static-1.4.0.crate https://crates.io/api/v1/crates/libc/0.2.150/download -> libc-0.2.150.crate https://crates.io/api/v1/crates/linux-raw-sys/0.1.4/download -> linux-raw-sys-0.1.4.crate https://crates.io/api/v1/crates/log/0.4.17/download -> log-0.4.17.crate https://crates.io/api/v1/crates/nix/0.26.4/download -> nix-0.26.4.crate https://crates.io/api/v1/crates/num-traits/0.2.17/download -> num-traits-0.2.17.crate https://crates.io/api/v1/crates/num_threads/0.1.6/download -> num_threads-0.1.6.crate https://crates.io/api/v1/crates/once_cell/1.17.1/download -> once_cell-1.17.1.crate https://crates.io/api/v1/crates/os_str_bytes/6.4.1/download -> os_str_bytes-6.4.1.crate https://crates.io/api/v1/crates/pkg-config/0.3.26/download -> pkg-config-0.3.26.crate https://crates.io/api/v1/crates/proc-macro-error/1.0.4/download -> proc-macro-error-1.0.4.crate https://crates.io/api/v1/crates/proc-macro-error-attr/1.0.4/download -> proc-macro-error-attr-1.0.4.crate https://crates.io/api/v1/crates/proc-macro2/1.0.69/download -> proc-macro2-1.0.69.crate https://crates.io/api/v1/crates/quote/1.0.33/download -> quote-1.0.33.crate https://crates.io/api/v1/crates/rustix/0.36.8/download -> rustix-0.36.8.crate https://crates.io/api/v1/crates/serde/1.0.152/download -> serde-1.0.152.crate https://crates.io/api/v1/crates/signal-hook/0.3.17/download -> signal-hook-0.3.17.crate https://crates.io/api/v1/crates/signal-hook-registry/1.4.1/download -> signal-hook-registry-1.4.1.crate https://crates.io/api/v1/crates/simple_logger/1.16.0/download -> simple_logger-1.16.0.crate https://crates.io/api/v1/crates/strsim/0.10.0/download -> strsim-0.10.0.crate https://crates.io/api/v1/crates/syn/1.0.108/download -> syn-1.0.108.crate https://crates.io/api/v1/crates/syn/2.0.38/download -> syn-2.0.38.crate https://crates.io/api/v1/crates/termcolor/1.2.0/download -> termcolor-1.2.0.crate https://crates.io/api/v1/crates/time/0.3.19/download -> time-0.3.19.crate https://crates.io/api/v1/crates/time-core/0.1.0/download -> time-core-0.1.0.crate https://crates.io/api/v1/crates/time-macros/0.2.7/download -> time-macros-0.2.7.crate https://crates.io/api/v1/crates/unicode-ident/1.0.6/download -> unicode-ident-1.0.6.crate https://crates.io/api/v1/crates/version_check/0.9.4/download -> version_check-0.9.4.crate https://crates.io/api/v1/crates/wasm-bindgen/0.2.87/download -> wasm-bindgen-0.2.87.crate https://crates.io/api/v1/crates/wasm-bindgen-backend/0.2.87/download -> wasm-bindgen-backend-0.2.87.crate https://crates.io/api/v1/crates/wasm-bindgen-macro/0.2.87/download -> wasm-bindgen-macro-0.2.87.crate https://crates.io/api/v1/crates/wasm-bindgen-macro-support/0.2.87/download -> wasm-bindgen-macro-support-0.2.87.crate https://crates.io/api/v1/crates/wasm-bindgen-shared/0.2.87/download -> wasm-bindgen-shared-0.2.87.crate https://crates.io/api/v1/crates/winapi/0.3.9/download -> winapi-0.3.9.crate https://crates.io/api/v1/crates/winapi-i686-pc-windows-gnu/0.4.0/download -> winapi-i686-pc-windows-gnu-0.4.0.crate https://crates.io/api/v1/crates/winapi-util/0.1.5/download -> winapi-util-0.1.5.crate https://crates.io/api/v1/crates/winapi-x86_64-pc-windows-gnu/0.4.0/download -> winapi-x86_64-pc-windows-gnu-0.4.0.crate https://crates.io/api/v1/crates/windows-core/0.51.1/download -> windows-core-0.51.1.crate https://crates.io/api/v1/crates/windows-sys/0.45.0/download -> windows-sys-0.45.0.crate https://crates.io/api/v1/crates/windows-targets/0.42.1/download -> windows-targets-0.42.1.crate https://crates.io/api/v1/crates/windows-targets/0.48.5/download -> windows-targets-0.48.5.crate https://crates.io/api/v1/crates/windows_aarch64_gnullvm/0.42.1/download -> windows_aarch64_gnullvm-0.42.1.crate https://crates.io/api/v1/crates/windows_aarch64_gnullvm/0.48.5/download -> windows_aarch64_gnullvm-0.48.5.crate https://crates.io/api/v1/crates/windows_aarch64_msvc/0.42.1/download -> windows_aarch64_msvc-0.42.1.crate https://crates.io/api/v1/crates/windows_aarch64_msvc/0.48.5/download -> windows_aarch64_msvc-0.48.5.crate https://crates.io/api/v1/crates/windows_i686_gnu/0.42.1/download -> windows_i686_gnu-0.42.1.crate https://crates.io/api/v1/crates/windows_i686_gnu/0.48.5/download -> windows_i686_gnu-0.48.5.crate https://crates.io/api/v1/crates/windows_i686_msvc/0.42.1/download -> windows_i686_msvc-0.42.1.crate https://crates.io/api/v1/crates/windows_i686_msvc/0.48.5/download -> windows_i686_msvc-0.48.5.crate https://crates.io/api/v1/crates/windows_x86_64_gnu/0.42.1/download -> windows_x86_64_gnu-0.42.1.crate https://crates.io/api/v1/crates/windows_x86_64_gnu/0.48.5/download -> windows_x86_64_gnu-0.48.5.crate https://crates.io/api/v1/crates/windows_x86_64_gnullvm/0.42.1/download -> windows_x86_64_gnullvm-0.42.1.crate https://crates.io/api/v1/crates/windows_x86_64_gnullvm/0.48.5/download -> windows_x86_64_gnullvm-0.48.5.crate https://crates.io/api/v1/crates/windows_x86_64_msvc/0.42.1/download -> windows_x86_64_msvc-0.42.1.crate https://crates.io/api/v1/crates/windows_x86_64_msvc/0.48.5/download -> windows_x86_64_msvc-0.48.5.crate
14 | _eclasses_=toolchain-funcs e56c7649b804f051623c8bc1a1c44084 multilib c19072c3cd7ac5cb21de013f7e9832e0 flag-o-matic 288c54efeb5e2aa70775e39032695ad4 multiprocessing 30ead54fa2e2b5f9cd4e612ffc34d0fe cargo 4dede41d64d595673f6da62ab5540fa0 udev eec0bbab06977f1cfc5597269c1fa152
15 | _md5_=5717bd3ca2b0dfb24ea5f5b5ceb2b2ab
16 |
--------------------------------------------------------------------------------
/sys-devel/x86_64-multilib-toolchain/x86_64-multilib-toolchain-14.2.0_p1.ebuild:
--------------------------------------------------------------------------------
1 | # Copyright 2022-2024 Gentoo Authors
2 | # Distributed under the terms of the GNU General Public License v2
3 |
4 | EAPI=8
5 |
6 | inherit edo flag-o-matic toolchain-funcs
7 |
8 | GCC_PV=14.2.0
9 | BINUTILS_PV=2.43.1
10 | KERNEL_PV=6.10
11 | GLIBC_PV=2.40
12 |
13 | DESCRIPTION="All-in-one x86 toolchain for packages that need this specific crosscompiler"
14 | HOMEPAGE="
15 | https://gcc.gnu.org/
16 | https://sourceware.org/binutils/
17 | https://www.kernel.org/
18 | "
19 | SRC_URI="
20 | mirror://gnu/binutils/binutils-${BINUTILS_PV}.tar.xz
21 | https://www.kernel.org/pub/linux/kernel/v6.x/linux-${KERNEL_PV}.tar.xz
22 | mirror://gnu/glibc/glibc-${GLIBC_PV}.tar.xz
23 | "
24 | if [[ ${GCC_PV} == *-* ]]; then
25 | SRC_URI+=" mirror://gcc/snapshots/${GCC_PV}/gcc-${GCC_PV}.tar.xz"
26 | else
27 | SRC_URI+="
28 | mirror://gcc/gcc-${GCC_PV}/gcc-${GCC_PV}.tar.xz
29 | mirror://gnu/gcc/gcc-${GCC_PV}/gcc-${GCC_PV}.tar.xz
30 | "
31 | fi
32 | S="${WORKDIR}"
33 |
34 | # l1:binutils+gcc, l2:gcc(libraries)
35 | LICENSE="
36 | GPL-3+
37 | LGPL-3+ || ( GPL-3+ libgcc libstdc++ gcc-runtime-library-exception-3.1 )
38 | GPL-2
39 | LGPL-2.1+ BSD HPND ISC inner-net rc PCRE
40 | "
41 | SLOT="0"
42 | KEYWORDS="~amd64 ~arm64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
43 | IUSE="+bin-symlinks custom-cflags +strip"
44 |
45 | RDEPEND="
46 | dev-libs/gmp:=
47 | dev-libs/mpc:=
48 | dev-libs/mpfr:=
49 | sys-libs/zlib:=
50 | virtual/libiconv
51 | bin-symlinks? (
52 | !cross-x86_64-multilib-linux-gnu/binutils
53 | !cross-x86_64-multilib-linux-gnu/gcc
54 | !cross-x86_64-multilib-linux-gnu/glibc
55 | )
56 | "
57 | DEPEND="${RDEPEND}"
58 |
59 | PATCHES=()
60 |
61 | pkg_pretend() {
62 | [[ ${MERGE_TYPE} == binary ]] && return
63 |
64 | tc-is-cross-compiler &&
65 | die "cross-compilation of the toolchain itself is unsupported"
66 | }
67 |
68 | src_prepare() {
69 | # rename directories to simplify both patching and the ebuild
70 | mv binutils{-${BINUTILS_PV},} || die
71 | mv gcc{-${GCC_PV},} || die
72 | mv linux-{${KERNEL_PV},headers} || die
73 | mv glibc{-${GLIBC_PV},} || die
74 |
75 | default
76 | }
77 |
78 | src_compile() {
79 | # src_compile is kept similar to dev-util/mingw64-toolchain
80 | # at least for now for ease of comparison etc.
81 | #
82 | # not great but do everything in src_compile given bootstrapping
83 | # process needs to be done in steps of configure+compile+install
84 | # (done modular to have most package-specific things in one place)
85 |
86 | CTARGET=x86_64-multilib-linux-gnu
87 |
88 | X86MT_D=${T}/root # moved to ${D} in src_install
89 | local x86mtdir=/usr/lib/${PN}
90 | local prefix=${EPREFIX}${x86mtdir}
91 | local sysroot=${X86MT_D}${prefix}
92 | local -x PATH=${sysroot}/bin:${PATH}
93 |
94 | filter-lto
95 | use custom-cflags || strip-flags # fancy flags are not realistic here
96 |
97 | local hdr_dir="${sysroot}/include"
98 |
99 | # global configure flags
100 | local conf=(
101 | --build=${CBUILD:-${CHOST}}
102 | --target=${CTARGET}
103 | --{doc,info,man}dir=/.skip # let the real binutils+gcc handle docs
104 | MAKEINFO=: #922230
105 | )
106 |
107 | # binutils
108 | local conf_binutils=(
109 | --prefix="${prefix}"
110 | --host=${CHOST}
111 | --disable-cet
112 | --disable-default-execstack
113 | --disable-nls
114 | --disable-shared
115 | --with-system-zlib
116 | --without-debuginfod
117 | --without-msgpack
118 | --without-zstd
119 | )
120 |
121 | local conf_glibc=(
122 | --enable-stack-protector=strong
123 | --disable-cet
124 | --enable-kernel=3.2.0
125 | --without-selinux
126 | --disable-werror
127 | --enable-bind-now
128 | --enable-fortify-source
129 | --disable-profile
130 | --without-gd
131 | --with-headers="${hdr_dir}"
132 | --prefix="${prefix}"
133 | --sysconfdir='$(prefix)/etc'
134 | --localstatedir='$(prefix)/var'
135 | --mandir='$(prefix)/share/man'
136 | --infodir='$(prefix)/share/info'
137 | --libexecdir='$(libdir)/misc/glibc'
138 | --disable-systemtap
139 | --disable-nscd
140 | --disable-timezone-tools
141 | )
142 |
143 | local conf_glibc_amd64=(
144 | --libdir='$(prefix)/lib64'
145 | --host=${CTARGET}
146 | )
147 |
148 | local conf_glibc_x86=(
149 | --libdir='$(prefix)/lib'
150 | --host=i686-multilib-linux-gnu
151 | )
152 |
153 | x86mt-binutils() {
154 | # symlink gcc's lto plugin for AR (bug #854516)
155 | ln -s ../../libexec/gcc/${CTARGET}/${GCC_PV%%[.-]*}/liblto_plugin.so \
156 | "${sysroot}"/lib/bfd-plugins || die
157 | }
158 |
159 | # gcc (minimal -- if need more, disable only in stage1 / enable in stage3)
160 | local conf_gcc=(
161 | --prefix="${prefix}"
162 | --host=${CHOST}
163 | --disable-bootstrap
164 | --disable-cet
165 | --disable-gcov #843989
166 | --disable-gomp
167 | --disable-libquadmath
168 | --disable-libsanitizer
169 | --disable-libssp
170 | --disable-libvtv
171 | --disable-werror
172 | --with-gcc-major-version-only
173 | --with-system-zlib
174 | --without-isl
175 | --without-zstd
176 | --disable-libgomp
177 | --enable-poison-system-directories
178 | )
179 |
180 | local conf_gcc_stage1=(
181 | --disable-cc1
182 | --enable-languages=c
183 | --disable-libatomic
184 | --disable-threads
185 | --without-headers
186 | --disable-shared
187 | )
188 |
189 | local conf_gcc_stage2=(
190 | --enable-languages=c,c++
191 | --enable-threads
192 | --enable-multilib
193 | --with-multilib-list=m64,m32
194 | --with-build-sysroot="${sysroot}"
195 | --with-sysroot="${prefix}"
196 | --with-native-system-header-dir="/include"
197 | )
198 |
199 | # libstdc++ may misdetect sys/sdt.h on systemtap-enabled system and fail
200 | # (not passed in conf_gcc above given it is lost in sub-configure calls)
201 | local -x glibcxx_cv_sys_sdt_h=no
202 |
203 | # x86mt-build
204 | # -> ./configure && make && make install && x86mt-package()
205 | # passes conf and conf_package to configure, and users can add options
206 | # through environment with e.g.
207 | # X86MT_BINUTILS_CONF="--some-option"
208 | # EXTRA_ECONF="--global-option" (generic naming for if not reading this)
209 | x86mt-build() {
210 | local id=${1##*/}
211 | local build_dir=${WORKDIR}/${1}${2+_${2}}-build
212 |
213 | # econf is not allowed in src_compile and its defaults are
214 | # mostly unused here, so use configure directly
215 | local conf=( "${WORKDIR}/${1}"/configure "${conf[@]}" )
216 |
217 | local -n conf_id=conf_${id} conf_id2=conf_${id}_${2}
218 | [[ ${conf_id@a} == *a* ]] && conf+=( "${conf_id[@]}" )
219 | [[ ${2} && ${conf_id2@a} == *a* ]] && conf+=( "${conf_id2[@]}" )
220 |
221 | local -n extra_id=X86MT_${id^^}_CONF extra_id2=X86MT_${id^^}_${2^^}_CONF
222 | conf+=( ${EXTRA_ECONF} ${extra_id} ${2+${extra_id2}} )
223 |
224 | einfo "Building ${id}${2+ ${2}} in ${build_dir} ..."
225 |
226 | mkdir -p "${build_dir}" || die
227 | pushd "${build_dir}" >/dev/null || die
228 |
229 | edo "${conf[@]}"
230 | emake MAKEINFO=: V=1
231 | # -j1 to match bug #906155, other packages may be fragile too
232 | emake -j1 MAKEINFO=: V=1 DESTDIR="${X86MT_D}" install
233 |
234 | declare -f x86mt-${id} >/dev/null && edo x86mt-${id}
235 | declare -f x86mt-${id}_${2} >/dev/null && edo x86mt-${id}_${2}
236 |
237 | popd >/dev/null || die
238 | }
239 |
240 | # build with same ordering that crossdev would do
241 | x86mt-build binutils
242 | x86mt-build gcc stage1
243 |
244 | einfo "Building linux-headers in ${WORKDIR}/linux-headers ..."
245 | pushd linux-headers >/dev/null || die
246 | chmod -R a+r-w+X,u+w * || die
247 | emake headers_install INSTALL_HDR_PATH="${hdr_dir}/.." ARCH=x86 CROSS_COMPILE="${CTARGET}-" HOSTCC="$(tc-getBUILD_CC)"
248 | rm -rf "${hdr_dir}/scsi" || die
249 | popd >/dev/null || die
250 | (
251 |
252 | export libc_cv_cxx_link_ok=no
253 | export CXX=
254 |
255 | # Fix compilation on systems which use a Clang/LLVM toolchain
256 | export CC="${CTARGET}-gcc -m32"
257 | export AS="${CTARGET}-as"
258 | export AR="${CTARGET}-ar"
259 | export RANLIB="${CTARGET}-ranlib"
260 | export OBJCOPY="${CTARGET}-objcopy"
261 | export NM="${CTARGET}-nm"
262 |
263 | CHOST=${CTARGET} strip-unsupported-flags
264 |
265 | export libc_cv_slibdir="${prefix}/lib"
266 | x86mt-build glibc x86
267 | export libc_cv_slibdir="${prefix}/lib64"
268 | export CC="${CTARGET}-gcc"
269 | x86mt-build glibc amd64
270 | )
271 | local file
272 | while read -rd '' file ; do
273 | sed -i "s|${prefix}/|/|g" "${file}" || die
274 | done < <(grep -lZIF "ld script" "${sysroot}"/lib{,64}/lib*.{a,so} 2>/dev/null)
275 |
276 | x86mt-build gcc stage2
277 |
278 | if use bin-symlinks; then
279 | mkdir -p -- "${X86MT_D}${EPREFIX}"/usr/bin/ || die
280 | local bin
281 | for bin in "${sysroot}"/bin/*; do
282 | if [[ "$bin" == *"${CTARGET}"* ]]; then
283 | ln -rs -- "${bin}" "${X86MT_D}${EPREFIX}"/usr/bin/ || die
284 | fi
285 | done
286 | fi
287 |
288 | # portage doesn't know the right strip executable to use for CTARGET
289 | # and it can lead to .a mangling, notably with 32bit (breaks toolchain)
290 | dostrip -x ${x86mtdir}/{{${CTARGET}/,}lib{,64},{,s}bin,lib/gcc/${CTARGET}}
291 |
292 | if use strip; then
293 | einfo "Stripping ${CTARGET} static libraries ..."
294 | # find "${sysroot}"/{,lib/gcc/}${CTARGET} -type f -name '*.a' \
295 | # -exec ${CTARGET}-strip --strip-unneeded {} + || die
296 | fi
297 | }
298 |
299 | src_install() {
300 | mv "${X86MT_D}${EPREFIX}"/* "${ED}" || die
301 |
302 | find "${ED}" -type f -name '*.la' -delete || die
303 | }
304 |
305 | pkg_postinst() {
306 | use bin-symlinks && has_version dev-util/shadowman && [[ ! ${ROOT} ]] &&
307 | eselect compiler-shadow update all
308 |
309 | if [[ ! ${REPLACING_VERSIONS} ]]; then
310 | elog "Note that this package is primarily intended for FEX, and related"
311 | elog "packages to depend on without needing a manual crossdev setup."
312 | elog
313 | elog "Settings are oriented only for what these need and simplicity."
314 | elog "Use sys-devel/crossdev if need full toolchain/customization:"
315 | elog " https://wiki.gentoo.org/wiki/Crossdev"
316 | fi
317 | }
318 |
319 | pkg_postrm() {
320 | use bin-symlinks && has_version dev-util/shadowman && [[ ! ${ROOT} ]] &&
321 | eselect compiler-shadow clean all
322 | }
323 |
--------------------------------------------------------------------------------