Package Details: btrfs-progs-git 4.0.1_r70_g6044757-1

Git Clone URL: (read-only)
Package Base: btrfs-progs-git
Description: Btrfs filesystem utilities
Upstream URL:
Licenses: GPL
Conflicts: btrfs-progs
Provides: btrfs-progs
Submitter: None
Maintainer: WorMzy
Last Packager: WorMzy
Votes: 64
Popularity: 0.006535
First Submitted: 2008-12-27 21:29
Last Updated: 2015-06-08 20:29

Dependencies (7)

Required by (29)

Sources (3)

Latest Comments

Soukyuu commented on 2016-05-22 17:49

Yes, thanks for the heads-up. I reported it on the mailing list, but didn't have time to post here.

WorMzy commented on 2016-05-21 22:16

Just FYI, this problem has been fixed now:

WorMzy commented on 2016-05-17 16:04

Strange, I can reproduce this, but only outside of a clean chroot. I beleive that it is caused by this commit:;h=ebe5b1cc7885027521db3c1d16d84bd54cc1321b

You should report it upstream. You could fix it by modifying the makefile in the prepare function, but I don't want to do this for a -git package.

Soukyuu commented on 2016-05-17 15:33

Can't seem to build this:

/usr/bin/install -c -m644 -d 64-btrfs-dm.rules /home/myuser/aur/btrfs-progs-git/pkg/btrfs-progs-git/usr/lib/udev/rules.d
/usr/bin/install: cannot create directory ‘64-btrfs-dm.rules’: File exists
Makefile:400: recipe for target 'install' failed
make: *** [install] Error 1
==> ERROR: A failure occurred in package()

WorMzy commented on 2014-06-29 15:21

For a while now, this package has basically become a mirror of the btrfs-progs package in core/, and the integration branches have become what this used to be, albeit somewhat more experimental.

Unless anyone has any objections, I will change the PKGBUILD to pull in the btrfs-progs release candidates form the unstable repository. The latest of these is currently 3.15-rc3 [1], and lags behind integration-20140627 by about 50 commits.

This will mean that this package will potentially less stable (the hint was in the repository name), and may come as a shock to some users; especially since, historically, this package was recommended over core/ due to upstream stalling at v0.19/v0.20-rc1.

If you want to keep using stable btrfs-progs, I recommend that you use the package in core/.

Anyone who wants to test the new PKGBUILD before it goes live, can find it here: [2].



WorMzy commented on 2013-11-26 21:07

I dropped the changelog from this package, it'd be too difficult to maintain it for an active git branch. Just use git log.

WorMzy commented on 2013-11-13 21:17

It appears he is. Anyone who wants/needs bleeding edge btrfs progs should switch to btrfs-progs-unstable-integration, people who want to play it safe should stick with this package. In either case, I recommend that you subscribe to the btrfs mailing list and use an up-to-date kernel (preferably mainline).

I have started generating changelogs and bundling them with the packages, so

pacman -Qc btrfs-progs-git | less -R

will give you a vague indication of what's changed recently (I include the last 50 commits). If you want more information, cd into your local copy of btrfs-progs and run 'git log'.

WorMzy commented on 2013-11-12 00:36

I've updated the PKGBUILD to include the check function I added to the unstable package. If the check fails, something went wrong. Check your RAM, etc., and rebuild, but don't install and use the failed package, you'll probably end up with a corrupted filesystem. If you think the checks are wrong, ask upstream first, I don't want anyone to lose data.

Incidentally, this package is now more current than the unstable package, so.. yeah. Use this one for now. I'm not sure if David will be carrying on with his integration snapshots now that Chris has updated master (I hope he will!), so stay tuned.

WorMzy commented on 2013-09-09 17:36

I've still not had chance to test that the hooks work, so use them at your own risk. This pkgver bump was more to add btrfs-select-super, which WonderWoofy pointed out needs to be explicitly built and installed manually.

If there are any other tools that can be built but aren't by default, and you think would be useful, please let me know.

WorMzy commented on 2013-09-06 01:25

Just an FYI: I updated the PKGBUILD with the mkinitcpio hook a week or so ago, but I've not had chance to test it yet. Anyone interested in testing it can download it from here:

WonderWoofy commented on 2013-08-22 03:01

These days, having udev or systemd in your initramfs is IMO a no brainer. But I also know that there are people out there who vehemently oppose perceived over-complication. Personally I wouldn't get use out of it, but I just noticed that it was something that the Arch package included, but this one doesn't. Considering that this package is much more useful to a true btrfs user than the Tom Gunderson's in [core], I just thought it might be a nice thing to include.

Tom has recently inquired on the btrfs-devel list about having some kind of a "release" structure, so that it would be more clear about when his package should be updated. Apparently, the last real release was v19 and that was a few years ago. Sometimes, updates of the featureset in the kernel require a "matching" btrfs-progs to make use of the features. For example, I use send/receive, yet last I checked, this was not included in the Arch package. I think too that skinny extents cannot be enabled by the btrfs-progs package either.

WorMzy commented on 2013-08-20 15:46

Some one else asked about it back in May. I can add it if you think it will be useful, but I don't use it, so I can't guarantee it will always work.

WonderWoofy commented on 2013-08-18 00:34

WorMzy, I don't actually use them, but the official package includes a 'btrfs' mkinitpcio hook, which is intended to be used with initramfs' w/o udev (for multi device btrfs filesystems). Have you ever thought to add those to your package?

I just got really confused the other day when a friend was asking about whether nor not to use it. I was going to copy/paste the output of 'mkinitpcio -H btrfs' to him, but it wasn't there. It took me a minute or so to realize that it was because the hook was provided by the btrfs-progs package.

WorMzy commented on 2013-06-12 15:46

Seems like a reasonable addition, and I note that the same thing is implemented in the official PKGBUILD. Done. :)

aya commented on 2013-06-04 16:00

oops. rebooted and ${pkgname/-git} worked for me as well. It really should have.
Maybe take into account $CFLAGS?
make CFLAGS="$CFLAGS" all btrfs-zero-log

WorMzy commented on 2013-06-03 22:57

/-git Works fine here.

After re-reading the Parameter Expansion section of the bash manpage though, %-git is probably the better choice, so I'll make the change.

aya commented on 2013-06-03 14:11


This seem to be causing problems

$ makepkg
==> Making package: btrfs-progs-git v0.20.rc1.324.g650e656-2 (Mon Jun 3 22:45:45 JST 2013)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
-> Updating btrfs-progs git repo...
Fetching origin
==> Validating source files with md5sums...
btrfs-progs ... Skipped
==> Extracting sources...
-> Creating working copy of btrfs-progs git repo...
Cloning into 'btrfs-progs'...
error: cannot run git-upload-pack '/home/testy/building/btrfs-progs-git/btrfs-progs': No such file or directory
fatal: unable to fork
==> ERROR: Failure while creating working copy of btrfs-progs git repo

worked for me.

WorMzy commented on 2013-05-28 15:22

I assume the original submitter decided to omit it because it's basically useless, and I'm more than happy to maintain the status quo in that regard.

If you have a multi-device btrfs root partition and don't want udev in your initramfs for some reason, then you could always use the mkinitcpio-btrfs AUR package or manually package the btrfs-progs's mkinitcpio hooks.

WorMzy commented on 2013-05-28 15:22

I assume the original submitter decided to omit it because it's basically useless, and I'm more than happy to maintain the status quo in that regard.

In the meantime, if you have a multi-device btrfs root partition and don't want udev in your initramfs for some reason, then you could always use the mkinitcpio-btrfs AUR package or manually package the btrfs-progs's mkinitcpio hooks.

ImNtReal commented on 2013-05-28 14:47

Why isn't the mkinitcpio hook included in this package?

WorMzy commented on 2013-05-25 14:08

I've changed the install directory for binaries from /sbin to /usr/bin in preparation for the changes that will be happening to Arch Linux filesystem hierarchy in the not too distant future. Let me know in the comments if this causes any problems (it shouldn't).

WorMzy commented on 2013-04-07 19:08

Please update the PKGBUILD to make use of pacman 4.1 CVS PKGBUILD features. Here's one I made earlier, feel free to use it:

Anonymous comment on 2013-03-20 03:02

Needs a new dependency - lzo2

aya commented on 2012-04-02 15:26

yes, perfect. works

Anonymous comment on 2012-03-29 00:56

Thanks for the heads up. Give this a go plz.

graysky commented on 2012-03-28 20:01

/scratch/src/btrfs-progs-unstable-build/convert.c:2665: undefined reference to `close_ctree'
/scratch/src/btrfs-progs-unstable-build/convert.c:2683: undefined reference to `find_first_extent_bit'
/scratch/src/btrfs-progs-unstable-build/convert.c:2688: undefined reference to `get_state_private'
/scratch/src/btrfs-progs-unstable-build/convert.c:2691: undefined reference to `clear_extent_bits'
/scratch/src/btrfs-progs-unstable-build/convert.c:2745: undefined reference to `extent_io_tree_cleanup'
convert.o: In function `main':
/scratch/src/btrfs-progs-unstable-build/convert.c:2799: undefined reference to `check_mounted'
collect2: ld returned 1 exit status
make: *** [convert] Error 1
==> ERROR: A failure occurred in build().

Anonymous comment on 2011-12-03 16:56

No it doesn't fail.
check $pkgdir/sbin after build (and /sbin after install)
btrfs-zero-log IS there and has been since i took package over.
(note the MAKE line in PKGBUILD)

Anonymous comment on 2011-12-03 08:45

If you're getting this because you need btrfs-zero-log, notice that this fails currently. The Makefile in git doesn't build btrfs-zero-log, and as a consequence the install defined in PKGBUILD fails. If you need btrfs-zero-log, get the source directory and execute "make btrfs-zero-log" in it, that will give you the program.
I don't know why upstream excludes it from the programs that it builds.

coolkehon commented on 2011-10-31 22:29

url needs to be updated.

eworm commented on 2011-10-29 16:58

The progs have a new home:


Please update your PKGBUILD! Thanks a lot!

bruce commented on 2011-10-05 12:16

Also worth trying: git:// if anyone needs it :-)
(Gitweb at: )

Anonymous comment on 2011-09-19 18:33

I created a temp mirror for the git repo at . Note: I am not affiliated in any way to btrfs devs nor am I a programmer. I am just hosting the git repo I had in my HDD untill is up.

Phlogiston commented on 2011-09-19 17:40

Can anyone provide a pre-compiled package of this for 64bit? I need the package to fix my broken btrfs volume, but is still down.

Anonymous comment on 2011-08-14 22:12

also includes btrfs-zero-log as talked about in wiki under troubleshooting

hellnest commented on 2011-07-02 11:35

Anyone got this workin?

Tomato commented on 2011-06-29 19:21

There's an integration branch with nearly all patches (including the compile fixes) to btrfs tools applied at integration-20110626

eworm commented on 2011-04-26 09:03

This is the latest code we have I think. Chris Mason is working on a functional fsck, I think everything is merged to git as soon as his code is released.
However I would vote to include compile fixes in this aur package...

misc commented on 2011-04-13 15:15

Is btrfs-progs repo still maintained? The last change in the git is from last October.

Patchwork however lists occasional uncommitted patches, including this one without which compilation with gcc 4.6 fails:

Anonymous comment on 2011-01-09 17:49

Thanks. I have updated PKGBUILD using your pasterbin example.

Det commented on 2011-01-09 17:29

The first package() line doesn't have quotes: cd $srcdir/$_gitname-build - should be: "cd $srcdir/$_gitname-build" (it could even fact be just: "cd $_gitname-build" - since all the functions are started in "$srcdir").

There's some other minor tweaking with the PKGBUILD: (commented one:

xtfxme commented on 2010-09-30 02:20

could you please add 'btrfs-progs' to provides array; -unstable doesn't exist (thats the purpose of -git)

Anonymous comment on 2010-09-27 10:41

Updated PKGBUILD. Thanks to falconindy.

falconindy commented on 2010-09-24 02:40

There's a lot of issues with this PKGBUILD as far as upholding Arch standards. Please consider using the PKGBUILD linked below:

echoblack commented on 2010-06-15 06:32

Well nevermide I got it to build by adding #include <sys/stat.h> to btrfsck.c … 05156.html

echoblack commented on 2010-06-15 06:25

Hum, I can't seem to build this. I get this and the full out put is in the uploaded txt file.

cc1: warnings being treated as errors
btrfsck.c: In function ‘maybe_free_inode_rec’:
btrfsck.c:323:2: error: implicit declaration of function ‘S_ISDIR’
btrfsck.c:328:2: error: implicit declaration of function ‘S_ISREG’
btrfsck.c:328:2: error: implicit declaration of function ‘S_ISLNK’
make: *** [btrfsck.o] Error 1