;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 José Miguel Sánchez García <jmi2k@openmailbox.org>
;;; Copyright © 2016 Carlo Zancanaro <carlo@zancanaro.id.au>
-;;; Copyright © 2017, 2018, 2020 Eric Bavier <bavier@posteo.net>
+;;; Copyright © 2017, 2018, 2020, 2022 Eric Bavier <bavier@posteo.net>
;;; Copyright © 2017 Feng Shu <tumashu@163.com>
;;; Copyright © 2017 Nikita <nikita@n0.is>
;;; Copyright © 2014 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.org>
;;; Copyright © 2017–2021 Tobias Geerinckx-Rice <me@tobias.gr>
-;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2019, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2019 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2019, 2020, 2021, 2022 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2020-2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2021 Calum Irwin <calumirwin1@gmail.com>
;;; Copyright © 2022 Luis Henrique Gomes Higino <luishenriquegh2701@gmail.com>
;;; Copyright © 2022 Foo Chuan Wei <chuanwei.foo@hotmail.com>
+;;; Copyright © 2022 zamfofex <zamfofex@twdb.moe>
;;;
;;; This file is part of GNU Guix.
;;;
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system glib-or-gtk)
+ #:use-module (guix build-system meson)
#:use-module (guix build-system python)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gettext)
#:use-module (gnu packages glib)
+ #:use-module (gnu packages graphics)
+ #:use-module (gnu packages gnome)
#:use-module (gnu packages gtk)
#:use-module (gnu packages guile)
#:use-module (gnu packages haskell-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages regex)
#:use-module (gnu packages ruby)
+ #:use-module (gnu packages sdl)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages terminals)
#:use-module (gnu packages texinfo)
(define-public mg
(package
(name "mg")
- (version "20210609")
+ (version "20220614")
(source (origin
(method git-fetch)
(uri (git-reference
(file-name (git-file-name name version))
(sha256
(base32
- "04c2vqxg31mk15cfrhzrivykis8fmf0m1d8h1qdjdmlfxd4qwaqf"))
+ "145qk4bzys4igv98645vikswv9hqym46chh6xb9d82ihsvjq1wjk"))
(modules '((guix build utils)))
(snippet '(begin
(substitute* "GNUmakefile"
(define-public ghostwriter
(package
(name "ghostwriter")
- (version "2.0.2")
+ (version "2.1.4")
(source (origin
(method git-fetch)
(uri (git-reference
(file-name (git-file-name name version))
(sha256
(base32
- "19cf55b86yj2b5hdazbyw4iyp6xq155243aiyg4m0vhwh0h79nwh"))))
+ "1w8a6vkhmdbp4kzb7aprvfni9ny47dj0vigbcnsh539dn3sp1gan"))))
(build-system gnu-build-system)
(native-inputs
- (list pkg-config qttools)) ; for lrelease
+ (list pkg-config qttools-5)) ; for lrelease
(inputs
(list hunspell
qtbase-5
- qtdeclarative
- qtmultimedia
- qtquickcontrols
- qtsvg
- qtwebchannel))
+ qtdeclarative-5
+ qtmultimedia-5
+ qtquickcontrols-5
+ qtsvg-5
+ qtwebchannel-5))
(propagated-inputs ; To get native-search-path
- (list qtwebengine))
+ (list qtwebengine-5))
(arguments
- `(#:phases
- (modify-phases %standard-phases
- (replace 'configure
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (invoke "qmake" (string-append "PREFIX=" out)))))
- (add-after 'configure 'create-translations
- (lambda _
- ;; `lrelease` will not overwrite, so delete existing .qm files
- (for-each delete-file (find-files "translations" ".*\\.qm"))
- (apply invoke "lrelease" (find-files "translations" ".*\\.ts"))))
- ;; Ensure that icons are found at runtime.
- (add-after 'install 'wrap-executable
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (wrap-program (string-append out "/bin/ghostwriter")
- `("QT_PLUGIN_PATH" ":" prefix
- ,(map (lambda (label)
- (string-append (assoc-ref inputs label)
- "/lib/qt5/plugins/"))
- '("qtsvg" "qtmultimedia"))))))))))
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (replace 'configure
+ (lambda* (#:key outputs #:allow-other-keys)
+ (invoke "qmake" (string-append "PREFIX=" #$output))))
+ (add-after 'configure 'create-translations
+ (lambda _
+ ;; `lrelease` will not overwrite, so delete existing .qm files
+ (for-each delete-file (find-files "translations" ".*\\.qm"))
+ (apply invoke "lrelease" (find-files "translations" ".*\\.ts"))))
+ ;; Ensure that icons are found at runtime.
+ (add-after 'install 'wrap-executable
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (wrap-program (string-append #$output "/bin/ghostwriter")
+ `("QT_PLUGIN_PATH" ":" prefix
+ #$(map (lambda (label)
+ (file-append (this-package-input label)
+ "/lib/qt5/plugins"))
+ '("qtsvg" "qtmultimedia")))))))))
(home-page "https://wereturtle.github.io/ghostwriter/")
(synopsis "Write without distractions")
(description
#:icon "manuskript"
#:categories "Office;WordProcessor;"))))))))
(inputs
- (list pandoc python-lxml python-markdown python-pyqt qtsvg))
+ (list pandoc python-lxml python-markdown python-pyqt qtsvg-5))
(home-page "http://www.theologeek.ch/manuskript/")
(synopsis "Tool for writers")
(description "Manuskript provides a rich environment to help
perl
python-wrapper
qtbase-5
- qtsvg
+ qtsvg-5
sqlite))
(arguments
`(#:tests? #f ; no check target
(license license:gpl3+)
(home-page "https://www.texmacs.org/tmweb/home/welcome.en.html")))
+(define-public textpieces
+ (package
+ (name "textpieces")
+ (version "3.2.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/liferooter/textpieces")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "14zq2c7js80m4cq8wpdb3kyz5sw96l8znbz027w8s94gqhm632ff"))))
+ (arguments
+ '(;; The test suite fails to validate appstream file due to lack of
+ ;; network access
+ #:tests? #f
+ #:glib-or-gtk? #t))
+ (build-system meson-build-system)
+ (native-inputs
+ (list appstream-glib
+ blueprint-compiler
+ desktop-file-utils
+ gettext-minimal
+ `(,glib "bin")
+ `(,gtk "bin")
+ pkg-config
+ vala))
+ (inputs
+ (list gtk
+ gtksourceview
+ json-glib
+ libadwaita
+ libgee
+ python
+ python-pygobject
+ python-pyyaml))
+ (home-page "https://github.com/liferooter/textpieces")
+ (synopsis "Quick text processor")
+ (description
+ "Text Pieces is a tool for quick text transformations such as checksums,
+encoding, decoding, etc.
+
+The basic features of Text Pieces are:
+@itemize
+@item Base64 encoding and decoding
+@item SHA-1, SHA-2 and MD5 checksums
+@item Prettify and minify JSON
+@item Covert JSON to YAML and vice versa
+@item Count lines, symbols and words
+@item Escape and unescape string, URL and HTML
+@item Remove leading and trailing whitespaces
+@item Sort and reverse sort lines
+@item Reverse lines and whole text
+@item You can write your own scripts and create custom tools
+@end itemize")
+ (license license:gpl3)))
+
(define-public scintilla
(package
(name "scintilla")
- (version "5.2.1")
+ (version "5.3.0")
(source
(origin
(method url-fetch)
(uri (let ((v (apply string-append (string-split version #\.))))
(string-append "https://www.scintilla.org/scintilla" v ".tgz")))
(sha256
- (base32 "1q6z8v2anbdwcxqfqjs0mwl2z4cdzarj0hqxj86fvvdxsr25649r"))))
+ (base32 "0ys0836qjljzqk0wj6y9pnmrcw7ydzn8c06rwbawjk74dpsn0lpx"))))
(build-system gnu-build-system)
(arguments
(list
(arguments
`(#:tests? #f
#:make-flags
- (list "CC=gcc"
+ (list "STRIP=true" ; don't
+ (string-append "CC=" ,(cc-for-target))
(string-append "PREFIX=" (assoc-ref %outputs "out"))
(string-append "LDFLAGS=-L" (assoc-ref %build-inputs "ncurses")
"/lib"))
splitting, multiple cursors, and integration with various shell
commands.")
(license license:asl2.0)))
+
+(define-public lite-xl
+ (package
+ (name "lite-xl")
+ (version "2.0.5")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/lite-xl/lite-xl")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0l2i9mvbkc4kqkwk2p17zd1rlm5v41acdyp2xivi53p2hkj4x6pf"))
+ (modules '((guix build utils)))
+ (snippet '(substitute* "meson.build"
+ (("dependency\\('lua5\\.2',")
+ "dependency('lua-5.2',")))))
+ (build-system meson-build-system)
+ (inputs (list agg
+ freetype
+ lua-5.2
+ pcre2
+ reproc
+ sdl2))
+ (native-inputs (list pkg-config))
+ (home-page "https://lite-xl.com")
+ (synopsis "Lightweight text editor written in Lua")
+ (description
+ "Lite XL is derived from lite. It is a lightweight text editor written
+mostly in Lua. It aims to provide something practical, pretty, small and fast
+easy to modify and extend, or to use without doing either.
+
+The aim of Lite XL compared to lite is to be more user-friendly, improve the
+quality of font rendering, and reduce CPU usage.")
+ (license license:expat)))