SaaSHub helps you find the best software and product alternatives Learn more →
Nbdkit Alternatives
Similar projects and alternatives to nbdkit
-
-
InfluxDB
InfluxDB – Built for High-Performance Time Series Workloads. InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.
-
-
-
-
-
-
Stream
Stream - Scalable APIs for Chat, Feeds, Moderation, & Video. Stream helps developers build engaging apps that scale to millions with performant and flexible Chat, Feeds, Moderation, and Video APIs and SDKs powered by a global edge network and enterprise-grade infrastructure.
-
bfg-repo-cleaner
Removes large or troublesome blobs like git-filter-branch does, but faster. And written in Scala
-
dasel
Select, put and delete data from JSON, TOML, YAML, XML and CSV files with a single tool. Supports conversion between formats and can be used as a Go package.
-
-
jless
jless is a command-line JSON viewer designed for reading, exploring, and searching through JSON data.
-
-
memset_benchmark
This repository contains high-performance implementations of memset and memcpy in assembly.
-
static-analysis
⚙️ A curated list of static analysis (SAST) tools and linters for all programming languages, config files, build tools, and more. The focus is on tools which improve code quality.
-
-
dattobd
kernel module for taking block-level snapshots and incremental backups of Linux block devices
-
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
nbdkit discussion
nbdkit reviews and mentions
-
First Come First Served: The Impact of File Position on Code Review
You can't do that in github as far as I know, but you can get git to display diffs that way (eg. for local review or email based workflows). You have to use a git "orderfile". Example:
https://gitlab.com/nbdkit/nbdkit/-/blob/master/scripts/git.o...
-
Vramfs: Vram Based Filesystem for Linux
Tom used nbdkit, which would have been a better choice here. You could probably make a VRAM plugin in a few minutes if you knew what the read & write calls are: https://gitlab.com/nbdkit/nbdkit/-/blob/6017ba21aeeb3d7ad859...
-
Stupid Smart Pointers in C
Correct. You can use it in a simple way to free memory, but we've also used it to create function-scoped locks[1].
This being C, it's not without its problems. You cannot use it for values that you want to return from the function (as you don't want those to be freed), so any such variables cannot be automatically cleaned up on error paths either. Also there's no automated checking (it's not Rust!)
[1] https://gitlab.com/nbdkit/nbdkit/-/blob/8b36e5a2ea331eed2a73...
- Type-erased generic functions for C: A modest non-proposal
-
Mkfs.fat on Linux vs. OS/2 2.1
I thought someone had sent me a fix for this in the distant past, but I can't find the "MSDOSxxx" label in the source. However the custom generator should be easy to fix:
https://gitlab.com/nbdkit/nbdkit/-/tree/master/plugins/flopp...
However one definite restriction is it only serves FAT32 (not FAT12), which could be a dealbreaker for really old guests like this.
-
Show HN: Hosting my website using my own C web server
If you control the client, you can make webservers that are very small indeed. Here's one we use for local testing, where we know the client will be libcurl and know exactly what requests will be made: https://gitlab.com/nbdkit/nbdkit/-/blob/master/tests/web-ser... Basically 600 LoC.
- Windows NT vs. Unix: A design comparison
-
Twenty Years of Valgrind
Yes, we use suppression files to cover expected leaks, as well as bugs in other code that is annoying to fix.
For example the OCaml suppressions here are because OCaml (as expected) doesn't free static allocations at program exit. You can also see some real bugs we found:
https://gitlab.com/nbdkit/nbdkit/-/tree/master/valgrind?ref_...
-
Why AWS Supports Valkey
This is correct, but doesn't quite explain why. It's because when you accept contributions from a variety of authors, without using a CLA, then your code base ends up with a patchwork of copyright, making relicensing practically impossible as you have to get buy-in from every author or else determine that author's contributions and remove/rewrite them.
GPL/LGPL are excellent licenses, but this patchwork of copyright can apply for any license you use. For a small project we wrote which was under BSD, we recently had to make a small (non-functional) change to the license, and we got buy-in from all the authors to do this which took quite a long time: https://gitlab.com/nbdkit/nbdkit/-/commit/952ffe0fc7685ea775...
-
Disk write buffering and its interactions with write flushes
That second link is wrong, should be: https://gitlab.com/nbdkit/nbdkit/-/commit/a956e2e75d6c88eeef...
-
A note from our sponsor - SaaSHub
www.saashub.com | 18 Jul 2025