Compare commits

...

71 Commits

Author SHA1 Message Date
a28091f160 bcachefs-kmod: save v1.37.2 2026-04-02 08:59:26 +03:00
321b3dfce0 net-vpn/amneziawg-tools: bump v1.0.20260223 2026-03-31 16:30:34 +03:00
d074268cb8 amneziawg-linux-kernel-module: bump v1.0.20260329 2026-03-31 16:27:15 +03:00
8d4be9760e bcachefs: update to v1.37.4 2026-03-29 21:55:26 +03:00
034c7f4dfb bcachefs: update 2026-03-29 18:09:16 +03:00
5ea9a6a039 sys-fs/bcachefs-tools: add package v1.37.3 2026-03-29 17:29:17 +03:00
b6a81595e0 sys-fs/*: drop bcachefs-{tools,kmod}. updated/promoted to ::gentoo
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2026-01-12 16:05:18 +03:00
6901a339f4 sys-fs/bcachefs-tools: add 1.34.0, drop 1.33.4
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-12-29 13:43:09 +03:00
0999a863f5 sys-fs/bcachefs-tools: add 1.33.4, drop 1.33.3
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-12-27 13:04:20 +03:00
d37d88589b sys-fs/bcachefs-tools: add 1.33.3, drop 1.33.2
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-12-24 21:00:49 +03:00
fee2d455a7 sys-fs/bcachefs-tools: add 1.33.2, drop 1.33.1
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-12-20 19:15:43 +03:00
98561d5351 sys-fs/bcachefs-tools: drop 1.33.0, add 1.33.1
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-12-13 10:38:15 +03:00
fddf6b9270 sys-fs/bcachefs-tools: add 1.33.0, drop 1.32.1
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-12-05 12:23:16 +03:00
af328c7e7e sys-kernel/booster: drop version 0.11
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-11-28 20:45:20 +03:00
507f65742e sys-kernel/booster: add 0.12_p20251115, drop 0.11
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-11-28 20:37:53 +03:00
463bb4ac1f sys-fs/bcachefs-tools: comment EGIT_COMMIT
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-11-18 07:55:18 +03:00
e3a09b3617 sys-fs/bcachefs-tools: remove kernel config check
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-11-14 14:31:25 +03:00
a090e39f88 sys-fs/bcachefs-tools: add 9999
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-11-14 13:16:39 +03:00
19b3d89e90 net-vpn/amneziawg-linux-kernel-module: add 1.0.20251104, drop 1.0.20251009
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-11-13 15:30:52 +03:00
19686f9c85 sys-fs/bcachefs-tools: add 1.32.1, drop 1.31.13-r1
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-11-12 18:05:13 +03:00
391d9a35a6 sys-fs/bcachefs-tools: CONFIG_BCACHEFS_FS option check
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-11-07 19:45:32 +03:00
bfafd8e2f3 sys-fs/bcachefs-tools: fix
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-11-07 19:25:19 +03:00
f54e2a47ea sys-fs/bcachefs-tools: temp disable kconfig option check
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-11-07 19:21:44 +03:00
c09b0e00c0 sys-fs/bcachefs-tools: fix qa
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-11-07 17:03:22 +03:00
b1b1f16273 sys-fs/bcachefs-tools: add kernel module installation with modules USE flag
Merge with sys-fs/bcachefs-kmod

Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-11-07 16:54:33 +03:00
45ab3afe61 virtual/dist-kernel: add 6.16.12, drop 6.16.10
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-11-05 20:36:30 +03:00
330ea93aa9 sys-kernel/hardened-kernel: add 6.16.12, drop 6.16.10
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-11-05 20:35:25 +03:00
09e7565726 sys-fs/bcachefs-kmod: add 1.31.13, drop 1.31.11
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-11-05 20:22:41 +03:00
334ea73180 sys-fs/bcachefs-tools: update inherits
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-11-05 20:14:41 +03:00
051d89092e sys-fs/bcachefs-tools: add 1.31.13, drop 1.31.11
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-11-05 20:11:40 +03:00
435983f010 sys-fs/bcachefs-{tools, kmod}: drop 1.31.8, add 1.31.11
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-16 12:10:26 +03:00
9cb6ede6bb sys-fs/bcachefs-kmod: fix prepare
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-14 10:19:15 +03:00
3537deff63 sys-fs/bcachefs-kmod: add 1.31.8, drop 1.31.7
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-14 09:42:47 +03:00
874f33ef2d sys-kernel/hardened-kernel: fix ebuild
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-13 20:07:30 +03:00
b32bb1002d sys-fs/bcachefs-kmod: remove test comment
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-13 17:56:09 +03:00
ef41c8d6ef virtual/dist-kernel: add 6.16.10, drop 6.16.8
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-13 17:48:22 +03:00
ef2489b777 sys-kernel/hardened-kernel: update SRC_URI
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-13 17:47:56 +03:00
b3935cf52c sys-kernel/hardened-kernel: add 6.16.10, drop 6.16.8
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-13 17:37:34 +03:00
003eab37ac sys-fs/bcachefs-kmod: update depend
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-13 17:32:35 +03:00
4aa64af7c3 sys-fs/bcachefs-kmod: refactor ebuild
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-13 17:28:57 +03:00
b8cffeb26a net-vpn/amneziawg-linux-kernel-module: remove WIREGUARD_VERSION var in Makefile
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-12 07:54:08 +03:00
c06d163a4d net-vpn/amneziawg-linux-kernel-module: drop 1.0.20241112
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-12 07:53:51 +03:00
485465ae14 net-vpn/amneziawg-tools: minor ebuild update
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-11 22:54:18 +03:00
fcb6c3ff4d net-vpn/amneziawg-tools: fix ebuild qa
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-11 22:50:47 +03:00
dbbc2daf1f net-vpn/amneziawg-tools: add 1.0.20250903
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-11 22:46:08 +03:00
1eeb937874 net-vpn/amneziawg-linux-kernel-module: update ebuild qa
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-11 22:33:46 +03:00
4b50bbbe7e net-vpn/amneziawg-linux-kernel-module: unkeyword 1.0.20251009
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-11 22:31:32 +03:00
4f2be050e9 net-vpn/amneziawg-linux-kernel-module: add 1.0.20251009
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-11 22:20:26 +03:00
e5074df07d app-backup/minisnap: update pkg_postinst message
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-10 16:57:36 +03:00
4d94e17d13 app-backup/minisnap: fix ebuild qa
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-10 16:52:19 +03:00
91027cd962 app-backup/minisnap: update SRC_URI
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-10 16:51:24 +03:00
e04c54c1f2 app-backup/minisnap: fix ebuild qa
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-10 16:50:09 +03:00
d17f4a4516 app-backup/minisnap: new package, add 0_p20240904
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-10 16:46:06 +03:00
dc5a874445 sys-fs/bcachefs-tools: add 1.31.7, drop 1.31.6
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-04 20:33:45 +03:00
9dab60e64d sys-fs/bcachefs-kmod: add 1.31.7, drop 1.31.6
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-04 20:32:05 +03:00
449d161d6f dkms.eclass: new eclass for dkms
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-04 19:53:21 +03:00
ff7bcfc9be sys-fs/bcachefs-kmod: add 1.31.6, drop 1.31.5
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-04 19:39:53 +03:00
1f907d18cb net-vpn/openvpn3: updatge
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-04 17:47:04 +03:00
4c2885b689 net-vpn/openvpn3: new package
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-04 17:16:47 +03:00
3205c125b1 dev-cpp/gdbuspp: new package
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-04 16:12:35 +03:00
825679005c sys-fs/bcachefs-tools: bump v1.31.6
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-10-04 11:20:38 +03:00
aa922b6cbd bcachefs: update to v.1.31.5
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-09-28 13:23:28 +03:00
9b84f30f03 sys-fs/bcachefs-tools: update ebuild
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-09-27 10:43:47 +03:00
f14592aad8 sys-fs/bcachefs-kmod: update ebuild
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-09-27 10:38:05 +03:00
e9d0487dc0 sys-fs/bcachefs-kmod: update ebuild
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-09-27 10:31:42 +03:00
a0536bd422 bcachefs: update to v.1.31.4
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-09-27 09:56:24 +03:00
fc5458f28b sys-fs/bcachefs-tools: add rdeps: bcachefs-kmod
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-09-25 23:11:54 +03:00
a46ea2053d bcachefs: update to v.1.31.3
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-09-25 22:54:58 +03:00
c84ae93c15 sys-kernel/hardened-kernel: bump v6.16.8
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-09-25 22:48:42 +03:00
fc8118e6c7 sys-fs/bcachefs-kmod: update ebuild
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-09-25 21:53:50 +03:00
781998149c sys-fs/bcachefs-kmod: update ebuild
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
2025-09-23 14:18:53 +03:00
36 changed files with 1610 additions and 32021 deletions

View File

@@ -0,0 +1,2 @@
DIST minisnap-358aae69-vendor.tar.xz 81860 BLAKE2B 0e7a9cb60554956884a3ba909d32e55ebf16d02d7026e3dab8501d5d0f5f0c49ac41791ba81455264b4c6a4869c50d42e5e8e02b8d51046d821af7beb5b963ab SHA512 4a5151a71f50651a3a2d68b5994d324a9377e78dfcf48fb10f38acf90eb0bea5196e1b1bc75f032c2d37c14525c9149d55438b470bba7e44eeafc760e431d583
DIST minisnap-358aae69.tar.gz 32088 BLAKE2B cc887e0450169a002979eb51ba0fa1b0bd074224a8a49f65ae95ab6a120f2d45a7cc433608610daa3be57f2e84eedcb5a3a4a5b3725977633dc3a49e36e6130d SHA512 8b2288f55372cbec6ee758f4fd91068b339f8c67017fc3c4903b9298942311a8ce9bdb3dcd317be6b4c160030b514127a90f6968ffa9bab8f3d4cc8732adf562

View File

@@ -0,0 +1,33 @@
# Copyright 2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit go-module
EGIT_COMMIT=358aae69
DESCRIPTION="Fast and secure initramfs generator"
HOMEPAGE="https://git.sr.ht/~adrian-blx/minisnap"
SRC_URI="https://git.sr.ht/~adrian-blx/minisnap/archive/${EGIT_COMMIT}.tar.gz -> ${PN}-${EGIT_COMMIT}.tar.gz
https://git.millerson.name/alex/gentoo-artifacts/releases/download/${PN}-${EGIT_COMMIT}-vendor/${PN}-${EGIT_COMMIT}-vendor.tar.xz"
S="${WORKDIR}/${PN}-${EGIT_COMMIT}"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64"
src_compile() {
ego build cmd/msnap.go cmd/conf.go || die
}
src_install() {
dodoc *.conf
dobin msnap
}
pkg_postinst() {
elog "To configure schedule for each volume define them"
elog "in the /etc/minisnap.conf configuration file"
elog "See /usr/share/doc/${P}/ for examples."
}

View File

@@ -0,0 +1,52 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit git-r3 meson
DESCRIPTION="GDBus++ - a glib2 D-Bus wrapper for C++"
HOMEPAGE="https://codeberg.org/OpenVPN/gdbuspp"
EGIT_REPO_URI="https://codeberg.org/OpenVPN/gdbuspp.git"
if [[ ${PV} != 9999 ]]; then
KEYWORDS="~amd64"
EGIT_COMMIT="v${PV}"
fi
# Source directory; the dir where the sources can be found (automatically
# unpacked) inside ${WORKDIR}. The default value for S is ${WORKDIR}/${P}
# If you don't need to change it, leave the S= line out of the ebuild
# to keep it tidy.
#S="${WORKDIR}/${P}"
LICENSE="AGPL-3"
SLOT="0"
KEYWORDS="~amd64"
IUSE=""
RDEPEND="dev-libs/glib:2"
# Build-time dependencies that need to be binary compatible with the system
# being built (CHOST). These include libraries that we link against.
# The below is valid if the same run-time depends are required to compile.
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
src_prepare() {
default
sed -i -e "s|doc/gdbuspp|doc/${PF}|" meson.build
}
src_configure() {
meson_src_configure
}
src_compile() {
meson_src_compile
}
src_install() {
meson_src_install
}

592
eclass/dkms.eclass Normal file
View File

@@ -0,0 +1,592 @@
# Copyright 2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: dkms.eclass
# @MAINTAINER:
# Nowa Ammerlaan <nowa@gentoo.org>
# @AUTHOR:
# Nowa Ammerlaan <nowa@gentoo.org>
# @SUPPORTED_EAPIS: 8
# @PROVIDES: linux-mod-r1
# @BLURB: Helper eclass to manage DKMS modules
# @DESCRIPTION:
# Registers, builds and installs kernel modules using the DKMS
# (Dynamic Kernel Module Support) system provided by sys-kernel/dkms.
#
# The dkms_autoconf may be used to translate the modlist and modargs
# arrays from linux-mod-r1.eclass to a DKMS configuration file.
#
# If the upstream sources already contain a DKMS configuration file
# this may be used instead of the dkms_autoconf function. In this
# case dkms_gentoofy_conf function may be used to insert the users
# compiler, MAKEOPTS and *FLAGS preferences into the DKMS
# configuration file.
#
# The dkms_dopackage function is used to install a DKMS package, this
# function expects to find a dkms.conf file at the path specified
# by the argument passed to this function. If no path is specified
# then the current working directory is used.
#
# For convenience this eclass exports a src_compile function that runs
# dkms_autoconf if the dkms USE flag is enabled, and if the flag is
# disabled it runs linux-mod-r1_src_compile instead. Similarly,
# the src_install function exported by this eclass finds any
# dkms.conf files in the current working directory or one of its
# subdirectories and then calls dkms_dopackage for these packages.
# And if the dkms USE flag is disabled it runs
# linux-mod-r1_src_install instead.
#
# The pkg_postinst and pkg_postrm functions then take care of
# (de)registering, (un)building, removing, and/or adding the DKMS
# packages. For convenience the eclass also exports a pkg_config
# function that rebuilds and reinstalls any DKMS packages the ebuild
# owns for the currently running kernel.
#
# @EXAMPLE:
#
# To add DKMS support to an ebuild currently using only linux-mod-r1.
#
# Change:
#
# @CODE
# inherit linux-mod-r1
#
# src_compile() {
# local modlist=(
# gentoo
# gamepad=kernel/drivers/hid:gamepad:gamepad/obj
# )
# local modargs=( NIH_SOURCE="${KV_OUT_DIR}" )
#
# linux-mod-r1_src_compile
# }
# @CODE
#
# To:
#
# @CODE
# inherit dkms
#
# src_compile() {
# local modlist=(
# gentoo
# gamepad=kernel/drivers/hid:gamepad:gamepad/obj
# )
# local modargs=( NIH_SOURCE="${KV_OUT_DIR}" )
#
# dkms_src_compile
# }
# @CODE
#
# Note that due to the inherit order the src_install and pkg_postinst
# phase functions may have to be defined explicitly.
#
# @EXAMPLE:
#
# A more complex example is the case of an ebuild that is currently
# inheriting linux-mod-r1, but is not using any of its phase
# functions. In this case there is usually no modlist for
# dkms_autoconf to convert into a DKMS configuration file.
# Instead the ebuild must utilize a dkms.conf provided by upstream
# in the sources, or alternatively create one from scratch and
# include it in FILESDIR.
#
# Tip: Check if there is a rpm/deb spec or similar script that can
# create a dkms.conf to find a hint of what it should look like and
# where it should be created for this particular package.
#
# @CODE
# inherit dkms linux-mod-r1
#
# src_prepare() {
# default
# sed -e "s/@VERSION@/${PV}/" -i modules/dkms.conf || die
# }
#
# src_compile() {
# if use dkms; then
# dkms_gentoofy_conf modules/dkms.conf
# else
# emake "${MODULES_MAKEARGS[@]}" modules
# fi
# }
#
# src_install() {
# if use dkms; then
# dkms_dopackage modules
# else
# linux_domodule modules/mymodule.ko
# modules_post_process
# fi
# einstalldocs
# }
#
# pkg_postinst() {
# dkms_pkg_postinst
# }
# @CODE
case ${EAPI} in
8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
esac
if [[ -z ${_DKMS_ECLASS} ]]; then
_DKMS_ECLASS=1
inherit linux-mod-r1
IUSE="dkms"
RDEPEND="dkms? ( sys-kernel/dkms ${BDEPEND} )"
IDEPEND="dkms? ( sys-kernel/dkms ${BDEPEND} )"
# @ECLASS_VARIABLE: DKMS_PACKAGES
# @OUTPUT_VARIABLE
# @DESCRIPTION:
# After dkms_src_install or dkms_dopackage this array will be
# populated with all dkms packages installed by the ebuild. The names
# and versions of each package are separated with a ':'.
DKMS_PACKAGES=()
# @FUNCTION: dkms_gentoofy_conf
# @USAGE: <list of files>
# @DESCRIPTION:
# Adds linux-mod-r1's MODULES_MAKEARGS and the ebuilds modargs to any
# make calls in an existing dkms.conf. This function must be called
# for every dkms.conf that will be installed to ensure that the users
# compiler choice and flags are respected by DKMS at runtime.
# Multiple files may be passed to this function as arguments. If no
# arguments are given than this function runs on the dkms.conf in the
# present working directory. Does nothing if USE=dkms is disabled.
dkms_gentoofy_conf() {
debug-print-function ${FUNCNAME} "$@"
use dkms || return 0
[[ -z ${MODULES_OPTIONAL_IUSE} ]] ||
use "${MODULES_OPTIONAL_IUSE#+}" || return 0
local file input=( "${@}" )
[[ ${#} -eq 0 ]] && input=( dkms.conf )
# This will set edkmsargs
dkms_sanitize_makeargs
for file in "${input[@]}"; do
[[ -f ${file} ]] ||
die "${FUNCNAME}: DKMS conf does not exist: ${file}"
sed -i "${file}" \
-e "/^MAKE/ s:make :make ${edkmsargs[*]} :" \
-e "/^MAKE/ s:make$:make ${edkmsargs[*]}:" \
-e "/^MAKE/ s:make\":make ${edkmsargs[*]}\":" \
-e "/^MAKE/ s:'make' :'make' ${edkmsargs[*]} : " \
-e "/^MAKE/ s:'make'$:'make' ${edkmsargs[*]}:" \
-e "/^MAKE/ s:'make'\":'make' ${edkmsargs[*]}\":" ||
die "${FUNCNAME}: failed to Gentoo'fy ${file}"
done
}
# @FUNCTION: dkms_sanitize_makeargs
# @DESCRIPTION:
# Uses linux-mod-r1's MODULES_MAKEARGS and modargs to set the
# edkmsargs array. This array contains all variables from the two
# input arrays except those referencing the current kernel version.
# Quotes are added to the variables to prevent parsing problems at
# DKMS runtime. Does nothing if USE=dkms is disabled.
dkms_sanitize_makeargs() {
debug-print-function ${FUNCNAME} "$@"
use dkms || return 0
[[ -z ${MODULES_OPTIONAL_IUSE} ]] ||
use "${MODULES_OPTIONAL_IUSE#+}" || return 0
local -a args=( "${MODULES_MAKEARGS[@]}" )
[[ ${modargs@a} == *a* ]] && args+=( "${modargs[@]}" )
edkmsargs=( ${MAKEOPTS} )
local arg
for arg in "${args[@]}"; do
# Replace Gentoo kernel targets with DKMS variables
case ${arg} in
*=${KV_OUT_DIR}|*=${KV_DIR})
edkmsargs+=( "${arg%%=*}=\${kernel_source_dir}" )
;;
${KV_OUT_DIR}|${KV_DIR})
edkmsargs+=( "\${kernel_source_dir}" )
;;
*=${KV_FULL})
edkmsargs+=( "${arg%%=*}=\${kernelver}" )
;;
${KV_FULL})
edkmsargs+=( "\${kernelver}" )
;;
*${KV_FULL}*|*${KV_DIR}*|*${KV_OUT_DIR}*)
# Skip other arguments pointing to the current target
continue
;;
*=*)
# Quote values for variables to avoid parsing problems
edkmsargs+=( "${arg%%=*}='${arg#*=}'" )
;;
*)
edkmsargs+=( "${arg}" )
;;
esac
done
}
# @FUNCTION: dkms_autoconf
# @USAGE: [--no-kernelrelease|--no-autoinstall]
# @DESCRIPTION:
# Uses linux-mod-r1's modlist and modargs to construct a DKMS
# configuration file. By default DKMS adds the 'KERNELRELEASE='
# variable to all make commands. Some Makefiles will behave
# differently when this variable is set, if this leads to problems
# pass the --no-kernelrelease argument to this function to suppress
# the addition of 'KERNELRELEASE=' to the calls to make at runtime.
# By default the created DKMS configuration file will enable
# automatic installation of all kernel modules. To disable this add
# the --no-autoinstall argument. Does nothing if USE=dkms is disabled.
dkms_autoconf() {
debug-print-function ${FUNCNAME} "$@"
use dkms || return 0
[[ -z ${MODULES_OPTIONAL_IUSE} ]] ||
use "${MODULES_OPTIONAL_IUSE#+}" || return 0
local arg autoinstall=1 make_command=make
[[ ${#} -gt 2 ]] && die "${FUNCNAME}: too many arguments"
for arg in "${@}"; do
case ${arg} in
--no-kernelrelease)
# Per DKMS manual, quoting disables setting KERNELRELEASE
make_command=\'make\'
;;
--no-autoinstall)
autoinstall=
;;
*)
die "${FUNCNAME}: invalid argument ${arg}"
;;
esac
done
[[ ${modlist@a} == *a* && ${#modlist[@]} -gt 0 ]] ||
die "${FUNCNAME[0]} was called without a 'modlist' array"
emakeargs=( "${MODULES_MAKEARGS[@]}" )
[[ ${modargs@a} == *a* ]] && emakeargs+=( "${modargs[@]}" )
local index mod name package target dkms_config_files=()
for mod in "${modlist[@]}"; do
name=${mod%%=*}
[[ -n ${name} && ${name} != *:* ]] || die "invalid mod entry '${mod}'"
# 0:install-dir 1:source-dir 2:build-dir 3:make-target(s)
mod=${mod#"${name}"}
IFS=: read -ra mod <<<"${mod#=}"
[[ ${#mod[@]} -le 4 ]] || die "too many ':' in ${name}'s modlist"
[[ ${mod[1]:=${PWD}} != /* ]] && mod[1]=${PWD}/${mod[1]}
[[ ${mod[2]:=${mod[1]}} != /* ]] && mod[2]=${PWD}/${mod[2]}
pushd "${mod[1]}" >/dev/null || die
if [[ -z ${mod[3]} ]]; then
# guess between commonly used targets if none given, fallback to
# an empty target without trying to see the error output
for target in module{s,} "${name}".ko default all; do
nonfatal emake "${emakeargs[@]}" -q "${target}" &>/dev/null
if [[ ${?} -eq 1 ]]; then
mod[3]=${target}
break
fi
done
fi
if [[ -f dkms.conf ]]; then
# Find the index of an existing module, else find the
# first available index.
index=$(
source dkms.conf &>/dev/null ||
die "${FUNCNAME}: invalid dkms.conf at ${PWD}"
for i in "${!BUILT_MODULE_NAME[@]}"; do
if [[ ${name} == ${BUILT_MODULE_NAME[${i}]} ]]
then
echo ${i} || die
exit 0
fi
done
echo ${#BUILT_MODULE_NAME[@]} || die
) || continue
else
# If the kernel modules are in a subdir add this to the
# DKMS package name identifier to ensure it is unique.
# There may be multiple subdirs with kernel modules.
if [[ ${PWD} == ${S} ]]; then
package=${PN}
else
package=${PN}_${name}
fi
cat <<-EOF > dkms.conf || die
PACKAGE_NAME=${package}
PACKAGE_VERSION=${PV}
EOF
if [[ -n ${autoinstall} ]]; then
echo "AUTOINSTALL=yes" >> dkms.conf || die
else
echo "AUTOINSTALL=no" >> dkms.conf || die
fi
index=0
fi
# If there is no MAKE command in this dkms.conf yet, add one
if ! grep -qE "^MAKE(\[0\]|)=" dkms.conf; then
echo "MAKE[0]=\"${make_command} ${mod[3]}\"" >> dkms.conf || die
fi
# DKMS enforces that the install target starts with one of
# these options.
local dest=${mod[0]}
if ! [[ ${dest} == /kernel* || ${dest} == /updates* ||
${dest} == /extra* ]]
then
dest=/extra/${dest}
fi
# Add one empty line in case upstream provided dkms.conf is
# missing a line ending on the final line. Also looks nicer
# because now all the settings for each kernel module are
# grouped together.
cat <<-EOF >> dkms.conf || die
BUILT_MODULE_NAME[${index}]=${name}
BUILT_MODULE_LOCATION[${index}]=.${mod[2]#"${mod[1]%/.}"}/
DEST_MODULE_NAME[${index}]=${name}
DEST_MODULE_LOCATION[${index}]=${dest}
EOF
if use strip; then
echo "STRIP[${index}]=yes" >> dkms.conf || die
else
echo "STRIP[${index}]=no" >> dkms.conf || die
fi
# Append this dkms.conf to our tracker array
if ! has "${PWD}/dkms.conf" "${dkms_config_files[@]}"; then
dkms_config_files+=( "${PWD}/dkms.conf" )
fi
popd >/dev/null || die
done
# Add the users compiler *FLAGS and MAKEOPTS to all dkms.conf's
dkms_gentoofy_conf "${dkms_config_files[@]}"
}
# @FUNCTION: dkms_dopackage
# @USAGE: <dkms package root>
# @DESCRIPTION:
# Installs a DKMS package to ${ED}/usr/src. If no path is specified
# as the first argument, then the root of the package is assumed to
# be the pwd. Appends the installed package to the global
# DKMS_PACKAGES array. Does nothing if USE=dkms is disabled.
dkms_dopackage() {
debug-print-function ${FUNCNAME} "$@"
use dkms || return 0
[[ -z ${MODULES_OPTIONAL_IUSE} ]] ||
use "${MODULES_OPTIONAL_IUSE#+}" || return 0
[[ ${#} -gt 1 ]] && die "${FUNCNAME}: too many arguments"
local package_root=${1:-"${PWD}"}
[[ ${package_root} != /* ]] && package_root=${PWD}/${package_root}
[[ -f ${package_root}/dkms.conf ]] ||
die "${FUNCNAME}: no DKMS conf at ${package_root}"
# subshell to avoid polluting the environment with the dkms.conf.
local package="$(
source "${package_root}/dkms.conf" &>/dev/null ||
die "${FUNCNAME}: invalid DKMS conf at ${package_root}"
dest=/usr/src/${PACKAGE_NAME}-${PACKAGE_VERSION}
# Replace references to current dir with merged dir
sed -i "${package_root}/dkms.conf" \
-e "s#${package_root}#${EPREFIX}${dest}#g" || die
mkdir -p "${ED}${dest}" || die
cp -a "${package_root}"/* "${ED}${dest}" || die
insinto /usr/lib/dracut/dracut.conf.d
[[ ${MODULES_INITRAMFS_IUSE} ]] && use ${MODULES_INITRAMFS_IUSE#+} &&
: add || : omit
newins - 10-${PN}.conf <<<"${_}_drivers+=\" ${BUILT_MODULE_NAME[*]%.ko} \""
echo "${PACKAGE_NAME}:${PACKAGE_VERSION}"
)"
if has "${package}" "${DKMS_PACKAGES[@]}"; then
die "${FUNCNAME}: DKMS package with the same name is already installed"
elif [[ ${package} == :* || ${package} == *: ]]; then
die "${FUNCNAME}: DKMS conf did not set a package name or version"
else
DKMS_PACKAGES+=( "${package}" )
fi
}
# @FUNCTION: dkms_pkg_setup
# @DESCRIPTION:
# Runs linux-info_pkg_setup for binary merges with USE=dkms enabled.
# This ensure that the kernel environment variables are reset, which
# would otherwise be intentionally skipped by linux-mod-r1.eclass
dkms_pkg_setup() {
debug-print-function ${FUNCNAME} "$@"
[[ -z ${MODULES_OPTIONAL_IUSE} ]] ||
use "${MODULES_OPTIONAL_IUSE#+}" || return 0
linux-mod-r1_pkg_setup
if use dkms; then
unset SKIP_KERNEL_BINPKG_ENV_RESET
if [[ ${MERGE_TYPE} == binary ]]; then
linux-info_pkg_setup
fi
fi
}
# @FUNCTION: dkms_src_compile
# @DESCRIPTION:
# Runs dkms_autoconf if USE=dkms is enabled, otherwise runs
# linux-mod-r1_src_compile. Arguments given to this function are
# passed onto dkms_autoconf.
dkms_src_compile() {
debug-print-function ${FUNCNAME} "$@"
if ! use dkms; then
linux-mod-r1_src_compile
return 0
fi
[[ -z ${MODULES_OPTIONAL_IUSE} ]] ||
use "${MODULES_OPTIONAL_IUSE#+}" || return 0
dkms_autoconf "${@}"
}
# @FUNCTION: dkms_src_install
# @DESCRIPTION:
# Runs dkms_dopackage for each dkms.conf found in the pwd or any
# sub-directories. Then runs einstalldocs. If USE=dkms is disabled
# then linux-mod-r1_src_install is run instead.
dkms_src_install() {
debug-print-function ${FUNCNAME} "$@"
if ! use dkms; then
linux-mod-r1_src_install
return 0
fi
[[ -z ${MODULES_OPTIONAL_IUSE} ]] ||
use "${MODULES_OPTIONAL_IUSE#+}" || return 0
while IFS= read -r -d '' file; do
dkms_dopackage $(dirname "${file}")
done < <(find "${PWD}" -type f -name dkms.conf -print0 || die)
einstalldocs
}
# @FUNCTION: dkms_pkg_config
# @DESCRIPTION:
# Rebuilds and reinstalls all DKMS packages owned by the ebuild.
# Does nothing if USE=dkms is disabled.
dkms_pkg_config() {
debug-print-function ${FUNCNAME} "$@"
use dkms || return 0
[[ -z ${MODULES_OPTIONAL_IUSE} ]] ||
use "${MODULES_OPTIONAL_IUSE#+}" || return 0
local package ARCH=$(tc-arch-kernel)
for package in "${DKMS_PACKAGES[@]}"; do
IFS=: read -ra package <<<"${package#}"
[[ ${#package[@]} -eq 2 ]] ||
die "${FUNCNAME}: incorrect package in ${DKMS_PACKAGES[*]}"
einfo "Building ${package[0]} version ${package[1]}"
dkms build -m ${package[0]} -v ${package[1]} --force ||
die "${FUNCNAME}: failed to build ${package} with DKMS"
einfo "Installing ${package[0]} version ${package[1]}"
dkms install -m ${package[0]} -v ${package[1]} --force ||
die "${FUNCNAME}: failed to install ${package} with DKMS"
done
if [[ ${MODULES_INITRAMFS_IUSE} ]] && use dist-kernel &&
use ${MODULES_INITRAMFS_IUSE#+}
then
dist-kernel_reinstall_initramfs "${KV_DIR}" "${KV_FULL}" --all
fi
}
# @FUNCTION: dkms_postinst
# @DESCRIPTION:
# Registers, builds and installs all DKMS packages owned by the
# ebuild. Calls dist-kernel_reinstall_initramfs if requested by the
# ebuild via linux-mod-r1's MODULES_INITRAMFS_IUSE. Runs
# linux-mod-r1_pkg_postinst if USE=dkms is disabled.
dkms_pkg_postinst() {
debug-print-function ${FUNCNAME} "$@"
if ! use dkms; then
linux-mod-r1_pkg_postinst
return 0
fi
[[ -z ${MODULES_OPTIONAL_IUSE} ]] ||
use "${MODULES_OPTIONAL_IUSE#+}" || return 0
local package ARCH=$(tc-arch-kernel)
for package in "${DKMS_PACKAGES[@]}"; do
IFS=: read -ra package <<<"${package#}"
[[ ${#package[@]} -eq 2 ]] ||
die "${FUNCNAME}: incorrect package in ${DKMS_PACKAGES[*]}"
einfo "Registering ${package[0]} version ${package[1]}"
dkms add -m ${package[0]} -v ${package[1]} ||
die "${FUNCNAME}: failed to register ${package[0]} with DKMS"
einfo "Building ${package[0]} version ${package[1]}"
dkms build -m ${package[0]} -v ${package[1]} \
-k ${KV_FULL} --force ||
die "${FUNCNAME}: failed to build ${package[0]} with DKMS"
einfo "Installing ${package[0]} version ${package[1]}"
dkms install -m ${package[0]} -v ${package[1]} \
-k ${KV_FULL} --force ||
die "${FUNCNAME}: failed to install ${package[0]} with DKMS"
done
if [[ ${MODULES_INITRAMFS_IUSE} ]] && use dist-kernel &&
use ${MODULES_INITRAMFS_IUSE#+}
then
dist-kernel_reinstall_initramfs "${KV_DIR}" "${KV_FULL}" --all
fi
}
# @FUNCTION: dkms_pkg_prerm
# @DESCRIPTION:
# Uninstalls, unbuilds and deregisters all DKMS packages owned by the
# ebuild. Does nothing if USE=dkms is disabled.
dkms_pkg_prerm() {
debug-print-function ${FUNCNAME} "$@"
use dkms || return 0
[[ -z ${MODULES_OPTIONAL_IUSE} ]] ||
use "${MODULES_OPTIONAL_IUSE#+}" || return 0
local package ARCH=$(tc-arch-kernel)
for package in "${DKMS_PACKAGES[@]}"; do
IFS=: read -ra package <<<"${package#}"
[[ ${#package[@]} -eq 2 ]] ||
die "${FUNCNAME}: incorrect package in ${DKMS_PACKAGES[*]}"
einfo "Uninstalling ${package[0]} version ${package[1]}"
dkms uninstall -m ${package[0]} -v ${package[1]} --all ||
ewarn "${FUNCNAME}: failed to uninstall ${package[0]} with DKMS"
einfo "Unbuilding ${package[0]} version ${package[1]}"
dkms unbuild -m ${package[0]} -v ${package[1]} --all ||
ewarn "${FUNCNAME}: failed to unbuild ${package[0]} with DKMS"
einfo "Deregistering ${package[0]} version ${package[1]}"
dkms remove -m ${package[0]} -v ${package[1]} --all ||
ewarn "${FUNCNAME}: failed to deregister ${package[0]} with DKMS"
done
}
fi
EXPORT_FUNCTIONS pkg_setup src_compile src_install pkg_config pkg_postinst pkg_prerm

View File

@@ -1 +1,2 @@
DIST amneziawg-linux-kernel-module-1.0.20241112.tar.gz 417511 BLAKE2B 8ae2a320d1ed3e46a27636f14255161d773c66e856602842526a2656c440ddfb34d40e47745b78f4f41674a9e813d906aab663455e353473e93678c9f4bf14de SHA512 0d0dde7324088f2f3eff2cff9679e7f25b20d9796462da9949e6fc97af320a43ace27f9dfbd32cc2995449a68b313d6877ced6aa0ad3fbd02f15b1338e62fdff DIST amneziawg-linux-kernel-module-1.0.20251104.tar.gz 407287 BLAKE2B 551a729900a0b8e6df8cc206f35ebfce5d7c98eb2ab64e2758119aca63e403de0016c04caf054e182bd794037711cd6f51798ef055aac7b6abb88d3833309bc0 SHA512 5a6962d6cf49b97facd0ffa724a7a15b8736f7774086e0cc260ceac86d728ad8d72b42f8e6df4912bdd64ec17bbc732ba0540592996bda10221dfa87b1414bc9
DIST amneziawg-linux-kernel-module-1.0.20260329.tar.gz 407483 BLAKE2B fdb5d53eee29d19530fe36835f8780bd5505acb92c4c947300424d1fc8f763d11a723c0adbfb7bfa7703058de02426b49ed581f2f0e495108105291ead074be1 SHA512 7ceda29b2280ee101fdda5428e5136f823032cb6e663f23816d43ded7c0199cfcc3c3a301cadb5817a6d94650a49e13fd9e0dcb74b3ba8e5fbb2df13fc87a233

View File

@@ -1,129 +0,0 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=8
MODULES_OPTIONAL_IUSE="module"
inherit linux-mod-r1
DESCRIPTION="AmneziaWG kernel module"
HOMEPAGE="https://github.com/amnezia-vpn/amneziawg-linux-kernel-module"
if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/amnezia-vpn/amneziawg-linux-kernel-module.git"
else
SRC_URI="https://github.com/amnezia-vpn/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
# Please don't stabilize this package. Stable users should use gentoo-sources 5.4 or 5.10.
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
fi
LICENSE="GPL-2"
SLOT="0"
IUSE="debug +module module-src"
CONFIG_CHECK="NET INET NET_UDP_TUNNEL CRYPTO_ALGAPI"
# On modern kernels AmneziaWG needs Wireguard sources from kernel to generate
# own sources from. On a typical Gentoo installation 'sys-kernel/*-sources'
# package contains needed kernel sources. But installations based on
# distribution kernel (sys-kernel/*-kernel) have no kernel sources installed.
# That is why this ebuild has a build dependency on gentoo-sources or vanilla-sources.
BDEPEND="|| ( sys-kernel/gentoo-sources sys-kernel/vanilla-sources )"
pkg_setup() {
if use module; then
linux-mod-r1_pkg_setup
if kernel_is -lt 3 10 0; then
die "This version of ${PN} requires Linux >= 3.10"
fi
fi
}
src_prepare() {
default
if kernel_is -ge 5 6 0; then
# We need to select a directory with kernel sources.
# Usually, /usr/src/linux is the right choise, so we check it first.
# If /usr/src/linux contains no sources (distribution kernel), we check
# other subdirectories in /usr/src sorted by version in reverse order.
echo "Searching for kernel sources..."
dirs=$(find /usr/src -maxdepth 1 -name 'linux-*' -type d | sort --reverse --version-sort --field-separator=- --key=2,2)
dirs="/usr/src/linux ${dirs}"
for kernel_dir in ${dirs}; do
[ -d "$kernel_dir" ] || continue
if [[ -f ${kernel_dir}/drivers/net/wireguard/main.c ]]; then
echo "- ${kernel_dir} -> found"
KERNEL_SOURCES_DIR=${KERNEL_SOURCES_DIR:-${kernel_dir}}
else
echo "- ${kernel_dir} -> not found"
fi
done
if [[ -d ${KERNEL_SOURCES_DIR} ]]; then
einfo "Using kernel sources in ${KERNEL_SOURCES_DIR}"
else
die "Kernel sources not found, but required for building."
fi
sed -i "s@^KERNELRELEASE ?= .*@KERNELRELEASE ?= ${KV_FULL}@" src/Makefile || die "Fail to set desired kernel verion in the Makefile"
ln -s ${KERNEL_SOURCES_DIR} src/kernel || die "Creation link to kernel sources directory fail"
emake -C ${S}/src apply-patches || die "Fail to apply amnezia patches over wireguard"
fi
}
src_compile() {
local modlist=( amneziawg=net:src::module )
local modargs=(
KERNELDIR=${KV_OUT_DIR}
)
use debug && modargs+=( CONFIG_WIREGUARD_DEBUG=y )
use module && linux-mod-r1_src_compile
}
src_install() {
use module && linux-mod-r1_src_install
use module-src && emake DESTDIR="${D}" PREFIX="${EPREFIX}/usr" -C src dkms-install
}
pkg_postinst() {
if use module-src && ! use module; then
einfo
einfo "You have enabled the module-src USE flag without the module USE"
einfo "flag. This means that sources are installed to"
einfo "${ROOT}/usr/src/amneziawg instead of having the"
einfo "kernel module compiled. You will need to compile the module"
einfo "yourself. Most likely, you don't want this USE flag, and should"
einfo "rather use USE=module"
einfo
fi
if use module; then
linux-mod-r1_pkg_postinst
local old new
if [[ $(uname -r) != "${KV_FULL}" ]]; then
ewarn
ewarn "You have just built AmneziaWG for kernel ${KV_FULL}, yet the currently running"
ewarn "kernel is $(uname -r). If you intend to use this AmneziaWG module on the currently"
ewarn "running machine, you will first need to reboot it into the kernel ${KV_FULL}, for"
ewarn "which this module was built."
ewarn
elif [[ -f /sys/module/amneziawg/version ]] && \
old="$(< /sys/module/amneziawg/version)" && \
new="$(modinfo -F version "${ROOT}/lib/modules/${KV_FULL}/net/amneziawg.ko" 2>/dev/null)" && \
[[ $old != "$new" ]]; then
ewarn
ewarn "You appear to have just upgraded AmneziaWG from version v$old to v$new."
ewarn "However, the old version is still running on your system. In order to use the"
ewarn "new version, you will need to remove the old module and load the new one. As"
ewarn "root, you can accomplish this with the following commands:"
ewarn
ewarn " # rmmod amneziawg"
ewarn " # modprobe amneziawg"
ewarn
ewarn "Do note that doing this will remove current AmneziaWG interfaces, so you may want"
ewarn "to gracefully remove them yourself prior."
ewarn
fi
fi
}

View File

@@ -0,0 +1,116 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit linux-mod-r1
DESCRIPTION="AmneziaWG kernel module"
HOMEPAGE="https://github.com/amnezia-vpn/amneziawg-linux-kernel-module"
if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/amnezia-vpn/amneziawg-linux-kernel-module.git"
else
SRC_URI="https://github.com/amnezia-vpn/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
# Please don't stabilize this package. Stable users should use gentoo-sources 5.4 or 5.10.
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
fi
LICENSE="GPL-2"
SLOT="0"
IUSE="debug"
CONFIG_CHECK="NET INET NET_UDP_TUNNEL CRYPTO_ALGAPI"
# On modern kernels AmneziaWG needs Wireguard sources from kernel to generate
# own sources from. On a typical Gentoo installation 'sys-kernel/*-sources'
# package contains needed kernel sources. But installations based on
# distribution kernel (sys-kernel/*-kernel) have no kernel sources installed.
# That is why this ebuild has a build dependency on gentoo-sources or vanilla-sources.
BDEPEND="|| ( sys-kernel/gentoo-sources sys-kernel/vanilla-sources )"
pkg_setup() {
linux-mod-r1_pkg_setup
if kernel_is -lt 3 10 0; then
die "This version of ${PN} requires Linux >= 3.10"
fi
}
src_prepare() {
default
sed -i "/^WIREGUARD_VERSION =/Id" "${S}/src/Makefile" || die
if kernel_is -ge 5 6 0; then
# We need to select a directory with kernel sources.
# Usually, /usr/src/linux is the right choise, so we check it first.
# If /usr/src/linux contains no sources (distribution kernel), we check
# other subdirectories in /usr/src sorted by version in reverse order.
echo "Searching for kernel sources..."
dirs=$(find /usr/src -maxdepth 1 -name 'linux-*' -type d | \
sort --reverse --version-sort --field-separator=- --key=2,2)
dirs="/usr/src/linux ${dirs}"
for kernel_dir in ${dirs}; do
[ -d "$kernel_dir" ] || continue
if [[ -f ${kernel_dir}/drivers/net/wireguard/main.c ]]; then
echo "- ${kernel_dir} -> found"
KERNEL_SOURCES_DIR=${KERNEL_SOURCES_DIR:-${kernel_dir}}
else
echo "- ${kernel_dir} -> not found"
fi
done
if [[ -d ${KERNEL_SOURCES_DIR} ]]; then
einfo "Using kernel sources in ${KERNEL_SOURCES_DIR}"
else
die "Kernel sources not found, but required for building."
fi
sed -i "s@^KERNELRELEASE ?= .*@KERNELRELEASE ?= ${KV_FULL}@" src/Makefile || die \
"Fail to set desired kernel verion in the Makefile"
ln -s ${KERNEL_SOURCES_DIR} src/kernel || die "Creation link to kernel sources directory fail"
emake -C "${S}/src" apply-patches || die "Fail to apply amnezia patches over wireguard"
fi
}
src_compile() {
local modlist=( amneziawg=net:src::module )
local modargs=(
KERNELDIR=${KV_OUT_DIR}
)
use debug && modargs+=( CONFIG_WIREGUARD_DEBUG=y )
linux-mod-r1_src_compile
}
src_install() {
linux-mod-r1_src_install
}
pkg_postinst() {
linux-mod-r1_pkg_postinst
local old new
if [[ $(uname -r) != "${KV_FULL}" ]]; then
ewarn
ewarn "You have just built AmneziaWG for kernel ${KV_FULL}, yet the currently running"
ewarn "kernel is $(uname -r). If you intend to use this AmneziaWG module on the currently"
ewarn "running machine, you will first need to reboot it into the kernel ${KV_FULL}, for"
ewarn "which this module was built."
ewarn
elif [[ -f /sys/module/amneziawg/version ]] && \
old="$(< /sys/module/amneziawg/version)" && \
new="$(modinfo -F version "${ROOT}/lib/modules/${KV_FULL}/net/amneziawg.ko" 2>/dev/null)" && \
[[ $old != "$new" ]]; then
ewarn
ewarn "You appear to have just upgraded AmneziaWG from version v$old to v$new."
ewarn "However, the old version is still running on your system. In order to use the"
ewarn "new version, you will need to remove the old module and load the new one. As"
ewarn "root, you can accomplish this with the following commands:"
ewarn
ewarn " # rmmod amneziawg"
ewarn " # modprobe amneziawg"
ewarn
ewarn "Do note that doing this will remove current AmneziaWG interfaces, so you may want"
ewarn "to gracefully remove them yourself prior."
ewarn
fi
}

View File

@@ -0,0 +1,116 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit linux-mod-r1
DESCRIPTION="AmneziaWG kernel module"
HOMEPAGE="https://github.com/amnezia-vpn/amneziawg-linux-kernel-module"
if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/amnezia-vpn/amneziawg-linux-kernel-module.git"
else
SRC_URI="https://github.com/amnezia-vpn/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
# Please don't stabilize this package. Stable users should use gentoo-sources 5.4 or 5.10.
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
fi
LICENSE="GPL-2"
SLOT="0"
IUSE="debug"
CONFIG_CHECK="NET INET NET_UDP_TUNNEL CRYPTO_ALGAPI"
# On modern kernels AmneziaWG needs Wireguard sources from kernel to generate
# own sources from. On a typical Gentoo installation 'sys-kernel/*-sources'
# package contains needed kernel sources. But installations based on
# distribution kernel (sys-kernel/*-kernel) have no kernel sources installed.
# That is why this ebuild has a build dependency on gentoo-sources or vanilla-sources.
BDEPEND="|| ( sys-kernel/gentoo-sources sys-kernel/vanilla-sources )"
pkg_setup() {
linux-mod-r1_pkg_setup
if kernel_is -lt 3 10 0; then
die "This version of ${PN} requires Linux >= 3.10"
fi
}
src_prepare() {
default
sed -i "/^WIREGUARD_VERSION =/Id" "${S}/src/Makefile" || die
if kernel_is -ge 5 6 0; then
# We need to select a directory with kernel sources.
# Usually, /usr/src/linux is the right choise, so we check it first.
# If /usr/src/linux contains no sources (distribution kernel), we check
# other subdirectories in /usr/src sorted by version in reverse order.
echo "Searching for kernel sources..."
dirs=$(find /usr/src -maxdepth 1 -name 'linux-*' -type d | \
sort --reverse --version-sort --field-separator=- --key=2,2)
dirs="/usr/src/linux ${dirs}"
for kernel_dir in ${dirs}; do
[ -d "$kernel_dir" ] || continue
if [[ -f ${kernel_dir}/drivers/net/wireguard/main.c ]]; then
echo "- ${kernel_dir} -> found"
KERNEL_SOURCES_DIR=${KERNEL_SOURCES_DIR:-${kernel_dir}}
else
echo "- ${kernel_dir} -> not found"
fi
done
if [[ -d ${KERNEL_SOURCES_DIR} ]]; then
einfo "Using kernel sources in ${KERNEL_SOURCES_DIR}"
else
die "Kernel sources not found, but required for building."
fi
sed -i "s@^KERNELRELEASE ?= .*@KERNELRELEASE ?= ${KV_FULL}@" src/Makefile || die \
"Fail to set desired kernel verion in the Makefile"
ln -s ${KERNEL_SOURCES_DIR} src/kernel || die "Creation link to kernel sources directory fail"
emake -C "${S}/src" apply-patches || die "Fail to apply amnezia patches over wireguard"
fi
}
src_compile() {
local modlist=( amneziawg=net:src::module )
local modargs=(
KERNELDIR=${KV_OUT_DIR}
)
use debug && modargs+=( CONFIG_WIREGUARD_DEBUG=y )
linux-mod-r1_src_compile
}
src_install() {
linux-mod-r1_src_install
}
pkg_postinst() {
linux-mod-r1_pkg_postinst
local old new
if [[ $(uname -r) != "${KV_FULL}" ]]; then
ewarn
ewarn "You have just built AmneziaWG for kernel ${KV_FULL}, yet the currently running"
ewarn "kernel is $(uname -r). If you intend to use this AmneziaWG module on the currently"
ewarn "running machine, you will first need to reboot it into the kernel ${KV_FULL}, for"
ewarn "which this module was built."
ewarn
elif [[ -f /sys/module/amneziawg/version ]] && \
old="$(< /sys/module/amneziawg/version)" && \
new="$(modinfo -F version "${ROOT}/lib/modules/${KV_FULL}/net/amneziawg.ko" 2>/dev/null)" && \
[[ $old != "$new" ]]; then
ewarn
ewarn "You appear to have just upgraded AmneziaWG from version v$old to v$new."
ewarn "However, the old version is still running on your system. In order to use the"
ewarn "new version, you will need to remove the old module and load the new one. As"
ewarn "root, you can accomplish this with the following commands:"
ewarn
ewarn " # rmmod amneziawg"
ewarn " # modprobe amneziawg"
ewarn
ewarn "Do note that doing this will remove current AmneziaWG interfaces, so you may want"
ewarn "to gracefully remove them yourself prior."
ewarn
fi
}

View File

@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>alex@millerson.name</email>
<name>Alexander Miroshnichenko</name>
</maintainer>
<upstream>
<remote-id type="github">amnezia-vpn/amneziawg-linux-kernel-module</remote-id>
</upstream>
</pkgmetadata>

View File

@@ -1,3 +1,2 @@
AUX awg-quick.init 885 BLAKE2B 440224b688b1a1b4762bac7ac3bd6cb6fbee546543f1da70fcf5ee1c6d213ff62c43d502fd88d1778913455cc233b6419b3176690b471a71aaf2792671045eee SHA512 3de3edb359a786bdb8de06f496caced1293048c2ec489073c0525b4eca61365424ffde6a7eb899d7672db38872b6c67436b2e39019e92300ca5e590ba02c2e84 DIST amneziawg-tools-1.0.20250903.tar.gz 160214 BLAKE2B ec32969cf32b0c75179a3c53702997963c176e61958d4cc166706d8439ae736e191be488e7dc93e3c2f9d8657e67deee674359b15e19ca473ddfc19f5fe3767d SHA512 a69f3911b18cd5abb73ba1f695802c87205ed6be10be035a5d06ca266c5de3c0b88c0aeac7670bc302112288f1b58937608e7b2835a22d2b4fc45a8f63b218ad
DIST amneziawg-tools-1.0.20241018.tar.gz 156259 BLAKE2B 11fd47be0e23ef3b13da324cd76caee3d1dd66d71449d32e5a59f94dd34e9c401255c182e7337fbe17843509936861a11fb8871f4e0256f298659a0acce6fccd SHA512 cc6ba3ea8cc4e8ec75c690926e3bc37e942e3019ba4a560efecab70103a1c91be48db6066ef250ad1cbf6bb6cff50dac1d2980147ec1eed860872133068b0595 DIST amneziawg-tools-1.0.20260223.tar.gz 160261 BLAKE2B 33277e23dfd7b498e845329a853495ecfe4ca00faf1f9d5aa2288e302d0d03363df418082f32c727ce83b67ece8dccd91c252964e67c42a6646d7cea1d489227 SHA512 591afaef659e26be16c8d883da8d8ff026f855f60c9887440b566ef18b9948ca57754673d833f27e77d8c05f7e354f37b49adc9f5467334eeb7eda7165960c54
EBUILD amneziawg-tools-1.0.20241018.ebuild 4087 BLAKE2B 7445a56da2ab57d1125019c4a91ea4852e251feb8770cb65fefa0daaad4d927fbb7040c247e9ee2d1ffec875b2d95e4875779835e0d7639c5718535c95a071aa SHA512 d9f2d0a092bc758909262503f552951b9fd10a3b2c86a3f5c9306c9c58ad1300cc4de8daa43b55206107403b2993d4ca09384e77a583842a119d3d767b54c361

View File

@@ -13,7 +13,7 @@ if [[ ${PV} == 9999 ]]; then
EGIT_REPO_URI="https://github.com/amnezia-vpn/amneziawg-tools.git" EGIT_REPO_URI="https://github.com/amnezia-vpn/amneziawg-tools.git"
else else
SRC_URI="https://github.com/amnezia-vpn/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" SRC_URI="https://github.com/amnezia-vpn/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" KEYWORDS="amd64 arm arm64 ppc64 x86"
fi fi
LICENSE="GPL-2" LICENSE="GPL-2"
@@ -21,7 +21,6 @@ SLOT="0"
IUSE="+wg-quick selinux" IUSE="+wg-quick selinux"
BDEPEND="virtual/pkgconfig" BDEPEND="virtual/pkgconfig"
DEPEND=""
RDEPEND="${DEPEND} RDEPEND="${DEPEND}
wg-quick? ( wg-quick? (
|| ( net-firewall/nftables net-firewall/iptables ) || ( net-firewall/nftables net-firewall/iptables )
@@ -59,6 +58,7 @@ pkg_setup() {
wg_quick_optional_config_nob IP_NF_RAW wg_quick_optional_config_nob IP_NF_RAW
wg_quick_optional_config_nob IP6_NF_FILTER wg_quick_optional_config_nob IP6_NF_FILTER
wg_quick_optional_config_nob IP_NF_FILTER wg_quick_optional_config_nob IP_NF_FILTER
wg_quick_optional_config_nob IP_NF_MANGLE
fi fi
fi fi
get_version get_version
@@ -99,19 +99,19 @@ src_install() {
pkg_postinst() { pkg_postinst() {
einfo einfo
einfo "After installing WireGuard, if you'd like to try sending some packets through" einfo "After installing AmneziaWG, if you'd like to try sending some packets through"
einfo "WireGuard, you may use, for testing purposes only, the insecure client.sh" einfo "AmneziaWG, you may use, for testing purposes only, the insecure client.sh"
einfo "test example script:" einfo "test example script:"
einfo einfo
einfo " \$ bzcat ${ROOT}/usr/share/doc/${PF}/contrib/ncat-client-server/client.sh.bz2 | sudo bash -" einfo " \$ bzcat ${ROOT}/usr/share/doc/${PF}/contrib/ncat-client-server/client.sh.bz2 | sudo bash -"
einfo einfo
einfo "This will automatically setup interface wg0, through a very insecure transport" einfo "This will automatically setup interface awg0, through a very insecure transport"
einfo "that is only suitable for demonstration purposes. You can then try loading the" einfo "that is only suitable for demonstration purposes. You can then try loading the"
einfo "hidden website or sending pings:" einfo "hidden website or sending pings:"
einfo einfo
einfo " \$ chromium http://192.168.4.1" einfo " \$ chromium http://192.168.4.1"
einfo " \$ ping 192.168.4.1" einfo " \$ ping 192.168.4.1"
einfo einfo
einfo "More info on getting started can be found at: https://www.wireguard.com/quickstart/" einfo "More info on getting started can be found at: https://amnezia-vpn.org/ru/documentation/amnezia-wg/"
einfo einfo
} }

View File

@@ -0,0 +1,117 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit linux-info bash-completion-r1 systemd toolchain-funcs
DESCRIPTION="Fast, modern, secure VPN tunnel"
HOMEPAGE="https://github.com/amnezia-vpn/amneziawg-tools"
if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/amnezia-vpn/amneziawg-tools.git"
else
SRC_URI="https://github.com/amnezia-vpn/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="amd64 arm arm64 ppc64 x86"
fi
LICENSE="GPL-2"
SLOT="0"
IUSE="+wg-quick selinux"
BDEPEND="virtual/pkgconfig"
RDEPEND="${DEPEND}
wg-quick? (
|| ( net-firewall/nftables net-firewall/iptables )
virtual/resolvconf
)
selinux? ( sec-policy/selinux-wireguard )
"
wg_quick_optional_config_nob() {
CONFIG_CHECK="$CONFIG_CHECK ~$1"
declare -g ERROR_$1="CONFIG_$1: This option is required for automatic routing of default routes inside of wg-quick(8), though it is not required for general WireGuard usage."
}
pkg_setup() {
if use wg-quick; then
wg_quick_optional_config_nob IP_ADVANCED_ROUTER
wg_quick_optional_config_nob IP_MULTIPLE_TABLES
wg_quick_optional_config_nob IPV6_MULTIPLE_TABLES
if has_version net-firewall/nftables; then
wg_quick_optional_config_nob NF_TABLES
wg_quick_optional_config_nob NF_TABLES_IPV4
wg_quick_optional_config_nob NF_TABLES_IPV6
wg_quick_optional_config_nob NFT_CT
wg_quick_optional_config_nob NFT_FIB
wg_quick_optional_config_nob NFT_FIB_IPV4
wg_quick_optional_config_nob NFT_FIB_IPV6
wg_quick_optional_config_nob NF_CONNTRACK_MARK
elif has_version net-firewall/iptables; then
wg_quick_optional_config_nob NETFILTER_XTABLES
wg_quick_optional_config_nob NETFILTER_XT_MARK
wg_quick_optional_config_nob NETFILTER_XT_CONNMARK
wg_quick_optional_config_nob NETFILTER_XT_MATCH_COMMENT
wg_quick_optional_config_nob NETFILTER_XT_MATCH_ADDRTYPE
wg_quick_optional_config_nob IP6_NF_RAW
wg_quick_optional_config_nob IP_NF_RAW
wg_quick_optional_config_nob IP6_NF_FILTER
wg_quick_optional_config_nob IP_NF_FILTER
wg_quick_optional_config_nob IP_NF_MANGLE
fi
fi
get_version
if [[ -f $KERNEL_DIR/include/uapi/linux/wireguard.h ]]; then
CONFIG_CHECK="~WIREGUARD $CONFIG_CHECK"
declare -g ERROR_WIREGUARD="CONFIG_WIREGUARD: This option is required for using WireGuard."
elif kernel_is -ge 3 10 0 && kernel_is -lt 5 6 0 && ! has_version net-vpn/wireguard-modules; then
ewarn
ewarn "Your kernel does not appear to have upstream support for WireGuard"
ewarn "via CONFIG_WIREGUARD. However, the net-vpn/wireguard-modules ebuild"
ewarn "contains a compatibility module that should work for your kernel."
ewarn "It is highly recommended to install it:"
ewarn
ewarn " emerge -av net-vpn/wireguard-modules"
ewarn
fi
linux-info_pkg_setup
}
src_compile() {
emake RUNSTATEDIR="${EPREFIX}/run" -C src CC="$(tc-getCC)" LD="$(tc-getLD)"
}
src_install() {
dodoc README.md
dodoc -r contrib
emake \
WITH_BASHCOMPLETION=yes \
WITH_SYSTEMDUNITS=yes \
WITH_WGQUICK=$(usex wg-quick) \
DESTDIR="${D}" \
BASHCOMPDIR="$(get_bashcompdir)" \
SYSTEMDUNITDIR="$(systemd_get_systemunitdir)" \
PREFIX="${EPREFIX}/usr" \
-C src install
use wg-quick && newinitd "${FILESDIR}/awg-quick.init" awg-quick
}
pkg_postinst() {
einfo
einfo "After installing AmneziaWG, if you'd like to try sending some packets through"
einfo "AmneziaWG, you may use, for testing purposes only, the insecure client.sh"
einfo "test example script:"
einfo
einfo " \$ bzcat ${ROOT}/usr/share/doc/${PF}/contrib/ncat-client-server/client.sh.bz2 | sudo bash -"
einfo
einfo "This will automatically setup interface awg0, through a very insecure transport"
einfo "that is only suitable for demonstration purposes. You can then try loading the"
einfo "hidden website or sending pings:"
einfo
einfo " \$ chromium http://192.168.4.1"
einfo " \$ ping 192.168.4.1"
einfo
einfo "More info on getting started can be found at: https://amnezia-vpn.org/ru/documentation/amnezia-wg/"
einfo
}

View File

@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>alex@millerson.name</email>
<name>Alexander Miroshnichenko</name>
</maintainer>
<use>
<flag name="wg-quick">Install the wg-quick(8) helper tool. Most users want to use this.</flag>
</use>
<upstream>
<remote-id type="github">amnezia-vpn/amneziawg-tools</remote-id>
</upstream>
</pkgmetadata>

View File

@@ -0,0 +1,80 @@
# Copyright 2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{11,12,13} )
inherit git-r3 meson python-single-r1
DESCRIPTION="Next generation OpenVPN client"
HOMEPAGE="https://openvpn.net"
EGIT_REPO_URI="https://codeberg.org/OpenVPN/openvpn3-linux.git"
if [[ ${PV} != 9999 ]]; then
KEYWORDS="~amd64"
EGIT_COMMIT="v${PV}"
fi
LICENSE="AGPL-3+"
SLOT="0"
IUSE="+dco selinux systemd"
DEPEND="${PYTHON_DEPS}
acct-group/openvpn
acct-user/openvpn
dev-libs/jsoncpp:=
sys-libs/libcap-ng:=
app-arch/lz4:=
dev-libs/glib:=
dev-cpp/gdbuspp
dev-libs/tinyxml2:=
selinux? (
sys-libs/libselinux
)
systemd? ( sys-apps/systemd:= )
dco? (
>=dev-libs/protobuf-2.4.0:=
>=dev-libs/libnl-3.2.29:=
)"
RDEPEND="${DEPEND}
$(python_gen_cond_dep 'dev-python/pyopenssl[${PYTHON_USEDEP}]')
$(python_gen_cond_dep 'dev-python/pygobject[${PYTHON_USEDEP}]')
$(python_gen_cond_dep 'dev-python/dbus-python[${PYTHON_USEDEP}]')
systemd? ( $(python_gen_cond_dep 'dev-python/python-systemd[${PYTHON_USEDEP}]') )"
BDEPEND="${PYTHON_DEPS}
dev-build/autoconf-archive
dco? (
<sys-kernel/linux-headers-6.16
)"
src_prepare() {
default
sed -i -e "/openvpn2/,/openvpn3-as/{s/install: true/install: false/}" \
src/python/meson.build \
|| die "sed failed"
#eapply_user
#./update-version-m4.sh
#eautoreconf
}
src_configure() {
local emesonargs=(
-Ddocdir="${ROOT}/usr/share/doc/${PF}"
-Dopenvpn3_statedir=/var/lib/openvpn3
-Ddco=$(usex dco enabled disabled)
-Dselinux=$(usex selinux enabled disabled)
-Dunit_tests=disabled
-Dtest_programs=disabled
)
meson_src_configure
}
src_test() {
./src/tests/unit/unit-tests || die
}
src_install() {
meson_src_install
python_optimize
keepdir /var/lib/openvpn3/configs
}

View File

@@ -1,2 +1,2 @@
DIST bcachefs-tools-1.31.2.tar.sign 833 BLAKE2B ab9f9d775b9aafebc695df289beda280e0d156c0cf7f89585e0a5d1610c9e9f1b4121de5fa94a4c9ccffe9781e10a6574b8817244d5a210f157a166691df2663 SHA512 3f46ae3a5cf912d171b4e6371fb4962a9579c7158b5aef6a6dc226dd773512bbd0f6cce6d86f18eb300dc50831f8b284b9353022193e4d2c4c428ee2b390b474 DIST bcachefs-tools-1.37.2.tar.sign 833 BLAKE2B f0456f9633cec3dc9079b58d19c3c5a2e83fb22055aa6afc37153538045643f0fd8e4338b2e578c444f397fc7b7b312464f6407a6a9088cd7b4df824d74206b8 SHA512 2603bcceed5582f42bc9746b867d124c834af57e4732275ff6e0cdcc9db6e18f833ebac7f765d489020dc5e9e3cde4370033989f1403052d61fddf8e9bf95cdd
DIST bcachefs-tools-1.31.2.tar.zst 1327582 BLAKE2B 7bada32952ff61408288cc269cb4601f71fa6ef84c7ed1cfd917c7a2578391c638a2abf31277cafdc96e8d8fd30421e88f66e26a539b99f4f37c7e773a8cb827 SHA512 18ec29ef13e97d7fc7069deab0d6851645978bf702c63370c9932a9866c5d2c4eba5e14a1a001830a220ddaf9ebe12a09076b08dbe37c199ac0772aa95844a58 DIST bcachefs-tools-1.37.2.tar.zst 1655563 BLAKE2B 89c13e5af3560427abc8131995012454faf1953e0dfd5dd3ba49df4d90831c6b1237b2694c611288ce4357b7e73faa31ceca46b67e8dec240b6c9a317c992e74 SHA512 e7897a7ac45c2c6b5bc9d87ce13e1d6394617fc5514eaba21fb0d696ed44c5be3055a80a31c940a9b77130614b599b54f4b0fd6185f0862ab12b2f99f375eeb1

View File

@@ -1,122 +0,0 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
MODULES_KERNEL_MIN=6.16
MODULES_INITRAMFS_IUSE=+initramfs
MY_PN="bcachefs-tools"
MODULE_S="module/src/${PN%-*}-${PV}"
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kentoverstreet.asc
inherit flag-o-matic linux-mod-r1 toolchain-funcs unpacker verify-sig
DESCRIPTION="Linux bcachefs kernel module for sys-fs/bcachefs-tools"
HOMEPAGE="https://bcachefs.org/"
if [[ ${PV} == "9999" ]]; then
inherit git-r3
EGIT_REPO_URI="https://evilpiepirate.org/git/bcachefs-tools.git"
else
SRC_URI="https://evilpiepirate.org/bcachefs-tools/bcachefs-tools-${PV}.tar.zst"
SRC_URI+=" verify-sig? ( https://evilpiepirate.org/bcachefs-tools/bcachefs-tools-${PV}.tar.sign )"
S="${WORKDIR}/${P}"
KEYWORDS="~amd64 ~arm64"
fi
LICENSE="GPL-2"
# Dependent crate licenses
LICENSE+=" Apache-2.0 BSD ISC MIT Unicode-DFS-2016"
SLOT="0"
IUSE="debug +rootfs verify-sig"
DEPEND=""
RDEPEND="${DEPEND}
~sys-fs/bcachefs-tools-${PV}"
BDEPEND="
verify-sig? ( >=sec-keys/openpgp-keys-kentoverstreet-20241012 )
"
S="${WORKDIR}/${MY_PN}-${PV}"
pkg_pretend() {
use rootfs || return 0
}
pkg_setup() {
local CONFIG_CHECK="
CRC_OPTIMIZATIONS
LZ4_COMPRESS
LZ4HC_COMPRESS
LZ4_DECOMPRESS
RAID6_PQ
ZSTD_COMPRESS
ZSTD_DECOMPRESS
"
use amd64 && CONFIG_CHECK+="
CRYPTO_CHACHA20_X86_64
CRYPTO_POLY1305_X86_64
"
use debug && CONFIG_CHECK+="
DEBUG_INFO
FRAME_POINTER
!DEBUG_INFO_REDUCED
"
use rootfs && CONFIG_CHECK+="
BLK_DEV_INITRD
DEVTMPFS
"
linux-mod-r1_pkg_setup
}
src_unpack() {
# Upstream signs the uncompressed tarball
if use verify-sig; then
einfo "Unpacking ${P}.tar.zst ..."
verify-sig_verify_detached - "${DISTDIR}"/${MY_PN}-${PV}.tar.sign \
< <(zstd -fdc "${DISTDIR}"/${MY_PN}-${PV}.tar.zst | tee >(tar -xf -))
assert "Unpack failed"
fi
if [[ ${PV} == "9999" ]]; then
git-r3_src_unpack
else
unpacker ${MY_PN}-${PV}.tar.zst
fi
}
src_prepare() {
default
tc-export CC
sed -i s/^VERSION=.*$/VERSION=${PV}/ Makefile || die
sed \
-e '/^CFLAGS/s:-O2::' \
-e '/^CFLAGS/s:-g::' \
-i Makefile || die
append-lfs-flags
emake DESTDIR="${WORKDIR}" PREFIX="/module" install_dkms
sed -i "s|^#define TRACE_INCLUDE_PATH .*|#define TRACE_INCLUDE_PATH ${WORKDIR}/${MODULE_S}/src/fs/bcachefs|" \
../${MODULE_S}/src/fs/bcachefs/trace.h || die
sed -i '/mean_and_variance_test.o/Id' ../${MODULE_S}/src/fs/bcachefs/Makefile|| die
}
src_compile() {
local modlist=( "bcachefs=kernel/fs/bcachefs:../${MODULE_S}:../${MODULE_S}/src/fs/bcachefs" )
local modargs=(
KDIR=${KV_OUT_DIR}
)
linux-mod-r1_src_compile
}
src_install() {
linux-mod-r1_src_install
}
pkg_postinst() {
linux-mod-r1_pkg_postinst
}

View File

@@ -0,0 +1,107 @@
# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
MODULES_INITRAMFS_IUSE=+initramfs
inherit linux-mod-r1 unpacker verify-sig
MY_PN="bcachefs-tools"
DESCRIPTION="Linux bcachefs kernel module for sys-fs/bcachefs-tools"
HOMEPAGE="https://bcachefs.org/"
if [[ ${PV} == "9999" ]]; then
inherit git-r3
EGIT_REPO_URI="https://evilpiepirate.org/git/bcachefs-tools.git"
else
SRC_URI="https://evilpiepirate.org/bcachefs-tools/bcachefs-tools-${PV}.tar.zst"
SRC_URI+=" verify-sig? ( https://evilpiepirate.org/bcachefs-tools/bcachefs-tools-${PV}.tar.sign )"
KEYWORDS="~amd64 ~arm64"
S="${WORKDIR}/${MY_PN}-${PV}"
fi
LICENSE="GPL-2"
SLOT="0"
IUSE="debug verify-sig"
MODULES_KERNEL_MIN=6.16
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kentoverstreet.asc
BDEPEND="
>=sys-kernel/linux-headers-6.16
verify-sig? ( >=sec-keys/openpgp-keys-kentoverstreet-20241012 )
"
pkg_setup() {
# See https://github.com/koverstreet/bcachefs-tools/blob/master/libbcachefs/Kconfig
local CONFIG_CHECK="
BLOCK
EXPORTFS
CRC32
CRC64
FS_POSIX_ACL
LZ4_COMPRESS
LZ4_DECOMPRESS
LZ4HC_COMPRESS
ZLIB_DEFLATE
ZLIB_INFLATE
ZSTD_COMPRESS
ZSTD_DECOMPRESS
CRYPTO_LIB_SHA256
CRYPTO_LIB_CHACHA
CRYPTO_LIB_POLY1305
KEYS
RAID6_PQ
XOR_BLOCKS
XXHASH
SYMBOLIC_ERRNAME
"
use debug && CONFIG_CHECK+="
DEBUG_INFO
FRAME_POINTER
!DEBUG_INFO_REDUCED
"
linux-mod-r1_pkg_setup
}
src_unpack() {
# Upstream signs the uncompressed tarball
if use verify-sig; then
einfo "Unpacking ${P}.tar.zst ..."
verify-sig_verify_detached - "${DISTDIR}"/${MY_PN}-${PV}.tar.sign \
< <(zstd -fdc "${DISTDIR}"/${MY_PN}-${PV}.tar.zst | tee >(tar -xf -))
assert "Unpack failed"
fi
if [[ ${PV} == "9999" ]]; then
git-r3_src_unpack
else
unpacker ${MY_PN}-${PV}.tar.zst
fi
}
src_prepare() {
default
# Live builds will overwrite .version with git-describe output
echo "${PV}" > .version || die
emake DESTDIR="${WORKDIR}" PREFIX="/module" install_dkms
}
src_compile() {
local dirs=( "${WORKDIR}/module/src/${PN%-*}-"* )
local module_src="${dirs[0]}"
[[ -d "${module_src}" ]] || die
local modlist=( "bcachefs=:${module_src}:${module_src}/src/fs/bcachefs" )
local modargs=(
KDIR=${KV_OUT_DIR}
)
linux-mod-r1_src_compile
}

View File

@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>alex@millerson.name</email>
<name>Alexander Miroshnichenko</name>
</maintainer>
<maintainer type="person">
<email>falbrechtskirchinger@gmail.com</email>
<name>Florian Albrechtskirchinger</name>
</maintainer>
<maintainer type="person">
<email>flow@gentoo.org</email>
<name>Florian Schmaus</name>
</maintainer>
<upstream>
<remote-id type="github">koverstreet/bcachefs-tools</remote-id>
<changelog>https://github.com/koverstreet/bcachefs-tools/blob/master/Changelog.mdwn</changelog>
</upstream>
</pkgmetadata>

View File

@@ -1,19 +1,26 @@
DIST aho-corasick-1.1.3.crate 183311 BLAKE2B 8dfcbba0b9d94e55eae739b16f5c6474baa43ee7854c5ca792f426a9f46fb0eece79cd493b804e51449181bcad338b96819fe977c02c9907654d713e26b9f830 SHA512 ba422a54688c4678fcf16e34fdf3ed06c333e6e3fc8b75af9272a215add494d43ebaef319021134b61327fd5d3572aec0dc655b714ffb3bc71ba3c265c9ebb69 DIST aho-corasick-1.1.3.crate 183311 BLAKE2B 8dfcbba0b9d94e55eae739b16f5c6474baa43ee7854c5ca792f426a9f46fb0eece79cd493b804e51449181bcad338b96819fe977c02c9907654d713e26b9f830 SHA512 ba422a54688c4678fcf16e34fdf3ed06c333e6e3fc8b75af9272a215add494d43ebaef319021134b61327fd5d3572aec0dc655b714ffb3bc71ba3c265c9ebb69
DIST android_system_properties-0.1.5.crate 5243 BLAKE2B 86f68ec3bdabf8c6ec47881d794970f08a9eefc7417fc8a2bf4fe9faf9bdd2a2024a94adb0cbf96673409f5fbbd4d0111a1ac371339e7a90a277b6cd5003524e SHA512 b09f51339f9772c0e2e4241b36cf51573c6b96b19ffc1fbbc94b1c1d1d2fdfe8eac3134af54174a675ab05d18ef4f6bcb2c7fcc20114bbeef6e17e3692202191
DIST anstream-0.6.15.crate 29231 BLAKE2B cc4cf0f381c210fecc20b5796fe872b533419e5f957021b0c3be3cdc23fb84ce029fbef6f9b6f174a76ad713c07f0811145a70572de7c24cfab060fdd990f49a SHA512 1cb01a0293b4c9bcc010909707e71c464416d3ec6fc9789060b7aa9fe4cc04424fefa8013cc8765ccdae6dfd9a1c50a11f7b30b39a32c4aeaf525f28167ddb92 DIST anstream-0.6.15.crate 29231 BLAKE2B cc4cf0f381c210fecc20b5796fe872b533419e5f957021b0c3be3cdc23fb84ce029fbef6f9b6f174a76ad713c07f0811145a70572de7c24cfab060fdd990f49a SHA512 1cb01a0293b4c9bcc010909707e71c464416d3ec6fc9789060b7aa9fe4cc04424fefa8013cc8765ccdae6dfd9a1c50a11f7b30b39a32c4aeaf525f28167ddb92
DIST anstyle-1.0.8.crate 15771 BLAKE2B c039613e7de27cc990e5764810f9351754b160928a8954dc19041354cf9fef1422ed964237a5d39d16e4e9f8592ed52c523ccf36b0b5506f464d4f818f3332ff SHA512 3b867f73df0b2f69a0c7d5d6e62c7515045e053656afaa303e5aade8012e838cdf5d15d2c3d7c297db9e297d08ea69a9c8eed04b97922a83f56c58962c1c0b69 DIST anstyle-1.0.8.crate 15771 BLAKE2B c039613e7de27cc990e5764810f9351754b160928a8954dc19041354cf9fef1422ed964237a5d39d16e4e9f8592ed52c523ccf36b0b5506f464d4f818f3332ff SHA512 3b867f73df0b2f69a0c7d5d6e62c7515045e053656afaa303e5aade8012e838cdf5d15d2c3d7c297db9e297d08ea69a9c8eed04b97922a83f56c58962c1c0b69
DIST anstyle-parse-0.2.5.crate 22680 BLAKE2B 7473651b1eee08857a6ed1419d3d62ba4b9a9aa0d6657965ad9c67bddd793d825737d3804961716a89bdebed9879ac43b42c897cd229c6e7bd780859e1e3c247 SHA512 cd94ad0e88ad4547a660da1473bf4e6dfed805a066782124204143c7f754c12db719bd3a1774c299f1a035740bfc4830919da191bd14e0acede410f6dbd1e2ef DIST anstyle-parse-0.2.5.crate 22680 BLAKE2B 7473651b1eee08857a6ed1419d3d62ba4b9a9aa0d6657965ad9c67bddd793d825737d3804961716a89bdebed9879ac43b42c897cd229c6e7bd780859e1e3c247 SHA512 cd94ad0e88ad4547a660da1473bf4e6dfed805a066782124204143c7f754c12db719bd3a1774c299f1a035740bfc4830919da191bd14e0acede410f6dbd1e2ef
DIST anstyle-query-1.1.1.crate 9891 BLAKE2B c298114c1864a5233fb39c365e079a7f1f4ef23499dc330e5deb06f83f27bc727015befef79075c7e39952547f799b4135d7db287cf72dfc914191df784a4989 SHA512 1b2e888f025142a0d9b01314cf083831a2a45d8da737c1be3a6a9aa177e73e0d2ae7999fe7610dd450b7096115e8cf38c5da23723cebf1deaa7d3501d3dbd5ce DIST anstyle-query-1.1.1.crate 9891 BLAKE2B c298114c1864a5233fb39c365e079a7f1f4ef23499dc330e5deb06f83f27bc727015befef79075c7e39952547f799b4135d7db287cf72dfc914191df784a4989 SHA512 1b2e888f025142a0d9b01314cf083831a2a45d8da737c1be3a6a9aa177e73e0d2ae7999fe7610dd450b7096115e8cf38c5da23723cebf1deaa7d3501d3dbd5ce
DIST anstyle-wincon-3.0.4.crate 12234 BLAKE2B 23294d6ed7715c55c8f796eb7b860450c57b22b57e32a5c75847f2e2bd68a52b33c24797db662aa5fd7e799b9644075c8c939d93b0cf8598b16ee80fc817b77f SHA512 24b3a9a44382609ad449425a657d4b42a792d4703c36e0953f09a03817759c266a2f0ff4ecc9e8b93ea8403df2badef1f1af6a6e50af56205176c41b13501ae6 DIST anstyle-wincon-3.0.4.crate 12234 BLAKE2B 23294d6ed7715c55c8f796eb7b860450c57b22b57e32a5c75847f2e2bd68a52b33c24797db662aa5fd7e799b9644075c8c939d93b0cf8598b16ee80fc817b77f SHA512 24b3a9a44382609ad449425a657d4b42a792d4703c36e0953f09a03817759c266a2f0ff4ecc9e8b93ea8403df2badef1f1af6a6e50af56205176c41b13501ae6
DIST anyhow-1.0.89.crate 47078 BLAKE2B fc824e72891bff0cc7aa3b538adfb9af7dc843ab6ed12b8b04eb70e62d32aae1decb9090621d3245dbe89841e73080d2d86973b4aee50873e798956da9b3faa6 SHA512 3c09317089ed78601a56c626700d12c0b49396e25fed9a9f05a2dbfbd6f91ad426c430633006a4043decd1f70a85c161c4f8dd7de0e4c00b82a169b89dda8da0 DIST anyhow-1.0.89.crate 47078 BLAKE2B fc824e72891bff0cc7aa3b538adfb9af7dc843ab6ed12b8b04eb70e62d32aae1decb9090621d3245dbe89841e73080d2d86973b4aee50873e798956da9b3faa6 SHA512 3c09317089ed78601a56c626700d12c0b49396e25fed9a9f05a2dbfbd6f91ad426c430633006a4043decd1f70a85c161c4f8dd7de0e4c00b82a169b89dda8da0
DIST bcachefs-tools-1.31.2.tar.sign 833 BLAKE2B ab9f9d775b9aafebc695df289beda280e0d156c0cf7f89585e0a5d1610c9e9f1b4121de5fa94a4c9ccffe9781e10a6574b8817244d5a210f157a166691df2663 SHA512 3f46ae3a5cf912d171b4e6371fb4962a9579c7158b5aef6a6dc226dd773512bbd0f6cce6d86f18eb300dc50831f8b284b9353022193e4d2c4c428ee2b390b474 DIST ascii-1.1.0.crate 36075 BLAKE2B 7e68e7b3d5e6aef132c52db8c078fdf2e70462d9238b637015d7964312737fc09b35719143ce1fbd3e5b8072c21717f33e5061adf4da1913a9b9f11ac9c453ec SHA512 d74982ad87796f0d745bfd654450dc74174fdc6aa2a0047e5d250f76dd6079189dc0f05d02a73a85b1d3a86c163524d1f43f5d014de0153cd69fad4de26cf0ec
DIST bcachefs-tools-1.31.2.tar.zst 1327582 BLAKE2B 7bada32952ff61408288cc269cb4601f71fa6ef84c7ed1cfd917c7a2578391c638a2abf31277cafdc96e8d8fd30421e88f66e26a539b99f4f37c7e773a8cb827 SHA512 18ec29ef13e97d7fc7069deab0d6851645978bf702c63370c9932a9866c5d2c4eba5e14a1a001830a220ddaf9ebe12a09076b08dbe37c199ac0772aa95844a58 DIST autocfg-1.5.0.crate 18729 BLAKE2B 27580e39b366c6fca02c9db09997b6415c409f12068f1249184268bf96fd85ba659e25ec730f99e10caf452f96c486f3d7442bf09c4552b5f39519b21d6f88cc SHA512 f279856f234d39d369623576acf9546a1ca24d7fe449f36d4fb93ea75a7efaf2c4015b9616a69bbbed358c5e5882e16b045352f046aa4c049b3d13b1e8257b08
DIST bindgen-0.69.5.crate 221128 BLAKE2B b89edbf883e1bc11a074c2f37f84bb966749823a6408b9765d6a61ee1179451d67dadde41d27838e8ddc6172dee9c342429f42fbe6959ff9fd7dcbc73d7506ea SHA512 b232b906af7535f8b87198f0a4037a0f09af367e0c913575f3d16453a2c272e7d76033cb3fd12d4223ebda4a0f8130629e67c5883e026a2422db3e0659ed3c3f DIST bcachefs-tools-1.37.4.tar.sign 833 BLAKE2B 0cec7399acf3f7efb44c746d032c557f40817dd8b09f4de01b541ac70a6c98375c6310f18b9223a0b7b9c18f45dedb2c57769d1285225969179be99631e5500f SHA512 e371ff6860db44f2490817cf498fa590402cc2cae3f7ee383e1dd556aed3443463f815b699880c38eb46c0bef04a9a5a13c0ecb9ec96f133a50a32a71eff1bfa
DIST bcachefs-tools-1.37.4.tar.zst 1663281 BLAKE2B 6d1eabae9528d209979e10b742653e1e1a019141a6c0f0bbc5bb2b97c1faa9d4c8ca59b701617f6410926799f0b58ac5bd7f26ce3f9077e34adc4c8e07e32bb9 SHA512 48e030d31c9135399072b8ae408abdb9af43cf02b100a5f6019ee00d70db3ba02d94d0e3880d2394f79f72a5b2b57122ae58bb564218d1a7453783d1cd166eca
DIST bindgen-0.72.1.crate 246071 BLAKE2B b6db53ca86fa3b5f71abbf6d2fd5f83553e167507db2e869ed7f3acf8865478e49430eddce8c255a8fabf8f6e408e7dcc78a9088201cdeea1e48bc387f8a6f28 SHA512 14f4277b62cfc91661400ed1bacb82a9f28b7e6caa17dd4bb4dbeedd5784299d5915c2235af9da42a8a216fa0b14b49f1e38eaa530f1e906bcd74f864ae8a7e2
DIST bitfield-0.14.0.crate 16776 BLAKE2B abca546581d912133e7344f049d93b8d793de323eba7780fab162c53a244b845582ec2bd14b529b9491c363c2da6228b7de58407afc554cc718a9df8370f5535 SHA512 703d534f0684b19af68a18048ecff37367ccbe5a52a3e8d987f2420b980e4a20da9640019ca610b1a73841cbe45dbf4d6a1cfb10cf0e7d09f53199b1fcd141fe DIST bitfield-0.14.0.crate 16776 BLAKE2B abca546581d912133e7344f049d93b8d793de323eba7780fab162c53a244b845582ec2bd14b529b9491c363c2da6228b7de58407afc554cc718a9df8370f5535 SHA512 703d534f0684b19af68a18048ecff37367ccbe5a52a3e8d987f2420b980e4a20da9640019ca610b1a73841cbe45dbf4d6a1cfb10cf0e7d09f53199b1fcd141fe
DIST bitflags-1.3.2.crate 23021 BLAKE2B eb990bb27b2bdeb66fd7212ce582cb36e1c616debbac85df642d0c82b25439e6bf9b1e811fac76b59e58ea3c1bbea6170d03a61e8f9a395e4334a0e2e2987eda SHA512 3c698f757b5cc62f815f9a1cce365c3d2dd88e4db71f331dff8bba86c2865f755b81cb4c9bfc59bd86b7643b0943f9e09a7c4f8ad75eb2ab0e714803d0129f62 DIST bitflags-1.3.2.crate 23021 BLAKE2B eb990bb27b2bdeb66fd7212ce582cb36e1c616debbac85df642d0c82b25439e6bf9b1e811fac76b59e58ea3c1bbea6170d03a61e8f9a395e4334a0e2e2987eda SHA512 3c698f757b5cc62f815f9a1cce365c3d2dd88e4db71f331dff8bba86c2865f755b81cb4c9bfc59bd86b7643b0943f9e09a7c4f8ad75eb2ab0e714803d0129f62
DIST bitflags-2.6.0.crate 45357 BLAKE2B 3a368bd2eb58c095b7b4a46680cc2d90a28e24b2e37c854bbf8647c861c4b8fb37eca827599673c5c7df763048149dd82123d1ede1f8a0e58a6bc23c8250f7e6 SHA512 f9bb3c48931ed7e7e05ec6d13305af5da6b6c18861ff307d7dc17c658f63972c87b70b0527287b3625c8592befc207cfe15550654995faf3862bb12a6d95bacf DIST bitflags-2.11.0.crate 48906 BLAKE2B 35764719b3070c5f9b51d35297803306ce01823ef07d720e5ea5e112c072b45c4d497f6b63285b1a0fce2842b1468bc252b00564c2ece14211d2af2cd26c2faa SHA512 d6c0de6c06ed8d1249dd69de035dfe5b23d9f1a8fcdc7535756622cf660807c5e1c692dee1ac832c06be1ce41b225e3d60f36be4d1896bab7d986d18946f6c48
DIST cc-1.1.28.crate 84424 BLAKE2B 9d617066957c9aa8d3ae86943be8494551624e34d8b1060d86959751fc3f874ef6d83c78235a7905e12ed72c16bfc45666fb36172708c3a53639c99342d34edf SHA512 98571ba96e7967579b70988d9308c8d3616cb1940b84c0d7dbeae837bf31c5a62731fa369b8b9d968ca843638efc7a9791ab76c3cf06deed4348d9d853ddacba DIST bumpalo-3.19.1.crate 96477 BLAKE2B 8716eecc9918c69dd07d6840f9b55114e290de053fddd11c187e11fb396d8a8825422378ec7a2e131674546d158b909a1a4c3e29d52cf3ed001658333c153807 SHA512 105a84bbf8c2b8fc130055713eab7b598c67d34ac01fe95b4c9f10fe956130870c0d12ac237c5dad3a44991a1b8611e5028e749024b6497d6b2f8a2702a4f655
DIST cc-1.2.55.crate 93756 BLAKE2B 559d6dd3524897ccd371bb806a181c43a3ce79e21c9978085eaf7e131d9bc2b563b59eef5c06f9b50afcb75ea8a8f06be4b48b7276fe2bcc20b850cd5331b9ed SHA512 51b047f6690aa618466157bb16ec0cd3203a3a7229ca51077d1b0c37cd2059318a113639c7995b82dfb2ef9272a338cfcdf61843c28000450c5044eed52a5dfb
DIST cexpr-0.6.0.crate 17966 BLAKE2B cb46f066eb1f4dbac00ec86dc3e562db7ee8ea5ff17d16a60004fa020405e455b8aeb3d001f669cb33d1b62525bfd04ec657ffca4ed44a83af4a5e75b2c820e3 SHA512 766bff7ca7f9bf0885aee6f014bcfc084e7fdfcd567a49443d5340acfe8f257db109de17b24588504fc35c53f2d4303e2d22da21f73669125cfca984950cf886 DIST cexpr-0.6.0.crate 17966 BLAKE2B cb46f066eb1f4dbac00ec86dc3e562db7ee8ea5ff17d16a60004fa020405e455b8aeb3d001f669cb33d1b62525bfd04ec657ffca4ed44a83af4a5e75b2c820e3 SHA512 766bff7ca7f9bf0885aee6f014bcfc084e7fdfcd567a49443d5340acfe8f257db109de17b24588504fc35c53f2d4303e2d22da21f73669125cfca984950cf886
DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
DIST cfg_aliases-0.2.1.crate 6355 BLAKE2B a758d9c88527f0e6e7cfd6d4c83eda1bcb4d6e2438189fe08e8ecbcaa78d56afc5a4873f3b82bf7da96afd690b44cdf1e44466b6da0f37c358b340481017103e SHA512 74969d12d5d24002a29e08d52e30fbce014dd481a7c35ee0162e69333c5f2d7755f3b02439b31522e12444cf1ac8e65880ce33fe6778dac03757e362cbf8a72c
DIST chrono-0.4.43.crate 240392 BLAKE2B 7d900703e48061b0e5c6e0b0633f2d55e4fe012786149d258e38776eb39dc57a153b7475e56c06284d7926c20cd1b95fb741662b4836920cb75aacd12a094b59 SHA512 6c0c5548a22021c9219ff63e79c60b20aa0278718b7038a83e247d89b5dfdca63222f27d24b40d254d5f1a44bba0f7a49928736ba3d38e5d940dc1a3ff9a86b4
DIST chunked_transfer-1.5.0.crate 9779 BLAKE2B 5a26e784e9de06b8026edd56685d9767cab5cbd25e787f642c308be944194d78de5a38ca061b815e234952008c4981d68f591780ae9dcc0d76693857dffda3fe SHA512 e4888b19e7e650889a531e0e07f4d724826f5fb78c9c05966f066ff7898ef8bb1280f89e9e7951914b7b52fc0e831bf205b7a4813bb204989f2f72adc5868975
DIST clang-sys-1.8.1.crate 44009 BLAKE2B 9173de6dfbd3ef9d5d1fdc559700cd3a52f95cd77302063a97e8cf311a35825825e030b47f252c857853663ae8a16709e1f7bd0c608d67c2a74eb36ed588e778 SHA512 a68c426c20110fddb8bba07d6631517b0528fad45802e5a34a22561d7e6dad82dc5001387019a03f275e9a671b09ee0a06b6e86793c4fb4ec655700bb0f5e125 DIST clang-sys-1.8.1.crate 44009 BLAKE2B 9173de6dfbd3ef9d5d1fdc559700cd3a52f95cd77302063a97e8cf311a35825825e030b47f252c857853663ae8a16709e1f7bd0c608d67c2a74eb36ed588e778 SHA512 a68c426c20110fddb8bba07d6631517b0528fad45802e5a34a22561d7e6dad82dc5001387019a03f275e9a671b09ee0a06b6e86793c4fb4ec655700bb0f5e125
DIST clap-4.5.20.crate 56376 BLAKE2B 8efa9c3e171ef38c98a25c526f528629e7e72850c6ec27e7e89a212403ee90d7d005b00750769e4335423ecec1d86abb35c19b0bf7f2c063bc7c6a8bd59d6804 SHA512 e432a118a2ec15b273a404c3cb75bbe579b11034ba55def1823d4670c6553e3d8611074a24f50a0f4adc8bda184213b06106c44c68a19d267342c53e345351d4 DIST clap-4.5.20.crate 56376 BLAKE2B 8efa9c3e171ef38c98a25c526f528629e7e72850c6ec27e7e89a212403ee90d7d005b00750769e4335423ecec1d86abb35c19b0bf7f2c063bc7c6a8bd59d6804 SHA512 e432a118a2ec15b273a404c3cb75bbe579b11034ba55def1823d4670c6553e3d8611074a24f50a0f4adc8bda184213b06106c44c68a19d267342c53e345351d4
DIST clap_builder-4.5.20.crate 163812 BLAKE2B 689110f2e4f46e8c4c779b6c39cb5f5758c3a32ea5bbfa1faaa6642da7d650cac0827a3e5b503c5054a85e0e7dbf04e7c53d65991a45f3be90c75070cc9c200a SHA512 e914c8b6592f9d230b4f4290cf4b4d73d0160c12a1fa3976c74bad21ff16da532d6af792f0a33fa472166f1cd551291b5d1d71fe8b359040040418694ec52000 DIST clap_builder-4.5.20.crate 163812 BLAKE2B 689110f2e4f46e8c4c779b6c39cb5f5758c3a32ea5bbfa1faaa6642da7d650cac0827a3e5b503c5054a85e0e7dbf04e7c53d65991a45f3be90c75070cc9c200a SHA512 e914c8b6592f9d230b4f4290cf4b4d73d0160c12a1fa3976c74bad21ff16da532d6af792f0a33fa472166f1cd551291b5d1d71fe8b359040040418694ec52000
@@ -21,55 +28,103 @@ DIST clap_complete-4.5.33.crate 47470 BLAKE2B 7d97949397aab211f786a0141c6d6f4026
DIST clap_derive-4.5.18.crate 30131 BLAKE2B ff962e52d8d8afcc9639365e27753c6c6943fd809ef89d9e555e8be5b2f13efa650bf1f9ae451f4c127c1529a0af1d892c3b02153b46deb912029b45983e01cb SHA512 035bb918bc7e9badd59341560f23e3a8a2e7cf945b6d8183f74052c4edfcbecf07c9ea6fce0ceef0b84c89a99d62b11760af39398897e4ee7dad0170a96cfefa DIST clap_derive-4.5.18.crate 30131 BLAKE2B ff962e52d8d8afcc9639365e27753c6c6943fd809ef89d9e555e8be5b2f13efa650bf1f9ae451f4c127c1529a0af1d892c3b02153b46deb912029b45983e01cb SHA512 035bb918bc7e9badd59341560f23e3a8a2e7cf945b6d8183f74052c4edfcbecf07c9ea6fce0ceef0b84c89a99d62b11760af39398897e4ee7dad0170a96cfefa
DIST clap_lex-0.7.2.crate 12805 BLAKE2B 952bf3f3885ae7bedd0e8add236590da5fce72a7ccd88ebda063410aef337ce7ccdb5e5e929cb870bc993891610edc0197150a3aa82a62fadc4bbfd96324fcdf SHA512 a8726397e5372fca3389748efdfdbd016b6baedad5b4bd95f33e4e820d4f40e0b94c88b1918ded3678aecf23911028e2261837e73d58ba7fd6f091eb47267380 DIST clap_lex-0.7.2.crate 12805 BLAKE2B 952bf3f3885ae7bedd0e8add236590da5fce72a7ccd88ebda063410aef337ce7ccdb5e5e929cb870bc993891610edc0197150a3aa82a62fadc4bbfd96324fcdf SHA512 a8726397e5372fca3389748efdfdbd016b6baedad5b4bd95f33e4e820d4f40e0b94c88b1918ded3678aecf23911028e2261837e73d58ba7fd6f091eb47267380
DIST colorchoice-1.0.2.crate 7924 BLAKE2B a4027d5f870b4d9a718ac3f9d89ce04e2ed38406658c4a55ffaf39ed0cb1ce7e1c691eb56c66596b519ca82309e8ec7eebac65e69394cdd277f44f9b6280d560 SHA512 f34d5f66f84e90f473b6b9a62a61a59575e712d3e9b140324683f80af42d40c1d079701aa2ed651d0dd95a5ac8838e1f6f6c034e2adef79509d32357b8093117 DIST colorchoice-1.0.2.crate 7924 BLAKE2B a4027d5f870b4d9a718ac3f9d89ce04e2ed38406658c4a55ffaf39ed0cb1ce7e1c691eb56c66596b519ca82309e8ec7eebac65e69394cdd277f44f9b6280d560 SHA512 f34d5f66f84e90f473b6b9a62a61a59575e712d3e9b140324683f80af42d40c1d079701aa2ed651d0dd95a5ac8838e1f6f6c034e2adef79509d32357b8093117
DIST core-foundation-sys-0.8.7.crate 37712 BLAKE2B 0e1dd99a5bbb0fe92f55181a37426f6e86445cb20e355f553b3162c88ccc075644461731a0cdcd93dcca65b6cef1de62b409afbd73ba3070a199ab8e7422dcfa SHA512 17492d5314db03abdb3b1998bf0c396ec8ed0f83bc978ae22d6026afdc86c50b58cbac073b3a0d97b92da7e98be11302faf1249d24313494bc058add4f4cb63a
DIST crossterm-0.28.1.crate 132275 BLAKE2B 30a5bf5b48a4bddbfb53726b675adfdf6d64cc387e027a69d6ab721f5ebe574abed3a862504f0db723a733662fbf0ed13163730a7ab49ac9c7fc05681a3545dd SHA512 0d53e328eb606cabc3e309cc6193b34a14c8746081a7b2c9645c1c03d66dbcda99656d629c0dcfcd43bada7a863df3e83fded6b642b2474035165ed7b16f7931
DIST either-1.13.0.crate 19169 BLAKE2B d6223c76421babf163a694aa513fe07adcf4cea329872c02f5af5956e89b2c353a899f5708e5a2924e5a92d871ba748490350ba30c17dcd78dd4379e229f6e11 SHA512 72e803079bae621d282136ab1e423ba71415bf12038b6f386f294cae68a67ad9ff16e4fdf4344eb3fee4418e853f9cac344c248f6befa3006d1c954668b36322 DIST either-1.13.0.crate 19169 BLAKE2B d6223c76421babf163a694aa513fe07adcf4cea329872c02f5af5956e89b2c353a899f5708e5a2924e5a92d871ba748490350ba30c17dcd78dd4379e229f6e11 SHA512 72e803079bae621d282136ab1e423ba71415bf12038b6f386f294cae68a67ad9ff16e4fdf4344eb3fee4418e853f9cac344c248f6befa3006d1c954668b36322
DIST env_logger-0.10.2.crate 36402 BLAKE2B 34ef02d0f53fea474e7284fd7021ed3b44b11be2c0d0c9a66ace8792bac74d1a6b43997e0e7d043ef89e14903f6ab6d42c169bbb164f05cfe4e1688611639edb SHA512 c44131efb703eed984d8f4edcf18c77ef14036edf013e8bf445703c74a4386e4c3f4b55a272490da1ccb47a692ccde4670772c74d35c5723601c870416144b69 DIST env_logger-0.10.2.crate 36402 BLAKE2B 34ef02d0f53fea474e7284fd7021ed3b44b11be2c0d0c9a66ace8792bac74d1a6b43997e0e7d043ef89e14903f6ab6d42c169bbb164f05cfe4e1688611639edb SHA512 c44131efb703eed984d8f4edcf18c77ef14036edf013e8bf445703c74a4386e4c3f4b55a272490da1ccb47a692ccde4670772c74d35c5723601c870416144b69
DIST errno-0.2.8.crate 9276 BLAKE2B b73738deb47d1f76ec91ffd15558126d32312647b82677290725669edb01b8f34a503172fad6518ebf0ffb1633ef0afaf0750982b9384a9fb87833d31721c9a8 SHA512 1f513743224cd9a9b7e4caaf33dab075a4a79efa90c9f46c9edfb0c8600daccd3ad2677ba2116621e19fcf8be456954da5d611cbcea4b6f1410f7731828b50d1 DIST equivalent-1.0.2.crate 7419 BLAKE2B 7ce4fb7b911961cd4ccfb48323eea4952110a069789c6bd177a63391c270df861afadd00c07db7b22768f0864f320e429e0200c433284f528336e2f81d071eff SHA512 8e0e2dc070794a85b276e93f9e4a65d3bbb8587b33fda211c34479a0b88504c913d8bef9e84d7996254aeabe1efe4ff1ef6259ff4fe3f9ccb90dd90070b3e4d4
DIST errno-0.3.9.crate 10690 BLAKE2B 8deb19cf0c830ff2adebb733ab961558cb4463f256604f9c76d5c5952f34a79b70dce47e28f68f459977ef34d4821ab5d0f7e79a7a110693700f80b49ba56651 SHA512 777fbac5730d420d58275ef63b7579997d8e6c72106d483ee1e3b1f1ce3977f1f66c56870a05acaa4cfacacb820eaf963e9c763748759cff3668fa2e6f89f04a DIST errno-0.3.9.crate 10690 BLAKE2B 8deb19cf0c830ff2adebb733ab961558cb4463f256604f9c76d5c5952f34a79b70dce47e28f68f459977ef34d4821ab5d0f7e79a7a110693700f80b49ba56651 SHA512 777fbac5730d420d58275ef63b7579997d8e6c72106d483ee1e3b1f1ce3977f1f66c56870a05acaa4cfacacb820eaf963e9c763748759cff3668fa2e6f89f04a
DIST errno-dragonfly-0.1.2.crate 1810 BLAKE2B 781fc26dce5c33d83b9a1fd9be2b2ce9ac2559aaa858957ba6777e143b1e44cdfee48e1b47e3c91a95075a51921d1a421d0b45eb3d8de827cf4dd0ad744a7d8c SHA512 f853f1e1b8dd0f359a8f9a0399b3384c1103cd090d96e2b2204f91a40d40a9eb99383d4aa6a11e5470c51557afacf452d4be2049600d4235d27f59870fa3b916 DIST fiemap-0.2.0.crate 3081 BLAKE2B 59a792a55e0aa497d61097e6e92914a4bdff0fead869b2dc8df6838407e6d4367aa81a3bf6282bbc5eef326c8ac7e4b8b2499c592efc918ff2f49757c406ca30 SHA512 d3ae902db2fd144ded5ed03f017248b6a85d048e552b5a274854fbb162c374a88f57e09c7d05247a5e7e472888ec433fd1dec3e3c69ca5863ad11b17449091e4
DIST find-msvc-tools-0.1.9.crate 31493 BLAKE2B 4137592addf8b58f4e4c02be537a72b132b38cecc1c263c2569fe40e2cfe4377e7141679f32661f44ed467cf9723343ab13732b3d6f4a2a84c610d0958e7e30b SHA512 729b3c1c1d520dffe5d88fc8b58e47fb7e86dc26e568fc317eea5ca8de0ee953fbafaa20ab34a6bfb43173bab39a90ff6954c11dab8d545e902305dafc8cd3de
DIST fuser-0.17.0.crate 117808 BLAKE2B 5602da55f39d1396aaaab64a99366beff50bd9f57743e6d8bf1aa4fa5c19fd8179a93ca9461b667e7fc57be852ca4b4245b03236b09db8fd16d17227fd970061 SHA512 83bbb9a34d0c65c9f11002889f53aaa88b76b64bada7188d7168d8d6dbe1a6c72a1afb4e61d65ac6e5c65f1d55937e024e8100da6221e8af1e59b441843cd1ea
DIST getrandom-0.2.17.crate 40780 BLAKE2B 49168490a12561828bb324273c1a2dcb98017577f8500fe08a8bb7c3accc37afdc459af264da7b95a4608e53c4edf8fcec3cb240741b2ee7b128012fab975ede SHA512 23033dde606eaeacc0557e21b3c5ef732e083b17ae086dc95ac7d1a8bc1b695a9a6a7073b8ae774ec62e7477a8ea0644d417fa5da7841a3c8118694c21813d1a
DIST glob-0.3.1.crate 18880 BLAKE2B dc89b3a664e810264dd7a01ad892e865ce35b504bfe5dba12d7ea8084da7de84feaa94c2208f1a1eefed90297e552636ad61ccebf6fc8cb4d01f27d605ad0a09 SHA512 29368160138bcb7ea5660f9f30c5711cfca8bc8ba836bbade3fbe8c424e7b4118daf27cffa677962e37e36f025fd2bb5a9c2aea865b0ff155cace455dfbb658b DIST glob-0.3.1.crate 18880 BLAKE2B dc89b3a664e810264dd7a01ad892e865ce35b504bfe5dba12d7ea8084da7de84feaa94c2208f1a1eefed90297e552636ad61ccebf6fc8cb4d01f27d605ad0a09 SHA512 29368160138bcb7ea5660f9f30c5711cfca8bc8ba836bbade3fbe8c424e7b4118daf27cffa677962e37e36f025fd2bb5a9c2aea865b0ff155cace455dfbb658b
DIST hashbrown-0.16.1.crate 147785 BLAKE2B c506e64340b65fb462545c52e85a192b21e33025c91adf1d8255e799e8a5743814c60be971db56c0b9b1208dff8147ed4a28d8e37caf8f5646fd367d8d0bc9d7 SHA512 0739f1b2101488f88778e221d86738ce557b8ae12470e2a4444099eb90d876382030d00e789dd4ee44dcd7833a87a6e570fa11ba5823beb1cab3a56784ec2669
DIST heck-0.5.0.crate 11517 BLAKE2B 5365ec43b2239a76b33a174f1a4292ece4147f9d382a68c6c60db78fdc8bad0afb1d51a65bcb25e96675372faa4ea37c318265030b0546ba51942f7c929e1835 SHA512 f044fc9c3d22466629fd8f772ec0555350fd611c0cfadca51d99a3d2f10e155f77c1091916c8a95a6b9b499f366c2e99a5fbf45b010f988bfb9b2501bf9f6a76 DIST heck-0.5.0.crate 11517 BLAKE2B 5365ec43b2239a76b33a174f1a4292ece4147f9d382a68c6c60db78fdc8bad0afb1d51a65bcb25e96675372faa4ea37c318265030b0546ba51942f7c929e1835 SHA512 f044fc9c3d22466629fd8f772ec0555350fd611c0cfadca51d99a3d2f10e155f77c1091916c8a95a6b9b499f366c2e99a5fbf45b010f988bfb9b2501bf9f6a76
DIST home-0.5.9.crate 8760 BLAKE2B 02277a6d0e54a88e62a50ceb5b50b08cd5dc1ca5ddc17a799db0f49a17fee8560df53f616ae22cd16020ae2a89ce7c6ec22e5e2c0d513405bc2859a6e3ec61f9 SHA512 3f1f7b619f1a47694cda92321a11d66ebbb2dc0b0c33446a7a4b886f547ee88231b61c038de04bb82acd50e617f19b5085893b8401206d32cd54502033e04bf1 DIST httpdate-1.0.3.crate 10639 BLAKE2B ce0b401c69f76252639c10f6c2e4a823574a58565d7c5cc3633c72837aa4ec3630b34b148de4378ec498db196e3b2e1413ca0e5a4d9247855380fe19a8c20f94 SHA512 0586888fe89f40b838d5ceb083084d0b8058feff1d2933faedb96896dc86eec68b541a0374a508fd11b86eeadab3c62f88568ffe2c53206fad438373a50b2e5a
DIST iana-time-zone-0.1.65.crate 34079 BLAKE2B 4d84dd4655dd42ed9cf49ed8d93d0ad244f42433faa2894a1f8240a49f65021864e8aadb816d5725984bcd5c1a6e8e1ac210b50751e3af8b3ad2a61421a74e4d SHA512 4443d5a01ef4b10eb27ed8c866ed71619ccb594dee81a0350106f39575b9373c6199d925b92112fdf0aaa20f5d955d09fab1867dc1b4cba2841c713d40cde6d6
DIST iana-time-zone-haiku-0.1.2.crate 7185 BLAKE2B 37fa14b589ff092377b9271c414d4e584c5a531f13f70ac48df26df3cc03353db635b4630ba192fc65b800cce11823e91b91f03dfad85e4bed55aa18398156cb SHA512 448224ecafa935472ff6f0aab7cb71f9dabdbe71569c4b94fcc65baea925ef48841577687c9a31106a1826c2105e8dd73c748e9d27fd002648e5b0ce838af6b2
DIST indexmap-2.13.0.crate 102206 BLAKE2B 7f3d070b645741f5960647f64759840b1941c1e28f61ee04d44d7eba0d8f600949cf139bec5fddb1507e4d5a9e12fb709a16415aa014eaff8f5e87cce41a9394 SHA512 f5efe0010603a3f1da8955f5f97c9a39e4d2c5042c0829c057ad739687d990c100d1276022dec23e7cd70efecceca07ad735693bd8a1b21b507b8892110198ad
DIST is_terminal_polyfill-1.70.1.crate 7492 BLAKE2B fa663f858ab8e5fd56202d731b572bfdd4ab0e8262100424e27360a9ffd2820182bc57d6718a305ef82d04c3798111841c0d9f9dcfe219765c0f63edb560dc1e SHA512 4730fa09401cb4e69c92b38b2b43afd74699c61f5bd7b37605efbc0c08ca7a1318d43e4a844e46e0f84f83f42432f01e33771be2b18eb5977702ab9f894837e1 DIST is_terminal_polyfill-1.70.1.crate 7492 BLAKE2B fa663f858ab8e5fd56202d731b572bfdd4ab0e8262100424e27360a9ffd2820182bc57d6718a305ef82d04c3798111841c0d9f9dcfe219765c0f63edb560dc1e SHA512 4730fa09401cb4e69c92b38b2b43afd74699c61f5bd7b37605efbc0c08ca7a1318d43e4a844e46e0f84f83f42432f01e33771be2b18eb5977702ab9f894837e1
DIST itertools-0.12.1.crate 137761 BLAKE2B d7db67feb7418d6a779dc17d8a2f33481114cd81a4d53a10cffe08e13f0d3cf4525a5ef43368fe979d5a3ce230872eaf993f7065885531aeb5a6479351857708 SHA512 0d9c1849dcc0ddf7555b0aeb7e4f2ef3b101cfc6f03310ce1b6072d70ac8c8d3387ef4c726146102012e75171e0b0bf13465704b6edfc02752e349dc6af7cf68 DIST itertools-0.12.1.crate 137761 BLAKE2B d7db67feb7418d6a779dc17d8a2f33481114cd81a4d53a10cffe08e13f0d3cf4525a5ef43368fe979d5a3ce230872eaf993f7065885531aeb5a6479351857708 SHA512 0d9c1849dcc0ddf7555b0aeb7e4f2ef3b101cfc6f03310ce1b6072d70ac8c8d3387ef4c726146102012e75171e0b0bf13465704b6edfc02752e349dc6af7cf68
DIST lazy_static-1.5.0.crate 14025 BLAKE2B df29e0e3d1c061815bdd608b41074436024dc407d454f32517705ab04b2fe06075e310086c5e4961df0b4885e91021589d0bca2c1cbe6f0aeffa3ff1b3fd4637 SHA512 6d2f9887cd7f34f019644e42f02f2bf0111accd73aeaa60973ba0b039b6774670debece1ea9a6978e923208ef5d3ab7326473ee3560c078817f0f7ab8ed0f65f DIST itoa-1.0.17.crate 15905 BLAKE2B 105796a6438bfccbb4676cc0beefd89abb05dedf077794dae48dcebd63cc745bfa4664c0eaf7bacaf989ea9051c98703e7ce85683f5c8c234fd1639c391aa3fb SHA512 4f1b09fd0152a8c837c40045c46779c992b8b5a4737565b8ce3a92bf2fb884bc6609bc597c2b54c33855bd108311adf46471b5ed5ff7ce32549b8c72c8119c04
DIST lazycell-1.3.0.crate 12502 BLAKE2B dca2d3f46823a52dcf87b7d6103fc4f1f83bc5247ce361946ac2d9df239fb43ce4b418104503698dff0242480cd014996e77da4ae0a88f3cedbce4eb9d3c9ef8 SHA512 f9d627afc28b61e9687a3f72260eb013401fd64057647641ff2e763770d7380ab1d2d8cbb4a3c8818d53d504c618a3b46aaf701f72f4d7b25d226042824c2f8d DIST js-sys-0.3.85.crate 56436 BLAKE2B a5c35cde1d01b7e5eac3bf59f360e9f8b418009a3b30c81af850a181f14596fca25a4cacec213844b4d59f9ac21e154531700f223fc6e3a22047a5f43833c6e9 SHA512 dc7361feebd63457e0e3aafac86653297994004bc61b3734d1b9ffd05312c2c9b2a2708ad07ad469b326811598925b7f07e49fce2e7c611c8138210bd70fecae
DIST libc-0.2.159.crate 755366 BLAKE2B 70f46eb6228b4a8958dfbee00cdfa3c7d218f30d66c8591f4ccc9c5d8eda411d83ce9450552384ac4bc29deb2869561a2111dd157c9f228f617baf8f6b537bc4 SHA512 c803939ceea5ad9bdfdd122726c7a5f12ffd8b0cb66cf0bc62c9670e1e5904a504def388c1e043c520f4ece484addf6dac465aebd58578aa6b79995077bbdf9f DIST libc-0.2.180.crate 812207 BLAKE2B 086681e1f488aa2ab8a477655e01bc27dc6c578fbf9eb2bb429828164825a5d450dee9bf1bc38afc8e1be5d849eddf384db75b9f4d3c64a0fde6cc37919c1b80 SHA512 5427ac2a7c03d02f14acc66c3a187fbb4e336a88e8cccf7f8281fe95f958b845c0205ec47aac2f6ba6ab8b8c4b5cd0d943205c3f78ad2830d44c3b7779c317ef
DIST libloading-0.8.5.crate 28902 BLAKE2B a0fca8f8876092e874964b3dcbaacd417451704fc1d687669a95a0b9df22ccda73a754118ac0bd706a7c7d86e4eceb2ad012e20e341d71548b34ea8d629bbfdf SHA512 f332884fa75cf210460f4678d45091345b23469c09301614c476e95bc54163afd6d4f098a34f9e0d529fa1ec63892395b50957598070ff327743e4c3b0871074 DIST libloading-0.8.5.crate 28902 BLAKE2B a0fca8f8876092e874964b3dcbaacd417451704fc1d687669a95a0b9df22ccda73a754118ac0bd706a7c7d86e4eceb2ad012e20e341d71548b34ea8d629bbfdf SHA512 f332884fa75cf210460f4678d45091345b23469c09301614c476e95bc54163afd6d4f098a34f9e0d529fa1ec63892395b50957598070ff327743e4c3b0871074
DIST libudev-sys-0.1.4.crate 6177 BLAKE2B c513b5cd68fc60a7a33ba281e4fc4f9a5896946aeb1fe31abb8af22d279c39c3d781fd34109f98fd010fe8aa817b9d91726887f0ee8bf0f66a3bf313b01c9ff3 SHA512 185bd84a729a5dda6fb274584c7a731652418da9435d844870a9d09662918c9230287f4ad002273599d0a3e9709a36ae06d59a6686dfba978fb7cd1c51bbc2c7 DIST libudev-sys-0.1.4.crate 6177 BLAKE2B c513b5cd68fc60a7a33ba281e4fc4f9a5896946aeb1fe31abb8af22d279c39c3d781fd34109f98fd010fe8aa817b9d91726887f0ee8bf0f66a3bf313b01c9ff3 SHA512 185bd84a729a5dda6fb274584c7a731652418da9435d844870a9d09662918c9230287f4ad002273599d0a3e9709a36ae06d59a6686dfba978fb7cd1c51bbc2c7
DIST linux-raw-sys-0.4.14.crate 1826665 BLAKE2B 804af73daf396bb20da14f831f26ce06325181de14f0c277350bd22d21789f2bdd663a964cc0e7c5cbd2e084285d02a401a6bfbb3e8a8f079c120f9488b56f99 SHA512 28149660bd975ede05624af3582d5c78f498239f5d89713c2c32f5372fc16f4ca024dec35f81ea973a2cf986098890395dbda06ac6cf4ee29df3f9a0e11eaea7 DIST linux-raw-sys-0.4.14.crate 1826665 BLAKE2B 804af73daf396bb20da14f831f26ce06325181de14f0c277350bd22d21789f2bdd663a964cc0e7c5cbd2e084285d02a401a6bfbb3e8a8f079c120f9488b56f99 SHA512 28149660bd975ede05624af3582d5c78f498239f5d89713c2c32f5372fc16f4ca024dec35f81ea973a2cf986098890395dbda06ac6cf4ee29df3f9a0e11eaea7
DIST lock_api-0.4.14.crate 29249 BLAKE2B 52d2f3a3eb5c3cbb4e7f01a2932f90200e3361155f53f282228f436211c54d1e429bddfd9e305a78b9c26b022b3234ae8ad3bee209bd4feed5b64a86af5b3d85 SHA512 73164d411c9899323b3bbff4fd6824e2b9ff44971ddd267629ae5a70b456c1ca945716e952412790d35331993ae71600b0e6a2aeefcdda117b26a7222ed97bf0
DIST log-0.4.22.crate 44027 BLAKE2B 831dc5092db05123bf2e909eafa708339983edece9bc8cb802f0ab418d47ddc5045a72c1b58bc7c46ffa68080eebd0fd55d6e4f5b3d5ad3b0bc6b2ea0dcaace1 SHA512 bd7baa9c8a5523fd0864a53bcde955d484cacd782412b5b02c890b89dbf62137624da3a27337a310dd8f62bcc6606925a42bbd4ca161a3b7936ea4ff96bc0d71 DIST log-0.4.22.crate 44027 BLAKE2B 831dc5092db05123bf2e909eafa708339983edece9bc8cb802f0ab418d47ddc5045a72c1b58bc7c46ffa68080eebd0fd55d6e4f5b3d5ad3b0bc6b2ea0dcaace1 SHA512 bd7baa9c8a5523fd0864a53bcde955d484cacd782412b5b02c890b89dbf62137624da3a27337a310dd8f62bcc6606925a42bbd4ca161a3b7936ea4ff96bc0d71
DIST memchr-2.7.4.crate 96670 BLAKE2B da38114beca670467c3e1fbf4e415af6f22d52e3223715d52e181babb89b872b46511563985bcc16d7ff4e82f812c6e83ad904b0fe2501b14445119dfa8240e6 SHA512 8d0e8b9c30208897d4b1b920f1bdcccd0c2b75d92a06abe4a1b2407938768abb6487d63de56c6a80419798fe69517210643dfaf11f5f5540185f0eccf220adb2 DIST memchr-2.7.4.crate 96670 BLAKE2B da38114beca670467c3e1fbf4e415af6f22d52e3223715d52e181babb89b872b46511563985bcc16d7ff4e82f812c6e83ad904b0fe2501b14445119dfa8240e6 SHA512 8d0e8b9c30208897d4b1b920f1bdcccd0c2b75d92a06abe4a1b2407938768abb6487d63de56c6a80419798fe69517210643dfaf11f5f5540185f0eccf220adb2
DIST memoffset-0.9.1.crate 9032 BLAKE2B 0aab55fe084134bb599c52d77c96400db40949b1013e7037747ada4fcec8dc4a124b6f3755f04b36e057eb2fb4a6bd6f07d6eebcf166f8a71405ef434d802fbf SHA512 3a236c0f481e36973b9f805e454c2efe4dd375e6b4ee406b57145136c70d5fbf4e1183d563ebf3b5fbde7363bbf5f08f0d88e507aae5bda4cc75664ecd0e33aa
DIST minimal-lexical-0.2.1.crate 94841 BLAKE2B e6b8919b80d938d0b98d60d4f5f29ce43d77ebfcf8b18bde08909141915c6ef4f0d07a543538d4f3ba8527a9f55926d4a8e83473248469d087e80b274d701d61 SHA512 385fab51884bdcc7b0f2728a219ab164d0dc8efe42160b918f2c09f79ecf853fb12bda006d11e649f097bae1499dcd41ddf2a8784ee7d178cf2c28059e46078c DIST minimal-lexical-0.2.1.crate 94841 BLAKE2B e6b8919b80d938d0b98d60d4f5f29ce43d77ebfcf8b18bde08909141915c6ef4f0d07a543538d4f3ba8527a9f55926d4a8e83473248469d087e80b274d701d61 SHA512 385fab51884bdcc7b0f2728a219ab164d0dc8efe42160b918f2c09f79ecf853fb12bda006d11e649f097bae1499dcd41ddf2a8784ee7d178cf2c28059e46078c
DIST mio-1.1.1.crate 105630 BLAKE2B db279c3e46108375f5391a5ebc3ae07e8ccbcc9f6a71aa41996adb862c5d2b965af3cb0da25becdadb16d401ae69ccf5a07e21b0b6fb36e07294633cdf690141 SHA512 0b1c82773f5cc3f33ccb80a2cfbd58e48ffac82934afa7d9ec632b36484f8a13a079802dd8a658dbc94fc158e597e4d7a2c02a799f7b506a7de98fe74e80e684
DIST nix-0.30.1.crate 342015 BLAKE2B efe5faaf142fbf8d97366d11f28189167d3d22c1ed76b65e7887064f2fd146ae27282aeb230eb798d7c1b3850ea1502bcb325dc23536800690f0be3d66d37b63 SHA512 80df8102a3a387d9cd73cd8d756b9fad5c4c4b57f6e94d9acfa24ee07af51f28ba2db70b8d37ddd6c7eae883c7acf9fc366a0100659856939210ffde1b124d87
DIST nom-7.1.3.crate 117570 BLAKE2B 5643b67990b7305e101b16b8cd27c447e162a7adc6d0dfac00920b0cb50fea98c9d4edca63c34f6845cba05f8d0acb407cf3045cf64a4cb28e53c8b6bc9090cf SHA512 1ffce08dde299bc0e0367ad59c7b6a83e23decfa11115ee076ab91ec53cdd9ef37e4c2103c96eff23a7b6b8b5c3f67c83ce1917928c7d4c6462083bdfa0c9cad DIST nom-7.1.3.crate 117570 BLAKE2B 5643b67990b7305e101b16b8cd27c447e162a7adc6d0dfac00920b0cb50fea98c9d4edca63c34f6845cba05f8d0acb407cf3045cf64a4cb28e53c8b6bc9090cf SHA512 1ffce08dde299bc0e0367ad59c7b6a83e23decfa11115ee076ab91ec53cdd9ef37e4c2103c96eff23a7b6b8b5c3f67c83ce1917928c7d4c6462083bdfa0c9cad
DIST num-traits-0.2.19.crate 51631 BLAKE2B 78637360cbf32d172510a62bd9442708af9730c0296a2bb4ebd200c08facd49bc31bf8ddd58967e0df7273a938832b620265d9f8f4d26ad16049bf6dac1cb4e5 SHA512 180018a5eceb45085e4e8d103ff21bb4d5079cea874c42a0ad4c76c99d275d434bbc1cc289f0cdec172866daa89dbfe0871410b2cc3407233fe1129786905956
DIST num_enum-0.7.5.crate 21570 BLAKE2B fd291db8ebbfec7d57fc3269e9305703a3edb8815c0a5617710ef608c574a6cd44f255cd506bd407ad4d929757a62c8f66e29e2e16f5159243d76178c4cd15ba SHA512 ec108a291341c0a380be9cfda841ebcc18241378c5c732700fa613a07bccf93b243e87996d5d858a0a7cab4948b0431dcad74c5d4466f65eddd210470636e1af
DIST num_enum_derive-0.7.5.crate 18760 BLAKE2B 00f7b70aaacb058529980bcaeefcf34014cbc4a99beaa0dba450353b839eb1b864ded0d883d6e115f7004b1a0256baa5485e09e463d82a349052e81faed129d5 SHA512 7d05b7f1352f3350de5fe75250de974cb8dcf87665e743fc15f0633fec864613f47979a4a9ed08b4a81cc94fb25f088e021bf4d0143387e66dde907ad399cee6
DIST once_cell-1.20.2.crate 33394 BLAKE2B 79dd394fcf1637adfef28b4159ec653c8b71d2bda0e0e36a940c04e3d87698f039dc30c97f26648ecf0d9742962f1f0a117568f7c705a8a3fc167085b0ca3e80 SHA512 bc6005bdab7a154c01e2203fb553a68695727475a9a882cf906d49c054ce886ad92cb491d380b6b9fe71a81b2fd690ce91c9a6cf8dfa8508470ac9acfc8a31c8 DIST once_cell-1.20.2.crate 33394 BLAKE2B 79dd394fcf1637adfef28b4159ec653c8b71d2bda0e0e36a940c04e3d87698f039dc30c97f26648ecf0d9742962f1f0a117568f7c705a8a3fc167085b0ca3e80 SHA512 bc6005bdab7a154c01e2203fb553a68695727475a9a882cf906d49c054ce886ad92cb491d380b6b9fe71a81b2fd690ce91c9a6cf8dfa8508470ac9acfc8a31c8
DIST owo-colors-4.1.0.crate 31414 BLAKE2B 4c936531a6eca2c77bf54e77b1bfbf63bd957299e6b604f97de59bd8e06aee90187045197fe2a5ba607548245035e644b40981e5020113b7122f5a36785f4cbb SHA512 e514520ebd86f92be6f893727a71b68faddbda77763a4f5d5a907c2becbf032c629362cb4c27c184a98aad27963449da8dae38d1fe35741b0fef11ce61235fd0 DIST owo-colors-4.1.0.crate 31414 BLAKE2B 4c936531a6eca2c77bf54e77b1bfbf63bd957299e6b604f97de59bd8e06aee90187045197fe2a5ba607548245035e644b40981e5020113b7122f5a36785f4cbb SHA512 e514520ebd86f92be6f893727a71b68faddbda77763a4f5d5a907c2becbf032c629362cb4c27c184a98aad27963449da8dae38d1fe35741b0fef11ce61235fd0
DIST page_size-0.6.0.crate 8479 BLAKE2B c90699135f158a0dea1acf80acfab002a4f4971188dac853af03c0bb79c2ad5b67f4decf7df5157f390cc3fa5b62a265c6e7948ce9ca9e7f2dc3595c60f07ac1 SHA512 204faf102760e9f3edc480302a7d7e6b995b7a40850372ebb332cab82b9c8301e761351c7abce93bde9473ad9e944bb07e6c4447d4ee1891f5ae2c261b74b8e5
DIST parking_lot-0.12.5.crate 46735 BLAKE2B 36d82b682f7cd0a2c308fbc672f0c7023a3b6ba6ff0f9de75067bb26227d2ca460a09ba37a0a5b3867ed788d72a523a5900b99241bc30a67606481aaec30536c SHA512 432639d4a14acfa20127f03741e1101fa591fc63048b0b0369b44ad269d3dcb6fbab7947eb9995c7948f6fba90245abf82154a70df2b7a99aa7365b0b88666ca
DIST parking_lot_core-0.9.12.crate 34110 BLAKE2B 4c1b3fe163c843c05effee9cd0a0461e39875040298b8a8b880c05a7db038c55ed84d1e4534417fa0e7a0395e06200d909fc16031514e3ba0ec03f011a86598e SHA512 6ce29df4aa9eb0ccfe9020b066832f2ba27afe41a48792d935d0051a595367f71d50f6862b921d91312a1ea80f087a416388d4b29a11de17373483e529f12d8d
DIST paste-1.0.15.crate 18374 BLAKE2B 69ee7def55e658a9aa72405bad62325e8d6021a4989fbf11c88d1bf05fbac520f7b04d467bc3c6eb45043a41119f65aceecc4a6a1418a9192d73f33134545062 SHA512 5026d3ec7141ec4e2517a0b1283912d0801e9356f77b703d954b379439b8d85e3886d42fb28f7835edaeeac465582da14233564fb010c71425a59c9e1cbd46b4 DIST paste-1.0.15.crate 18374 BLAKE2B 69ee7def55e658a9aa72405bad62325e8d6021a4989fbf11c88d1bf05fbac520f7b04d467bc3c6eb45043a41119f65aceecc4a6a1418a9192d73f33134545062 SHA512 5026d3ec7141ec4e2517a0b1283912d0801e9356f77b703d954b379439b8d85e3886d42fb28f7835edaeeac465582da14233564fb010c71425a59c9e1cbd46b4
DIST pkg-config-0.3.31.crate 20880 BLAKE2B ab7676e810751f89639b60ae70bdebe1d57edc76319f83077c3680049a701a26e72e8cc485fe77cdc4346fe3571d32c59e7384c8c86fef17e00d7d81df5daf43 SHA512 ac3e8062ee8831a4e4fc717b5247dc7f113da7bf6d64ec95cbca7875959a2afa1497bf81d9dfc27206b5fb10027a2509d51dd9ca1c10139d7b4c78128864fdf4 DIST pkg-config-0.3.31.crate 20880 BLAKE2B ab7676e810751f89639b60ae70bdebe1d57edc76319f83077c3680049a701a26e72e8cc485fe77cdc4346fe3571d32c59e7384c8c86fef17e00d7d81df5daf43 SHA512 ac3e8062ee8831a4e4fc717b5247dc7f113da7bf6d64ec95cbca7875959a2afa1497bf81d9dfc27206b5fb10027a2509d51dd9ca1c10139d7b4c78128864fdf4
DIST prettyplease-0.2.22.crate 58169 BLAKE2B 74b78f69b167d253643780b007726afde3a272c68b334b2b610d14bca1a2b02ece1b92f793341990a401b71357a858c4c9bf6c0bf965c61bc22a0a2cce84903e SHA512 bd3a3ed1395fb1e2eaff6231a9c54ce68ddd4be2cc30a6a871e32c943f7201b5c0956b16b3c478872daa521b92424060012d90be9bb45199e19e0b65860e7c18 DIST prettyplease-0.2.22.crate 58169 BLAKE2B 74b78f69b167d253643780b007726afde3a272c68b334b2b610d14bca1a2b02ece1b92f793341990a401b71357a858c4c9bf6c0bf965c61bc22a0a2cce84903e SHA512 bd3a3ed1395fb1e2eaff6231a9c54ce68ddd4be2cc30a6a871e32c943f7201b5c0956b16b3c478872daa521b92424060012d90be9bb45199e19e0b65860e7c18
DIST proc-macro-crate-3.4.0.crate 12690 BLAKE2B d65a1be2058cbbd5458870153bd2758be63aa900f4daf012b7c527ecda915c6589f4778b4a5140b6c1a77e3bf1b954e0146de0ed6332ff12d3b9821640534d35 SHA512 bcfa9550d1938f2d92c3fce823cb7fa088c16b43a430962028df77682acd5227e7195042379a843007cf5b71b2d53a2dde649c89b92a1b87d982acbc088d78ad
DIST proc-macro2-1.0.87.crate 49121 BLAKE2B 4a5136e28b5174c1382037d294dfec51cd7211eb7876c06a98600768d071915e76c81a7958a780cb7b843b98d9df4bd4e01d4f280db226d241bf84de348593f2 SHA512 32ce9c8b5bad55cfae537882c3fffc4d56824f6214ea97aede89ad460e3f66956b52af4a268496fc95c2c0eda0baeaaed4b12cd98df2efab24837e23b48b1f0e DIST proc-macro2-1.0.87.crate 49121 BLAKE2B 4a5136e28b5174c1382037d294dfec51cd7211eb7876c06a98600768d071915e76c81a7958a780cb7b843b98d9df4bd4e01d4f280db226d241bf84de348593f2 SHA512 32ce9c8b5bad55cfae537882c3fffc4d56824f6214ea97aede89ad460e3f66956b52af4a268496fc95c2c0eda0baeaaed4b12cd98df2efab24837e23b48b1f0e
DIST quote-1.0.37.crate 28558 BLAKE2B a7d007a69e619f853af94333e1066bb767013312bd99f147b1b153611242bcfa9c76768b1ba47278589db309a9acd61a772c8ec3b567e48439bb9d831f9326d4 SHA512 c4ed21428c1f89cf22b85d80720a7869831a9c129d694617b0ce8c258278114ab98846f3f653abf736d1c86bc9224bbd695e9a7b06aa3adf292d02e1ef14cc05 DIST quote-1.0.37.crate 28558 BLAKE2B a7d007a69e619f853af94333e1066bb767013312bd99f147b1b153611242bcfa9c76768b1ba47278589db309a9acd61a772c8ec3b567e48439bb9d831f9326d4 SHA512 c4ed21428c1f89cf22b85d80720a7869831a9c129d694617b0ce8c258278114ab98846f3f653abf736d1c86bc9224bbd695e9a7b06aa3adf292d02e1ef14cc05
DIST redox_syscall-0.5.18.crate 30747 BLAKE2B b9507a055aa34178982f0b5861602d2e11e13c2604f905c9b747c39aa6c45f06e60cf5c9d17d914712a815fc5e9ad75bf648c300e7265fd4afbac0b0c207afa6 SHA512 69f1cfb215666f1243616366711dbd8cadd6bb411121f48f6e4ffd7b25479efa6f900dd072d7cc6e6fb8130d95cdb42f4c0cb4ba9e05b09b1fa676ca32932101
DIST ref-cast-1.0.25.crate 15192 BLAKE2B d38a9cac7cc2253b8892e2dcda3224ed637713a667c7dc283a2744307e437a2233314a57ca8f9568afcb72425533c688820e12d42650fb797bd23c88dd99c131 SHA512 dbab09333cb8b7f9b0ff262223a10078e7cf729266b90df47c1fdbf1d15cb31807314514556c72211da633efb988e3d6ac8e0e1598b7b55b557f83378deb0120
DIST ref-cast-impl-1.0.25.crate 10167 BLAKE2B 0b648a9d54300e309214d8061f017d8c344eaf5be3623a361dc3d7dea687daf59ee09fb3c21c955a9fd9da44910d19f0b5a7b515a8877428d24369f6d21aacc4 SHA512 c79cb5a1338796e037927e99a9201738cf2a2ebd1983d120828569644c60fb5a3444c2eee830093b166af6734fa8ba649082e523170d840b9e8a548341fc3b70
DIST regex-1.11.0.crate 254059 BLAKE2B 9450e54b522c3f12e4f1d814025c3037f8373b9e1feaf2028756b573335cb7f22400b0925e3ceb0716d72aeb19b02b4bcf70b0b435a0252d0d52a7028d95308c SHA512 16c066664ae87497f9880a52222301fb0d44053ae2d6861ea21dc59cab82bd1ab8ac407f9e77228a21a586ee745b02f9eb10e7b9b30df2f3aad73633270bf73d DIST regex-1.11.0.crate 254059 BLAKE2B 9450e54b522c3f12e4f1d814025c3037f8373b9e1feaf2028756b573335cb7f22400b0925e3ceb0716d72aeb19b02b4bcf70b0b435a0252d0d52a7028d95308c SHA512 16c066664ae87497f9880a52222301fb0d44053ae2d6861ea21dc59cab82bd1ab8ac407f9e77228a21a586ee745b02f9eb10e7b9b30df2f3aad73633270bf73d
DIST regex-automata-0.4.8.crate 617784 BLAKE2B 7535c79f6ddf1b1225e21171921594dcf32fc3afd47519d2067b2047b19070cb7e6fdfd1563b884fec6f91dd568522fc95d85bf095c11f8c02daeac128c45020 SHA512 278e3e2ab230ed5fa7d4837e8ea879fae68ebf35c2da5cc3a67f46b7d593abbcf71e6326a0cf34e38edc0f3f2166ff42a4fcc17a400d9604429aa5b4be075a3f DIST regex-automata-0.4.8.crate 617784 BLAKE2B 7535c79f6ddf1b1225e21171921594dcf32fc3afd47519d2067b2047b19070cb7e6fdfd1563b884fec6f91dd568522fc95d85bf095c11f8c02daeac128c45020 SHA512 278e3e2ab230ed5fa7d4837e8ea879fae68ebf35c2da5cc3a67f46b7d593abbcf71e6326a0cf34e38edc0f3f2166ff42a4fcc17a400d9604429aa5b4be075a3f
DIST regex-syntax-0.8.5.crate 357541 BLAKE2B fc6d125f7a8574c37d81c75cbfd447cbcff736f2d9991b19814ffc1a414ebc5b76e84fb8fd36c983b38e8e391d165cdd9047832b0d9100f0e1ba7085484b7db5 SHA512 549d8d130fea9ec0d5806126f57f31d433f50e9328c5532ad417c44bb5488ec0d20acb0983dbe54dabaa0b453cbea4533cf7baac7144df119e8f78dfe55c5ab8 DIST regex-syntax-0.8.5.crate 357541 BLAKE2B fc6d125f7a8574c37d81c75cbfd447cbcff736f2d9991b19814ffc1a414ebc5b76e84fb8fd36c983b38e8e391d165cdd9047832b0d9100f0e1ba7085484b7db5 SHA512 549d8d130fea9ec0d5806126f57f31d433f50e9328c5532ad417c44bb5488ec0d20acb0983dbe54dabaa0b453cbea4533cf7baac7144df119e8f78dfe55c5ab8
DIST rustc-hash-1.1.0.crate 9331 BLAKE2B 16ac56622897f47a06b661fb59a196b08d48e782ab87549c8bd5c6fe92f374c9bfd44dcb36588512bd9b6125c2fd79a12d648aaa308fd9694bcca3a7c1b49ac9 SHA512 84e673ea9b046f7b989d47f2c4505557fbd5de991e6fc9f56a03605d40e0b4ba5427cd566954890153cc033ccbec6c984306634571935bfe0d4cdfbe56f39544 DIST rustc-hash-2.1.1.crate 14154 BLAKE2B 7a1b3b82bbbf6a123512815c3e8f068a17890cbbb8b68e88a5a492f62469942fadd776207eebd913052a1c06e1fd37a549e86526b9fc8f08b9ca7cb0044ac16b SHA512 87097d98d47f327d000041ab13acddc366f1500d9c3e5c82169c3358112c7a7c03701c9b3c2c81d9f9da65b7ebac1c479b179dfaf7c059cd0b929b4673e51084
DIST rustix-0.38.37.crate 371243 BLAKE2B bceaa4861747208f1f2b68f8924c7247648d88deb200e97d8ed17c5cbf9c934488065f0ee7e4406bc96e8709b292ee1fe15beb346bff57b5f05af36174420a0c SHA512 6c0ad1be1fcf1b74f670b2c7599ba68c2ce834c760ff7486674d190ae0d552165b0c2abdc35b13eee8c0333a904c67f5dd1efa742c20fd3735c7ccdf2a439619 DIST rustix-0.38.37.crate 371243 BLAKE2B bceaa4861747208f1f2b68f8924c7247648d88deb200e97d8ed17c5cbf9c934488065f0ee7e4406bc96e8709b292ee1fe15beb346bff57b5f05af36174420a0c SHA512 6c0ad1be1fcf1b74f670b2c7599ba68c2ce834c760ff7486674d190ae0d552165b0c2abdc35b13eee8c0333a904c67f5dd1efa742c20fd3735c7ccdf2a439619
DIST rustversion-1.0.17.crate 17621 BLAKE2B 1f077ca6fd90333724d1ea9df7f5b178f37f895b71a7b2814e9ba8618bffcd2307f9cb4ac2eea25d461a6686a4b5b51eebb80f1b1ccc773d4da1948c47fe8abe SHA512 0565cddecaedae17e7cd99bc34f54cda242d4c29cd4269f8e3b178ff91d49f3682e7ffe66e436bbb138299736c8e55cc143fefb74c076911fefcc41ba98064f3 DIST rustversion-1.0.17.crate 17621 BLAKE2B 1f077ca6fd90333724d1ea9df7f5b178f37f895b71a7b2814e9ba8618bffcd2307f9cb4ac2eea25d461a6686a4b5b51eebb80f1b1ccc773d4da1948c47fe8abe SHA512 0565cddecaedae17e7cd99bc34f54cda242d4c29cd4269f8e3b178ff91d49f3682e7ffe66e436bbb138299736c8e55cc143fefb74c076911fefcc41ba98064f3
DIST ryu-1.0.22.crate 51321 BLAKE2B 1d575969b18e385b9805ada6d5acdeb1d1fb306da425b10378d13ecd619553d9cd07b9e134cb46d11ab956a19690c066ffd50848f713c63602a0fc20a885419d SHA512 542a991b438de374a8377dcc1501e55d919d480d3a0503097c24710472adca732c4de4f1e623b28b67763ab425aa8e234080a5abf222b5ead77a9352f617c2fa
DIST scopeguard-1.2.0.crate 11619 BLAKE2B 8b7e9ed6cefef9ee55407fb9690d57a2a98bb93e5105aeebdb475a52485e9e185255249e1dce8f83cd80534e7402d485aac3efa7e8493b13135de27550cd4bc4 SHA512 6247719a15fe1e4e2d179127b9a934bd2f99367724f41175ed9522f58824b6bc69b35002eae66b35880375ff61d77ac43ddaa78cbde7160a35183a1da32d3fbb
DIST serde-1.0.228.crate 83652 BLAKE2B d1909d671ea6d5c2eb4ce34ee4493ecaf665d416111b4cac754b5d33b85f916296110bae7aa961efd987a2ceb4a31ba645752ce99dd28dedb9f1eecdd4d7b1b2 SHA512 9b645d6214203533b303fc5e88ad4f7686c22df084878d18a0209a92304a340fcb62fdde88a7080cf7a7348d47b9b363885c4e1da90dba08cc99ff620f375e97
DIST serde_core-1.0.228.crate 63111 BLAKE2B 8a64e4627ad21a3d16dd37d53fb809d11171bf337ec16bb1223075cbf81b6b85cd1c8d19abadf42460d0fbea323e2f351eeb6ef823389d519121b74e68edb215 SHA512 43897e3a7ebdc85d81d1cb30cda8f0a11610f6f551529c8a21462c24fb83110652b462846aa3e1bed5fbf8b5d7927018845a524ee9e079e2c8acf2c687efd6c4
DIST serde_derive-1.0.228.crate 59605 BLAKE2B 166ee2f9ff9f7a0928d0a65a72db3d9226c377bca2a1771956e8ecd9c7faf0544673c9c21be2a5553e621b55c74c7b958052592a1cf6eb6427a2d4f3e3dc6bb8 SHA512 8bfdfeee10ee7ef0670972aa963ef63b13e8eb2c8a09b9e0b717f92551aa89b3dd2a0dcbae6ccf20a1caece07e6adb18f0db56fdac020e4e0281b0d24e376003
DIST serde_json-1.0.143.crate 155342 BLAKE2B c01be213f79cad1f3de35a1c5adab75121fb2a49cf261e46a5509d44f02e12a5b56db3cd6bf539e015ce59019faa636dae2f1ded25d7893c7a0e03f0c9d211da SHA512 084fa35adc0d720c3868d57b2d4a2f30af08b650e876ee88014cf1b98d49079f5ddfe5b14743c63ebc5b9bd8291c6d03fd34f07b770a25874f00ea7c42bdde8b
DIST shlex-1.3.0.crate 18713 BLAKE2B 18800c364d3a628f1a3125097ea82fe6286550c2997235df0bf8483a3906aacabc81308cb239887d46ba2f457cc6f8acd5aca78316707eea5098cd5666aea67d SHA512 5c8cedbe666a14b8a0874defb9208146ce64579cde52ed483e4a794cac5dde6a24bf8d684404edff582f842e1fd4fa3fbeddbe074f191e4ec4aa517aa456fe8a DIST shlex-1.3.0.crate 18713 BLAKE2B 18800c364d3a628f1a3125097ea82fe6286550c2997235df0bf8483a3906aacabc81308cb239887d46ba2f457cc6f8acd5aca78316707eea5098cd5666aea67d SHA512 5c8cedbe666a14b8a0874defb9208146ce64579cde52ed483e4a794cac5dde6a24bf8d684404edff582f842e1fd4fa3fbeddbe074f191e4ec4aa517aa456fe8a
DIST signal-hook-0.3.18.crate 50862 BLAKE2B a0ae80afc2de0e3eb8b3c10241617cda08dcf2a6c06da3b385dfaf098ea4fb6c14f5d1aa6720325cff15d8ab195bf4d05966dc5a9e7155a1e43fcaf238ffb654 SHA512 1955288d7f47738007252ac2aed0fd05d1c16f1726ae2a97ac35b0ba5a6a82620b26ecc03c4760b12d86d4b83c7484a3830aa84530dc010d398fff436fda3137
DIST signal-hook-mio-0.2.5.crate 14373 BLAKE2B 64cd21c7d5512c9315c6c19357d879e46c61935370dd5b0d97fc479e868654450efa52ba91a6c6810fbdbedef58c1a64188bf57b04aad105031763ba64aeb882 SHA512 0750e14b58cc61315738a4e7cf624c19f657d8480c76edb60c333dc0686f9dd4086264488c1dba7bba9a01053f69f9999ab157051524e2eba0299e7542c0a8c7
DIST signal-hook-registry-1.4.8.crate 21668 BLAKE2B abaed3ca8f07e1631aecaa4bfcc9dea94f2bcd2ab227c9e44d543663392d5e7c7b3beea4d0624ff48637d4fc7544a722ba3d4113d109a77ec1a3b3c0d06580c5 SHA512 6625d842e5040fb15c3a6a03994aabe8b3d0b752773805866858452fb03e5cab2663c89367caa15a34dc0ee7c2b830e302d9be664130c093bdbc17d7b61f045c
DIST smallvec-1.15.1.crate 38116 BLAKE2B 8dd779d7726694672945e928399e0459f4973d284a6c2d664c2fc757ebb1177658f47c812d9800e982479cbd7413fd4283c64a4d248ba5cff6397f96b758676e SHA512 c26b097a063353beedfcc921129cd0fb838c1c9420218993a05b2655b47b6ec16f11e0054312018658b4abd893beee140c5d2739401a5e5aea2e64575f237047
DIST strsim-0.11.1.crate 14266 BLAKE2B 252a9ede4241b165525486aa8855dece37af77f5b28e0e1858c4a5d2047db9fa958328db10989234aad69463ab51b2303785ec056c63ea8c95bf95e111ddabf2 SHA512 0cebe0155a92640e56db9a599ae62078cbb32e1d2da8bfa67ed0e8f410a7558dfcf7b3c2720ff5913282e291ecf076aed9fe9bf84c8d44e814a642b1bed3335c DIST strsim-0.11.1.crate 14266 BLAKE2B 252a9ede4241b165525486aa8855dece37af77f5b28e0e1858c4a5d2047db9fa958328db10989234aad69463ab51b2303785ec056c63ea8c95bf95e111ddabf2 SHA512 0cebe0155a92640e56db9a599ae62078cbb32e1d2da8bfa67ed0e8f410a7558dfcf7b3c2720ff5913282e291ecf076aed9fe9bf84c8d44e814a642b1bed3335c
DIST strum-0.26.3.crate 7237 BLAKE2B bdc348c718c39609c00b9fa7d47b7090b1467022b7a8a28cc7c8a72a0aef20569c6ab22a8a8d26c2d9272f18d000e4ce94858a6647194f0a7b86d812d52b05a9 SHA512 62f116d5bbc6167a6ac68b049f8045bc660901f1ce1252f8bdcd91cb28bef821aad8098905369db6c2fe74c134a5d549e55ddd28e383d7d78f7175258924b268 DIST strum-0.26.3.crate 7237 BLAKE2B bdc348c718c39609c00b9fa7d47b7090b1467022b7a8a28cc7c8a72a0aef20569c6ab22a8a8d26c2d9272f18d000e4ce94858a6647194f0a7b86d812d52b05a9 SHA512 62f116d5bbc6167a6ac68b049f8045bc660901f1ce1252f8bdcd91cb28bef821aad8098905369db6c2fe74c134a5d549e55ddd28e383d7d78f7175258924b268
DIST strum_macros-0.26.4.crate 27531 BLAKE2B 7f7d57c957a1591054288fcae6590a5e669fba1b47d8f1a52371ce60fd84f91fdb430e48cc7edbb5fc72914be5ce12af29758b653680da3f4177339b31206750 SHA512 77a17ce47d5e8fe8a89cb6aa6c3ca5d5c2625aea0f93456f05a9994238cd3b08b3f7c6a45e9b3db21bca8fb5759f505f15cc111ac84acbbb34d59cdae8307b0b DIST strum_macros-0.26.4.crate 27531 BLAKE2B 7f7d57c957a1591054288fcae6590a5e669fba1b47d8f1a52371ce60fd84f91fdb430e48cc7edbb5fc72914be5ce12af29758b653680da3f4177339b31206750 SHA512 77a17ce47d5e8fe8a89cb6aa6c3ca5d5c2625aea0f93456f05a9994238cd3b08b3f7c6a45e9b3db21bca8fb5759f505f15cc111ac84acbbb34d59cdae8307b0b
DIST syn-2.0.79.crate 268981 BLAKE2B 2bf4bde1890ce4ee91fbacca81bd298d15f0111fedb27b9cf8d675dc2489f46026c1804f9e4e24afbd0718539820096cd5c4ed2c2da02e598370dbfd2b18c293 SHA512 1ee073fa3428c031e53bff8ff305bcd6b37ac142bee3955dcdb44fec1c77c733eb78760c8bfb30b83fc3dacdad8a384e2b6f9f31a89c4cc300359e33457fd433 DIST syn-2.0.87.crate 278076 BLAKE2B 93385f64103fdb482bec34c7912474ae7a5935948715e6eb9a54907e0db5c39f089f6cd393bab33c935c59a1bbb0f4099431f206343811c1a450554d96a35756 SHA512 bcfff545d6dfefd81e09f8f30a86bdd85759b3a7d4093ef3365ed02718e10dbd604c52b94c9d7fa955d339fdc5b6c079940c6f345b5a48c52b5c8607794ca6f2
DIST terminal_size-0.4.0.crate 10036 BLAKE2B 2f910a6ecd80a3fba12811eff425fe2d1a7c474d8db7f673037c1088ef468e96d41fd13fd3175c84c20da12195a07bbd4354767bdbc64d757feef86f86e384ec SHA512 b1a66cdf4e94997b5291f3becfac1e2a838f6c3f6c068faa1ff1aa775b2a97d41be2aff5460d88928786cfd7dc8dac5e2d46a62b475d40343e1fd517c6299897 DIST terminal_size-0.4.0.crate 10036 BLAKE2B 2f910a6ecd80a3fba12811eff425fe2d1a7c474d8db7f673037c1088ef468e96d41fd13fd3175c84c20da12195a07bbd4354767bdbc64d757feef86f86e384ec SHA512 b1a66cdf4e94997b5291f3becfac1e2a838f6c3f6c068faa1ff1aa775b2a97d41be2aff5460d88928786cfd7dc8dac5e2d46a62b475d40343e1fd517c6299897
DIST tiny_http-0.12.0.crate 51330 BLAKE2B d296b90b4e13d29cf16954c01bed353897740e37d6117208f8a52214d722778be7e326508f6e2a5b21e7f3cfba6f65de7a2c1bc52dbe57efe2fcf6b235fe7234 SHA512 c74efe5a0cad88ef0d569329bd633a9ed09365854aa5ef601c97f7f20a7869253b53f8945b998146ff1d97e7301fd59ea76a497fb0f1866c6b9bb76b87561fb0
DIST toml_datetime-0.7.5+spec-1.1.0.crate 17975 BLAKE2B 78f3ba1af90ef25ba23491c1828e8c64d70ae9fdd4718e58c689c17848f9b74469d62471c7ba447dada7d749e1c63b153bc2850b9966cf1ac7ce87a6c7916861 SHA512 4db08a8865011ebec8351a5c42c7c9ce862956c04cf80d10644f68d727362699a4240db9e210cb6d558fecadb63da0fb41b356b5f0cd1142303069988a8642b0
DIST toml_edit-0.23.10+spec-1.0.0.crate 66420 BLAKE2B ca854ab01780950033763887069becee2527e72c72dc821e0b152713faa4b9414ce111ab1e57742bb13ca1d32e5756e9b564d4db50b2c4d93a8dc533d437a04b SHA512 2e8eb555e7c1eb2279f9f868f688b78f27a53a60985be952561e81d2d317f1f115739de6c15ee79ff7e580272657c0a86138410ac10505a0e3ae3836412c7f99
DIST toml_parser-1.0.9+spec-1.1.0.crate 35035 BLAKE2B 856dd31aee9f95ddfd46c87245bd6d1ab90bd7f6f022b732fe8f900fa4039508fe73a5f690e5d159e66f5f39c57a947b8419630d87371c832e261cee1ccf23d9 SHA512 87661774214a761bf60826d6fa9fb6a60682554f09f8f20f4090734cb73c2142c0fdb9c7aebf801ead29bf554fbec11c58ea8fbaa628607012ea8e2e35e48518
DIST udev-0.7.0.crate 17980 BLAKE2B ef62bfc3bebdea9fbc30d8c0de6989b0310da2b7efa65345e991b5ac85d39578a5cc9bf97558786f09806c790eae4a99ca7be29d35b8793a92c71bed07a9b91a SHA512 87aa3182c028911b23c6820408879f901dd674ff6fe95c8382ecdec3d4da9f3e19dc03b2435c72e7cf299af083d5de9a6b83a84a75de4c2483c97ea9c1950393 DIST udev-0.7.0.crate 17980 BLAKE2B ef62bfc3bebdea9fbc30d8c0de6989b0310da2b7efa65345e991b5ac85d39578a5cc9bf97558786f09806c790eae4a99ca7be29d35b8793a92c71bed07a9b91a SHA512 87aa3182c028911b23c6820408879f901dd674ff6fe95c8382ecdec3d4da9f3e19dc03b2435c72e7cf299af083d5de9a6b83a84a75de4c2483c97ea9c1950393
DIST unicode-ident-1.0.13.crate 43279 BLAKE2B b5e935020d1c9f3aa24f7d382f6b73d6510d654a61ce1c9c024e2e365bb817182e076139f370e822573531356fb78ff7499049b1f29aa1e2f4a2cc74a955b47b SHA512 5ba884f39debe9c8eb0b1d251ca713f7e2bc191d211707ed10cd81465487dbdca53914c19e131edfa1da15af132dc2c346260c3969c61e3747b63399ccb1cc51 DIST unicode-ident-1.0.13.crate 43279 BLAKE2B b5e935020d1c9f3aa24f7d382f6b73d6510d654a61ce1c9c024e2e365bb817182e076139f370e822573531356fb78ff7499049b1f29aa1e2f4a2cc74a955b47b SHA512 5ba884f39debe9c8eb0b1d251ca713f7e2bc191d211707ed10cd81465487dbdca53914c19e131edfa1da15af132dc2c346260c3969c61e3747b63399ccb1cc51
DIST utf8parse-0.2.2.crate 13499 BLAKE2B 095b5d219ab8ff04c06fd6303e03d913ae36a57845f0b2ca3217a40e31a54cb0fb5ecedbde165d28f5f60f1553d8252986d7098fa83befc84a7cb20bf3b76144 SHA512 f3dbf78fe924f1dc3cf9498b6e43fb10174699463f31091a7a8136d8f31ec84fc00e80e3d8551b7e86257e8b3573cfddb56fc0de797fdb2cde0e962a8f239266 DIST utf8parse-0.2.2.crate 13499 BLAKE2B 095b5d219ab8ff04c06fd6303e03d913ae36a57845f0b2ca3217a40e31a54cb0fb5ecedbde165d28f5f60f1553d8252986d7098fa83befc84a7cb20bf3b76144 SHA512 f3dbf78fe924f1dc3cf9498b6e43fb10174699463f31091a7a8136d8f31ec84fc00e80e3d8551b7e86257e8b3573cfddb56fc0de797fdb2cde0e962a8f239266
DIST uuid-1.10.0.crate 47648 BLAKE2B 370f56b5057fc43ed6645ca4a032737230242c88f3c6945248585054a0d1de0c85cb2eb21bd4c759c1ca73df1b5005652f74b474537116c4fd6642cb60d274ff SHA512 e17db9433d919b51468acaebd240a2cb218d07f099fade49118ca9313f8cdf6aa3103e7aa24440be65a4f25a25f8f511e36dba08cbef27747f9e43b849cd612b DIST uuid-1.10.0.crate 47648 BLAKE2B 370f56b5057fc43ed6645ca4a032737230242c88f3c6945248585054a0d1de0c85cb2eb21bd4c759c1ca73df1b5005652f74b474537116c4fd6642cb60d274ff SHA512 e17db9433d919b51468acaebd240a2cb218d07f099fade49118ca9313f8cdf6aa3103e7aa24440be65a4f25a25f8f511e36dba08cbef27747f9e43b849cd612b
DIST which-4.4.2.crate 15953 BLAKE2B 40ca22cd2f625cb035a1d919ed457a300b482c7751dcee4441974c53d56ce13f1f502535e1f7c0746a01981f4de2e2f761c3a255902d6353db1a4c3c62637448 SHA512 2d12aa1d4c2dbc140e39c8f15bd4ee1eeb8e8de71bcdf579479ef4be860fb0839eaf4cdb818addba242d50420f6e08acaf2bfc979a889e092c83644819246fd5 DIST wasi-0.11.1+wasi-snapshot-preview1.crate 28477 BLAKE2B bcc773ba28cbe8d820e9e9fbb275fb4451bc7f39b3bd88bcd93850bf2bdb5300489bd8eca27489ccc5f6269b00f4e1b505ae3a33a35d708cd5a414ad307be149 SHA512 29e3c903763db2580a15f50db487c5e1d4e90763e48d90a5b3f681e468a24f9df1a01773bd1ffa0e3cd293dd8cb4d6fbabfaa63c0e13889c811a56f4554ada49
DIST wasm-bindgen-0.2.108.crate 49120 BLAKE2B 7cda1630cf38a776750f91d5811a55f955fc05f8460bb5ec12f147b37763ab73c0f40bfab4ae85d9cff93c80a6d0845916d47d61f4eb1750844c9459254bfb75 SHA512 d938d6fee0e9018cf3e1d3bf736b3ef9fbad3b20854917c93409bb4baad70c3a8220646ad3aa8e340d91c655eb7d0ccde01f4f38eb6941780c88c70989616716
DIST wasm-bindgen-macro-0.2.108.crate 9283 BLAKE2B 89ae171ed3418bcf27f3a55a8fb03c9d8983bfd16254e9419fe93671ea68532d83a24a6e4b6834a291e4fd068049216c84272f041cd99f76a620f7bbf5f2dde9 SHA512 5b154c3010a31bb7338d16e559a9b3d2d69cab7681914d22e8b4331cafbc2e6d8b5913fcfbdf5a3ee0e793918affc94ae0dac76fa407f02881ba4642ed1a2b66
DIST wasm-bindgen-macro-support-0.2.108.crate 49855 BLAKE2B 5282f38ec1f5de7f1147145e9083863965e047e75c0b5cfbd46231619ace34b59a2a4db6d3298d265df35dd40de48a8cce2a47678644af432cf28368d3c9345c SHA512 8ccbf76754e3d62df3f157e397a3b560083e429840be50f38dd77cf737eb892db3054295d62f0df2a6cb78589a9abda6e9bc2fbcb2fd431ea74dcae46470b2e6
DIST wasm-bindgen-shared-0.2.108.crate 10121 BLAKE2B c7e80b0eed58bae092167450b44dde4d351188115c5b5d966ed2ce39b4fdeea77ceba89d7bd28400ea92f639b17cdc557a57428da8f4a379d2ecb90ad847f13c SHA512 97fea5811a789c68c8a9b19587450d69b40bf2b76e38efcbb12f4864ffc2ca38a5d3deb5d9d437f47458d44f05afcfc5078c748996c3fcefd65e15bbdf9b226a
DIST winapi-0.3.9.crate 1200382 BLAKE2B cb5799749ccd935ea2d7068d953cecf19f543d9db7dc16ad4584bb7005373ada34937a3ced7225544d8bc765da599911c7a3190efefb3a25b7c1bb7123b4f673 SHA512 ff8b7b78065f3d8999ec03c725a0460ebc059771bf071c7a3df3f0ecd733edf3b0a2450024d4e24e1aedddaecd9038ce1376c0d8bbf45132068cf45cf4a53a97 DIST winapi-0.3.9.crate 1200382 BLAKE2B cb5799749ccd935ea2d7068d953cecf19f543d9db7dc16ad4584bb7005373ada34937a3ced7225544d8bc765da599911c7a3190efefb3a25b7c1bb7123b4f673 SHA512 ff8b7b78065f3d8999ec03c725a0460ebc059771bf071c7a3df3f0ecd733edf3b0a2450024d4e24e1aedddaecd9038ce1376c0d8bbf45132068cf45cf4a53a97
DIST winapi-i686-pc-windows-gnu-0.4.0.crate 2918815 BLAKE2B 4d357e4d30f9552972170d65b9a5358b69c46a3e772fe05efc22f3d4ffc1caeeaad7aacdc7abd503a7ad0545f8bd7d22bf351dcb6df76f812fa4d45c34d65df0 SHA512 a672ccefd0730a8166fef1d4e39f9034d9ae426a3f5e28d1f4169fa5c5790767693f281d890e7804773b34acdb0ae1febac33cde8c50c0044a5a6152c7209ec2 DIST winapi-i686-pc-windows-gnu-0.4.0.crate 2918815 BLAKE2B 4d357e4d30f9552972170d65b9a5358b69c46a3e772fe05efc22f3d4ffc1caeeaad7aacdc7abd503a7ad0545f8bd7d22bf351dcb6df76f812fa4d45c34d65df0 SHA512 a672ccefd0730a8166fef1d4e39f9034d9ae426a3f5e28d1f4169fa5c5790767693f281d890e7804773b34acdb0ae1febac33cde8c50c0044a5a6152c7209ec2
DIST winapi-x86_64-pc-windows-gnu-0.4.0.crate 2947998 BLAKE2B 2ad1ea8b5fa07d544e910ccba043ae925269b76b26c9da356305b34b86741dd8b9aff0b9ffe3d562db4fcd7d7c46a11ce9e3168b782b1d89ae6881742b7ede82 SHA512 4a654af6a5d649dc87e00497245096b35a2894ae66f155cb62389902c3b93ddcc5cf7d0d8b9dd97b291d2d80bc686af2298e80abef6ac69883f4a54e79712513 DIST winapi-x86_64-pc-windows-gnu-0.4.0.crate 2947998 BLAKE2B 2ad1ea8b5fa07d544e910ccba043ae925269b76b26c9da356305b34b86741dd8b9aff0b9ffe3d562db4fcd7d7c46a11ce9e3168b782b1d89ae6881742b7ede82 SHA512 4a654af6a5d649dc87e00497245096b35a2894ae66f155cb62389902c3b93ddcc5cf7d0d8b9dd97b291d2d80bc686af2298e80abef6ac69883f4a54e79712513
DIST windows-core-0.62.2.crate 36932 BLAKE2B f291939153338efd768bee7cb3891814a1d46ed5cac1e2ea72a7ac66613842c02e1de89052a53e8b164d1055d9d4a138711929af897486b3a6da02e91aee3103 SHA512 b3b3e95b7ff6df91ebf866f8ec9c5e8f67134a26f1690d286f62fd756ebc5e2c59c583d4fdc213e5aaf6834f2693329f3eccbee83fa0567663cfa7d9d9ca549a
DIST windows-implement-0.60.2.crate 15325 BLAKE2B 1f4e5b6759224a74f006c3bfb9acd3bb5fb111fdcf6e4f5e838ca10ac200baf48261583386962d357deffbabea4f67f8e257b8ad8b01b5aee6fe67f3822a7c13 SHA512 212fd6c1f25da40f2131b07ce1c0a34c23177c4666bc518e00a9b4f2bd23c1d131bac565fde531c51f21167f9eb1591e381fc6bc44ce952f6945bad6547c1579
DIST windows-interface-0.59.3.crate 11809 BLAKE2B c3f439e14e85175f12b4403295f063f53d03224ed1842ad3826fb2beb89c2884317105e28d9d9af2000e08b5bf2fd05befa48dcd0325baba168acb19c8341d86 SHA512 6fe54da90ca797a5e1927803febb07d1e2e4db0bdba5a9cd84d823dc9118390c0f988387e8c614949b9f3c3a0fd47743fd0ddec3200f897952c53a57bb34adee
DIST windows-link-0.2.1.crate 6133 BLAKE2B d1ca714178e6fe12bb3b4caeed9a52a36890989e77ae2dcd6f2d18ae4a21fb8479d304cdff63bb0a5f28acf44eaf104821cff83cd66b3a0406a5f33a800e3641 SHA512 afb0c87beb8914fd9a3e52db6f2f64a840470b9751b66c83892c24cb1c46cda63fb16b1aeafcaa5a1fc7c5ba01da46be63e5227cc108dede8b0bd27785498a6b
DIST windows-result-0.4.1.crate 13381 BLAKE2B 3960ffb7f15826bd2f8636133412872d7af9c2d89fde07d2183188083e22580ecbef11f423523aa864c0b199a494aabf1d6386d7c7fceeb7ad74575347efbd27 SHA512 a2b7cc53608b8243bf9b19adb75cdc1698b8caf78d939c3afc0c01b1e89f9cb951306cc1673f9b400b926437340681af641ee322f7e761a641ee40e52b21b9f2
DIST windows-strings-0.5.1.crate 13966 BLAKE2B 9143cfa5a4184bf0aeb62f8c85d0629d7417b74727349cf46f0d1f28d0e255cc218ac5bc39fe1c7f0311c418f23644e84644b8e7833c5b1c8d1f523c3d38d728 SHA512 c1c3e620aeacbbba0159e789cf0a0261e943f626d21392a77ff00d321c867a0a6ea75054f594a63fcc86cb9ba6bb580d96c29e0a8fdffe90e73658aefc3472b2
DIST windows-sys-0.52.0.crate 2576877 BLAKE2B 69d6b560ccfc8f679e2678663ba606060d71fa28efa82c8aef8cceaa2c63b06f2052764d60163964f939649a26bbec6361ee4b094555e941fae92070db566980 SHA512 24ee0df246c2b456a4987a9124786a28acd358768cc7d1305bccd81bc5bb8822b81a03fb18d35174a520b911c6d9b685f81a34ab319fee13da3b985273584f03 DIST windows-sys-0.52.0.crate 2576877 BLAKE2B 69d6b560ccfc8f679e2678663ba606060d71fa28efa82c8aef8cceaa2c63b06f2052764d60163964f939649a26bbec6361ee4b094555e941fae92070db566980 SHA512 24ee0df246c2b456a4987a9124786a28acd358768cc7d1305bccd81bc5bb8822b81a03fb18d35174a520b911c6d9b685f81a34ab319fee13da3b985273584f03
DIST windows-sys-0.59.0.crate 2387323 BLAKE2B 3110c8cd2bc005f8c95cd038a8d574af648dc19788fe4485f977376f92e36b911b1a542d669a07ae9cd4ea72a884ab01ec78b8a2b5587456eb202452d1d8fa0d SHA512 d35e009e979633a1f3c8468cd038bd5c8c0381405165ce03497decd7d9edaaac485d704487e4a61d9aaf4e4d011b4248408912df6a0044d50e8457259867e061 DIST windows-sys-0.59.0.crate 2387323 BLAKE2B 3110c8cd2bc005f8c95cd038a8d574af648dc19788fe4485f977376f92e36b911b1a542d669a07ae9cd4ea72a884ab01ec78b8a2b5587456eb202452d1d8fa0d SHA512 d35e009e979633a1f3c8468cd038bd5c8c0381405165ce03497decd7d9edaaac485d704487e4a61d9aaf4e4d011b4248408912df6a0044d50e8457259867e061
DIST windows-sys-0.61.2.crate 2517186 BLAKE2B f4eab0b365aa1df8a353d634da5081237bef0f7b69f02ffcaba232a688e59dfe877c47114de64c81e3cbb929c2fea1143ed6bda56ce935e66d871a993ac29106 SHA512 e6c8f61f0724dafca7821ee9b9c07237ccfee69be269be2fa7318eb48b151285ecf63e860aa1fe303639222fe11268e3773f37c2dd79f923029af58c645edb3f
DIST windows-targets-0.52.6.crate 6403 BLAKE2B eb98d0a8daeed5fe76e7fa8edb2743e2a3e77dfb9c4ea68605a6ab10532cb7cfc43bc1cea0180869445bd940be762a40136500e26b84ca88b5e0c502004c7a4c SHA512 d6d2dbd96096c6c396dba141a9817e377c35877f3b2fe58b2553280c7cfcb1ed6ee75bd4d62c9b882662de67ddaf0c1049b91530d29c94dd709c230e08eb895f DIST windows-targets-0.52.6.crate 6403 BLAKE2B eb98d0a8daeed5fe76e7fa8edb2743e2a3e77dfb9c4ea68605a6ab10532cb7cfc43bc1cea0180869445bd940be762a40136500e26b84ca88b5e0c502004c7a4c SHA512 d6d2dbd96096c6c396dba141a9817e377c35877f3b2fe58b2553280c7cfcb1ed6ee75bd4d62c9b882662de67ddaf0c1049b91530d29c94dd709c230e08eb895f
DIST windows_aarch64_gnullvm-0.52.6.crate 435718 BLAKE2B 8b12ae02892cb69401329034bbca671d13bd268a112120b56b90504707cef89decfbd2560492844a9f0588fab62dc1476ab7e931126b939015d25a8cc91ca334 SHA512 f62b2d942bdb3a9353465b07d47b93de179bb706511aa497e4addd74cff95e689a9b633e7801ce786e73b5ae5f30b506b6faa199c5ab86eefdc1d94652df79c5 DIST windows_aarch64_gnullvm-0.52.6.crate 435718 BLAKE2B 8b12ae02892cb69401329034bbca671d13bd268a112120b56b90504707cef89decfbd2560492844a9f0588fab62dc1476ab7e931126b939015d25a8cc91ca334 SHA512 f62b2d942bdb3a9353465b07d47b93de179bb706511aa497e4addd74cff95e689a9b633e7801ce786e73b5ae5f30b506b6faa199c5ab86eefdc1d94652df79c5
DIST windows_aarch64_msvc-0.52.6.crate 832615 BLAKE2B adc8ff61b6dc96d39c92c7d4221ae6aa0575edfc016cfcd046067ca5d8fcfd56d10e8e227be1c038ce34684be22c7ccaf5f18cd5a7638d28fbff4ba15b48b90b SHA512 a3e21305ad0e6de38f5b5ed5d37ee5825b7521064163bcdf31d63341cd87983f54377865d2daf3bb480d2d0aa66d6f598fa09540ec1d71baea74569c86bd213b DIST windows_aarch64_msvc-0.52.6.crate 832615 BLAKE2B adc8ff61b6dc96d39c92c7d4221ae6aa0575edfc016cfcd046067ca5d8fcfd56d10e8e227be1c038ce34684be22c7ccaf5f18cd5a7638d28fbff4ba15b48b90b SHA512 a3e21305ad0e6de38f5b5ed5d37ee5825b7521064163bcdf31d63341cd87983f54377865d2daf3bb480d2d0aa66d6f598fa09540ec1d71baea74569c86bd213b
@@ -79,5 +134,8 @@ DIST windows_i686_msvc-0.52.6.crate 901163 BLAKE2B 99ed34e052db5ba77bab240ed5d38
DIST windows_x86_64_gnu-0.52.6.crate 836363 BLAKE2B e2335829155cdbd4a55cc9f9babc237e14e32aab97f6f91afabcdf80d2aee37d6fb4b8669aaf433ff532c85dba59b3d366c7d41b61a2f29b96f960169c900687 SHA512 c4086bb0280042f2bef9b556283b67f8a5cacddd209e1c5fabec63decec6d4fd2d6a7071407973981b98ae0c0cf7034fc612f9e70dc6d3eed9acdec771ae31cb DIST windows_x86_64_gnu-0.52.6.crate 836363 BLAKE2B e2335829155cdbd4a55cc9f9babc237e14e32aab97f6f91afabcdf80d2aee37d6fb4b8669aaf433ff532c85dba59b3d366c7d41b61a2f29b96f960169c900687 SHA512 c4086bb0280042f2bef9b556283b67f8a5cacddd209e1c5fabec63decec6d4fd2d6a7071407973981b98ae0c0cf7034fc612f9e70dc6d3eed9acdec771ae31cb
DIST windows_x86_64_gnullvm-0.52.6.crate 435707 BLAKE2B ab77dccd06328cdb00175f41cdbc120594050a9678b7f9820444391fb50aada3911a91ea00f3a6db2b4fa1820fd23bc9a007dfbe65ad41417c26ee1137ef9b96 SHA512 67681f5859e249c56b0183181811f6212cc7008d6471dad78aecc7ebe3d027686b19210b8aa9014c554410f69f913d21ce2aca928eea905eab779bea26464cbd DIST windows_x86_64_gnullvm-0.52.6.crate 435707 BLAKE2B ab77dccd06328cdb00175f41cdbc120594050a9678b7f9820444391fb50aada3911a91ea00f3a6db2b4fa1820fd23bc9a007dfbe65ad41417c26ee1137ef9b96 SHA512 67681f5859e249c56b0183181811f6212cc7008d6471dad78aecc7ebe3d027686b19210b8aa9014c554410f69f913d21ce2aca928eea905eab779bea26464cbd
DIST windows_x86_64_msvc-0.52.6.crate 832564 BLAKE2B 8e9a3044654c6de99a9153e7cacd575474e7a8a3d883c67b02132af5d3fc99d03cd5f7a4dd666a3947451d11218e6acc6eb5e2526f012481106cc13453839719 SHA512 21944cd8e3a481b514509e73ae3f62722fe7ed380d37ea0c25f8fbdeba79174dd52ff65d898838da5df4197894b74e00f45d47489418e978753b4e55c7e623e7 DIST windows_x86_64_msvc-0.52.6.crate 832564 BLAKE2B 8e9a3044654c6de99a9153e7cacd575474e7a8a3d883c67b02132af5d3fc99d03cd5f7a4dd666a3947451d11218e6acc6eb5e2526f012481106cc13453839719 SHA512 21944cd8e3a481b514509e73ae3f62722fe7ed380d37ea0c25f8fbdeba79174dd52ff65d898838da5df4197894b74e00f45d47489418e978753b4e55c7e623e7
DIST winnow-0.7.14.crate 184718 BLAKE2B 6bff099d199831a72ff677db3e4de2feaa5a0b6aad782051c9af629459faebcd131518e20d6bb8f3f7f44b708284e6ba54f2ad7e0811bc0bf1df89899ff561c1 SHA512 ffa96e23707d87d5bf0f0e0c8aefbbbe4e3d2219fa5fd6a1535cb3c7b049a8481ef6f9f9fd69c78be855f36b242476f3b4462f2536925d48953afebe00bb50cb
DIST zerocopy-0.8.27.crate 252663 BLAKE2B bef5142d18ae053a542d3a481e5ed3594ee73f9d89eb82224c115701e38245e87ba9cfddd15812fbae5c2486ad46c11481ee722a3c3832a2540a43f84f6dce7e SHA512 f3f8d298b3a56d0eb3061207d069f34302e1dfb61e6b3ab2a9c8d0656b5da807ebd70310ddf818fbb40547597183e09be77c07c4b665690af66f27a9cf96a1df
DIST zerocopy-derive-0.8.27.crate 89827 BLAKE2B ace5abe8aca7cdc22ab66826e7e244b89d84adf495186eaa2714d6c521403e2fd84b56259eed6d2a6ad9800e164021dadfcdf4c80ad8a8b7eb0dd7fe799e9749 SHA512 9fd0b4f900e6ea7c92998b7297deafa84870e7e57d09225ae3910894358da9f405925fed88d2528f52caf5a1f6e32dd75bfa18ed3a7f9fee75bfa88c0f23e451
DIST zeroize-1.8.1.crate 20029 BLAKE2B 092eba034cd35ec47290020e0c2b213177ff5dbe14ab9e7f0b4ef3cb1ecbc42fbec2b951414e26ab00bc65aaddc2c93eddd5a1963b27c6cd613ac71c65d5cc24 SHA512 dd40ebe98b98fd742608d4066b5ab66caba94b2e679428fcaff9fe547d8cd6ff2360dc85d671ee9183e32fb79cb554d00d6aef9eb8f3d8ad0ec92d0435aa4ebe DIST zeroize-1.8.1.crate 20029 BLAKE2B 092eba034cd35ec47290020e0c2b213177ff5dbe14ab9e7f0b4ef3cb1ecbc42fbec2b951414e26ab00bc65aaddc2c93eddd5a1963b27c6cd613ac71c65d5cc24 SHA512 dd40ebe98b98fd742608d4066b5ab66caba94b2e679428fcaff9fe547d8cd6ff2360dc85d671ee9183e32fb79cb554d00d6aef9eb8f3d8ad0ec92d0435aa4ebe
DIST zeroize_derive-1.4.2.crate 11141 BLAKE2B a40add656369a3a40d5b5f3397a77a1e9f803d4b8ae5b7d51c9f2ebb332a289b3c1ea528655806a26998e081a1cc9f4b07828664542de8d8d2619faf079d25c5 SHA512 d6966b024ce5e265c93e7056659ccbb97bbf6baa30f759fd96dc4391a6487426637f61f0a2713b6160019d778cf7d8ff1f25bb33d6c4f4585b990baae418b226 DIST zeroize_derive-1.4.2.crate 11141 BLAKE2B a40add656369a3a40d5b5f3397a77a1e9f803d4b8ae5b7d51c9f2ebb332a289b3c1ea528655806a26998e081a1cc9f4b07828664542de8d8d2619faf079d25c5 SHA512 d6966b024ce5e265c93e7056659ccbb97bbf6baa30f759fd96dc4391a6487426637f61f0a2713b6160019d778cf7d8ff1f25bb33d6c4f4585b990baae418b226

View File

@@ -1,23 +1,30 @@
# Copyright 1999-2025 Gentoo Authors # Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2 # Distributed under the terms of the GNU General Public License v2
EAPI=8 EAPI=8
CRATES=" CRATES="
aho-corasick@1.1.3 aho-corasick@1.1.3
android_system_properties@0.1.5
anstream@0.6.15 anstream@0.6.15
anstyle-parse@0.2.5 anstyle-parse@0.2.5
anstyle-query@1.1.1 anstyle-query@1.1.1
anstyle-wincon@3.0.4 anstyle-wincon@3.0.4
anstyle@1.0.8 anstyle@1.0.8
anyhow@1.0.89 anyhow@1.0.89
bindgen@0.69.5 ascii@1.1.0
autocfg@1.5.0
bindgen@0.72.1
bitfield@0.14.0 bitfield@0.14.0
bitflags@1.3.2 bitflags@1.3.2
bitflags@2.6.0 bitflags@2.11.0
cc@1.1.28 bumpalo@3.19.1
cc@1.2.55
cexpr@0.6.0 cexpr@0.6.0
cfg-if@1.0.0 cfg-if@1.0.0
cfg_aliases@0.2.1
chrono@0.4.43
chunked_transfer@1.5.0
clang-sys@1.8.1 clang-sys@1.8.1
clap@4.5.20 clap@4.5.20
clap_builder@4.5.20 clap_builder@4.5.20
@@ -25,55 +32,103 @@ CRATES="
clap_derive@4.5.18 clap_derive@4.5.18
clap_lex@0.7.2 clap_lex@0.7.2
colorchoice@1.0.2 colorchoice@1.0.2
core-foundation-sys@0.8.7
crossterm@0.28.1
either@1.13.0 either@1.13.0
env_logger@0.10.2 env_logger@0.10.2
errno-dragonfly@0.1.2 equivalent@1.0.2
errno@0.2.8
errno@0.3.9 errno@0.3.9
fiemap@0.2.0
find-msvc-tools@0.1.9
fuser@0.17.0
getrandom@0.2.17
glob@0.3.1 glob@0.3.1
hashbrown@0.16.1
heck@0.5.0 heck@0.5.0
home@0.5.9 httpdate@1.0.3
iana-time-zone-haiku@0.1.2
iana-time-zone@0.1.65
indexmap@2.13.0
is_terminal_polyfill@1.70.1 is_terminal_polyfill@1.70.1
itertools@0.12.1 itertools@0.12.1
lazy_static@1.5.0 itoa@1.0.17
lazycell@1.3.0 js-sys@0.3.85
libc@0.2.159 libc@0.2.180
libloading@0.8.5 libloading@0.8.5
libudev-sys@0.1.4 libudev-sys@0.1.4
linux-raw-sys@0.4.14 linux-raw-sys@0.4.14
lock_api@0.4.14
log@0.4.22 log@0.4.22
memchr@2.7.4 memchr@2.7.4
memoffset@0.9.1
minimal-lexical@0.2.1 minimal-lexical@0.2.1
mio@1.1.1
nix@0.30.1
nom@7.1.3 nom@7.1.3
num-traits@0.2.19
num_enum@0.7.5
num_enum_derive@0.7.5
once_cell@1.20.2 once_cell@1.20.2
owo-colors@4.1.0 owo-colors@4.1.0
page_size@0.6.0
parking_lot@0.12.5
parking_lot_core@0.9.12
paste@1.0.15 paste@1.0.15
pkg-config@0.3.31 pkg-config@0.3.31
prettyplease@0.2.22 prettyplease@0.2.22
proc-macro-crate@3.4.0
proc-macro2@1.0.87 proc-macro2@1.0.87
quote@1.0.37 quote@1.0.37
redox_syscall@0.5.18
ref-cast-impl@1.0.25
ref-cast@1.0.25
regex-automata@0.4.8 regex-automata@0.4.8
regex-syntax@0.8.5 regex-syntax@0.8.5
regex@1.11.0 regex@1.11.0
rustc-hash@1.1.0 rustc-hash@2.1.1
rustix@0.38.37 rustix@0.38.37
rustversion@1.0.17 rustversion@1.0.17
ryu@1.0.22
scopeguard@1.2.0
serde@1.0.228
serde_core@1.0.228
serde_derive@1.0.228
serde_json@1.0.143
shlex@1.3.0 shlex@1.3.0
signal-hook-mio@0.2.5
signal-hook-registry@1.4.8
signal-hook@0.3.18
smallvec@1.15.1
strsim@0.11.1 strsim@0.11.1
strum@0.26.3 strum@0.26.3
strum_macros@0.26.4 strum_macros@0.26.4
syn@2.0.79 syn@2.0.87
terminal_size@0.4.0 terminal_size@0.4.0
tiny_http@0.12.0
toml_datetime@0.7.5+spec-1.1.0
toml_edit@0.23.10+spec-1.0.0
toml_parser@1.0.9+spec-1.1.0
udev@0.7.0 udev@0.7.0
unicode-ident@1.0.13 unicode-ident@1.0.13
utf8parse@0.2.2 utf8parse@0.2.2
uuid@1.10.0 uuid@1.10.0
which@4.4.2 wasi@0.11.1+wasi-snapshot-preview1
wasm-bindgen-macro-support@0.2.108
wasm-bindgen-macro@0.2.108
wasm-bindgen-shared@0.2.108
wasm-bindgen@0.2.108
winapi-i686-pc-windows-gnu@0.4.0 winapi-i686-pc-windows-gnu@0.4.0
winapi-x86_64-pc-windows-gnu@0.4.0 winapi-x86_64-pc-windows-gnu@0.4.0
winapi@0.3.9 winapi@0.3.9
windows-core@0.62.2
windows-implement@0.60.2
windows-interface@0.59.3
windows-link@0.2.1
windows-result@0.4.1
windows-strings@0.5.1
windows-sys@0.52.0 windows-sys@0.52.0
windows-sys@0.59.0 windows-sys@0.59.0
windows-sys@0.61.2
windows-targets@0.52.6 windows-targets@0.52.6
windows_aarch64_gnullvm@0.52.6 windows_aarch64_gnullvm@0.52.6
windows_aarch64_msvc@0.52.6 windows_aarch64_msvc@0.52.6
@@ -83,16 +138,19 @@ CRATES="
windows_x86_64_gnu@0.52.6 windows_x86_64_gnu@0.52.6
windows_x86_64_gnullvm@0.52.6 windows_x86_64_gnullvm@0.52.6
windows_x86_64_msvc@0.52.6 windows_x86_64_msvc@0.52.6
winnow@0.7.14
zerocopy-derive@0.8.27
zerocopy@0.8.27
zeroize@1.8.1 zeroize@1.8.1
zeroize_derive@1.4.2 zeroize_derive@1.4.2
" "
LLVM_COMPAT=( {17..20} ) LLVM_COMPAT=( {17..21} )
PYTHON_COMPAT=( python3_{11..14} ) PYTHON_COMPAT=( python3_{11..14} )
RUST_MIN_VER="1.77.0" RUST_MIN_VER="1.77.0"
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kentoverstreet.asc VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kentoverstreet.asc
inherit cargo flag-o-matic llvm-r1 python-any-r1 shell-completion toolchain-funcs unpacker verify-sig inherit cargo flag-o-matic llvm-r1 python-any-r1 shell-completion sysroot toolchain-funcs unpacker verify-sig
DESCRIPTION="Tools for bcachefs" DESCRIPTION="Tools for bcachefs"
HOMEPAGE="https://bcachefs.org/" HOMEPAGE="https://bcachefs.org/"
@@ -123,9 +181,9 @@ DEPEND="
dev-libs/userspace-rcu:= dev-libs/userspace-rcu:=
sys-apps/keyutils:= sys-apps/keyutils:=
sys-apps/util-linux sys-apps/util-linux
sys-libs/zlib virtual/zlib:=
virtual/udev virtual/udev
fuse? ( >=sys-fs/fuse-3.7.0 ) fuse? ( >=sys-fs/fuse-3.7.0:3= )
" "
RDEPEND="${DEPEND}" RDEPEND="${DEPEND}"
@@ -195,14 +253,13 @@ src_compile() {
default default
# This version mangles the symbolic link, # Recent versions mangle the 'bcachefs' symbolic link, work around it.
# please check if this can be removed before bumping [[ -e bcachefs ]] && die "bcachefs symlink is valid, please remove workaround"
rm "${S}"/bcachefs ln -rsf target/release/bcachefs bcachefs || die
ln -s "${S}"/target/release/bcachefs bcachefs
local shell local shell
for shell in bash fish zsh; do for shell in bash fish zsh; do
./bcachefs completions ${shell} > ${shell}.completion || die sysroot_try_run_prefixed ./bcachefs completions ${shell} > ${shell}.completion || die
done done
} }

View File

@@ -5,14 +5,6 @@
<email>kangie@gentoo.org</email> <email>kangie@gentoo.org</email>
<name>Matt Jolly</name> <name>Matt Jolly</name>
</maintainer> </maintainer>
<maintainer type="person" proxied="yes">
<email>csfore@posteo.net</email>
<name>Christopher Fore</name>
</maintainer>
<maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
<use> <use>
<flag name="fuse">Enable bcachefs FUSE support (experimental!)</flag> <flag name="fuse">Enable bcachefs FUSE support (experimental!)</flag>
</use> </use>

View File

@@ -1,10 +1,2 @@
AUX 0001-Add-Gentoo-kernel-config-search-path.patch 1014 BLAKE2B c715bba0033ce2c9bc65e6423413a3bd5da7fab63cc3585f497557bde07548d45b4efdd8a90ae0caa110da59e1c9d6a1d79103d1d0c09326bc3ac362e6d3c27b SHA512 e7e0821438e9f146ac4c55f210728c2c858c5b78891884e4d69a74c3fac4c4e2f419ce45d7968cceb9d5407d52dac0020c6d7850fdfea31595826d00531aed83 DIST booster-0.12_p20251115-vendor.tar.xz 2103956 BLAKE2B 349a9e239ecce3a058f85b57fc8599fe803d2be58ccd9eaddc337e75420dd048cb6e70c7b2aef5360414257622d64a85242bb6f9f50746038912663537318c33 SHA512 e1eb793cfb29612655b36dfb51e395b0ae3907628e4a308a6b3fd65d4fb02e4d64ab1c12d65b72de296d96b031823a72c278c6ace3fde43363ee7938413177ea
AUX booster.yaml 477 BLAKE2B 6107c1a393a1ac87223850a96de96edf82ef5db7a13efdda3a50f996500f71f9c8b72d68abeaf05e1ef8d68fb9723917a37089e7cef4eb935d179603c4ec9a21 SHA512 9a7882601238bbf5d8c7bb9f8917c0535c52a83b3fb775049331cb9d11a61f0ec84904db4af2e1fdb9ed3009cbfa1848b402fba0cc0b7e281e43858d5c00acdc DIST booster-0.12_p20251115.tar.gz 116506 BLAKE2B d6ec137e27a93a4260ee9616912373fac3a7a343d47996061f9a6fa08aeb09531580d81baad54107f83a38f36a4225eec01cd4ed1e3d39fae7d05cd4504f33be SHA512 098f94788991f573c50c7760db064616267949f8456661ff8deb6250fcd30d631223f708e96b178cbd14d7fa42faf9324da44acf090f488ef115ffd8f958f5ef
AUX installkernel-52-booster.install 886 BLAKE2B 55992d5661ddb4506062f79de128542e524b59ace2173b62bb8b6c9fe418a34829d5a619ac106d9a8a9a223a0293cd635fb10ee8063eebf1f5c7cfe61b6ddc51 SHA512 5876ef6ff2d57beb4c2be47d400fa23aafcdf10afb50f6b1e988404696980abd6d410167897c8e67a4a6e962cf300cc5914fde7a0de3e6487c1db5e277ea60b7
AUX kernel-install-52-booster.install 591 BLAKE2B 82bafd1474f223911858266722f84eecd9792249b583c994d45069cdd007d1b1bdc5bffceb50735e05e92d9d8423d8872112afc51c04a05846faf00088cd83c4 SHA512 e5b6f2a84d204154a602adc505bc1ad40121e28d3ec81c62c090cae7dd8628cef99fbf3091df2022e479e808367c3bb8c58705ce32bad408ce874e5cb94f4e46
DIST booster-0.11-vendor.tar.xz 1919268 BLAKE2B 8f29b68d15595d8995fff13fe1f77bb7ea9bdb556c5ba7c096a12539b2fcfd05cbd7ed12a6dde6d1977096b5d7de7bd5569b27951a28b9be908d71d41eaae5e6 SHA512 cd1f50166b22bb7e1524e113e63dcc9fe25b8bbf36a6fda7f0e6f86b7706b4c6666bfa48aa9597fa3b94bd82851d41cfe1ec48338829855fe490d54a6df3b53c
DIST booster-0.11.tar.gz 113332 BLAKE2B 55969cd75fea79df20b3778bbd295b9d69284a04d42a5cfa0ac8128772b37c26a76f68bf2fe587f7d98670a13741a95647ef736e0baf3cc3e09a75952c021ab4 SHA512 fbccb75b57d38696d4e81f0c587c6c456270290d4867b1e5028363beff9f0b08770719e0fcc991bd6c751fe48fdd8d2aee262355b8691caeb6ee702d6cccb7a0
DIST booster-0.11_p20240709-vendor.tar.xz 1951976 BLAKE2B 9091ebb47a93d266b6542097074a72757f7e6f5520a799dbc2dc97327af54c27472dab6bab1b186fde8ec28373fb2ab350a20321b4657d104a0f51bb100cfb78 SHA512 b73ee71583287ce58019432d8cbcc5e3c5c834b8571982273cac07e21b4ec99b45f1195957850c9b039b314cee508cace9154f97942f7bc9d2ffabc8897b7931
DIST booster-0.11_p20240709.tar.gz 116998 BLAKE2B 0c2a5eb06761a4d1ccaf73028179164936714b8bfb0c4f614b6fd58b7052d567b1a1a7215ce70da8dca9025d0984c4bd2b721e9406a7ef9799d4b222e3cf1cfd SHA512 381ab381e9a44eb3de7ea25aa65969264fdb8c42aa0dcdbf9edd247ca8a0d340288b08b906fd6a4be2d4978a68a0057bda88e726edc87d6d02d46d7c56c7f3ef
EBUILD booster-0.11.ebuild 1342 BLAKE2B 1979e497e1f5c19fa1d425feb73d0343d74cc12ecc157d513f988078acc3dec5324bb899079c2a7c30297faca11c93de753669ab57af76b9c74ec43e4beb644d SHA512 fadb5acad095be0c2b756a9d5778a8b400c5a35d94280c9d59691ba489aab933201cba129898aaefa6c632977db4482dfe32abe6be458c2a57297772af66dd58
EBUILD booster-0.11_p20240709-r1.ebuild 1578 BLAKE2B fc05458a1ef0a3954383ed131bd7ca02d10576a8cc24554cf0687dc507d3ee4f02293b3e45e4d54673e8ed676f5fc1422c9f7ad75281c2c5732471ec50465f40 SHA512 ba156afe9896759ad7e9cb1539f5a631d192d8a316fdb71f4decbc41afb99371caf57d23c0aa7d2dd7986f87e7e850bf94a744d30207633665bfd7b8794973ab

View File

@@ -1,55 +0,0 @@
# Copyright 2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit go-module
DESCRIPTION="Fast and secure initramfs generator"
HOMEPAGE="https://github.com/anatol/booster"
SRC_URI="https://github.com/anatol/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
https://git.millerson.name/alex/gentoo-artifacts/releases/download/${P}-vendor/${P}-vendor.tar.xz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64"
IUSE="kernel-install installkernel"
DEPEND="kernel-install? (
|| (
sys-apps/systemd-utils
sys-apps/systemd
)
)
installkernel? ( sys-kernel/installkernel )
"
RDEPEND="${DEPEND}"
BDEPEND=""
src_compile() {
cd ${S}/generator && ego build
cd ${S}/init && ego build
}
src_install() {
insinto /etc
newins "${FILESDIR}/${PN}.yaml" ${PN}.yaml
if use installkernel; then
# Install the kernel preinst.d hook
exeinto /usr/lib/kernel/preinst.d
newexe "${FILESDIR}/installkernel-52-booster.install" 52-booster.install
fi
if use kernel-install; then
exeinto /usr/lib/kernel/install.d
newexe "${FILESDIR}/kernel-install-52-booster.install" 52-booster.install
fi
exeinto /usr/lib/${PN}
doexe init/init
newbin generator/generator ${PN}
default
}

View File

@@ -1,65 +0,0 @@
# Copyright 2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit go-module
EGIT_COMMIT=276a3efc4336e866e3944359ecd86658d6354eb9
DESCRIPTION="Fast and secure initramfs generator"
HOMEPAGE="https://github.com/anatol/booster"
SRC_URI="https://github.com/anatol/${PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz
https://git.millerson.name/alex/gentoo-artifacts/releases/download/${P}-vendor/${P}-vendor.tar.xz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64"
IUSE="kernel-install installkernel"
DEPEND="kernel-install? (
|| (
sys-apps/systemd-utils
sys-apps/systemd
)
)
installkernel? ( sys-kernel/installkernel )
"
RDEPEND="${DEPEND}"
BDEPEND=""
S="${WORKDIR}/${PN}-${EGIT_COMMIT}"
src_prepare() {
local PATCHES=(
"${FILESDIR}/0001-Add-Gentoo-kernel-config-search-path.patch"
)
default
}
src_compile() {
cd ${S}/generator && ego build
cd ${S}/init && ego build
}
src_install() {
insinto /etc
newins "${FILESDIR}/${PN}.yaml" ${PN}.yaml
if use installkernel; then
# Install the kernel preinst.d hook
exeinto /usr/lib/kernel/preinst.d
newexe "${FILESDIR}/installkernel-52-booster.install" 52-booster.install
fi
if use kernel-install; then
exeinto /usr/lib/kernel/install.d
newexe "${FILESDIR}/kernel-install-52-booster.install" 52-booster.install
fi
exeinto /usr/lib/${PN}
doexe init/init
newbin generator/generator ${PN}
default
}

View File

@@ -0,0 +1,57 @@
# Copyright 2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit go-module
EGIT_COMMIT=a303c89133e4047f310ac79fc1a6b9b83a5049cf
DESCRIPTION="Fast and secure initramfs generator"
HOMEPAGE="https://github.com/anatol/booster"
SRC_URI="https://github.com/anatol/${PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz
https://git.millerson.name/alex/gentoo-artifacts/releases/download/${P}-vendor/${P}-vendor.tar.xz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64"
S="${WORKDIR}/${PN}-${EGIT_COMMIT}"
IUSE="kernel-install installkernel"
DEPEND="kernel-install? (
|| (
sys-apps/systemd-utils
sys-apps/systemd
)
)
installkernel? ( sys-kernel/installkernel )
"
RDEPEND="${DEPEND}"
src_compile() {
cd "${S}/generator" && ego build
cd "${S}/init" && ego build
}
src_install() {
insinto /etc
newins "${FILESDIR}/${PN}.yaml" "${PN}.yaml"
if use installkernel; then
# Install the kernel preinst.d hook
exeinto /usr/lib/kernel/preinst.d
newexe "${FILESDIR}/installkernel-52-booster.install" 52-booster.install
fi
if use kernel-install; then
exeinto /usr/lib/kernel/install.d
doexe packaging/common/50-booster.install
fi
exeinto "/usr/lib/${PN}"
doexe init/init
newbin generator/generator "${PN}"
default
}

View File

@@ -1,31 +0,0 @@
From dce149dc0ce7b13bc6a27997c0b2fe9b9591c752 Mon Sep 17 00:00:00 2001
From: Alexander Miroshnichenko <alex@millerson.name>
Date: Tue, 1 Oct 2024 15:59:44 +0300
Subject: [PATCH] Add Gentoo kernel config search path
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
---
generator/kmod.go | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/generator/kmod.go b/generator/kmod.go
index d4bf31dbed5e..46960d639cc2 100644
--- a/generator/kmod.go
+++ b/generator/kmod.go
@@ -734,6 +734,11 @@ func readCompiledInComponents(kernelVersion string) (set, error) {
debug("reading %s", f.Name())
defer f.Close()
r = f
+ } else if f, err := os.Open("/lib/modules/" + kernelVersion + "/config"); err == nil {
+ // Gentoo have config in src.
+ debug("reading %s", f.Name())
+ defer f.Close()
+ r = f
} else if f, err := os.Open("/proc/config"); err == nil {
debug("reading %s", f.Name())
defer f.Close()
--
2.39.3

View File

@@ -1,15 +0,0 @@
#!/bin/sh
COMMAND="${1:?}"
KERNEL_VERSION="${2:?}"
# Do not attempt to create initramfs if the supplied image is already a UKI
[ "${KERNEL_INSTALL_IMAGE_TYPE}" = "uki" ] && exit 0
# Only run if the initrd generator is booster
[ "${KERNEL_INSTALL_INITRD_GENERATOR}" = "booster" ] || exit 0
# only run when the COMMAND is add, and fewer than 5 arguments are passed
[ "${COMMAND}" = "add" ] && [ "${#}" -lt 5 ] || exit 0
booster "$([ "${KERNEL_INSTALL_VERBOSE}" = 1 ] && echo --verbose)" build --force --kernel-version="${KERNEL_VERSION}" "${KERNEL_INSTALL_STAGING_AREA}/initrd" || exit 1

View File

@@ -1,10 +1,10 @@
DIST gentoo-kernel-config-g16.tar.gz 5995 BLAKE2B cddb80d45169749c707d87efd186f7a981534aab2479b6c51790008ea61e9f9feac35d0d74b95dc18281e4b81771e09f259a1d9f216f5d7f806fa7cd6aeeb4d1 SHA512 f8114e645e1ab99e45703790b7e43c2fa9ee17b41a2265dccdd9187c122bf8b5a09ba918fbcf094aa899bb959f05d105ed474b75cdfa9a19c4d49fd138825647 DIST gentoo-kernel-config-g17.tar.gz 6024 BLAKE2B 53ecea1c19cc83bc3f6e13ad3b2e813999a09e2b29526115480e8ea7b870da2f4728918713f8eb0b351730b2cdd9f75e7515dc99a9b34a4079f7d15a1cd78425 SHA512 a5a78da8027492a229f54bfbcddf4e8e14304280db01d856071a9eb1ed9cd86111254498c5546a9908d617a012c914e8ded0afad5bdf28e9f237e321b9ab0f63
DIST kernel-aarch64-fedora.config.6.15.6-gentoo 294308 BLAKE2B 62b4c06f14572cf3ffda30e0d2d3f1d08d9c45b072888e2ffef7d771a88efecd84a463e9b42f6b676f13adc65ec95bfda9ebfa84cb722514bfb7212ffd08d3bc SHA512 058e072cfdfd0314e38f5b538fd82db4140844366f666ba2afd152ca584067ff53d0c63ae9a73be31dec49c69b4301b2a52e328fb4c712ef1f729d806abea950 DIST kernel-aarch64-fedora.config.6.16.9-gentoo 297074 BLAKE2B 8dcd60d7acc3b1c38deced6cfdc76892b4e4b0f682d626a39462851a0d99f63f918b9edfdd3a70e4be9cc557f06fea0713bb80f53f5bd781406834515f89a3e8 SHA512 0aa8861ae29869a349f346d431fd98e727ca5fe847f4affca0a54b1626610b7f7a97bb3da72a79b0cd1c54716babcdc18a5f4bf8e6aeb459ff329353b8d87957
DIST kernel-i686-fedora.config.6.15.6-gentoo 261602 BLAKE2B aa195831ccd61cba9c0b7fde51af25d4accc2953c1fdd35c7b007aea4e2a747ce043b0aff90f71aff1b8dd42d22aa99a387fdbcab844edb40f962a0a1d0e0e41 SHA512 4600b2244b34889cbe6014858d012c208878f1815decbc17dd618bcd2a6f37908b7b869286bd2639f6a64ef73c7c199406edd08ed13cc7f4ba9273d76373222d DIST kernel-i686-fedora.config.6.16.9-gentoo 263837 BLAKE2B de77b1dcb3f8a14d83dd0133d6a19858ef15f8e850c0c70cfd1d3dbbccfe9aa0c5de84c7259ed59dcccc78dc5be49664b8cb1b916435540a6272a0177698e5ac SHA512 80433599bf4b50dd046111c182ace71700507db0e2a80806935b93a011c0a61653c4f5dd79630bb039ed268f14ca076c4d113db7d789dd325de2f66597dd3565
DIST kernel-ppc64le-fedora.config.6.15.6-gentoo 245484 BLAKE2B b59792e2fe18e0b3ad8459bd5f7dedee3149505be63f15f5ca02b88e95eed0e4dfaf204f95a00761595092163d12967aa8a71ba13103682ded8dd9b70063412b SHA512 ca0915a6be9d0028c4f5d57a145d598fa1c2dc77700bbaeaee5116d611da476e3a3849bbe0bf84935c85946f100d1f0b824c7892651b943986cd8a4f042f5c29 DIST kernel-ppc64le-fedora.config.6.16.9-gentoo 247451 BLAKE2B 19219e8ae6988cb5e80bff24fb1bcdafc1d87d3806133f10df6ed528fd0c6aaa0627f77098f3e036f900cd008b5f3a8da8f2e34bd3e8fb4a2aa4253edc1b7b7d SHA512 3db2fcd4a77fa5f4c0d775c20c4e4fb02c918f80dae251cc68f8d29bb4dda19a240a5f3e0e33f4d6dfcd6bfe1d664a79adf3e8537d17f03a8e451bc48d1eadb7
DIST kernel-x86_64-fedora.config.6.15.6-gentoo 262707 BLAKE2B 4727bbee8f4458c2627d9f808c7baa1df2828844e92a1d6733b7ed1525e76b0b5664f224ef6e1697f949d64602fb2fcbbe913f68c9ddc008d5be01d29c7a847e SHA512 353e804ef2ee63ad8b353a52ea3c905f58668e4162bda6024a0201db1634250eaa782f30a1dd1220a6bc1df364c141167f4e2eacd221f47c022e3a23dc987afb DIST kernel-x86_64-fedora.config.6.16.9-gentoo 264962 BLAKE2B cb01a4e5248619d975bf6fbcc64d449e8e24fcb6815af0f1260b3dab48b87a78a02564c27dad549550a66b065248be0662ed45ea84409e1bb8fd72fb3902de6c SHA512 ee614bd2e1c4f73e640d86924f771c867e03f25dcd98a2312ba8d9093597e4b421a94a40c4b84c94c4e6b0ceb5d289801cd6451944765fb64bca5a2b84223583
DIST linux-6.15.tar.xz 151168812 BLAKE2B 465596c6dc053ff3a3966302a906d3edb4f7ee1ef82f8c20b96360196d3414f5b1deeafa67b8340fcdecd3617280ba9b756d7073ad15c707865e256397b4af53 SHA512 d03788ffa8d8ae1b84ef1286bb44a08fc01432e509dfec6cccae5c5a5a47201d378aec2bcd21e6f0bbd1e625b26f47780c06ee9c1cef3775358f98b160923f30 DIST linux-6.16.tar.xz 152620004 BLAKE2B 87bc4da7e89cc8265aebffea7ec6c09f711be24fee87cb1c03a264c03fd5a538d66aa806640835aa5103926e612cdfbc52d7c861d7f7065f1a8bb11d893b0921 SHA512 55a00f89ad6db6db2e26ff5dc5cfc96bbf6654e5bd5d17d2a3b944a47640367e54139716d230923187bebc6cb7756edc9511a620fb8abc6f32c50a658a734784
DIST linux-6.x-sha256sums-20250801.asc 161137 BLAKE2B b2bf0bde731b85404a19a7da414530d7d5c5df672e79d49eb8d55ba57e51d86d53d2cd5e69c7413908c06e4ec7f2a743eb022d6011e81e51faf0b33c2c8086af SHA512 927477c663091ba0003f743d8c82e3116eb95f5f7c10b0443e058fd43d3d7c1746c866e02e11f3ffcf9ccc0dcf7c6958a6ac7c869ee998e1c592893728e2b1e7 DIST linux-6.x-sha256sums-20251012.asc 176767 BLAKE2B f7e4acdfcedb9c5dde535210cf6f65acf4ebec917db08fc10a2ae5fac47b6f6389d93671ce3e0a32bb1011814a627dfe688de09200be706c76e38b8c2707301b SHA512 6994d816e509fe72393b107cca386c09398ad8bf7f4813ed2479b78b9c01eddd3b6bceabea262793dcc2b64c89c674ac84b61e1548a39216203b31ebe2ff8b5b
DIST linux-gentoo-patches-6.15.8.tar.xz 85336 BLAKE2B 04e7f012c9375fac93fdbfd97a7450ed9022110c56eff2b9b76a856d83c2dab97da983c4c577c7df3f06ec889771f772f281d0ae837b3e07dee30fec79dad110 SHA512 cc51a68444a20c4f106fc16d6f6327d40372faf77fad8e76936a50f97102736166efffc107a405cfe8124b61dbf1370095b811d0172af9003d6e6eaca4effa64 DIST linux-gentoo-patches-6.16.12.tar.xz 88116 BLAKE2B df60dd2678e852f25d7c1f5c2f75351b2100c1034095f20c1895e56f81a7fe155c6ef35103e7074c34900c48677972e93a4fca862e91a8022c7023af240fb96c SHA512 40fda7e21d467c06ddcc4e9010d7bdfbe44bf64d6086571e2c61e27ecb2b3968ba3be520c73600eec95fd602b5009d7beb6681d8abf1e10dbbee1cd1b5819329
DIST linux-hardened-v6.15.9-hardened1.patch 90401 BLAKE2B 227a8da20e051074ac40286f2355b395f57bc780c1d2b5a449e10a594cdc90107e820041f0b9659a9b247213d4a35f608269aab4baca0d10eb67f01216dd37ec SHA512 0201a13cc89d707433a88beb0eddb28fb9a00ab0c506b9356336087a0f0ada83de22421b79a16f7330d14968a457c5efbdeb735dc9a601a3f277851a20e41b3b DIST linux-hardened-v6.16.12-hardened1.patch 90419 BLAKE2B edb03015ed0dc2928b089ea1c45d9fe56a6b36c51fea442822a7342a8c3243c289961db03b0dbc98fc08cfc4c7bc4b25bbb10496aec3e5973f9dfaa04fef59b9 SHA512 4869c5a132bc652a454f922da097075e84e4462de2f39e250bb117f6ff69ce4bbb03b1cb8c684b3793983dbe366b09e453950d5f5c421c9c0b5eb14bf62a9e70
DIST patch-6.15.9.xz 730252 BLAKE2B 277dee1df9517f06060f1f20b9d6000b3ed6acc0805d0ed55acebab59e996190a8f5d819ede79b5268ebb76e0976a546dc5339a4cf72307fab12c900c3311159 SHA512 34572997debcfac374401783a95d87e7be8754b4f1f4a9f436435c18e75087c05325321d800a22c33f0c4ac379d3b8759095a2b7738807eb51656bdc49b5d382 DIST patch-6.16.12.xz 808544 BLAKE2B 0fbd9b63869a73e5f4f1ba4dab26167faaeb9c178ef7ab0b0b9e158f493929eba9b70ca8681e05cb4b2d8e8983ee8ffa4b1845ad90cbef93671868fc9fa4c989 SHA512 64079698b0ad170b99f59db0ed119eb9920e2df7887c1738434583128cec578901e31f7f6002a7f397670d4d51ff2c2ac3f414c9896de9c7ba4f55e694364c11

View File

@@ -1,392 +0,0 @@
From 73c097f81f25b59e97de37f326918bd2119ae26e Mon Sep 17 00:00:00 2001
From: Alexander Miroshnichenko <alex@millerson.name>
Date: Sun, 3 Aug 2025 19:50:52 +0300
Subject: [PATCH] bcachefs: revert 6.15 backport patches to prepare for aplying
master patches
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
---
fs/bcachefs/dirent.c | 12 +++++-
fs/bcachefs/dirent.h | 4 +-
fs/bcachefs/errcode.h | 2 -
fs/bcachefs/fs.c | 8 +---
fs/bcachefs/fsck.c | 8 ----
fs/bcachefs/inode.c | 77 ++++++++++++----------------------
fs/bcachefs/namei.c | 4 +-
fs/bcachefs/sb-errors_format.h | 4 +-
fs/bcachefs/subvolume.c | 19 ++-------
9 files changed, 46 insertions(+), 92 deletions(-)
diff --git a/fs/bcachefs/dirent.c b/fs/bcachefs/dirent.c
index 901230ca4a75..a51195088227 100644
--- a/fs/bcachefs/dirent.c
+++ b/fs/bcachefs/dirent.c
@@ -395,8 +395,8 @@ int bch2_dirent_read_target(struct btree_trans *trans, subvol_inum dir,
}
int bch2_dirent_rename(struct btree_trans *trans,
- subvol_inum src_dir, struct bch_hash_info *src_hash,
- subvol_inum dst_dir, struct bch_hash_info *dst_hash,
+ subvol_inum src_dir, struct bch_hash_info *src_hash, u64 *src_dir_i_size,
+ subvol_inum dst_dir, struct bch_hash_info *dst_hash, u64 *dst_dir_i_size,
const struct qstr *src_name, subvol_inum *src_inum, u64 *src_offset,
const struct qstr *dst_name, subvol_inum *dst_inum, u64 *dst_offset,
enum bch_rename_mode mode)
@@ -535,6 +535,14 @@ int bch2_dirent_rename(struct btree_trans *trans,
new_src->v.d_type == DT_SUBVOL)
new_src->v.d_parent_subvol = cpu_to_le32(src_dir.subvol);
+ if (old_dst.k)
+ *dst_dir_i_size -= bkey_bytes(old_dst.k);
+ *src_dir_i_size -= bkey_bytes(old_src.k);
+
+ if (mode == BCH_RENAME_EXCHANGE)
+ *src_dir_i_size += bkey_bytes(&new_src->k);
+ *dst_dir_i_size += bkey_bytes(&new_dst->k);
+
ret = bch2_trans_update(trans, &dst_iter, &new_dst->k_i, 0);
if (ret)
goto out;
diff --git a/fs/bcachefs/dirent.h b/fs/bcachefs/dirent.h
index 999b895fa28a..d3e7ae669575 100644
--- a/fs/bcachefs/dirent.h
+++ b/fs/bcachefs/dirent.h
@@ -80,8 +80,8 @@ enum bch_rename_mode {
};
int bch2_dirent_rename(struct btree_trans *,
- subvol_inum, struct bch_hash_info *,
- subvol_inum, struct bch_hash_info *,
+ subvol_inum, struct bch_hash_info *, u64 *,
+ subvol_inum, struct bch_hash_info *, u64 *,
const struct qstr *, subvol_inum *, u64 *,
const struct qstr *, subvol_inum *, u64 *,
enum bch_rename_mode);
diff --git a/fs/bcachefs/errcode.h b/fs/bcachefs/errcode.h
index 346766299cb3..d9ebffa5b3a2 100644
--- a/fs/bcachefs/errcode.h
+++ b/fs/bcachefs/errcode.h
@@ -209,8 +209,6 @@
x(EINVAL, remove_would_lose_data) \
x(EINVAL, no_resize_with_buckets_nouse) \
x(EINVAL, inode_unpack_error) \
- x(EINVAL, inode_not_unlinked) \
- x(EINVAL, inode_has_child_snapshot) \
x(EINVAL, varint_decode_error) \
x(EINVAL, erasure_coding_found_btree_node) \
x(EOPNOTSUPP, may_not_use_incompat_feature) \
diff --git a/fs/bcachefs/fs.c b/fs/bcachefs/fs.c
index 8a47ce3467e8..47f1a64c5c8d 100644
--- a/fs/bcachefs/fs.c
+++ b/fs/bcachefs/fs.c
@@ -2181,13 +2181,7 @@ static void bch2_evict_inode(struct inode *vinode)
KEY_TYPE_QUOTA_WARN);
bch2_quota_acct(c, inode->ei_qid, Q_INO, -1,
KEY_TYPE_QUOTA_WARN);
- int ret = bch2_inode_rm(c, inode_inum(inode));
- if (ret && !bch2_err_matches(ret, EROFS)) {
- bch_err_msg(c, ret, "VFS incorrectly tried to delete inode %llu:%llu",
- inode->ei_inum.subvol,
- inode->ei_inum.inum);
- bch2_sb_error_count(c, BCH_FSCK_ERR_vfs_bad_inode_rm);
- }
+ bch2_inode_rm(c, inode_inum(inode));
/*
* If we are deleting, we need it present in the vfs hash table
diff --git a/fs/bcachefs/fsck.c b/fs/bcachefs/fsck.c
index bf117f2225d8..aaf187085276 100644
--- a/fs/bcachefs/fsck.c
+++ b/fs/bcachefs/fsck.c
@@ -1183,14 +1183,6 @@ static int check_inode(struct btree_trans *trans,
ret = 0;
}
- if (fsck_err_on(S_ISDIR(u.bi_mode) && u.bi_size,
- trans, inode_dir_has_nonzero_i_size,
- "directory %llu:%u with nonzero i_size %lli",
- u.bi_inum, u.bi_snapshot, u.bi_size)) {
- u.bi_size = 0;
- do_update = true;
- }
-
ret = bch2_inode_has_child_snapshots(trans, k.k->p);
if (ret < 0)
goto err;
diff --git a/fs/bcachefs/inode.c b/fs/bcachefs/inode.c
index 845efd429d13..490b85841de9 100644
--- a/fs/bcachefs/inode.c
+++ b/fs/bcachefs/inode.c
@@ -38,7 +38,6 @@ static const char * const bch2_inode_flag_strs[] = {
#undef x
static int delete_ancestor_snapshot_inodes(struct btree_trans *, struct bpos);
-static int may_delete_deleted_inum(struct btree_trans *, subvol_inum);
static const u8 byte_table[8] = { 1, 2, 3, 4, 6, 8, 10, 13 };
@@ -1049,23 +1048,19 @@ int bch2_inode_rm(struct bch_fs *c, subvol_inum inum)
u32 snapshot;
int ret;
- ret = lockrestart_do(trans, may_delete_deleted_inum(trans, inum));
- if (ret)
- goto err2;
-
/*
* If this was a directory, there shouldn't be any real dirents left -
* but there could be whiteouts (from hash collisions) that we should
* delete:
*
- * XXX: the dirent code ideally would delete whiteouts when they're no
+ * XXX: the dirent could ideally would delete whiteouts when they're no
* longer needed
*/
ret = bch2_inode_delete_keys(trans, inum, BTREE_ID_extents) ?:
bch2_inode_delete_keys(trans, inum, BTREE_ID_xattrs) ?:
bch2_inode_delete_keys(trans, inum, BTREE_ID_dirents);
if (ret)
- goto err2;
+ goto err;
retry:
bch2_trans_begin(trans);
@@ -1347,8 +1342,10 @@ int bch2_inode_rm_snapshot(struct btree_trans *trans, u64 inum, u32 snapshot)
delete_ancestor_snapshot_inodes(trans, SPOS(0, inum, snapshot));
}
-static int may_delete_deleted_inode(struct btree_trans *trans, struct bpos pos,
- bool from_deleted_inodes)
+static int may_delete_deleted_inode(struct btree_trans *trans,
+ struct btree_iter *iter,
+ struct bpos pos,
+ bool *need_another_pass)
{
struct bch_fs *c = trans->c;
struct btree_iter inode_iter;
@@ -1363,13 +1360,11 @@ static int may_delete_deleted_inode(struct btree_trans *trans, struct bpos pos,
return ret;
ret = bkey_is_inode(k.k) ? 0 : -BCH_ERR_ENOENT_inode;
- if (fsck_err_on(from_deleted_inodes && ret,
+ if (fsck_err_on(!bkey_is_inode(k.k),
trans, deleted_inode_missing,
"nonexistent inode %llu:%u in deleted_inodes btree",
pos.offset, pos.snapshot))
goto delete;
- if (ret)
- goto out;
ret = bch2_inode_unpack(k, &inode);
if (ret)
@@ -1377,8 +1372,7 @@ static int may_delete_deleted_inode(struct btree_trans *trans, struct bpos pos,
if (S_ISDIR(inode.bi_mode)) {
ret = bch2_empty_dir_snapshot(trans, pos.offset, 0, pos.snapshot);
- if (fsck_err_on(from_deleted_inodes &&
- bch2_err_matches(ret, ENOTEMPTY),
+ if (fsck_err_on(bch2_err_matches(ret, ENOTEMPTY),
trans, deleted_inode_is_dir,
"non empty directory %llu:%u in deleted_inodes btree",
pos.offset, pos.snapshot))
@@ -1387,25 +1381,17 @@ static int may_delete_deleted_inode(struct btree_trans *trans, struct bpos pos,
goto out;
}
- ret = inode.bi_flags & BCH_INODE_unlinked ? 0 : -BCH_ERR_inode_not_unlinked;
- if (fsck_err_on(from_deleted_inodes && ret,
+ if (fsck_err_on(!(inode.bi_flags & BCH_INODE_unlinked),
trans, deleted_inode_not_unlinked,
"non-deleted inode %llu:%u in deleted_inodes btree",
pos.offset, pos.snapshot))
goto delete;
- if (ret)
- goto out;
-
- ret = !(inode.bi_flags & BCH_INODE_has_child_snapshot)
- ? 0 : -BCH_ERR_inode_has_child_snapshot;
- if (fsck_err_on(from_deleted_inodes && ret,
+ if (fsck_err_on(inode.bi_flags & BCH_INODE_has_child_snapshot,
trans, deleted_inode_has_child_snapshots,
"inode with child snapshots %llu:%u in deleted_inodes btree",
pos.offset, pos.snapshot))
goto delete;
- if (ret)
- goto out;
ret = bch2_inode_has_child_snapshots(trans, k.k->p);
if (ret < 0)
@@ -1422,28 +1408,19 @@ static int may_delete_deleted_inode(struct btree_trans *trans, struct bpos pos,
if (ret)
goto out;
}
-
- if (!from_deleted_inodes) {
- ret = bch2_trans_commit(trans, NULL, NULL, BCH_TRANS_COMMIT_no_enospc) ?:
- -BCH_ERR_inode_has_child_snapshot;
- goto out;
- }
-
goto delete;
}
- if (from_deleted_inodes) {
- if (test_bit(BCH_FS_clean_recovery, &c->flags) &&
- !fsck_err(trans, deleted_inode_but_clean,
- "filesystem marked as clean but have deleted inode %llu:%u",
- pos.offset, pos.snapshot)) {
- ret = 0;
- goto out;
- }
-
- ret = 1;
+ if (test_bit(BCH_FS_clean_recovery, &c->flags) &&
+ !fsck_err(trans, deleted_inode_but_clean,
+ "filesystem marked as clean but have deleted inode %llu:%u",
+ pos.offset, pos.snapshot)) {
+ ret = 0;
+ goto out;
}
+
+ ret = 1;
out:
fsck_err:
bch2_trans_iter_exit(trans, &inode_iter);
@@ -1454,19 +1431,12 @@ static int may_delete_deleted_inode(struct btree_trans *trans, struct bpos pos,
goto out;
}
-static int may_delete_deleted_inum(struct btree_trans *trans, subvol_inum inum)
-{
- u32 snapshot;
-
- return bch2_subvolume_get_snapshot(trans, inum.subvol, &snapshot) ?:
- may_delete_deleted_inode(trans, SPOS(0, inum.inum, snapshot), false);
-}
-
int bch2_delete_dead_inodes(struct bch_fs *c)
{
struct btree_trans *trans = bch2_trans_get(c);
+ bool need_another_pass;
int ret;
-
+again:
/*
* if we ran check_inodes() unlinked inodes will have already been
* cleaned up but the write buffer will be out of sync; therefore we
@@ -1476,6 +1446,8 @@ int bch2_delete_dead_inodes(struct bch_fs *c)
if (ret)
goto err;
+ need_another_pass = false;
+
/*
* Weird transaction restart handling here because on successful delete,
* bch2_inode_rm_snapshot() will return a nested transaction restart,
@@ -1485,7 +1457,7 @@ int bch2_delete_dead_inodes(struct bch_fs *c)
ret = for_each_btree_key_commit(trans, iter, BTREE_ID_deleted_inodes, POS_MIN,
BTREE_ITER_prefetch|BTREE_ITER_all_snapshots, k,
NULL, NULL, BCH_TRANS_COMMIT_no_enospc, ({
- ret = may_delete_deleted_inode(trans, k.k->p, true);
+ ret = may_delete_deleted_inode(trans, &iter, k.k->p, &need_another_pass);
if (ret > 0) {
bch_verbose_ratelimited(c, "deleting unlinked inode %llu:%u",
k.k->p.offset, k.k->p.snapshot);
@@ -1506,6 +1478,9 @@ int bch2_delete_dead_inodes(struct bch_fs *c)
ret;
}));
+
+ if (!ret && need_another_pass)
+ goto again;
err:
bch2_trans_put(trans);
return ret;
diff --git a/fs/bcachefs/namei.c b/fs/bcachefs/namei.c
index 413fb60cff43..9136a9097789 100644
--- a/fs/bcachefs/namei.c
+++ b/fs/bcachefs/namei.c
@@ -418,8 +418,8 @@ int bch2_rename_trans(struct btree_trans *trans,
}
ret = bch2_dirent_rename(trans,
- src_dir, &src_hash,
- dst_dir, &dst_hash,
+ src_dir, &src_hash, &src_dir_u->bi_size,
+ dst_dir, &dst_hash, &dst_dir_u->bi_size,
src_name, &src_inum, &src_offset,
dst_name, &dst_inum, &dst_offset,
mode);
diff --git a/fs/bcachefs/sb-errors_format.h b/fs/bcachefs/sb-errors_format.h
index 9387f6092fe9..4036a20c6adc 100644
--- a/fs/bcachefs/sb-errors_format.h
+++ b/fs/bcachefs/sb-errors_format.h
@@ -232,7 +232,6 @@ enum bch_fsck_flags {
x(inode_dir_multiple_links, 206, FSCK_AUTOFIX) \
x(inode_dir_missing_backpointer, 284, FSCK_AUTOFIX) \
x(inode_dir_unlinked_but_not_empty, 286, FSCK_AUTOFIX) \
- x(inode_dir_has_nonzero_i_size, 319, FSCK_AUTOFIX) \
x(inode_multiple_links_but_nlink_0, 207, FSCK_AUTOFIX) \
x(inode_wrong_backpointer, 208, FSCK_AUTOFIX) \
x(inode_wrong_nlink, 209, FSCK_AUTOFIX) \
@@ -244,7 +243,6 @@ enum bch_fsck_flags {
x(inode_parent_has_case_insensitive_not_set, 317, FSCK_AUTOFIX) \
x(vfs_inode_i_blocks_underflow, 311, FSCK_AUTOFIX) \
x(vfs_inode_i_blocks_not_zero_at_truncate, 313, FSCK_AUTOFIX) \
- x(vfs_bad_inode_rm, 320, 0) \
x(deleted_inode_but_clean, 211, FSCK_AUTOFIX) \
x(deleted_inode_missing, 212, FSCK_AUTOFIX) \
x(deleted_inode_is_dir, 213, FSCK_AUTOFIX) \
@@ -330,7 +328,7 @@ enum bch_fsck_flags {
x(dirent_stray_data_after_cf_name, 305, 0) \
x(rebalance_work_incorrectly_set, 309, FSCK_AUTOFIX) \
x(rebalance_work_incorrectly_unset, 310, FSCK_AUTOFIX) \
- x(MAX, 321, 0)
+ x(MAX, 319, 0)
enum bch_sb_error_id {
#define x(t, n, ...) BCH_FSCK_ERR_##t = n,
diff --git a/fs/bcachefs/subvolume.c b/fs/bcachefs/subvolume.c
index bc6009a71284..d0209f7658bb 100644
--- a/fs/bcachefs/subvolume.c
+++ b/fs/bcachefs/subvolume.c
@@ -6,7 +6,6 @@
#include "errcode.h"
#include "error.h"
#include "fs.h"
-#include "inode.h"
#include "recovery_passes.h"
#include "snapshot.h"
#include "subvolume.h"
@@ -114,20 +113,10 @@ static int check_subvol(struct btree_trans *trans,
"subvolume %llu points to missing subvolume root %llu:%u",
k.k->p.offset, le64_to_cpu(subvol.v->inode),
le32_to_cpu(subvol.v->snapshot))) {
- /*
- * Recreate - any contents that are still disconnected
- * will then get reattached under lost+found
- */
- bch2_inode_init_early(c, &inode);
- bch2_inode_init_late(&inode, bch2_current_time(c),
- 0, 0, S_IFDIR|0700, 0, NULL);
- inode.bi_inum = le64_to_cpu(subvol.v->inode);
- inode.bi_snapshot = le32_to_cpu(subvol.v->snapshot);
- inode.bi_subvol = k.k->p.offset;
- inode.bi_parent_subvol = le32_to_cpu(subvol.v->fs_path_parent);
- ret = __bch2_fsck_write_inode(trans, &inode);
- if (ret)
- goto err;
+ ret = bch2_subvolume_delete(trans, iter->pos.offset);
+ bch_err_msg(c, ret, "deleting subvolume %llu", iter->pos.offset);
+ ret = ret ?: -BCH_ERR_transaction_restart_nested;
+ goto err;
}
} else {
goto err;
--
2.49.1

View File

@@ -1,6 +1,6 @@
# #
# Automatically generated file; DO NOT EDIT. # Automatically generated file; DO NOT EDIT.
# Linux/x86 6.15.8-hardened2 Kernel Configuration # Linux/x86 6.16.8-hardened1 Kernel Configuration
# #
CONFIG_CC_VERSION_TEXT="gcc (Gentoo Hardened 14.3.0 p8) 14.3.0" CONFIG_CC_VERSION_TEXT="gcc (Gentoo Hardened 14.3.0 p8) 14.3.0"
CONFIG_CC_IS_GCC=y CONFIG_CC_IS_GCC=y
@@ -11,8 +11,8 @@ CONFIG_AS_VERSION=24400
CONFIG_LD_IS_BFD=y CONFIG_LD_IS_BFD=y
CONFIG_LD_VERSION=24400 CONFIG_LD_VERSION=24400
CONFIG_LLD_VERSION=0 CONFIG_LLD_VERSION=0
CONFIG_RUSTC_VERSION=0 CONFIG_RUSTC_VERSION=108800
CONFIG_RUSTC_LLVM_VERSION=0 CONFIG_RUSTC_LLVM_VERSION=200107
CONFIG_CC_CAN_LINK=y CONFIG_CC_CAN_LINK=y
CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y
CONFIG_CC_HAS_ASM_GOTO_TIED_OUTPUT=y CONFIG_CC_HAS_ASM_GOTO_TIED_OUTPUT=y
@@ -20,6 +20,9 @@ CONFIG_TOOLS_SUPPORT_RELR=y
CONFIG_CC_HAS_ASM_INLINE=y CONFIG_CC_HAS_ASM_INLINE=y
CONFIG_CC_HAS_NO_PROFILE_FN_ATTR=y CONFIG_CC_HAS_NO_PROFILE_FN_ATTR=y
CONFIG_LD_CAN_USE_KEEP_IN_OVERLAY=y CONFIG_LD_CAN_USE_KEEP_IN_OVERLAY=y
CONFIG_RUSTC_HAS_COERCE_POINTEE=y
CONFIG_RUSTC_HAS_SPAN_FILE=y
CONFIG_RUSTC_HAS_UNNECESSARY_TRANSMUTES=y
CONFIG_PAHOLE_VERSION=130 CONFIG_PAHOLE_VERSION=130
CONFIG_IRQ_WORK=y CONFIG_IRQ_WORK=y
CONFIG_BUILDTIME_TABLE_SORT=y CONFIG_BUILDTIME_TABLE_SORT=y
@@ -57,7 +60,6 @@ CONFIG_POSIX_MQUEUE=y
CONFIG_POSIX_MQUEUE_SYSCTL=y CONFIG_POSIX_MQUEUE_SYSCTL=y
CONFIG_WATCH_QUEUE=y CONFIG_WATCH_QUEUE=y
CONFIG_CROSS_MEMORY_ATTACH=y CONFIG_CROSS_MEMORY_ATTACH=y
# CONFIG_USELIB is not set
CONFIG_AUDIT=y CONFIG_AUDIT=y
CONFIG_HAVE_ARCH_AUDITSYSCALL=y CONFIG_HAVE_ARCH_AUDITSYSCALL=y
CONFIG_AUDITSYSCALL=y CONFIG_AUDITSYSCALL=y
@@ -271,6 +273,7 @@ CONFIG_ELF_CORE=y
CONFIG_PCSPKR_PLATFORM=y CONFIG_PCSPKR_PLATFORM=y
CONFIG_FUTEX=y CONFIG_FUTEX=y
CONFIG_FUTEX_PI=y CONFIG_FUTEX_PI=y
CONFIG_FUTEX_MPOL=y
CONFIG_EPOLL=y CONFIG_EPOLL=y
CONFIG_SIGNALFD=y CONFIG_SIGNALFD=y
CONFIG_TIMERFD=y CONFIG_TIMERFD=y
@@ -307,6 +310,7 @@ CONFIG_TRACEPOINTS=y
# #
# CONFIG_KEXEC is not set # CONFIG_KEXEC is not set
# CONFIG_KEXEC_FILE is not set # CONFIG_KEXEC_FILE is not set
# CONFIG_KEXEC_HANDOVER is not set
# end of Kexec and crash features # end of Kexec and crash features
# end of General setup # end of General setup
@@ -335,7 +339,7 @@ CONFIG_HAVE_INTEL_TXT=y
CONFIG_X86_64_SMP=y CONFIG_X86_64_SMP=y
CONFIG_ARCH_SUPPORTS_UPROBES=y CONFIG_ARCH_SUPPORTS_UPROBES=y
CONFIG_FIX_EARLYCON_MEM=y CONFIG_FIX_EARLYCON_MEM=y
CONFIG_PGTABLE_LEVELS=4 CONFIG_PGTABLE_LEVELS=5
# #
# Processor type and features # Processor type and features
@@ -345,7 +349,6 @@ CONFIG_X86_X2APIC=y
CONFIG_X86_POSTED_MSI=y CONFIG_X86_POSTED_MSI=y
CONFIG_X86_MPPARSE=y CONFIG_X86_MPPARSE=y
CONFIG_X86_CPU_RESCTRL=y CONFIG_X86_CPU_RESCTRL=y
CONFIG_RESCTRL_FS_PSEUDO_LOCK=y
CONFIG_X86_FRED=y CONFIG_X86_FRED=y
# CONFIG_X86_EXTENDED_PLATFORM is not set # CONFIG_X86_EXTENDED_PLATFORM is not set
CONFIG_X86_INTEL_LPSS=y CONFIG_X86_INTEL_LPSS=y
@@ -368,6 +371,8 @@ CONFIG_PARAVIRT_CLOCK=y
# CONFIG_JAILHOUSE_GUEST is not set # CONFIG_JAILHOUSE_GUEST is not set
# CONFIG_ACRN_GUEST is not set # CONFIG_ACRN_GUEST is not set
# CONFIG_INTEL_TDX_GUEST is not set # CONFIG_INTEL_TDX_GUEST is not set
CONFIG_CC_HAS_MARCH_NATIVE=y
# CONFIG_X86_NATIVE_CPU is not set
CONFIG_X86_INTERNODE_CACHE_SHIFT=6 CONFIG_X86_INTERNODE_CACHE_SHIFT=6
CONFIG_X86_L1_CACHE_SHIFT=6 CONFIG_X86_L1_CACHE_SHIFT=6
CONFIG_X86_TSC=y CONFIG_X86_TSC=y
@@ -426,7 +431,6 @@ CONFIG_MICROCODE=y
# CONFIG_MICROCODE_LATE_LOADING is not set # CONFIG_MICROCODE_LATE_LOADING is not set
CONFIG_X86_MSR=m CONFIG_X86_MSR=m
CONFIG_X86_CPUID=m CONFIG_X86_CPUID=m
# CONFIG_X86_5LEVEL is not set
CONFIG_X86_DIRECT_GBPAGES=y CONFIG_X86_DIRECT_GBPAGES=y
# CONFIG_X86_CPA_STATISTICS is not set # CONFIG_X86_CPA_STATISTICS is not set
# CONFIG_AMD_MEM_ENCRYPT is not set # CONFIG_AMD_MEM_ENCRYPT is not set
@@ -476,6 +480,7 @@ CONFIG_ARCH_SUPPORTS_KEXEC_SIG=y
CONFIG_ARCH_SUPPORTS_KEXEC_SIG_FORCE=y CONFIG_ARCH_SUPPORTS_KEXEC_SIG_FORCE=y
CONFIG_ARCH_SUPPORTS_KEXEC_BZIMAGE_VERIFY_SIG=y CONFIG_ARCH_SUPPORTS_KEXEC_BZIMAGE_VERIFY_SIG=y
CONFIG_ARCH_SUPPORTS_KEXEC_JUMP=y CONFIG_ARCH_SUPPORTS_KEXEC_JUMP=y
CONFIG_ARCH_SUPPORTS_KEXEC_HANDOVER=y
CONFIG_ARCH_SUPPORTS_CRASH_DUMP=y CONFIG_ARCH_SUPPORTS_CRASH_DUMP=y
CONFIG_ARCH_DEFAULT_CRASH_DUMP=y CONFIG_ARCH_DEFAULT_CRASH_DUMP=y
CONFIG_ARCH_SUPPORTS_CRASH_HOTPLUG=y CONFIG_ARCH_SUPPORTS_CRASH_HOTPLUG=y
@@ -484,7 +489,6 @@ CONFIG_RELOCATABLE=y
CONFIG_RANDOMIZE_BASE=y CONFIG_RANDOMIZE_BASE=y
CONFIG_X86_NEED_RELOCS=y CONFIG_X86_NEED_RELOCS=y
CONFIG_PHYSICAL_ALIGN=0x1000000 CONFIG_PHYSICAL_ALIGN=0x1000000
CONFIG_DYNAMIC_MEMORY_LAYOUT=y
CONFIG_RANDOMIZE_MEMORY=y CONFIG_RANDOMIZE_MEMORY=y
CONFIG_RANDOMIZE_MEMORY_PHYSICAL_PADDING=0xa CONFIG_RANDOMIZE_MEMORY_PHYSICAL_PADDING=0xa
CONFIG_HOTPLUG_CPU=y CONFIG_HOTPLUG_CPU=y
@@ -536,6 +540,7 @@ CONFIG_MITIGATION_SRBDS=y
CONFIG_MITIGATION_SSB=y CONFIG_MITIGATION_SSB=y
CONFIG_MITIGATION_ITS=y CONFIG_MITIGATION_ITS=y
CONFIG_MITIGATION_TSA=y CONFIG_MITIGATION_TSA=y
CONFIG_MITIGATION_VMSCAPE=y
CONFIG_ARCH_HAS_ADD_PAGES=y CONFIG_ARCH_HAS_ADD_PAGES=y
# #
@@ -621,6 +626,7 @@ CONFIG_ACPI_CONFIGFS=m
# CONFIG_ACPI_PFRUT is not set # CONFIG_ACPI_PFRUT is not set
CONFIG_ACPI_PCC=y CONFIG_ACPI_PCC=y
# CONFIG_ACPI_FFH is not set # CONFIG_ACPI_FFH is not set
CONFIG_ACPI_MRRM=y
CONFIG_PMIC_OPREGION=y CONFIG_PMIC_OPREGION=y
CONFIG_ACPI_VIOT=y CONFIG_ACPI_VIOT=y
CONFIG_ACPI_PRMT=y CONFIG_ACPI_PRMT=y
@@ -760,16 +766,12 @@ CONFIG_X86_DISABLED_FEATURE_VME=y
CONFIG_X86_DISABLED_FEATURE_K6_MTRR=y CONFIG_X86_DISABLED_FEATURE_K6_MTRR=y
CONFIG_X86_DISABLED_FEATURE_CYRIX_ARR=y CONFIG_X86_DISABLED_FEATURE_CYRIX_ARR=y
CONFIG_X86_DISABLED_FEATURE_CENTAUR_MCR=y CONFIG_X86_DISABLED_FEATURE_CENTAUR_MCR=y
CONFIG_X86_DISABLED_FEATURE_LA57=y
CONFIG_X86_DISABLED_FEATURE_LAM=y CONFIG_X86_DISABLED_FEATURE_LAM=y
CONFIG_X86_DISABLED_FEATURE_SGX=y CONFIG_X86_DISABLED_FEATURE_SGX=y
CONFIG_X86_DISABLED_FEATURE_XENPV=y CONFIG_X86_DISABLED_FEATURE_XENPV=y
CONFIG_X86_DISABLED_FEATURE_TDX_GUEST=y CONFIG_X86_DISABLED_FEATURE_TDX_GUEST=y
CONFIG_X86_DISABLED_FEATURE_USER_SHSTK=y CONFIG_X86_DISABLED_FEATURE_USER_SHSTK=y
CONFIG_AS_AVX512=y CONFIG_AS_AVX512=y
CONFIG_AS_SHA1_NI=y
CONFIG_AS_SHA256_NI=y
CONFIG_AS_TPAUSE=y
CONFIG_AS_GFNI=y CONFIG_AS_GFNI=y
CONFIG_AS_VAES=y CONFIG_AS_VAES=y
CONFIG_AS_VPCLMULQDQ=y CONFIG_AS_VPCLMULQDQ=y
@@ -836,6 +838,7 @@ CONFIG_HAVE_ARCH_JUMP_LABEL_RELATIVE=y
CONFIG_MMU_GATHER_TABLE_FREE=y CONFIG_MMU_GATHER_TABLE_FREE=y
CONFIG_MMU_GATHER_RCU_TABLE_FREE=y CONFIG_MMU_GATHER_RCU_TABLE_FREE=y
CONFIG_MMU_GATHER_MERGE_VMAS=y CONFIG_MMU_GATHER_MERGE_VMAS=y
CONFIG_ARCH_WANT_IRQS_OFF_ACTIVATE_MM=y
CONFIG_MMU_LAZY_TLB_REFCOUNT=y CONFIG_MMU_LAZY_TLB_REFCOUNT=y
CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y
CONFIG_ARCH_HAVE_EXTRA_ELF_NOTES=y CONFIG_ARCH_HAVE_EXTRA_ELF_NOTES=y
@@ -912,6 +915,7 @@ CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y
CONFIG_STRICT_KERNEL_RWX=y CONFIG_STRICT_KERNEL_RWX=y
CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y
CONFIG_STRICT_MODULE_RWX=y CONFIG_STRICT_MODULE_RWX=y
CONFIG_ARCH_HAS_CPU_RESCTRL=y
CONFIG_HAVE_ARCH_PREL32_RELOCATIONS=y CONFIG_HAVE_ARCH_PREL32_RELOCATIONS=y
CONFIG_ARCH_USE_MEMREMAP_PROT=y CONFIG_ARCH_USE_MEMREMAP_PROT=y
CONFIG_LOCK_EVENT_COUNTS=y CONFIG_LOCK_EVENT_COUNTS=y
@@ -1033,8 +1037,6 @@ CONFIG_EFI_PARTITION=y
# CONFIG_CMDLINE_PARTITION is not set # CONFIG_CMDLINE_PARTITION is not set
# end of Partition Types # end of Partition Types
CONFIG_BLK_MQ_PCI=y
CONFIG_BLK_MQ_VIRTIO=y
CONFIG_BLK_PM=y CONFIG_BLK_PM=y
CONFIG_BLOCK_HOLDER_DEPRECATED=y CONFIG_BLOCK_HOLDER_DEPRECATED=y
CONFIG_BLK_MQ_STACKING=y CONFIG_BLK_MQ_STACKING=y
@@ -1180,6 +1182,7 @@ CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y
CONFIG_USE_PERCPU_NUMA_NODE_ID=y CONFIG_USE_PERCPU_NUMA_NODE_ID=y
CONFIG_HAVE_SETUP_PER_CPU_AREA=y CONFIG_HAVE_SETUP_PER_CPU_AREA=y
# CONFIG_CMA is not set # CONFIG_CMA is not set
CONFIG_PAGE_BLOCK_ORDER=10
# CONFIG_MEM_SOFT_DIRTY is not set # CONFIG_MEM_SOFT_DIRTY is not set
CONFIG_GENERIC_EARLY_IOREMAP=y CONFIG_GENERIC_EARLY_IOREMAP=y
# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set # CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set
@@ -1235,6 +1238,7 @@ CONFIG_NET_XGRESS=y
CONFIG_SKB_DECRYPTED=y CONFIG_SKB_DECRYPTED=y
CONFIG_SKB_EXTENSIONS=y CONFIG_SKB_EXTENSIONS=y
CONFIG_NET_DEVMEM=y CONFIG_NET_DEVMEM=y
CONFIG_NET_CRC32C=y
# #
# Networking options # Networking options
@@ -1668,7 +1672,6 @@ CONFIG_BRIDGE_EBT_REDIRECT=m
CONFIG_BRIDGE_EBT_SNAT=m CONFIG_BRIDGE_EBT_SNAT=m
CONFIG_BRIDGE_EBT_LOG=m CONFIG_BRIDGE_EBT_LOG=m
CONFIG_BRIDGE_EBT_NFLOG=m CONFIG_BRIDGE_EBT_NFLOG=m
# CONFIG_IP_DCCP is not set
# CONFIG_IP_SCTP is not set # CONFIG_IP_SCTP is not set
# CONFIG_RDS is not set # CONFIG_RDS is not set
# CONFIG_TIPC is not set # CONFIG_TIPC is not set
@@ -1861,7 +1864,6 @@ CONFIG_BT_MTK=m
CONFIG_BT_HCIBTUSB=m CONFIG_BT_HCIBTUSB=m
CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_POLL_SYNC=y CONFIG_BT_HCIBTUSB_POLL_SYNC=y
CONFIG_BT_HCIBTUSB_AUTO_ISOC_ALT=y
CONFIG_BT_HCIBTUSB_BCM=y CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB_MTK=y CONFIG_BT_HCIBTUSB_MTK=y
CONFIG_BT_HCIBTUSB_RTL=y CONFIG_BT_HCIBTUSB_RTL=y
@@ -1885,6 +1887,7 @@ CONFIG_AF_RXRPC=m
# CONFIG_AF_RXRPC_INJECT_RX_DELAY is not set # CONFIG_AF_RXRPC_INJECT_RX_DELAY is not set
# CONFIG_AF_RXRPC_DEBUG is not set # CONFIG_AF_RXRPC_DEBUG is not set
# CONFIG_RXKAD is not set # CONFIG_RXKAD is not set
# CONFIG_RXGK is not set
# CONFIG_RXPERF is not set # CONFIG_RXPERF is not set
# CONFIG_AF_KCM is not set # CONFIG_AF_KCM is not set
CONFIG_STREAM_PARSER=y CONFIG_STREAM_PARSER=y
@@ -2018,8 +2021,7 @@ CONFIG_HOTPLUG_PCI_ACPI_IBM=m
# CONFIG_PCI_SW_SWITCHTEC is not set # CONFIG_PCI_SW_SWITCHTEC is not set
# end of PCI switch controller drivers # end of PCI switch controller drivers
CONFIG_PCI_PWRCTL=m # CONFIG_PCI_PWRCTRL_SLOT is not set
CONFIG_PCI_PWRCTL_SLOT=m
# CONFIG_CXL_BUS is not set # CONFIG_CXL_BUS is not set
# CONFIG_PCCARD is not set # CONFIG_PCCARD is not set
# CONFIG_RAPIDIO is not set # CONFIG_RAPIDIO is not set
@@ -2189,6 +2191,7 @@ CONFIG_VIRTIO_BLK=m
CONFIG_BLK_DEV_RBD=m CONFIG_BLK_DEV_RBD=m
CONFIG_BLK_DEV_UBLK=m CONFIG_BLK_DEV_UBLK=m
# CONFIG_BLKDEV_UBLK_LEGACY_OPCODES is not set # CONFIG_BLKDEV_UBLK_LEGACY_OPCODES is not set
# CONFIG_BLK_DEV_ZONED_LOOP is not set
# #
# NVME Support # NVME Support
@@ -2212,6 +2215,7 @@ CONFIG_NVME_HWMON=y
# CONFIG_IBM_ASM is not set # CONFIG_IBM_ASM is not set
# CONFIG_PHANTOM is not set # CONFIG_PHANTOM is not set
# CONFIG_RPMB is not set # CONFIG_RPMB is not set
# CONFIG_TI_FPC202 is not set
# CONFIG_TIFM_CORE is not set # CONFIG_TIFM_CORE is not set
# CONFIG_ICS932S401 is not set # CONFIG_ICS932S401 is not set
CONFIG_ENCLOSURE_SERVICES=m CONFIG_ENCLOSURE_SERVICES=m
@@ -2251,7 +2255,6 @@ CONFIG_EEPROM_EE1004=m
# CONFIG_INTEL_MEI is not set # CONFIG_INTEL_MEI is not set
# CONFIG_VMWARE_VMCI is not set # CONFIG_VMWARE_VMCI is not set
# CONFIG_GENWQE is not set # CONFIG_GENWQE is not set
# CONFIG_ECHO is not set
# CONFIG_BCM_VK is not set # CONFIG_BCM_VK is not set
# CONFIG_MISC_ALCOR_PCI is not set # CONFIG_MISC_ALCOR_PCI is not set
# CONFIG_MISC_RTSX_PCI is not set # CONFIG_MISC_RTSX_PCI is not set
@@ -2259,6 +2262,7 @@ CONFIG_EEPROM_EE1004=m
# CONFIG_UACCE is not set # CONFIG_UACCE is not set
# CONFIG_PVPANIC is not set # CONFIG_PVPANIC is not set
# CONFIG_KEBA_CP500 is not set # CONFIG_KEBA_CP500 is not set
# CONFIG_AMD_SBRMI_I2C is not set
# end of Misc devices # end of Misc devices
# #
@@ -2435,6 +2439,7 @@ CONFIG_NET_CORE=y
CONFIG_DUMMY=m CONFIG_DUMMY=m
CONFIG_WIREGUARD=m CONFIG_WIREGUARD=m
# CONFIG_WIREGUARD_DEBUG is not set # CONFIG_WIREGUARD_DEBUG is not set
CONFIG_OVPN=m
# CONFIG_EQUALIZER is not set # CONFIG_EQUALIZER is not set
# CONFIG_NET_FC is not set # CONFIG_NET_FC is not set
# CONFIG_IFB is not set # CONFIG_IFB is not set
@@ -2580,6 +2585,7 @@ CONFIG_FIXED_PHY=m
# #
# MII PHY device drivers # MII PHY device drivers
# #
# CONFIG_AS21XXX_PHY is not set
# CONFIG_AIR_EN8811H_PHY is not set # CONFIG_AIR_EN8811H_PHY is not set
# CONFIG_AMD_PHY is not set # CONFIG_AMD_PHY is not set
# CONFIG_ADIN_PHY is not set # CONFIG_ADIN_PHY is not set
@@ -2604,6 +2610,7 @@ CONFIG_BCM_NET_PHYLIB=m
# CONFIG_MARVELL_88Q2XXX_PHY is not set # CONFIG_MARVELL_88Q2XXX_PHY is not set
# CONFIG_MARVELL_88X2222_PHY is not set # CONFIG_MARVELL_88X2222_PHY is not set
# CONFIG_MAXLINEAR_GPHY is not set # CONFIG_MAXLINEAR_GPHY is not set
# CONFIG_MAXLINEAR_86110_PHY is not set
# CONFIG_MEDIATEK_GE_PHY is not set # CONFIG_MEDIATEK_GE_PHY is not set
# CONFIG_MICREL_PHY is not set # CONFIG_MICREL_PHY is not set
# CONFIG_MICROCHIP_T1S_PHY is not set # CONFIG_MICROCHIP_T1S_PHY is not set
@@ -2644,11 +2651,9 @@ CONFIG_BCM_NET_PHYLIB=m
# CONFIG_MCTP_TRANSPORT_USB is not set # CONFIG_MCTP_TRANSPORT_USB is not set
# end of MCTP Device Drivers # end of MCTP Device Drivers
CONFIG_MDIO_DEVICE=m
CONFIG_MDIO_BUS=m CONFIG_MDIO_BUS=m
CONFIG_FWNODE_MDIO=m CONFIG_FWNODE_MDIO=m
CONFIG_ACPI_MDIO=m CONFIG_ACPI_MDIO=m
CONFIG_MDIO_DEVRES=m
# CONFIG_MDIO_BITBANG is not set # CONFIG_MDIO_BITBANG is not set
# CONFIG_MDIO_BCM_UNIMAC is not set # CONFIG_MDIO_BCM_UNIMAC is not set
# CONFIG_MDIO_MVUSB is not set # CONFIG_MDIO_MVUSB is not set
@@ -3209,7 +3214,6 @@ CONFIG_SPI_MASTER=y
# CONFIG_SPI_MXIC is not set # CONFIG_SPI_MXIC is not set
# CONFIG_SPI_XCOMM is not set # CONFIG_SPI_XCOMM is not set
# CONFIG_SPI_XILINX is not set # CONFIG_SPI_XILINX is not set
# CONFIG_SPI_AMD is not set
# #
# SPI Multiplexer support # SPI Multiplexer support
@@ -3225,7 +3229,6 @@ CONFIG_SPI_MASTER=y
# CONFIG_SPI_SLAVE is not set # CONFIG_SPI_SLAVE is not set
CONFIG_SPI_DYNAMIC=y CONFIG_SPI_DYNAMIC=y
CONFIG_SPMI=m CONFIG_SPMI=m
# CONFIG_SPMI_HISI3670 is not set
# CONFIG_HSI is not set # CONFIG_HSI is not set
CONFIG_PPS=m CONFIG_PPS=m
# CONFIG_PPS_DEBUG is not set # CONFIG_PPS_DEBUG is not set
@@ -3303,6 +3306,7 @@ CONFIG_POWER_SUPPLY_HWMON=y
# CONFIG_IP5XXX_POWER is not set # CONFIG_IP5XXX_POWER is not set
# CONFIG_TEST_POWER is not set # CONFIG_TEST_POWER is not set
# CONFIG_CHARGER_ADP5061 is not set # CONFIG_CHARGER_ADP5061 is not set
# CONFIG_BATTERY_CHAGALL is not set
# CONFIG_BATTERY_CW2015 is not set # CONFIG_BATTERY_CW2015 is not set
# CONFIG_BATTERY_DS2780 is not set # CONFIG_BATTERY_DS2780 is not set
# CONFIG_BATTERY_DS2781 is not set # CONFIG_BATTERY_DS2781 is not set
@@ -3318,6 +3322,7 @@ CONFIG_POWER_SUPPLY_HWMON=y
# CONFIG_CHARGER_LP8727 is not set # CONFIG_CHARGER_LP8727 is not set
# CONFIG_CHARGER_LTC4162L is not set # CONFIG_CHARGER_LTC4162L is not set
# CONFIG_CHARGER_MAX77976 is not set # CONFIG_CHARGER_MAX77976 is not set
# CONFIG_CHARGER_MAX8971 is not set
# CONFIG_CHARGER_BQ2415X is not set # CONFIG_CHARGER_BQ2415X is not set
# CONFIG_BATTERY_GAUGE_LTC2941 is not set # CONFIG_BATTERY_GAUGE_LTC2941 is not set
# CONFIG_BATTERY_GOLDFISH is not set # CONFIG_BATTERY_GOLDFISH is not set
@@ -3456,13 +3461,11 @@ CONFIG_SENSORS_NCT6775_I2C=m
# CONFIG_SENSORS_NZXT_KRAKEN3 is not set # CONFIG_SENSORS_NZXT_KRAKEN3 is not set
# CONFIG_SENSORS_NZXT_SMART2 is not set # CONFIG_SENSORS_NZXT_SMART2 is not set
# CONFIG_SENSORS_OCC_P8_I2C is not set # CONFIG_SENSORS_OCC_P8_I2C is not set
# CONFIG_SENSORS_OXP is not set
# CONFIG_SENSORS_PCF8591 is not set # CONFIG_SENSORS_PCF8591 is not set
# CONFIG_PMBUS is not set # CONFIG_PMBUS is not set
# CONFIG_SENSORS_PT5161L is not set # CONFIG_SENSORS_PT5161L is not set
CONFIG_SENSORS_PWM_FAN=m CONFIG_SENSORS_PWM_FAN=m
# CONFIG_SENSORS_SBTSI is not set # CONFIG_SENSORS_SBTSI is not set
# CONFIG_SENSORS_SBRMI is not set
# CONFIG_SENSORS_SHT21 is not set # CONFIG_SENSORS_SHT21 is not set
# CONFIG_SENSORS_SHT3x is not set # CONFIG_SENSORS_SHT3x is not set
# CONFIG_SENSORS_SHT4x is not set # CONFIG_SENSORS_SHT4x is not set
@@ -3606,6 +3609,7 @@ CONFIG_WATCHDOG_SYSFS=y
# CONFIG_WAFER_WDT is not set # CONFIG_WAFER_WDT is not set
# CONFIG_I6300ESB_WDT is not set # CONFIG_I6300ESB_WDT is not set
# CONFIG_IE6XX_WDT is not set # CONFIG_IE6XX_WDT is not set
# CONFIG_INTEL_OC_WATCHDOG is not set
CONFIG_ITCO_WDT=m CONFIG_ITCO_WDT=m
CONFIG_ITCO_VENDOR_SUPPORT=y CONFIG_ITCO_VENDOR_SUPPORT=y
CONFIG_IT8712F_WDT=m CONFIG_IT8712F_WDT=m
@@ -3863,6 +3867,8 @@ CONFIG_VIDEO_CAMERA_SENSOR=y
# CONFIG_VIDEO_OG01A1B is not set # CONFIG_VIDEO_OG01A1B is not set
# CONFIG_VIDEO_OV01A10 is not set # CONFIG_VIDEO_OV01A10 is not set
# CONFIG_VIDEO_OV02A10 is not set # CONFIG_VIDEO_OV02A10 is not set
# CONFIG_VIDEO_OV02E10 is not set
# CONFIG_VIDEO_OV02C10 is not set
# CONFIG_VIDEO_OV08D10 is not set # CONFIG_VIDEO_OV08D10 is not set
# CONFIG_VIDEO_OV08X40 is not set # CONFIG_VIDEO_OV08X40 is not set
# CONFIG_VIDEO_OV13858 is not set # CONFIG_VIDEO_OV13858 is not set
@@ -3962,8 +3968,14 @@ CONFIG_AGP_INTEL=m
CONFIG_INTEL_GTT=m CONFIG_INTEL_GTT=m
CONFIG_VGA_SWITCHEROO=y CONFIG_VGA_SWITCHEROO=y
CONFIG_DRM=y CONFIG_DRM=y
CONFIG_DRM_MIPI_DSI=y
#
# DRM debugging options
#
# CONFIG_DRM_DEBUG_MM is not set # CONFIG_DRM_DEBUG_MM is not set
# end of DRM debugging options
CONFIG_DRM_MIPI_DSI=y
CONFIG_DRM_KMS_HELPER=y CONFIG_DRM_KMS_HELPER=y
CONFIG_DRM_DRAW=y CONFIG_DRM_DRAW=y
CONFIG_DRM_PANIC=y CONFIG_DRM_PANIC=y
@@ -4005,6 +4017,13 @@ CONFIG_DRM_GEM_SHMEM_HELPER=y
CONFIG_DRM_SUBALLOC_HELPER=m CONFIG_DRM_SUBALLOC_HELPER=m
CONFIG_DRM_SCHED=m CONFIG_DRM_SCHED=m
#
# Drivers for system framebuffers
#
CONFIG_DRM_SYSFB_HELPER=y
CONFIG_DRM_SIMPLEDRM=y
# end of Drivers for system framebuffers
# #
# ARM devices # ARM devices
# #
@@ -4099,7 +4118,6 @@ CONFIG_DRM_BOCHS=m
# CONFIG_DRM_CIRRUS_QEMU is not set # CONFIG_DRM_CIRRUS_QEMU is not set
# CONFIG_DRM_GM12U320 is not set # CONFIG_DRM_GM12U320 is not set
# CONFIG_DRM_PANEL_MIPI_DBI is not set # CONFIG_DRM_PANEL_MIPI_DBI is not set
CONFIG_DRM_SIMPLEDRM=y
# CONFIG_TINYDRM_HX8357D is not set # CONFIG_TINYDRM_HX8357D is not set
# CONFIG_TINYDRM_ILI9163 is not set # CONFIG_TINYDRM_ILI9163 is not set
# CONFIG_TINYDRM_ILI9225 is not set # CONFIG_TINYDRM_ILI9225 is not set
@@ -4108,10 +4126,11 @@ CONFIG_DRM_SIMPLEDRM=y
# CONFIG_TINYDRM_MI0283QT is not set # CONFIG_TINYDRM_MI0283QT is not set
# CONFIG_TINYDRM_REPAPER is not set # CONFIG_TINYDRM_REPAPER is not set
# CONFIG_TINYDRM_SHARP_MEMORY is not set # CONFIG_TINYDRM_SHARP_MEMORY is not set
# CONFIG_TINYDRM_ST7586 is not set
# CONFIG_TINYDRM_ST7735R is not set
# CONFIG_DRM_VBOXVIDEO is not set # CONFIG_DRM_VBOXVIDEO is not set
CONFIG_DRM_GUD=m CONFIG_DRM_GUD=m
# CONFIG_DRM_ST7571_I2C is not set
# CONFIG_DRM_ST7586 is not set
# CONFIG_DRM_ST7735R is not set
# CONFIG_DRM_SSD130X is not set # CONFIG_DRM_SSD130X is not set
CONFIG_DRM_PANEL_BACKLIGHT_QUIRKS=m CONFIG_DRM_PANEL_BACKLIGHT_QUIRKS=m
CONFIG_DRM_PRIVACY_SCREEN=y CONFIG_DRM_PRIVACY_SCREEN=y
@@ -4353,6 +4372,7 @@ CONFIG_SND_INTEL8X0=m
CONFIG_SND_HDA=m CONFIG_SND_HDA=m
CONFIG_SND_HDA_GENERIC_LEDS=y CONFIG_SND_HDA_GENERIC_LEDS=y
CONFIG_SND_HDA_INTEL=m CONFIG_SND_HDA_INTEL=m
CONFIG_SND_HDA_ACPI=m
CONFIG_SND_HDA_HWDEP=y CONFIG_SND_HDA_HWDEP=y
CONFIG_SND_HDA_RECONFIG=y CONFIG_SND_HDA_RECONFIG=y
# CONFIG_SND_HDA_INPUT_BEEP is not set # CONFIG_SND_HDA_INPUT_BEEP is not set
@@ -4412,6 +4432,7 @@ CONFIG_SND_SOC=m
CONFIG_SND_SOC_COMPRESS=y CONFIG_SND_SOC_COMPRESS=y
CONFIG_SND_SOC_TOPOLOGY=y CONFIG_SND_SOC_TOPOLOGY=y
CONFIG_SND_SOC_ACPI=m CONFIG_SND_SOC_ACPI=m
CONFIG_SND_SOC_USB=m
# CONFIG_SND_SOC_ADI is not set # CONFIG_SND_SOC_ADI is not set
# CONFIG_SND_SOC_AMD_ACP is not set # CONFIG_SND_SOC_AMD_ACP is not set
# CONFIG_SND_SOC_AMD_ACP3x is not set # CONFIG_SND_SOC_AMD_ACP3x is not set
@@ -4607,6 +4628,7 @@ CONFIG_SND_SOC_I2C_AND_SPI=m
# CONFIG_SND_SOC_CS43130 is not set # CONFIG_SND_SOC_CS43130 is not set
# CONFIG_SND_SOC_CS4341 is not set # CONFIG_SND_SOC_CS4341 is not set
# CONFIG_SND_SOC_CS4349 is not set # CONFIG_SND_SOC_CS4349 is not set
# CONFIG_SND_SOC_CS48L32 is not set
# CONFIG_SND_SOC_CS53L30 is not set # CONFIG_SND_SOC_CS53L30 is not set
# CONFIG_SND_SOC_CS530X_I2C is not set # CONFIG_SND_SOC_CS530X_I2C is not set
# CONFIG_SND_SOC_CX2072X is not set # CONFIG_SND_SOC_CX2072X is not set
@@ -4620,6 +4642,8 @@ CONFIG_SND_SOC_DMIC=m
# CONFIG_SND_SOC_ES8326 is not set # CONFIG_SND_SOC_ES8326 is not set
# CONFIG_SND_SOC_ES8328_I2C is not set # CONFIG_SND_SOC_ES8328_I2C is not set
# CONFIG_SND_SOC_ES8328_SPI is not set # CONFIG_SND_SOC_ES8328_SPI is not set
# CONFIG_SND_SOC_ES8375 is not set
# CONFIG_SND_SOC_ES8389 is not set
# CONFIG_SND_SOC_GTM601 is not set # CONFIG_SND_SOC_GTM601 is not set
CONFIG_SND_SOC_HDAC_HDA=m CONFIG_SND_SOC_HDAC_HDA=m
# CONFIG_SND_SOC_HDA is not set # CONFIG_SND_SOC_HDA is not set
@@ -4659,6 +4683,8 @@ CONFIG_SND_SOC_HDAC_HDA=m
# CONFIG_SND_SOC_RT5640 is not set # CONFIG_SND_SOC_RT5640 is not set
# CONFIG_SND_SOC_RT5659 is not set # CONFIG_SND_SOC_RT5659 is not set
# CONFIG_SND_SOC_RT9120 is not set # CONFIG_SND_SOC_RT9120 is not set
# CONFIG_SND_SOC_RT9123 is not set
# CONFIG_SND_SOC_RT9123P is not set
# CONFIG_SND_SOC_RTQ9128 is not set # CONFIG_SND_SOC_RTQ9128 is not set
# CONFIG_SND_SOC_SGTL5000 is not set # CONFIG_SND_SOC_SGTL5000 is not set
# CONFIG_SND_SOC_SIMPLE_AMPLIFIER is not set # CONFIG_SND_SOC_SIMPLE_AMPLIFIER is not set
@@ -4940,6 +4966,7 @@ CONFIG_USB_XHCI_HCD=m
CONFIG_USB_XHCI_PCI=m CONFIG_USB_XHCI_PCI=m
# CONFIG_USB_XHCI_PCI_RENESAS is not set # CONFIG_USB_XHCI_PCI_RENESAS is not set
CONFIG_USB_XHCI_PLATFORM=m CONFIG_USB_XHCI_PLATFORM=m
CONFIG_USB_XHCI_SIDEBAND=y
CONFIG_USB_EHCI_HCD=m CONFIG_USB_EHCI_HCD=m
CONFIG_USB_EHCI_ROOT_HUB_TT=y CONFIG_USB_EHCI_ROOT_HUB_TT=y
CONFIG_USB_EHCI_TT_NEWSCHED=y CONFIG_USB_EHCI_TT_NEWSCHED=y
@@ -5484,6 +5511,9 @@ CONFIG_VIRTIO_MMIO=m
# CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set
CONFIG_VIRTIO_DMA_SHARED_BUFFER=m CONFIG_VIRTIO_DMA_SHARED_BUFFER=m
# CONFIG_VIRTIO_DEBUG is not set # CONFIG_VIRTIO_DEBUG is not set
CONFIG_VIRTIO_RTC=m
CONFIG_VIRTIO_RTC_PTP=y
CONFIG_VIRTIO_RTC_CLASS=y
CONFIG_VDPA=m CONFIG_VDPA=m
# CONFIG_VDPA_SIM is not set # CONFIG_VDPA_SIM is not set
CONFIG_IFCVF=m CONFIG_IFCVF=m
@@ -5499,6 +5529,7 @@ CONFIG_VHOST_MENU=y
CONFIG_VHOST_NET=m CONFIG_VHOST_NET=m
CONFIG_VHOST_VDPA=m CONFIG_VHOST_VDPA=m
# CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set # CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set
CONFIG_VHOST_ENABLE_FORK_OWNER_CONTROL=y
# #
# Microsoft Hyper-V guest support # Microsoft Hyper-V guest support
@@ -5536,6 +5567,7 @@ CONFIG_YOGABOOK=m
# CONFIG_AMD_PMC is not set # CONFIG_AMD_PMC is not set
# CONFIG_AMD_3D_VCACHE is not set # CONFIG_AMD_3D_VCACHE is not set
CONFIG_AMD_WBRF=y CONFIG_AMD_WBRF=y
# CONFIG_AMD_ISP_PLATFORM is not set
# CONFIG_ADV_SWBUTTON is not set # CONFIG_ADV_SWBUTTON is not set
# CONFIG_APPLE_GMUX is not set # CONFIG_APPLE_GMUX is not set
# CONFIG_ASUS_LAPTOP is not set # CONFIG_ASUS_LAPTOP is not set
@@ -5620,6 +5652,7 @@ CONFIG_INTEL_VSEC=m
# CONFIG_SERIAL_MULTI_INSTANTIATE is not set # CONFIG_SERIAL_MULTI_INSTANTIATE is not set
# CONFIG_INSPUR_PLATFORM_PROFILE is not set # CONFIG_INSPUR_PLATFORM_PROFILE is not set
# CONFIG_LENOVO_WMI_CAMERA is not set # CONFIG_LENOVO_WMI_CAMERA is not set
# CONFIG_DASHARO_ACPI is not set
CONFIG_FW_ATTR_CLASS=m CONFIG_FW_ATTR_CLASS=m
CONFIG_INTEL_IPS=m CONFIG_INTEL_IPS=m
CONFIG_INTEL_SCU_IPC=y CONFIG_INTEL_SCU_IPC=y
@@ -5629,6 +5662,8 @@ CONFIG_INTEL_SCU_PLATFORM=m
CONFIG_INTEL_SCU_IPC_UTIL=m CONFIG_INTEL_SCU_IPC_UTIL=m
# CONFIG_SIEMENS_SIMATIC_IPC is not set # CONFIG_SIEMENS_SIMATIC_IPC is not set
# CONFIG_WINMATE_FM07_KEYS is not set # CONFIG_WINMATE_FM07_KEYS is not set
# CONFIG_OXP_EC is not set
# CONFIG_TUXEDO_NB04_WMI_AB is not set
CONFIG_P2SB=y CONFIG_P2SB=y
CONFIG_HAVE_CLK=y CONFIG_HAVE_CLK=y
CONFIG_HAVE_CLK_PREPARE=y CONFIG_HAVE_CLK_PREPARE=y
@@ -5973,6 +6008,8 @@ CONFIG_BCACHEFS_LOCK_TIME_STATS=y
# CONFIG_BCACHEFS_NO_LATENCY_ACCT is not set # CONFIG_BCACHEFS_NO_LATENCY_ACCT is not set
CONFIG_BCACHEFS_SIX_OPTIMISTIC_SPIN=y CONFIG_BCACHEFS_SIX_OPTIMISTIC_SPIN=y
# CONFIG_BCACHEFS_PATH_TRACEPOINTS is not set # CONFIG_BCACHEFS_PATH_TRACEPOINTS is not set
# CONFIG_BCACHEFS_TRANS_KMALLOC_TRACE is not set
# CONFIG_BCACHEFS_ASYNC_OBJECT_LISTS is not set
CONFIG_ZONEFS_FS=m CONFIG_ZONEFS_FS=m
CONFIG_FS_DAX=y CONFIG_FS_DAX=y
CONFIG_FS_DAX_PMD=y CONFIG_FS_DAX_PMD=y
@@ -6102,6 +6139,7 @@ CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU=y
CONFIG_SQUASHFS_CHOICE_DECOMP_BY_MOUNT=y CONFIG_SQUASHFS_CHOICE_DECOMP_BY_MOUNT=y
CONFIG_SQUASHFS_MOUNT_DECOMP_THREADS=y CONFIG_SQUASHFS_MOUNT_DECOMP_THREADS=y
CONFIG_SQUASHFS_XATTR=y CONFIG_SQUASHFS_XATTR=y
# CONFIG_SQUASHFS_COMP_CACHE_FULL is not set
CONFIG_SQUASHFS_ZLIB=y CONFIG_SQUASHFS_ZLIB=y
CONFIG_SQUASHFS_LZ4=y CONFIG_SQUASHFS_LZ4=y
CONFIG_SQUASHFS_LZO=y CONFIG_SQUASHFS_LZO=y
@@ -6116,6 +6154,8 @@ CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3
# CONFIG_HPFS_FS is not set # CONFIG_HPFS_FS is not set
# CONFIG_QNX4FS_FS is not set # CONFIG_QNX4FS_FS is not set
# CONFIG_QNX6FS_FS is not set # CONFIG_QNX6FS_FS is not set
CONFIG_RESCTRL_FS=y
CONFIG_RESCTRL_FS_PSEUDO_LOCK=y
# CONFIG_ROMFS_FS is not set # CONFIG_ROMFS_FS is not set
CONFIG_PSTORE=y CONFIG_PSTORE=y
CONFIG_PSTORE_DEFAULT_KMSG_BYTES=10240 CONFIG_PSTORE_DEFAULT_KMSG_BYTES=10240
@@ -6396,15 +6436,12 @@ CONFIG_CRYPTO_HKDF=y
CONFIG_CRYPTO_MANAGER=y CONFIG_CRYPTO_MANAGER=y
CONFIG_CRYPTO_MANAGER2=y CONFIG_CRYPTO_MANAGER2=y
# CONFIG_CRYPTO_USER is not set # CONFIG_CRYPTO_USER is not set
CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
CONFIG_CRYPTO_NULL=y CONFIG_CRYPTO_NULL=y
CONFIG_CRYPTO_NULL2=y
CONFIG_CRYPTO_PCRYPT=y CONFIG_CRYPTO_PCRYPT=y
CONFIG_CRYPTO_CRYPTD=y CONFIG_CRYPTO_CRYPTD=y
CONFIG_CRYPTO_AUTHENC=y CONFIG_CRYPTO_AUTHENC=y
# CONFIG_CRYPTO_KRB5ENC is not set # CONFIG_CRYPTO_KRB5ENC is not set
# CONFIG_CRYPTO_TEST is not set # CONFIG_CRYPTO_BENCHMARK is not set
CONFIG_CRYPTO_SIMD=y
CONFIG_CRYPTO_ENGINE=m CONFIG_CRYPTO_ENGINE=m
# end of Crypto core or helper # end of Crypto core or helper
@@ -6483,13 +6520,11 @@ CONFIG_CRYPTO_MD4=m
CONFIG_CRYPTO_MD5=y CONFIG_CRYPTO_MD5=y
CONFIG_CRYPTO_MICHAEL_MIC=m CONFIG_CRYPTO_MICHAEL_MIC=m
CONFIG_CRYPTO_POLYVAL=m CONFIG_CRYPTO_POLYVAL=m
CONFIG_CRYPTO_POLY1305=m
# CONFIG_CRYPTO_RMD160 is not set # CONFIG_CRYPTO_RMD160 is not set
CONFIG_CRYPTO_SHA1=y CONFIG_CRYPTO_SHA1=y
CONFIG_CRYPTO_SHA256=y CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA512=y CONFIG_CRYPTO_SHA512=y
CONFIG_CRYPTO_SHA3=y CONFIG_CRYPTO_SHA3=y
CONFIG_CRYPTO_SM3=m
# CONFIG_CRYPTO_SM3_GENERIC is not set # CONFIG_CRYPTO_SM3_GENERIC is not set
CONFIG_CRYPTO_STREEBOG=m CONFIG_CRYPTO_STREEBOG=m
# CONFIG_CRYPTO_WP512 is not set # CONFIG_CRYPTO_WP512 is not set
@@ -6567,15 +6602,11 @@ CONFIG_CRYPTO_TWOFISH_AVX_X86_64=m
CONFIG_CRYPTO_ARIA_AESNI_AVX_X86_64=m CONFIG_CRYPTO_ARIA_AESNI_AVX_X86_64=m
CONFIG_CRYPTO_ARIA_AESNI_AVX2_X86_64=m CONFIG_CRYPTO_ARIA_AESNI_AVX2_X86_64=m
CONFIG_CRYPTO_ARIA_GFNI_AVX512_X86_64=m CONFIG_CRYPTO_ARIA_GFNI_AVX512_X86_64=m
CONFIG_CRYPTO_CHACHA20_X86_64=m
CONFIG_CRYPTO_AEGIS128_AESNI_SSE2=m CONFIG_CRYPTO_AEGIS128_AESNI_SSE2=m
CONFIG_CRYPTO_NHPOLY1305_SSE2=m CONFIG_CRYPTO_NHPOLY1305_SSE2=m
CONFIG_CRYPTO_NHPOLY1305_AVX2=m CONFIG_CRYPTO_NHPOLY1305_AVX2=m
CONFIG_CRYPTO_BLAKE2S_X86=y
CONFIG_CRYPTO_POLYVAL_CLMUL_NI=m CONFIG_CRYPTO_POLYVAL_CLMUL_NI=m
CONFIG_CRYPTO_POLY1305_X86_64=m
CONFIG_CRYPTO_SHA1_SSSE3=m CONFIG_CRYPTO_SHA1_SSSE3=m
CONFIG_CRYPTO_SHA256_SSSE3=m
CONFIG_CRYPTO_SHA512_SSSE3=m CONFIG_CRYPTO_SHA512_SSSE3=m
CONFIG_CRYPTO_SM3_AVX_X86_64=m CONFIG_CRYPTO_SM3_AVX_X86_64=m
CONFIG_CRYPTO_GHASH_CLMUL_NI_INTEL=m CONFIG_CRYPTO_GHASH_CLMUL_NI_INTEL=m
@@ -6598,6 +6629,7 @@ CONFIG_CRYPTO_DEV_QAT_C3XXX=m
CONFIG_CRYPTO_DEV_QAT_C62X=m CONFIG_CRYPTO_DEV_QAT_C62X=m
CONFIG_CRYPTO_DEV_QAT_4XXX=m CONFIG_CRYPTO_DEV_QAT_4XXX=m
# CONFIG_CRYPTO_DEV_QAT_420XX is not set # CONFIG_CRYPTO_DEV_QAT_420XX is not set
# CONFIG_CRYPTO_DEV_QAT_6XXX is not set
CONFIG_CRYPTO_DEV_QAT_DH895xCCVF=m CONFIG_CRYPTO_DEV_QAT_DH895xCCVF=m
CONFIG_CRYPTO_DEV_QAT_C3XXXVF=m CONFIG_CRYPTO_DEV_QAT_C3XXXVF=m
CONFIG_CRYPTO_DEV_QAT_C62XVF=m CONFIG_CRYPTO_DEV_QAT_C62XVF=m
@@ -6660,7 +6692,6 @@ CONFIG_CRYPTO_ARCH_HAVE_LIB_BLAKE2S=y
CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=y CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=y
CONFIG_CRYPTO_ARCH_HAVE_LIB_CHACHA=y CONFIG_CRYPTO_ARCH_HAVE_LIB_CHACHA=y
CONFIG_CRYPTO_LIB_CHACHA_GENERIC=m CONFIG_CRYPTO_LIB_CHACHA_GENERIC=m
CONFIG_CRYPTO_LIB_CHACHA_INTERNAL=m
CONFIG_CRYPTO_LIB_CHACHA=m CONFIG_CRYPTO_LIB_CHACHA=m
CONFIG_CRYPTO_ARCH_HAVE_LIB_CURVE25519=y CONFIG_CRYPTO_ARCH_HAVE_LIB_CURVE25519=y
CONFIG_CRYPTO_LIB_CURVE25519_GENERIC=m CONFIG_CRYPTO_LIB_CURVE25519_GENERIC=m
@@ -6670,11 +6701,18 @@ CONFIG_CRYPTO_LIB_DES=m
CONFIG_CRYPTO_LIB_POLY1305_RSIZE=11 CONFIG_CRYPTO_LIB_POLY1305_RSIZE=11
CONFIG_CRYPTO_ARCH_HAVE_LIB_POLY1305=y CONFIG_CRYPTO_ARCH_HAVE_LIB_POLY1305=y
CONFIG_CRYPTO_LIB_POLY1305_GENERIC=m CONFIG_CRYPTO_LIB_POLY1305_GENERIC=m
CONFIG_CRYPTO_LIB_POLY1305_INTERNAL=m
CONFIG_CRYPTO_LIB_POLY1305=m CONFIG_CRYPTO_LIB_POLY1305=m
CONFIG_CRYPTO_LIB_CHACHA20POLY1305=m CONFIG_CRYPTO_LIB_CHACHA20POLY1305=m
CONFIG_CRYPTO_LIB_SHA1=y CONFIG_CRYPTO_LIB_SHA1=y
CONFIG_CRYPTO_LIB_SHA256=y CONFIG_CRYPTO_LIB_SHA256=y
CONFIG_CRYPTO_ARCH_HAVE_LIB_SHA256=y
CONFIG_CRYPTO_ARCH_HAVE_LIB_SHA256_SIMD=y
CONFIG_CRYPTO_LIB_SHA256_GENERIC=y
CONFIG_CRYPTO_LIB_SM3=m
CONFIG_CRYPTO_BLAKE2S_X86=y
CONFIG_CRYPTO_CHACHA20_X86_64=m
CONFIG_CRYPTO_POLY1305_X86_64=m
CONFIG_CRYPTO_SHA256_X86_64=y
# end of Crypto library routines # end of Crypto library routines
CONFIG_CRC_CCITT=m CONFIG_CRC_CCITT=m
@@ -7121,7 +7159,6 @@ CONFIG_UNWINDER_ORC=y
CONFIG_FUNCTION_ERROR_INJECTION=y CONFIG_FUNCTION_ERROR_INJECTION=y
# CONFIG_FAULT_INJECTION is not set # CONFIG_FAULT_INJECTION is not set
CONFIG_ARCH_HAS_KCOV=y CONFIG_ARCH_HAS_KCOV=y
CONFIG_CC_HAS_SANCOV_TRACE_PC=y
# CONFIG_KCOV is not set # CONFIG_KCOV is not set
CONFIG_RUNTIME_TESTING_MENU=y CONFIG_RUNTIME_TESTING_MENU=y
# CONFIG_TEST_DHRY is not set # CONFIG_TEST_DHRY is not set

View File

@@ -9,12 +9,12 @@ KERNEL_IUSE_MODULES_SIGN=1
inherit kernel-build toolchain-funcs verify-sig inherit kernel-build toolchain-funcs verify-sig
MY_P=linux-${PV%.*} MY_P=linux-${PV%.*}
PATCHSET=linux-gentoo-patches-6.15.8 PATCHSET=linux-gentoo-patches-6.16.12
# https://koji.fedoraproject.org/koji/packageinfo?packageID=8 # https://koji.fedoraproject.org/koji/packageinfo?packageID=8
# forked to https://github.com/projg2/fedora-kernel-config-for-gentoo # forked to https://github.com/projg2/fedora-kernel-config-for-gentoo
CONFIG_VER=6.15.6-gentoo CONFIG_VER=6.16.9-gentoo
GENTOO_CONFIG_VER=g16 GENTOO_CONFIG_VER=g17
SHA256SUM_DATE=20250801 SHA256SUM_DATE=20251012
HARDENED_PATCH_VER="${PV}-hardened1" HARDENED_PATCH_VER="${PV}-hardened1"
USER_PATCHSET=linux-user-patches-${PV} USER_PATCHSET=linux-user-patches-${PV}
GENPATCHES_EXCLUDE="1500_XATTR_USER_PREFIX.patch GENPATCHES_EXCLUDE="1500_XATTR_USER_PREFIX.patch
@@ -27,15 +27,15 @@ HOMEPAGE="
https://www.kernel.org/ https://www.kernel.org/
" "
SRC_URI+=" SRC_URI+="
https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${MY_P}.tar.xz https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/${MY_P}.tar.xz
https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/patch-${PV}.xz https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/patch-${PV}.xz
https://dev.gentoo.org/~mgorny/dist/linux/${PATCHSET}.tar.xz https://dev.gentoo.org/~mgorny/dist/linux/${PATCHSET}.tar.xz
https://github.com/anthraxx/linux-hardened/releases/download/v${HARDENED_PATCH_VER}/linux-hardened-v${HARDENED_PATCH_VER}.patch https://github.com/anthraxx/linux-hardened/releases/download/v${HARDENED_PATCH_VER}/linux-hardened-v${HARDENED_PATCH_VER}.patch
https://github.com/projg2/gentoo-kernel-config/archive/${GENTOO_CONFIG_VER}.tar.gz https://github.com/projg2/gentoo-kernel-config/archive/${GENTOO_CONFIG_VER}.tar.gz
-> gentoo-kernel-config-${GENTOO_CONFIG_VER}.tar.gz -> gentoo-kernel-config-${GENTOO_CONFIG_VER}.tar.gz
verify-sig? ( verify-sig? (
https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/sha256sums.asc https://cdn.kernel.org/pub/linux/kernel/v$(ver_cut 1).x/sha256sums.asc
-> linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc -> linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc
) )
amd64? ( amd64? (
https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-x86_64-fedora.config https://raw.githubusercontent.com/projg2/fedora-kernel-config-for-gentoo/${CONFIG_VER}/kernel-x86_64-fedora.config
@@ -65,11 +65,9 @@ REQUIRED_USE="
sparc? ( savedconfig ) sparc? ( savedconfig )
" "
RDEPEND="
!sys-kernel/gentoo-kernel-bin:${SLOT}
"
BDEPEND=" BDEPEND="
debug? ( dev-util/pahole ) debug? ( dev-util/pahole )
verify-sig? ( >=sec-keys/openpgp-keys-kernel-20250702 )
" "
PDEPEND=" PDEPEND="
>=virtual/dist-kernel-${PV} >=virtual/dist-kernel-${PV}
@@ -84,35 +82,36 @@ QA_FLAGS_IGNORED="
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kernel.org.asc VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kernel.org.asc
src_unpack() { src_unpack() {
if use verify-sig; then if use verify-sig; then
cd "${DISTDIR}" || die cd "${DISTDIR}" || die
verify-sig_verify_signed_checksums \ verify-sig_verify_signed_checksums \
"linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc" \ "linux-$(ver_cut 1).x-sha256sums-${SHA256SUM_DATE}.asc" \
sha256 "${MY_P}.tar.xz patch-${PV}.xz" sha256 "${MY_P}.tar.xz patch-${PV}.xz"
cd "${WORKDIR}" || die cd "${WORKDIR}" || die
fi fi
default default
} }
src_prepare() { src_prepare() {
local patch local patch
mkdir ${WORKDIR}/${USER_PATCHSET} mkdir "${WORKDIR}/${USER_PATCHSET}"
# remove some genpatches causes conflicts with linux-hardened patch # remove some genpatches causes conflicts with linux-hardened patch
for patch in ${GENPATCHES_EXCLUDE}; do for patch in ${GENPATCHES_EXCLUDE}; do
rm -f ${WORKDIR}/${PATCHSET}/${patch} rm -f "${WORKDIR}/${PATCHSET}/${patch}"
done done
# Remove already exists changes in linux-hardened patch # Remove already exists changes in linux-hardened patch
sed -i '344,356d' "${WORKDIR}/${PATCHSET}/0010-Add-Gentoo-Linux-support-config-settings-and-default.patch" sed -i '344,356d' "${WORKDIR}/${PATCHSET}/0011-Add-Gentoo-Linux-support-config-settings-and-default.patch"
# include linux-hardened patch with priority # include linux-hardened patch with priority
cp ${DISTDIR}/linux-hardened-v${HARDENED_PATCH_VER}.patch ${WORKDIR}/${USER_PATCHSET}/1198_linux-hardened-${HARDENED_PATCH_VER}.patch cp "${DISTDIR}/linux-hardened-v${HARDENED_PATCH_VER}.patch" \
"${WORKDIR}/${USER_PATCHSET}/1198_linux-hardened-${HARDENED_PATCH_VER}.patch"
# copy pkg maintainer supplied patches # copy pkg maintainer supplied patches
if [ -d "${FILESDIR}/${MY_P}" ]; then if [ -d "${FILESDIR}/${MY_P}" ]; then
cp "${FILESDIR}/${MY_P}"/*.patch ${WORKDIR}/${USER_PATCHSET}/ cp "${FILESDIR}/${MY_P}"/*.patch "${WORKDIR}/${USER_PATCHSET}"/
fi fi
eapply "${WORKDIR}/patch-${PV}" eapply "${WORKDIR}/patch-${PV}"
for patch in "${WORKDIR}/${PATCHSET}"/*.patch; do for patch in "${WORKDIR}/${PATCHSET}"/*.patch; do

View File

@@ -1,11 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata> <pkgmetadata>
<maintainer type="person"> <maintainer type="person">
<email>alex@millerson.name</email> <email>alex@millerson.name</email>
<name>Alexander Miroshnichenko</name> <name>Alexander Miroshnichenko</name>
</maintainer> </maintainer>
<use> <use>
<flag name='initramfs'>Build initramfs along with the kernel.</flag> <flag name="experimental">
Apply experimental patches; for more information, see "https://wiki.gentoo.org/wiki/Project:Kernel/Experimental".
</flag>
<flag name="hardened">
Use selection of hardening options recommended by Kernel Self
Protection Project
</flag>
<flag name="initramfs">
Build initramfs along with the kernel.
</flag>
</use> </use>
</pkgmetadata> </pkgmetadata>