Subject: [bug#47605] [PATCH] gnu: Add emacs-mode-line-idle.

From: Eugene Klimov <[email-masked]>
Date: Tue, 6 Apr 2021 01:08:07 +0500

* gnu/packages/emacs-xyz.scm (emacs-mode-line-idle): New variable.
---
 gnu/packages/emacs-xyz.scm | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 239915fffe..ea9f3bfcd1 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -96,6 +96,7 @@
 ;;; Copyright © 2021 Xinglu Chen <[email-masked]>
 ;;; Copyright © 2021 Stefan Reichör <[email-masked]>
 ;;; Copyright © 2021 Simon Tournier <[email-masked]>
+;;; Copyright © 2021 Eugene Klimov <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -27566,3 +27567,34 @@ and prefered services can easily be configured.")
 quasi-prefix map, with many useful bindings.  These bindings are
 shorter than usual, using mostly unprefixed keys.")
     (license license:gpl3+)))
+
+(define-public emacs-mode-line-idle
+  ;; Package has no release.  Version is extracted from "Version:" keyword in
+  ;; main file.
+  (let ((commit "02b1da6278e43cc9cc0356110cc6bfbb37eb8241")
+	(revision "1"))
+    (package
+      (name "emacs-mode-line-idle")
+      (version (git-version "0.1" revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://gitlab.com/ideasman42/emacs-mode-line-idle.git")
+                      (commit commit)))
+                (sha256 (base32 "0ky330b2sfbzkbxbfp9b21hdywsjw26bllspglz08hrbni7jmry8"))
+                (file-name (git-file-name name version))))
+      (build-system emacs-build-system)
+      (home-page "https://gitlab.com/ideasman42/emacs-mode-line-idle")
+      (synopsis "Simple delayed text evaluation for the mode-line")
+      (description
+       "Mode Line Idle (mode-line-idle.el) is a minor mode that
+provides a convenient way to defer text evaluation in a way that can
+be easily integrated into existing mode-line's without requiring a
+minor mode or configuration.
+
+Mode Line Idle helps to add useful information into the mode-line
+without slowing down Emacs performance.  While delaying updates is not
+so difficult, having multiple timers can become awkward when mixed in
+with the mode-lines configuration.  Instead of avoiding expensive
+information in the mode-line, it can be calculated when idle.")
+      (license license:gpl3+))))
-- 
2.31.1