HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
diskuv
dk
CMake2025–2025
diskuv / dk

dk

A build system.

2Distinct people
4Mentions
0Explicit recommenders
15GitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

A build system.

GitHub

Where it is used

No documented product use has been verified yet.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 1:49:46 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by week4 dated mentions

Observed mentions: 2025-06-16 14:49:34 UTC to 2025-10-27 13:39:39 UTC. Weeks start Monday, UTC.

012025-06-16 00:00:00 UTC to 2025-06-23 00:00:00 UTC (exclusive): 1 mentions; 1 submissions, 0 commentsJun 162025-06-23 00:00:00 UTC to 2025-06-30 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-06-30 00:00:00 UTC to 2025-07-07 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-07-07 00:00:00 UTC to 2025-07-14 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-07-14 00:00:00 UTC to 2025-07-21 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-07-21 00:00:00 UTC to 2025-07-28 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-07-28 00:00:00 UTC to 2025-08-04 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-08-04 00:00:00 UTC to 2025-08-11 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-08-11 00:00:00 UTC to 2025-08-18 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-08-18 00:00:00 UTC to 2025-08-25 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 commentsAug 182025-08-25 00:00:00 UTC to 2025-09-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-09-01 00:00:00 UTC to 2025-09-08 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-09-08 00:00:00 UTC to 2025-09-15 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-09-15 00:00:00 UTC to 2025-09-22 00:00:00 UTC (exclusive): 1 mentions; 1 submissions, 0 comments2025-09-22 00:00:00 UTC to 2025-09-29 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-09-29 00:00:00 UTC to 2025-10-06 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-10-06 00:00:00 UTC to 2025-10-13 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-10-13 00:00:00 UTC to 2025-10-20 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-10-20 00:00:00 UTC to 2025-10-27 00:00:00 UTC (exclusive): 1 mentions; 1 submissions, 0 comments2025-10-27 00:00:00 UTC to 2025-11-03 00:00:00 UTC (exclusive): 1 mentions; 1 submissions, 0 commentsOct 27

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
Jun 162025-06-16 00:00:00 UTC2025-06-23 00:00:00 UTC110
Jun 232025-06-23 00:00:00 UTC2025-06-30 00:00:00 UTC000
Jun 302025-06-30 00:00:00 UTC2025-07-07 00:00:00 UTC000
Jul 72025-07-07 00:00:00 UTC2025-07-14 00:00:00 UTC000
Jul 142025-07-14 00:00:00 UTC2025-07-21 00:00:00 UTC000
Jul 212025-07-21 00:00:00 UTC2025-07-28 00:00:00 UTC000
Jul 282025-07-28 00:00:00 UTC2025-08-04 00:00:00 UTC000
Aug 42025-08-04 00:00:00 UTC2025-08-11 00:00:00 UTC000
Aug 112025-08-11 00:00:00 UTC2025-08-18 00:00:00 UTC000
Aug 182025-08-18 00:00:00 UTC2025-08-25 00:00:00 UTC000
Aug 252025-08-25 00:00:00 UTC2025-09-01 00:00:00 UTC000
Sep 12025-09-01 00:00:00 UTC2025-09-08 00:00:00 UTC000
Sep 82025-09-08 00:00:00 UTC2025-09-15 00:00:00 UTC000
Sep 152025-09-15 00:00:00 UTC2025-09-22 00:00:00 UTC110
Sep 222025-09-22 00:00:00 UTC2025-09-29 00:00:00 UTC000
Sep 292025-09-29 00:00:00 UTC2025-10-06 00:00:00 UTC000
Oct 62025-10-06 00:00:00 UTC2025-10-13 00:00:00 UTC000
Oct 132025-10-13 00:00:00 UTC2025-10-20 00:00:00 UTC000
Oct 202025-10-20 00:00:00 UTC2025-10-27 00:00:00 UTC110
Oct 272025-10-27 00:00:00 UTC2025-11-03 00:00:00 UTC110

What Hacker News says

4 sources
beckford·Sep 18, 2025Submission

Show HN: dk, a Windows-friendly, Nix-like build system

Today there is no nix for Windows, and Docker with Windows containers hasn't had real adoption. dk is both a build system and a scripting language. This Show HN is about dk's new build system which builds packages declared in JSON files. You can write the JSON files by hand or use your favorite language to generate them. dk has some unusual differences from other build and package managers: Windows, macOS and Linux are supported equally. Minimizing supply chain security risk is a focus. Packages can be based on binary assets. Incremental adoption by language communities is a goal. There is a reference implementation written in OCaml, a from-scratch walkthrough the writes the JSON build files for the somewhat random package (7zip), some security principles, and a specification document. The reference implementation and the spec are primari
Read the rest
ly to help port the dk build tool to other languages for incremental adoption. I'd like to get feedback before I launch a community package registry. There are two feedback areas in particular: 1. I suspect there will be some controversy about asking package authors to use their real names and/or pay a micropayment to validate their identities (ex. $1 a year), even though I think controls like these are required for any semblance of supply chain security. 2. I have heard complaints about nix's lack of static typing. A JSON-based build system suffers from the same issue. One possibility is to add JSON schema. Another is to couple the build system with the OCaml-based scripting system in dk, like how the nix functional language is coupled to nix derivations. But I have been hesitant to do that coupling since it would be harder for language communities to incrementally adopt the build system.
1 points · Open discussion
beckford·Jun 16, 2025Submission

Show HN: dk – A script runner and cross-compiler, written in OCaml

I've always found it cool to be in roles where I can help a younger generation learn skills to have a bright future. That role is something I do in a few ways (as a parent, robotics mentor, school board advisor and Sunday school teacher) and I suspect most HN readers share the same role and appreciation. And for developing software skills, it was obvious that both the students and I had to have a productive software environment where we could work together. That theme of experienced/inexperienced engineers working together is the context in which I created `dk` as a scripting tool. My testing ground has been students with one or two AP CS courses (high school computer science in the US), some of whom interned with me. I had to tackle a few problems: - The development environment had to be simple to setup and the programming language could
Read the rest
n't be complicated - The recognition that writing small, easily testable units of work (ex. "scripts") has been the only way I've found for very junior programmers to develop a large application - Cheap, locked-down development hardware (ex. school computers with limited RAM and no Administrator privileges) is sometimes used for deployment to cheap hardware targets (ex. hand-me-down Android tablets) My solution was to write a standalone binary called `dk` that uses scripts as the atom of work, cross-compiles to standalone executables, and downloads the runtimes and sysroots it needs on-demand. It sits roughly in the same space as Python and Go. `dk` is available for Windows, macOS and Linux/glibc host machines with a growing list of cross-compilation targets. Your `dk` scripts are written in an almost complete subset of OCaml 4: all `dk` scripts are OCaml, but not all OCaml code can run in `dk`. The other differences from conventional OCaml are that `dk` comes with a large library included, and that I treat any feature as buggy if the feature does not work on all supported OS-es. The above origin of `dk` is admittedly odd (and abbreviated), so I was not expecting that `dk` would now be a general-purpose scripting tool. Yet it is. I can wrap, re-use and organize most of my hand-written software as a set of `dk` scripts. Fair warning: The cross-compilation support in `dk` has had a recent overhaul and not every bug is closed. The error messages suck (you have to scroll up to see the root cause and resolution) but they will improve. Some progress bars are missing. There are also a few experimental features ... `uv`-style imports and an interactive interpreter are the big ones ... which are purposely under-documented because I am worried about `dk`'s API surface. But it still works well, and you can see some real applications in the Examples section. I'd love if you could give it a kick in the tires and give `dk` some feedback! The issue list is at <https://github.com/diskuv/dk/issues>.
61 points · Open discussion

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.