add linux-git

remove bcachefs-tools-git
remove linux-bcachefs-git
This commit is contained in:
bgme 2023-11-04 02:28:29 +08:00
parent 00a3ee19a7
commit 953950af57
8 changed files with 5 additions and 12184 deletions

View file

@ -1,58 +0,0 @@
# Maintainer: Kyle De'Vir (QuartzDragon) <kyle.devir.mykolab.com>
pkgname=bcachefs-tools-git
pkgver=1132
pkgrel=1
pkgdesc="BCacheFS filesystem utilities"
url="https://github.com/koverstreet/bcachefs-tools"
arch=("x86_64")
license=("GPL2")
install="$pkgname.install"
provides=(bcachefs-tools)
dependsarray="attr cargo clang fuse3 git keyutils libaio libscrypt libsodium liburcu libutil-linux pkgconf python-docutils systemd valgrind zlib"
makedepends=(${dependsarray})
depends=(${dependsarray})
options=('!strip')
_reponame="bcachefs-tools"
_repo_url="https://github.com/koverstreet/$_reponame"
source=(
"git+$_repo_url"
"add-mkinitcpio-hook-for-Arch.patch"
)
sha512sums=('SKIP'
'5ebb0c6b17e7a61ccd2c157a0a833bc51e1d66cdf9711c8038c9e695ba22bf4098695658401bef9560ec02722787de0d89e1ccf7b8a716f9eeb136ad2e59daca')
prepare() {
cd "$srcdir/$_reponame"
PName="add-mkinitcpio-hook-for-Arch.patch"
msg2 "Patching with $PName ..."
patch -Np1 -i "../$PName"
}
pkgver() {
cd "$srcdir/$_reponame"
echo "$(git rev-list --count HEAD)"
}
build() {
cd "$srcdir/$_reponame"
make
}
package() {
cd "$srcdir/$_reponame"
make DESTDIR="$pkgdir" PREFIX="/usr" ROOT_SBINDIR="/usr/bin" INITRAMFS_DIR="/etc/initcpio" install
install -Dm644 "arch/etc/initcpio/hooks/bcachefs" \
"$pkgdir/etc/initcpio/hooks/bcachefs"
install -Dm644 "arch/etc/initcpio/install/bcachefs" \
"$pkgdir/etc/initcpio/install/bcachefs"
}

View file

@ -1,130 +0,0 @@
From ad41c2fb76a96f772d75f3b4b7687fcd29aa0574 Mon Sep 17 00:00:00 2001
From: Christophe B Billheimer <cbillhei@gmu.edu>
Date: Sat, 28 Jul 2018 22:54:36 -0400
Subject: [PATCH] add mkinitcpio hook for Arch and sample /etc/mkinitcpio.conf
---
arch/etc/initcpio/hooks/bcachefs | 14 +++++++
arch/etc/initcpio/install/bcachefs | 17 ++++++++
arch/etc/mkinitcpio.conf | 66 ++++++++++++++++++++++++++++++
3 files changed, 97 insertions(+)
create mode 100644 arch/etc/initcpio/hooks/bcachefs
create mode 100644 arch/etc/initcpio/install/bcachefs
create mode 100644 arch/etc/mkinitcpio.conf
diff --git a/arch/etc/initcpio/hooks/bcachefs b/arch/etc/initcpio/hooks/bcachefs
new file mode 100644
index 0000000..cc2ed7e
--- /dev/null
+++ b/arch/etc/initcpio/hooks/bcachefs
@@ -0,0 +1,14 @@
+#!/usr/bin/bash
+
+run_hook() {
+
+# check if $root needs unlocking
+if bcachefs unlock -c $root >/dev/null 2>&1; then
+ echo "Unlocking $root:"
+ while true; do
+ bcachefs unlock $root && break
+ done
+fi
+}
+
+# vim: set ft=sh ts=4 sw=4 et:
diff --git a/arch/etc/initcpio/install/bcachefs b/arch/etc/initcpio/install/bcachefs
new file mode 100644
index 0000000..67ce186
--- /dev/null
+++ b/arch/etc/initcpio/install/bcachefs
@@ -0,0 +1,17 @@
+#!/bin/bash
+
+build() {
+ add_module "bcachefs"
+ add_binary "bcachefs"
+
+ add_runscript
+
+}
+
+help() {
+ cat <<HELPEOF
+This hook is for getting the bcachefs unlock prompt at boot
+HELPEOF
+}
+
+# vim set ft=sh ts=4 sw=4 et:
diff --git a/arch/etc/mkinitcpio.conf b/arch/etc/mkinitcpio.conf
new file mode 100644
index 0000000..f395e18
--- /dev/null
+++ b/arch/etc/mkinitcpio.conf
@@ -0,0 +1,66 @@
+# vim:set ft=sh
+# MODULES
+# The following modules are loaded before any boot hooks are
+# run. Advanced users may wish to specify all system modules
+# in this array. For instance:
+# MODULES=(piix ide_disk reiserfs)
+MODULES=(bcachefs)
+
+# BINARIES
+# This setting includes any additional binaries a given user may
+# wish into the CPIO image. This is run last, so it may be used to
+# override the actual binaries included by a given hook
+# BINARIES are dependency parsed, so you may safely ignore libraries
+BINARIES=(bcachefs)
+
+# FILES
+# This setting is similar to BINARIES above, however, files are added
+# as-is and are not parsed in any way. This is useful for config files.
+FILES=()
+
+# HOOKS
+# This is the most important setting in this file. The HOOKS control the
+# modules and scripts added to the image, and what happens at boot time.
+# Order is important, and it is recommended that you do not change the
+# order in which HOOKS are added. Run 'mkinitcpio -H <hook name>' for
+# help on a given hook.
+# 'base' is _required_ unless you know precisely what you are doing.
+# 'udev' is _required_ in order to automatically load modules
+# 'filesystems' is _required_ unless you specify your fs modules in MODULES
+# Examples:
+## This setup specifies all modules in the MODULES setting above.
+## No raid, lvm2, or encrypted root is needed.
+# HOOKS="base"
+#
+## This setup will autodetect all modules for your system and should
+## work as a sane default
+# HOOKS="base udev autodetect block filesystems"
+#
+## This setup will generate a 'full' image which supports most systems.
+## No autodetection is done.
+# HOOKS="base udev block filesystems"
+#
+## This setup assembles a pata mdadm array with an encrypted root FS.
+## Note: See 'mkinitcpio -H mdadm' for more information on raid devices.
+# HOOKS="base udev block mdadm encrypt filesystems"
+#
+## This setup loads an lvm2 volume group on a usb device.
+# HOOKS="base udev block lvm2 filesystems"
+#
+## NOTE: If you have /usr on a separate partition, you MUST include the
+# usr, fsck and shutdown hooks.
+HOOKS=(base udev autodetect modconf block filesystems bcachefs keyboard fsck)
+
+# COMPRESSION
+# Use this to compress the initramfs image. By default, gzip compression
+# is used. Use 'cat' to create an uncompressed image.
+#COMPRESSION="gzip"
+#COMPRESSION="bzip2"
+#COMPRESSION="lzma"
+#COMPRESSION="xz"
+#COMPRESSION="lzop"
+#COMPRESSION="lz4"
+
+# COMPRESSION_OPTIONS
+# Additional options for the compressor
+#COMPRESSION_OPTIONS=""

View file

@ -1,16 +0,0 @@
post_upgrade() {
echo "If you haven't already, please manually add 'bcachefs' to mkinitcpio.conf variables 'MODULES=()' and 'HOOKS=()', and also add '/usr/bin/bcachefs' to 'BINARIES=()'"
echo "and then run 'mkinitcpio -p linux-bcachefs-git'"
}
post_install() {
echo "Please manually add 'bcachefs' to mkinitcpio.conf variables 'MODULES=()' and 'HOOKS=()', and also add '/usr/bin/bcachefs' to 'BINARIES=()'"
echo "and then run 'mkinitcpio -p linux-bcachefs-git'"
}
post_remove() {
echo "Please manually remove 'bcachefs' from mkinitcpio.conf variables 'MODULES=()' and 'HOOKS=()', and also remove '/usr/bin/bcachefs' from 'BINARIES=()'"
echo "and then run 'mkinitcpio -p linux-bcachefs-git'"
}
# vim:set ft=sh ts=8 sts=2 sw=2 et:

View file

@ -1,390 +0,0 @@
# Maintainer: Kyle De'Vir (QuartzDragon) <kyle[dot]devir[at]mykolab[dot]com>
# Original package maintainer: Jan Alexander Steffens (heftig) <heftig@archlinux.org>
### BUILD OPTIONS
# Set these variables to ANYTHING that is not null to enable them
# Set to force building with a particular commit ~ takes precedence over _bcachefs_branch
_bcachefs_commit=
# Set to force building with a particular branch
_bcachefs_branch=
# Tweak kernel options prior to a build via nconfig
_makenconfig=
# Optionally select a sub architecture by number if building in a clean chroot
# Leaving this entry blank will require user interaction during the build
# which will cause a failure to build if using makechrootpkg. Note that the
# generic (default) option is 40.
#
# Note - the march=native option is unavailable by this method, use the nconfig
# and manually select it.
#
# 1. AMD Opteron/Athlon64/Hammer/K8 (MK8)
# 2. AMD Opteron/Athlon64/Hammer/K8 with SSE3 (MK8SSE3)
# 3. AMD 61xx/7x50/PhenomX3/X4/II/K10 (MK10)
# 4. AMD Barcelona (MBARCELONA)
# 5. AMD Bobcat (MBOBCAT)
# 6. AMD Jaguar (MJAGUAR)
# 7. AMD Bulldozer (MBULLDOZER)
# 8. AMD Piledriver (MPILEDRIVER)
# 9. AMD Steamroller (MSTEAMROLLER)
# 10. AMD Excavator (MEXCAVATOR)
# 11. AMD Zen (MZEN)
# 12. AMD Zen 2 (MZEN2)
# 13. AMD Zen 3 (MZEN3)
# 14. AMD Zen 4 (MZEN4)
# 15. Intel P4 / older Netburst based Xeon (MPSC)
# 16. Intel Core 2 (MCORE2)
# 17. Intel Atom (MATOM)
# 18. Intel Nehalem (MNEHALEM)
# 19. Intel Westmere (MWESTMERE)
# 20. Intel Silvermont (MSILVERMONT)
# 21. Intel Goldmont (MGOLDMONT)
# 22. Intel Goldmont Plus (MGOLDMONTPLUS)
# 23. Intel Sandy Bridge (MSANDYBRIDGE)
# 24. Intel Ivy Bridge (MIVYBRIDGE)
# 25. Intel Haswell (MHASWELL)
# 26. Intel Broadwell (MBROADWELL)
# 27. Intel Skylake (MSKYLAKE)
# 28. Intel Skylake X (MSKYLAKEX)
# 29. Intel Cannon Lake (MCANNONLAKE)
# 30. Intel Ice Lake (MICELAKE)
# 31. Intel Cascade Lake (MCASCADELAKE)
# 32. Intel Cooper Lake (MCOOPERLAKE)
# 33. Intel Tiger Lake (MTIGERLAKE)
# 34. Intel Sapphire Rapids (MSAPPHIRERAPIDS)
# 35. Intel Rocket Lake (MROCKETLAKE)
# 36. Intel Alder Lake (MALDERLAKE)
# 37. Intel Raptor Lake (MRAPTORLAKE)
# 38. Intel Meteor Lake (MMETEORLAKE)
# 39. Intel Emerald Rapids (MEMERALDRAPIDS)
# 40. Generic-x86-64 (GENERIC_CPU)
# 41. Generic-x86-64-v2 (GENERIC_CPU2)
# 42. Generic-x86-64-v3 (GENERIC_CPU3)
# 43. Generic-x86-64-v4 (GENERIC_CPU4)
# 44. Intel-Native optimizations autodetected by the compiler (MNATIVE_INTEL)
# 45. AMD-Native optimizations autodetected by the compiler (MNATIVE_AMD)
_subarch=40
# Compile ONLY used modules to VASTLY reduce the number of modules built
# and the build time.
#
# To keep track of which modules are needed for your specific system/hardware,
# give module_db script a try: https://aur.archlinux.org/packages/modprobed-db
# This PKGBUILD read the database kept if it exists
#
# More at this wiki page ---> https://wiki.archlinux.org/index.php/Modprobed-db
_localmodcfg=
pkgbase=linux-bcachefs-git
pkgver=6.5.6.arch2.r1204794.77373a45a734
pkgrel=1
pkgdesc="Linux"
_srcver_tag=6.5.6.arch2
url="https://github.com/koverstreet/bcachefs"
arch=(x86_64)
license=(GPL2)
makedepends=(
bc
cpio
gettext
libelf
pahole
perl
python
tar
xz
# htmldocs
graphviz
imagemagick
python-sphinx
texlive-latexextra
)
options=('!strip')
_reponame="linux-bcachefs"
_repo_url="https://github.com/koverstreet/bcachefs.git"
_repo_url_arch="https://github.com/archlinux/linux.git"
_reponame_upstream="linux"
_repo_url_upstream="https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"
_reponame_kernel_patch="kernel_compiler_patch"
_repo_url_kernel_patch="https://github.com/graysky2/${_reponame_kernel_patch}.git"
_kernel_patch_name="more-uarches-for-kernel-5.17+.patch"
_pkgdesc_extra="~ featuring Kent Overstreet's bcachefs filesystem"
_kernel_base_string="${_reponame}::git+${_repo_url}"
if [ -n "${_bcachefs_commit}" ]; then
kernel_source_string="${_kernel_base_string}#commit=${_bcachefs_commit}"
elif [ -n "${_bcachefs_branch}" ]; then
kernel_source_string="${_kernel_base_string}#branch=${_bcachefs_branch}"
else
kernel_source_string="${_kernel_base_string}#branch=master"
fi
source=(
${kernel_source_string}
#"${_reponame_upstream}::git+${_repo_url_upstream}"
"git+${_repo_url_kernel_patch}"
config # the main kernel config file
)
validpgpkeys=(
ABAF11C65A2970B130ABE3C479BE3E4300411886 # Linus Torvalds
647F28654894E3BD457199BE38DBBDC86092693E # Greg Kroah-Hartman
A2FF3A36AAA56654109064AB19802F8B0D70FC30 # Jan Alexander Steffens (heftig)
C7E7849466FE2358343588377258734B41C31549 # David Runge <dvzrv@archlinux.org>
)
b2sums=('SKIP'
'SKIP'
'005c7e306101f99fc0211dbc7e63b13d37aec10d6e8aeb0120200894088e436cd9921675b7ae205df80d7505aceee3002c94ef9b2b1c6b4f571a24d1fd8678e5')
export KBUILD_BUILD_HOST=archlinux
export KBUILD_BUILD_USER=$pkgbase
export KBUILD_BUILD_TIMESTAMP="$(date -Ru${SOURCE_DATE_EPOCH:+d @$SOURCE_DATE_EPOCH})"
_make() {
test -s version
make KERNELRELEASE="$(<version)" "$@"
}
prepare() {
git config --global user.email "lilac@noreply.bgme.me"
git config --global user.name "Lilac"
cd "$srcdir/$_reponame"
msg2 "Fetch and merge stable tag from ${_repo_url_arch} ..."
git remote add arch_stable "${_repo_url_arch}" || true
git fetch arch_stable "v${_srcver_tag%.*}-${_srcver_tag##*.}"
git merge --no-edit --no-commit FETCH_HEAD
#msg2 "Fetch and merge tag ${_srcver_tag//.arch*/} from Linux stable upstream repository..."
#git remote add upstream_stable "${srcdir}/${_reponame_upstream}" || true
#git fetch upstream_stable $v{_srcver_tag//.arch*/}
#git merge --no-edit --no-commit FETCH_HEAD
msg2 "Setting version..."
echo "-$pkgrel" > localversion.10-pkgrel
echo "${pkgbase#linux}" > localversion.20-pkgname
pkgver > version
make defconfig
make -s kernelrelease
make mrproper
FullPatchesArray=(
$_reponame_kernel_patch/$_kernel_patch_name
)
for MyPatch in "${FullPatchesArray[@]}"
do
msg2 "Applying patch $MyPatch..."
patch -Np1 -i "$srcdir/$MyPatch"
done
msg2 "Setting config..."
cp ../config .config
if [ -n "$_subarch" ]; then
yes "$_subarch" | _make oldconfig
else
_make prepare
fi
### Optionally load needed modules for the make localmodconfig
# See https://aur.archlinux.org/packages/modprobed-db
if [ -n "$_localmodcfg" ]; then
if [ -f $HOME/.config/modprobed.db ]; then
msg2 "Running Steven Rostedt's make localmodconfig now"
_make LSMOD=$HOME/.config/modprobed.db localmodconfig
else
msg2 "No modprobed.db data found"
exit
fi
fi
# do not run 'make olddefconfig' as it sets default options
yes "" | _make config >/dev/null
msg2 "Showing config diff"
diff -u ../config .config || :
msg2 "Prepared $pkgbase version $(<version)"
[[ -z "$_makenconfig" ]] || _make nconfig
# save configuration for later reuse
cat .config > "$startdir/config.last"
}
pkgver() {
cd "${srcdir}/${_reponame}"
printf "%s.r%s.%s" "${_srcver_tag//-/.}" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
}
build() {
cd $_reponame
_make all
_make htmldocs
}
_package() {
pkgdesc="The $pkgdesc kernel and modules $_pkgdesc_extra"
depends=(
coreutils
initramfs
kmod
bcachefs-tools-git
)
optdepends=(
'wireless-regdb: to set the correct wireless channels of your country'
'linux-firmware: firmware images needed for some devices'
)
provides=(
KSMBD-MODULE
VIRTUALBOX-GUEST-MODULES
WIREGUARD-MODULE
)
replaces=(
virtualbox-guest-modules-arch
wireguard-arch
)
cd $_reponame
local modulesdir="$pkgdir/usr/lib/modules/$(<version)"
msg2 "Installing boot image..."
# systemd expects to find the kernel here to allow hibernation
# https://github.com/systemd/systemd/commit/edda44605f06a41fb86b7ab8128dcf99161d2344
install -Dm644 "$(_make -s image_name)" "$modulesdir/vmlinuz"
# Used by mkinitcpio to name the kernel
echo "$pkgbase" | install -Dm644 /dev/stdin "$modulesdir/pkgbase"
msg2 "Installing modules..."
ZSTD_CLEVEL=19 _make INSTALL_MOD_PATH="$pkgdir/usr" INSTALL_MOD_STRIP=1 \
DEPMOD=/doesnt/exist modules_install # Suppress depmod
# remove build and source links
rm "$modulesdir"/{source,build}
}
_package-headers() {
pkgdesc="Headers and scripts for building modules for the $pkgdesc kernel $_pkgdesc_extra"
depends=(pahole)
cd $_reponame
local builddir="$pkgdir/usr/lib/modules/$(<version)/build"
msg2 "Installing build files..."
install -Dt "$builddir" -m644 .config Makefile Module.symvers System.map \
localversion.* version vmlinux
install -Dt "$builddir/kernel" -m644 kernel/Makefile
install -Dt "$builddir/arch/x86" -m644 arch/x86/Makefile
cp -t "$builddir" -a scripts
# required when STACK_VALIDATION is enabled
install -Dt "$builddir/tools/objtool" tools/objtool/objtool
# required when DEBUG_INFO_BTF_MODULES is enabled
install -Dt "$builddir/tools/bpf/resolve_btfids" tools/bpf/resolve_btfids/resolve_btfids
msg2 "Installing headers..."
cp -t "$builddir" -a include
cp -t "$builddir/arch/x86" -a arch/x86/include
install -Dt "$builddir/arch/x86/kernel" -m644 arch/x86/kernel/asm-offsets.s
install -Dt "$builddir/drivers/md" -m644 drivers/md/*.h
install -Dt "$builddir/net/mac80211" -m644 net/mac80211/*.h
# https://bugs.archlinux.org/task/13146
install -Dt "$builddir/drivers/media/i2c" -m644 drivers/media/i2c/msp3400-driver.h
# https://bugs.archlinux.org/task/20402
install -Dt "$builddir/drivers/media/usb/dvb-usb" -m644 drivers/media/usb/dvb-usb/*.h
install -Dt "$builddir/drivers/media/dvb-frontends" -m644 drivers/media/dvb-frontends/*.h
install -Dt "$builddir/drivers/media/tuners" -m644 drivers/media/tuners/*.h
# https://bugs.archlinux.org/task/71392
install -Dt "$builddir/drivers/iio/common/hid-sensors" -m644 drivers/iio/common/hid-sensors/*.h
msg2 "Installing KConfig files..."
find . -name 'Kconfig*' -exec install -Dm644 {} "$builddir/{}" \;
msg2 "Removing unneeded architectures..."
local arch
for arch in "$builddir"/arch/*/; do
[[ $arch = */x86/ ]] && continue
echo "Removing $(basename "$arch")"
rm -r "$arch"
done
msg2 "Removing documentation..."
rm -r "$builddir/Documentation"
msg2 "Removing broken symlinks..."
find -L "$builddir" -type l -printf 'Removing %P\n' -delete
msg2 "Removing loose objects..."
find "$builddir" -type f -name '*.o' -printf 'Removing %P\n' -delete
msg2 "Stripping build tools..."
local file
while read -rd '' file; do
case "$(file -Sib "$file")" in
application/x-sharedlib\;*) # Libraries (.so)
strip -v $STRIP_SHARED "$file" ;;
application/x-archive\;*) # Libraries (.a)
strip -v $STRIP_STATIC "$file" ;;
application/x-executable\;*) # Binaries
strip -v $STRIP_BINARIES "$file" ;;
application/x-pie-executable\;*) # Relocatable binaries
strip -v $STRIP_SHARED "$file" ;;
esac
done < <(find "$builddir" -type f -perm -u+x ! -name vmlinux -print0)
echo "Stripping vmlinux..."
strip -v $STRIP_STATIC "$builddir/vmlinux"
msg2 "Adding symlink..."
mkdir -p "$pkgdir/usr/src"
ln -sr "$builddir" "$pkgdir/usr/src/$pkgbase"
}
_package-docs() {
pkgdesc="Documentation for the $pkgdesc kernel $_pkgdesc_extra"
cd $_srcname
local builddir="$pkgdir/usr/lib/modules/$(<version)/build"
msg2 "Installing documentation..."
local src dst
while read -rd '' src; do
dst="${src#Documentation/}"
dst="$builddir/Documentation/${dst#output/}"
install -Dm644 "$src" "$dst"
done < <(find Documentation -name '.*' -prune -o ! -type d -print0)
msg2 "Adding symlink..."
mkdir -p "$pkgdir/usr/share/doc"
ln -sr "$builddir/Documentation" "$pkgdir/usr/share/doc/$pkgbase"
}
pkgname=(
"$pkgbase"
"$pkgbase-headers"
"$pkgbase-docs"
)
for _p in "${pkgname[@]}"; do
eval "package_$_p() {
$(declare -f "_package${_p#$pkgbase}")
_package${_p#$pkgbase}
}"
done
# vim:set ts=8 sts=2 sw=2 et:

File diff suppressed because it is too large Load diff

View file

@ -1,13 +0,0 @@
#!/usr/bin/env python3
from lilaclib import *
def pre_build():
aur_pre_build()
for line in edit_file('PKGBUILD'):
if line.startswith('_subarch='):
line = '_subarch=40'
if line.startswith('prepare() {'):
line = line + '\n git config --global user.email "lilac@noreply.bgme.me"\n git config --global user.name "Lilac"\n'
print(line)

View file

@ -1,18 +0,0 @@
maintainers:
- github: yingziwu
email: i@bgme.me
repo_depends:
- bcachefs-tools-git
time_limit_hours: 3
build_prefix: extra-x86_64
post_build: aur_post_build
update_on:
- source: aur
aur: linux-bcachefs-git
- source: github
github: koverstreet/bcachefs

View file

@ -2,9 +2,6 @@ maintainers:
- github: yingziwu
email: i@bgme.me
repo_depends:
- libscrypt
build_prefix: extra-x86_64
pre_build: aur_pre_build
@ -13,6 +10,8 @@ post_build: aur_post_build
update_on:
- source: aur
aur: bcachefs-tools-git
- source: github
github: koverstreet/bcachefs-tools
aur: linux-git
- source: git
git: https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux
use_commit: true
lilac_throttle: 1d