diff options
-rw-r--r-- | .SRCINFO | 4 | ||||
-rw-r--r-- | PKGBUILD | 18 | ||||
-rw-r--r-- | ad41c2fb76a96f772d75f3b4b7687fcd29aa0574.patch | 130 |
3 files changed, 145 insertions, 7 deletions
@@ -1,6 +1,6 @@ pkgbase = bcachefs-tools-git pkgdesc = bcachefs filesystem utilities - pkgver = 395 + pkgver = 414 pkgrel = 1 url = https://evilpiepirate.org/git/bcachefs-tools.git/ arch = x86_64 @@ -16,7 +16,9 @@ pkgbase = bcachefs-tools-git makedepends = liburcu provides = bcachefs-tools source = git+https://evilpiepirate.org/git/bcachefs-tools + source = ad41c2fb76a96f772d75f3b4b7687fcd29aa0574.patch sha512sums = SKIP + sha512sums = 0468db1a0b50fd368c0ded997c027ae87178f53293543151510f9683f3435c949462ee5c5f57fc1b790d304a01f2c9ece1cb893b6afc5f6e285ea39d01a95a24 pkgname = bcachefs-tools-git @@ -1,7 +1,7 @@ # Maintainer: Kyle De'Vir (QuartzDragon) <kyle[dot]devir[at]mykolab[dot]com> pkgname=bcachefs-tools-git -pkgver=395 +pkgver=414 pkgrel=1 pkgdesc="bcachefs filesystem utilities" url="https://evilpiepirate.org/git/bcachefs-tools.git/" @@ -11,8 +11,10 @@ license=("GPL2") provides=("bcachefs-tools") makedepends=("git" "libscrypt" "libsodium" "attr" "libutil-linux" "keyutils" "pkgconf" "zlib" "liburcu") -source=("git+https://evilpiepirate.org/git/bcachefs-tools") -sha512sums=('SKIP') +source=("git+https://evilpiepirate.org/git/bcachefs-tools" + "ad41c2fb76a96f772d75f3b4b7687fcd29aa0574.patch") +sha512sums=('SKIP' + '0468db1a0b50fd368c0ded997c027ae87178f53293543151510f9683f3435c949462ee5c5f57fc1b790d304a01f2c9ece1cb893b6afc5f6e285ea39d01a95a24') pkgver() { cd bcachefs-tools @@ -20,11 +22,13 @@ pkgver() { echo $(git rev-list --count HEAD) } -build() { +prepare() { cd bcachefs-tools + patch -Np1 < ../ad41c2fb76a96f772d75f3b4b7687fcd29aa0574.patch +} - #export CFLAGS="-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -fno-plt" - #export CXXFLAGS="-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -fno-plt" +build() { + cd bcachefs-tools make } @@ -33,4 +37,6 @@ package() { cd bcachefs-tools 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" } diff --git a/ad41c2fb76a96f772d75f3b4b7687fcd29aa0574.patch b/ad41c2fb76a96f772d75f3b4b7687fcd29aa0574.patch new file mode 100644 index 000000000000..a930780763fe --- /dev/null +++ b/ad41c2fb76a96f772d75f3b4b7687fcd29aa0574.patch @@ -0,0 +1,130 @@ +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/ash ++ ++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="" + |