diff --git a/pkgs/applications/editors/emacs/elisp-packages/manual-packages.nix b/pkgs/applications/editors/emacs/elisp-packages/manual-packages.nix index b312c17d9aac..7b624e1bb97d 100644 --- a/pkgs/applications/editors/emacs/elisp-packages/manual-packages.nix +++ b/pkgs/applications/editors/emacs/elisp-packages/manual-packages.nix @@ -160,6 +160,8 @@ urweb-mode = callPackage ./urweb-mode { }; + voicemacs = callPackage ./voicemacs { }; + # Packages made the classical callPackage way ebuild-mode = callPackage ./ebuild-mode { }; diff --git a/pkgs/applications/editors/emacs/elisp-packages/voicemacs/add-missing-require.patch b/pkgs/applications/editors/emacs/elisp-packages/voicemacs/add-missing-require.patch new file mode 100644 index 000000000000..58c043bf78ed --- /dev/null +++ b/pkgs/applications/editors/emacs/elisp-packages/voicemacs/add-missing-require.patch @@ -0,0 +1,38 @@ +From eb9fefe7eddee0b22c7c1104eb9133ed595c55f9 Mon Sep 17 00:00:00 2001 +From: adisbladis +Date: Fri, 23 Sep 2022 14:52:34 +1200 +Subject: [PATCH] Add missing (require)'s + +--- + voicemacs-server.el | 2 ++ + voicemacs.el | 2 ++ + 2 files changed, 4 insertions(+) + +diff --git a/voicemacs-server.el b/voicemacs-server.el +index edfe74c..04ffdf2 100644 +--- a/voicemacs-server.el ++++ b/voicemacs-server.el +@@ -1,5 +1,7 @@ + (require 'cl-lib) + (require 'json-rpc-server) ++(require 'f) ++(require 'porthole) + + + (defvar voicemacs--update-response-timeout 3 +diff --git a/voicemacs.el b/voicemacs.el +index b93e80b..d790636 100644 +--- a/voicemacs.el ++++ b/voicemacs.el +@@ -18,6 +18,8 @@ + (require 'voicemacs-extend-company)) + + ++(require 'yasnippet) ++ + (voicemacs-define-sync voicemacs + :update t + :enable nil +-- +2.37.2 + diff --git a/pkgs/applications/editors/emacs/elisp-packages/voicemacs/default.nix b/pkgs/applications/editors/emacs/elisp-packages/voicemacs/default.nix new file mode 100644 index 000000000000..d7c3758bf324 --- /dev/null +++ b/pkgs/applications/editors/emacs/elisp-packages/voicemacs/default.nix @@ -0,0 +1,50 @@ +{ trivialBuild +, lib +, fetchFromGitHub +, avy +, json-rpc-server +, f +, nav-flash +, helm +, cl-lib +, porthole +, default-text-scale +, bind-key +, yasnippet +, company +, company-quickhelp +}: + +trivialBuild { + pname = "voicemacs"; + version = "unstable-2022-02-16"; + + src = fetchFromGitHub { + owner = "jcaw"; + repo = "voicemacs"; + rev = "d91de2a31c68ab083172ade2451419d6bd7bb389"; + sha256 = "sha256-/MBB2R9/V0aYZp15e0vx+67ijCPp2iPlgxe262ldmtc="; + }; + + patches = [ ./add-missing-require.patch ]; + + packageRequires = [ + avy + json-rpc-server + f + nav-flash + helm + cl-lib + porthole + default-text-scale + bind-key + yasnippet + company-quickhelp + ]; + + meta = { + description = "Voicemacs is a set of utilities for controlling Emacs by voice"; + license = lib.licenses.gpl3Only; + platforms = lib.platforms.all; + }; +}