On Sat, Mar 3, 2012 at 4:47 PM, Dave Reisner <d@falconindy.com> wrote:
e2fsprogs makes a lot of hardlinks for its fsck tools. If ext[234] is detected, add the fsck.ext4 binary and add symlinks.
Signed-off-by: Dave Reisner <dreisner@archlinux.org> --- I'm not thrilled with the ext[234] hack, but I also don't like the idea of duplicating hardlinks as separate files on the image.
Looks good to me; if mkfs.ext? binaries ever appear in initcpio images the same would apply there as well.
install/fsck | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/install/fsck b/install/fsck index 9d9943b..b820063 100644 --- a/install/fsck +++ b/install/fsck @@ -3,12 +3,22 @@ build() { local added=0
+ add_fsck() { + if [[ $1 = ext[234] ]]; then + add_binary fsck.ext4 + add_symlink /usr/bin/fsck.ext2 fsck.ext4 + add_symlink /usr/bin/fsck.ext3 fsck.ext4 + else + add_binary "fsck.$1" + fi + } + if (( ! fs_autodetect_failed )) && [[ $rootfstype$usrfstype ]]; then if [[ $rootfstype ]]; then - add_binary fsck.$rootfstype && (( ++added )) + add_fsck $rootfstype && (( ++added )) fi if [[ $usrfstype && $usrfstype != $rootfstype ]]; then - add_binary fsck.$usrfstype && (( ++added )) + add_fsck $usrfstype && (( ++added )) fi else for fsck in "$BASEDIR"/sbin/fsck.*; do -- 1.7.9.2