about summary refs log tree commit diff
path: root/pkgs/by-name/do
diff options
context:
space:
mode:
authoraktaboot <akhtaboot@protonmail.com>2024-04-16 17:24:23 +0200
committeraktaboot <akhtaboot@protonmail.com>2024-04-20 14:19:44 +0200
commit9ca7c79ed2cf8a223e1e9a8610c8157f765ddc6e (patch)
treebb2f8e883bcb8c9cf3bb2cd7a4f9752c072538e9 /pkgs/by-name/do
parent792acac153a5ee7a4abee9752eba3ffc10b0a30f (diff)
dogedns: init at 0.2.6
Diffstat (limited to 'pkgs/by-name/do')
-rw-r--r--pkgs/by-name/do/dogedns/package.nix47
-rw-r--r--pkgs/by-name/do/dogedns/remove-date-info.patch11
2 files changed, 58 insertions, 0 deletions
diff --git a/pkgs/by-name/do/dogedns/package.nix b/pkgs/by-name/do/dogedns/package.nix
new file mode 100644
index 0000000000000..5903dc5568ca8
--- /dev/null
+++ b/pkgs/by-name/do/dogedns/package.nix
@@ -0,0 +1,47 @@
+{ lib
+, rustPlatform
+, fetchFromGitHub
+, installShellFiles
+, stdenv
+, pkg-config
+, openssl
+, pandoc
+, darwin
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "dogedns";
+  version = "0.2.6";
+
+  src = fetchFromGitHub {
+    owner = "Dj-Codeman";
+    repo = "doge";
+    rev = "6dd0383f31c096bfe2b6918c36b6e2c48414e753";
+    hash = "sha256-cvqDSTHFf/le2jItGTSkAGURj64WRvOmMRI+vFH0/50=";
+  };
+
+  cargoHash = "sha256-v9AuX7FZfy18yu4P9ovHsL5AQIYhPa8NEsMziEeHCJ8=";
+
+  patches = [
+    # remove date info to make the build reproducible
+    # remove commit hash to avoid dependency on git and the need to keep `.git`
+    ./remove-date-info.patch
+  ];
+
+  nativeBuildInputs = [ installShellFiles pandoc ]
+    ++ lib.optionals stdenv.isLinux [ pkg-config ];
+  buildInputs = lib.optionals stdenv.isLinux [ openssl ]
+    ++ lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Security ];
+
+ postInstall = ''
+    installShellCompletion completions/doge.{bash,fish,zsh}
+    installManPage ./target/man/*.1
+  '';
+
+  meta = with lib; {
+    description = "Reviving A command-line DNS client";
+    homepage = "https://github.com/Dj-Codeman/doge";
+    license = licenses.eupl12;
+    mainProgram = "doge";
+  };
+}
diff --git a/pkgs/by-name/do/dogedns/remove-date-info.patch b/pkgs/by-name/do/dogedns/remove-date-info.patch
new file mode 100644
index 0000000000000..0495ec4db4611
--- /dev/null
+++ b/pkgs/by-name/do/dogedns/remove-date-info.patch
@@ -0,0 +1,11 @@
+--- a/build.rs
++++ b/build.rs
+@@ -34,7 +34,7 @@ fn main() -> io::Result<()> {
+             format!("{}\nv{} \\1;31m(beta debug build!)\\0m\n\\1;4;34m{}\\0m", tagline, version_string(), url)
+         }
+         else if is_development_version() {
+-            format!("{}\nv{} [{}] built on {} \\1;31m(beta-release!)\\0m\n\\1;4;34m{}\\0m", tagline, version_string(), git_hash(), build_date(), url)
++            format!("{}\nv{} [nixpkgs] \\1;31m(beta-release!)\\0m\n\\1;4;34m{}\\0m", tagline, version_string(),  url)
+         }
+         else {
+             format!("{}\nv{}\n\\1;4;34m{}\\0m", tagline, version_string(), url)