13 rustPlatform.buildRustPackage rec {
15 version = "unstable-2021-10-07";
17 src = fetchFromGitHub {
20 rev = "721440b12ef01a812abe5dc6ced69af6e221fad5";
21 sha256 = "sha256-y3T0vXg7631FZ4bzcbQjz3Buui/DFxh9LG8BZWwynp0=";
25 # remove date info to make the build reproducible
26 # remove commit hash to avoid dependency on git and the need to keep `.git`
27 ./remove-date-info.patch
30 nativeBuildInputs = [ installShellFiles just pandoc ]
31 ++ lib.optionals stdenv.hostPlatform.isLinux [ pkg-config ];
32 buildInputs = lib.optionals stdenv.hostPlatform.isLinux [ openssl ]
33 ++ lib.optionals stdenv.hostPlatform.isDarwin [ Security ];
35 outputs = [ "out" "man" ];
38 lockFile = ./Cargo.lock;
40 "mutagen-0.2.0" = "sha256-FnSeNI9lAcxonRFTu7wnP/M/d5UbMzSZ97w+mUqoEg8=";
44 dontUseJustBuild = true;
45 dontUseJustCheck = true;
46 dontUseJustInstall = true;
49 # update Cargo.lock to work with openssl 3
50 ln -sf ${./Cargo.lock} Cargo.lock
58 installShellCompletion completions/dog.{bash,fish,zsh}
59 installManPage ./target/man/*.1
63 description = "Command-line DNS client";
64 homepage = "https://dns.lookup.dog";
65 license = licenses.eupl12;
66 maintainers = with maintainers; [ figsoda ];