about summary refs log tree commit diff
path: root/nixpkgs/pkgs/by-name/ha
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/by-name/ha')
-rw-r--r--nixpkgs/pkgs/by-name/ha/ha-mqtt-discoverable-cli/package.nix41
-rw-r--r--nixpkgs/pkgs/by-name/ha/haunt/package.nix89
-rw-r--r--nixpkgs/pkgs/by-name/ha/haunt/tests/001-test-version.nix21
-rw-r--r--nixpkgs/pkgs/by-name/ha/havoc/package.nix56
4 files changed, 207 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/by-name/ha/ha-mqtt-discoverable-cli/package.nix b/nixpkgs/pkgs/by-name/ha/ha-mqtt-discoverable-cli/package.nix
new file mode 100644
index 000000000000..2087a5f41038
--- /dev/null
+++ b/nixpkgs/pkgs/by-name/ha/ha-mqtt-discoverable-cli/package.nix
@@ -0,0 +1,41 @@
+{ lib
+, python3
+, fetchFromGitHub
+}:
+
+python3.pkgs.buildPythonApplication rec {
+  pname = "ha-mqtt-discoverable-cli";
+  version = "0.2.1";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "unixorn";
+    repo = "ha-mqtt-discoverable-cli";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-miFlrBmxVuIJjpsyYnbQt+QAGSrS4sHlJpCmxouM2Wc=";
+  };
+
+  nativeBuildInputs = with python3.pkgs; [
+    poetry-core
+  ];
+
+  propagatedBuildInputs = with python3.pkgs; [
+    ha-mqtt-discoverable
+  ];
+
+  # Project has no real tests
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "ha_mqtt_discoverable_cli"
+  ];
+
+  meta = with lib; {
+    description = "CLI for creating Home Assistant compatible MQTT entities that will be automatically discovered";
+    homepage = "https://github.com/unixorn/ha-mqtt-discoverable-cli";
+    changelog = "https://github.com/unixorn/ha-mqtt-discoverable-cli/releases/tag/v0.2.1";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ fab ];
+    mainProgram = "hmd";
+  };
+}
diff --git a/nixpkgs/pkgs/by-name/ha/haunt/package.nix b/nixpkgs/pkgs/by-name/ha/haunt/package.nix
new file mode 100644
index 000000000000..989fce392b28
--- /dev/null
+++ b/nixpkgs/pkgs/by-name/ha/haunt/package.nix
@@ -0,0 +1,89 @@
+{ lib
+, stdenv
+, fetchurl
+, fetchpatch
+, autoreconfHook
+, callPackage
+, guile
+, guile-commonmark
+, guile-reader
+, makeWrapper
+, pkg-config
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "haunt";
+  version = "0.2.6";
+
+  src = fetchurl {
+    url = "https://files.dthompson.us/haunt/haunt-${finalAttrs.version}.tar.gz";
+    hash = "sha256-vPKLQ9hDJdimEAXwIBGgRRlefM8/77xFQoI+0J/lkNs=";
+  };
+
+  # Symbol not found: inotify_init
+  patches = [
+    (fetchpatch {
+      url = "https://git.dthompson.us/haunt.git/patch/?id=ab0b722b0719e3370a21359e4d511af9c4f14e60";
+      hash = "sha256-TPNJKGlbDkV9RpdN274qMLoN3HlwfH/yHpxlpqOPw58=";
+    })
+    (fetchpatch {
+      url = "https://git.dthompson.us/haunt.git/patch/?id=7d0b71f6a3f0e714da5a5c43e52408e27f44c383";
+      hash = "sha256-CW/h8CqsALKDuKRoN1bd/WEtFTvFj0VxtgmpatyrLm8=";
+    })
+    (fetchpatch {
+      url = "https://git.dthompson.us/haunt.git/patch/?id=1a91f3d0568fc095d8b0875c6553ef15b76efa4c";
+      hash = "sha256-+3wUlTuzbyGibAsCiYWKvzPqUrFs7VwdhnADjnPuWIY=";
+    })
+  ];
+
+  nativeBuildInputs = [
+    autoreconfHook
+    makeWrapper
+    pkg-config
+  ];
+
+  buildInputs = [
+    guile
+    guile-commonmark
+    guile-reader
+  ];
+
+  # Test suite is non-determinisitic in later versions
+  doCheck = false;
+
+  postInstall = ''
+    wrapProgram $out/bin/haunt \
+      --prefix GUILE_LOAD_PATH : "$out/${guile.siteDir}:$GUILE_LOAD_PATH" \
+      --prefix GUILE_LOAD_COMPILED_PATH : "$out/${guile.siteCcacheDir}:$GUILE_LOAD_COMPILED_PATH"
+  '';
+
+  passthru = {
+    tests = {
+      expectVersion = callPackage ./tests/001-test-version.nix { };
+    };
+  };
+
+  meta = {
+    homepage = "https://dthompson.us/projects/haunt.html";
+    description = "Guile-based static site generator";
+    longDescription = ''
+      Haunt is a simple, functional, hackable static site generator that gives
+      authors the ability to treat websites as Scheme programs.
+
+      By giving authors the full expressive power of Scheme, they are able to
+      control every aspect of the site generation process. Haunt provides a
+      simple, functional build system that can be easily extended for this
+      purpose.
+
+      Haunt has no opinion about what markup language authors should use to
+      write posts, though it comes with support for the popular Markdown
+      format. Likewise, Haunt has no opinion about how authors structure their
+      sites. Though it comes with support for building simple blogs or Atom
+      feeds, authors should feel empowered to tweak, replace, or create builders
+      to do things that aren't provided out-of-the-box.
+    '';
+    license = lib.licenses.gpl3Plus;
+    maintainers = with lib.maintainers; [ AndersonTorres AluisioASG ];
+    inherit (guile.meta) platforms;
+  };
+})
diff --git a/nixpkgs/pkgs/by-name/ha/haunt/tests/001-test-version.nix b/nixpkgs/pkgs/by-name/ha/haunt/tests/001-test-version.nix
new file mode 100644
index 000000000000..726a7ac95713
--- /dev/null
+++ b/nixpkgs/pkgs/by-name/ha/haunt/tests/001-test-version.nix
@@ -0,0 +1,21 @@
+{ lib
+, stdenv
+, haunt
+}:
+
+stdenv.mkDerivation {
+  pname = "haunt-test-version";
+  inherit (haunt) version;
+
+  nativeBuildInputs = [ haunt ];
+
+  dontInstall = true;
+
+  buildCommand = ''
+    haunt --version
+
+    touch $out
+  '';
+
+  meta.timeout = 10;
+}
diff --git a/nixpkgs/pkgs/by-name/ha/havoc/package.nix b/nixpkgs/pkgs/by-name/ha/havoc/package.nix
new file mode 100644
index 000000000000..ed9f77ec5656
--- /dev/null
+++ b/nixpkgs/pkgs/by-name/ha/havoc/package.nix
@@ -0,0 +1,56 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, libxkbcommon
+, pkg-config
+, wayland
+, wayland-protocols
+, wayland-scanner
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "havoc";
+  version = "0.5.0";
+
+  src = fetchFromGitHub {
+    owner = "ii8";
+    repo = "havoc";
+    rev = finalAttrs.version;
+    hash = "sha256-jvGm2gFdMS61otETF7gOEpYn6IuLfqI95IpEVfIv+C4=";
+  };
+
+  depsBuildBuild = [
+    pkg-config
+  ];
+
+  nativeBuildInputs = [
+    wayland-protocols
+    wayland-scanner
+  ];
+
+  buildInputs = [
+    libxkbcommon
+    wayland
+  ];
+
+  dontConfigure = true;
+
+  installFlags = [ "PREFIX=$$out" ];
+
+  postInstall = ''
+    install -Dm 644 havoc.cfg -t $out/etc/havoc/
+    install -Dm 644 README.md -t $out/share/doc/havoc-${finalAttrs.version}/
+  '';
+
+  enableParallelBuilding = true;
+
+  meta = {
+    homepage = "https://github.com/ii8/havoc";
+    description = "A minimal terminal emulator for Wayland";
+    license = with lib.licenses; [ mit publicDomain ];
+    mainProgram = "havoc";
+    maintainers = with lib.maintainers; [ AndersonTorres ];
+    inherit (wayland.meta) platforms;
+    broken = stdenv.isDarwin; # fatal error: 'sys/epoll.h' file not found
+  };
+})