Search Criteria
Package Details: bcachefs-kernel-dkms-git 1:20260302131047.6ebab1b41eda-1
Package Actions
| Git Clone URL: | https://aur.archlinux.org/bcachefs-kernel-dkms-git.git (read-only, click to copy) |
|---|---|
| Package Base: | bcachefs-kernel-dkms-git |
| Description: | Bcachefs DKMS module from upstream bcachefs kernel sources |
| Upstream URL: | https://github.com/koverstreet/bcachefs |
| Licenses: | GPL-2.0-only |
| Conflicts: | bcachefs-dkms, bcachefs-git, bcachefs-source-git |
| Provides: | bcachefs-dkms |
| Submitter: | neycrol |
| Maintainer: | None |
| Last Packager: | neycrol |
| Votes: | 2 |
| Popularity: | 0.29 |
| First Submitted: | 2025-12-09 15:11 (UTC) |
| Last Updated: | 2026-03-03 09:20 (UTC) |
Dependencies (4)
- dkms (dkms-gitAUR)
- git (git-gitAUR, git-glAUR, git-wd40AUR) (make)
- bcachefs-tools (bcachefs-tools-gitAUR) (optional) – userspace utilities for bcachefs filesystem
- clang (llvm-gitAUR, clang-minimal-gitAUR, clang17-binAUR) (optional) – required when building against clang-built kernels
Latest Comments
1 2 Next › Last »
intelfx commented on 2026-03-23 14:10 (UTC)
Let's probably discuss this on the bcachefs-tools-git package page.
ticpu commented on 2026-03-22 03:45 (UTC)
@intelfx, I believe the best course of action would simply be to revert the tools one to prior the split. It was still working fine for me. I only noticed the split because other users complained dkms weren't getting installed on the latest version.
intelfx commented on 2026-03-17 08:15 (UTC)
@ticpu
so the thing is, right now
bcachefs-tools-gitdoes not ship any DKMS at all, that's what I wanted to change in the first place.neycrol commented on 2026-03-17 03:18 (UTC)
Until my current situation stabilizes, I likely won't be able to maintain my other packages either. Most of them were just uploaded for personal use and weren't originally intended for public release. If anyone has any specific needs or questions regarding my other packages, please feel free to drop me an email.
neycrol commented on 2026-03-17 03:10 (UTC)
Thanks to ticpu and intelfx for the feedback — you're both right. This package was originally something I maintained for personal use (I wanted to test bleeding-edge bcachefs features directly from the kernel tree, even ahead of bcachefs-tools). There's no good reason to push that workflow onto other users.
Due to personal circumstances, I won't be able to maintain this package for the foreseeable future. I'm orphaning it now. If anyone wants to pick it up, I'd suggest either switching the source to bcachefs-tools.git as intelfx mentioned, or folding it back into bcachefs-tools with DKMS support. Otherwise, feel free to let it go — bcachefs-tools-git with DKMS may already cover most users' needs.
ticpu commented on 2026-03-17 02:54 (UTC)
I agree with intelfx that since it was split from bcachefs-tools it became all very confusing for existing users. Many are still using bcachefs-tools-cit for dkms since there wasn't any hard break to migrate users.
What was the motivation for the split? Tools and kernel module should always be in sync anyway.
intelfx commented on 2026-03-16 16:04 (UTC) (edited on 2026-03-16 16:06 (UTC) by intelfx)
Hi. Is there any specific reason for this package being the way it is, grabbing sources directly from bcachefs.git?
I talked to Kent on #bcachefs and he says that people are not supposed to use https://github.com/koverstreet/bcachefs.git directly. The testable snapshots are what's in in bcachefs-tools.git master.
neycrol commented on 2026-03-03 09:25 (UTC) (edited on 2026-03-03 09:36 (UTC) by neycrol)
@ticpu Thanks for the pushback.You’re right that this package is a special case.I changed course after additional package-specific build testing.
I’ve switched to a package-local fetch path in
prepare()(plaingit, notsource=git+...): shallow + sparse checkout forfs/bcachefsonly. That keeps the intended DKMS module output while avoiding full kernel-history downloads for first installs / CI / metered links.Tradeoffs (explicit): - this is outside makepkg’s default VCS flow - network happens in
prepare()-pkgveris now UTC commit timestamp + short hash (shallow history cannot provide stable full rev count) -epoch=1is kept for upgrade-order continuity with already-published versionsSafety guards added: - fetch lock + timeout - retry + auto re-clone on broken local source state - package-time version drift check - symlink/type guard for
module-version.cSo this is not a blanket policy for all -git packages; it is a targeted fix for this large-repo/small-module case. If makepkg gains stable native support for this case, I’m happy to switch back.
ticpu commented on 2026-03-01 20:49 (UTC) (edited on 2026-03-01 20:50 (UTC) by ticpu)
Thanks for the research, I see there has been some work towards a working solution but no fix we can use on all packages yet.
To clarify: the approach I'm suggesting doesn't use source=git+... or any makepkg VCS handling. It's plain git init + git fetch --depth=1 --filter=tree:0 + sparse-checkout in prepare(), just shell calling git directly. The GITFLAGS breakages don't apply here.
Allan's "write your own downloader" is exactly what this is. It downloads fs/bcachefs/ instead of the entire Linux kernel history. Same build output, a fraction of the data.
SRCDEST helps on repeat builds on one machine. It doesn't help first installs, CI, or metered connections. At some point "we can't do it in the framework" shouldn't be the reason users download gigabytes to build a 300KB module.
What are the impacts you see of doing the fetch ourselves in prepare() until a consensus is made for other packages? This package isn't pulling a small repo, it's the whole linux tree which is a very different concern than most others.
Incidentally, the PKGBUILD(5) manual (your ref #1) explicitly states that manual repository cloning in prepare() is the documented approach for cases where the standard source= handling doesn't fit.
neycrol commented on 2026-03-01 14:16 (UTC) (edited on 2026-03-01 15:43 (UTC) by neycrol)
@ticpu Thanks for raising this, and for sharing the logs.
You’re absolutely right that the initial sync can be painful on slower or metered connections.
I took another careful look at this before deciding. For now, I’m keeping this package on the default makepkg VCS path rather than adding package-local shallow/sparse fetch logic in
pkgver()/prepare(). The main reason is compatibility and predictability: makepkg expects VCS handling through the standard flow [1], and shallow-related support that existed before was later removed after compatibility concerns [2][3][4]. In the latest pacman discussion I could verify (Work Item #307, note#note_423701, checked on March 1, 2026), native shallow support is still described as not currently planned [5].So in the short term, I’m keeping the package aligned with that default behavior. For users who want to keep tracking the latest
-gitrevisions, a persistentSRCDESTcache [6] lets makepkg reuse VCS sources between builds. This reduces repeated-download churn while still following upstream updates (the first full VCS transfer is still unavoidable).If upstream makepkg behavior changes in the future, I’m happy to revisit this package.
References: 1. PKGBUILD(5): VCS sources in
source=()2. pacman commit: addGITFLAGS(2022) 3. pacman commit: removeGITFLAGS(2024) 4. MR !182 rationale for removingGITFLAGS5. pacman Work Item #307 maintainer note (#note_423701) 6. makepkg.conf(5):SRCDEST1 2 Next › Last »