emacs-xyz.scm (6030B)
1 ;;; Kakafarm's Guix Channel 2 ;;; Copyright © 2023-2024 Yuval Langer <yuval.langer@gmail.com> 3 ;;; 4 ;;; This file is part of Kakafarm's Guix Channel. 5 ;;; 6 ;;; Kakafarm's Guix Channel is free software; you can redistribute it 7 ;;; and/or modify it under the terms of the GNU General Public License 8 ;;; as published by the Free Software Foundation; either version 3 of 9 ;;; the License, or (at your option) any later version. 10 ;;; 11 ;;; Kakafarm's Guix Channel is distributed in the hope that it will be 12 ;;; useful, but WITHOUT ANY WARRANTY; without even the implied 13 ;;; warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 14 ;;; See the GNU General Public License for more details. 15 ;;; 16 ;;; You should have received a copy of the GNU General Public License 17 ;;; along with Kakafarm's Guix Channel. If not, see 18 ;;; <http://www.gnu.org/licenses/>. 19 20 (define-module (kakafarm packages emacs-xyz) 21 #:use-module (guix gexp) 22 #:use-module ((guix licenses) #:prefix license:) 23 #:use-module (gnu packages speech) 24 #:use-module (gnu packages) 25 #:use-module (guix build-system emacs) 26 #:use-module (guix download) 27 #:use-module (guix git-download) 28 #:use-module (guix packages)) 29 30 (define-public emacs-detubifier 31 (let ((commit "2146cd76df48c8a9212486060e81c4654958c976") 32 (revision "1") 33 (git-repository-url 34 "https://codeberg.org/kakafarm/emacs-detubifier")) 35 (package 36 (name "emacs-detubifier") 37 (version (git-version "0.1.0" revision commit)) 38 (source 39 (origin 40 (method git-fetch) 41 (uri (git-reference 42 (url git-repository-url) 43 (commit commit))) 44 (file-name (git-file-name name version)) 45 (sha256 46 (base32 "1fv4hmr8zqnng241xkpsmyr63ggi9681rng1rm8bc7w8rlkzrwca")))) 47 (build-system emacs-build-system) 48 (home-page git-repository-url) 49 (synopsis "Replace proprietary web frontends with free and privacy respecting web frontends") 50 (description "Replace proprietary web frontends with free and privacy respecting web frontends.") 51 (license license:agpl3+)))) 52 53 (define-public emacs-nano-tts-minor-mode 54 (let ((commit "52a3ffa5833bdda79eb36e5048fe97c1b59eb9f2") 55 (base32-string "15lzcd95zadd8wbzl5zdn72rad41mga2qqz34dc0sp8xgfwg3krh") 56 (version "1.0.0") 57 (revision "1") 58 (git-repository-url 59 "https://codeberg.org/kakafarm/emacs-nano-tts-minor-mode")) 60 (package 61 (name "emacs-nano-tts-minor-mode") 62 (version (git-version version revision commit)) 63 (source 64 (origin 65 (method git-fetch) 66 (uri (git-reference 67 (url git-repository-url) 68 (commit commit))) 69 (file-name (git-file-name name version)) 70 (sha256 71 (base32 base32-string)))) 72 (build-system emacs-build-system) 73 (inputs (list espeak-ng)) 74 (home-page git-repository-url) 75 (synopsis 76 "Text-to-speech accessibility tool which reads aloud the active region") 77 (description 78 "A text-to-speech accessibility tool which reads aloud the active region. 79 80 Speaking is done using espeak-ng.") 81 (license license:gpl3+)))) 82 83 (define-public emacs-greader-mode 84 (let ((commit "e163aec6109ba24ec543f087d9be7bf6b6efa389") 85 (revision "1") 86 (git-repository-url 87 "https://gitlab.com/michelangelo-rodriguez/greader")) 88 (package 89 (name "emacs-greader-mode") 90 (version (git-version "0.11.18" revision commit)) 91 (home-page git-repository-url) 92 (source 93 (origin 94 (uri (git-reference 95 (url git-repository-url) 96 (commit commit))) 97 (method git-fetch) 98 (file-name (git-file-name name version)) 99 (sha256 100 (base32 "054jlv1vrb7wbhr0w97xirjwp42mx0k07j7f0383jxsjn08qik5g")))) 101 (build-system emacs-build-system) 102 (arguments 103 (list 104 #:phases #~(modify-phases %standard-phases 105 (add-after 'unpack 'add-requires 106 (lambda _ 107 (substitute* "greader-dict.el" 108 ((";;; Code:") 109 ";;; Code:\n(require 'greader)\n"))))))) 110 (inputs (list espeak-ng)) 111 (synopsis 112 "Gnamù Reader - greader-mode, send buffer contents to a speech engine") 113 (description 114 "Greader is a module that allows you to send any emacs buffer to a TTS. 115 A text-to-speech like engine @code{espeak-ng} or @code{speech-dispatcher} are 116 already supported, plus limited bakend support native to macOS. The 117 mode supports timer reading, automatic scrolling of buffers in modes 118 like @code{info-mode}, repeating reading of regions or the whole buffer, 119 includes a feature to facilitate the compilation of espeak-ng 120 pronunciations, and other features.") 121 (license license:gpl3+)))) 122 123 (define-public emacs-super-duper-yes-or-no 124 (let ((commit "26eeb8655d20c10847437e985f021ab0772e76dd") 125 (revision "1") 126 (git-repository-url 127 "https://codeberg.org/kakafarm/emacs-super-duper-yes-or-no")) 128 (package 129 (name "emacs-super-duper-yes-or-no") 130 (version (git-version "1.0.0" revision commit)) 131 (source 132 (origin 133 (method git-fetch) 134 (uri (git-reference 135 (url git-repository-url) 136 (commit commit))) 137 (file-name (git-file-name name version)) 138 (sha256 139 (base32 "1ksvdac41fq9j6wk9myw6i0z1jp18lp2al95g9nidf6jimazdyxc")))) 140 (build-system emacs-build-system) 141 (home-page git-repository-url) 142 (synopsis "Replace yes-or-no-p with something even more demanding") 143 (description 144 "Instead of replacing yes-or-no-p with y-or-n-p, replace it with 145 something even more mentally demanding. 146 147 Currently implemented: 148 149 - super-duper-yes-or-no-words-p. 150 - super-duper-yes-or-no-toggle-case-p. 151 - super-duper-yes-or-no-arithmetic-problem-p. 152 153 Consult the README.org file or the Emacs help of these functions for 154 more information.") 155 (license license:gpl3+))))