aboutsummaryrefslogtreecommitdiff
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2024 Sughosha <sughosha@disroot.org>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.

(define-module (gnu packages kde-office)
  #:use-module (guix packages)
  #:use-module (guix download)
  #:use-module (guix build-system qt)
  #:use-module (guix gexp)
  #:use-module (guix utils)
  #:use-module ((guix licenses) #:prefix license:)
  #:use-module (gnu packages algebra)
  #:use-module (gnu packages boost)
  #:use-module (gnu packages compression)
  #:use-module (gnu packages fontutils)
  #:use-module (gnu packages freedesktop)
  #:use-module (gnu packages ghostscript)
  #:use-module (gnu packages graphics)
  #:use-module (gnu packages hunspell)
  #:use-module (gnu packages kde)
  #:use-module (gnu packages kde-frameworks)
  #:use-module (gnu packages libreoffice)
  #:use-module (gnu packages maths)
  #:use-module (gnu packages pdf)
  #:use-module (gnu packages perl)
  #:use-module (gnu packages pkg-config)
  #:use-module (gnu packages qt)
  #:use-module (gnu packages tls)
  #:use-module (gnu packages version-control)
  #:use-module (gnu packages wm)
  #:use-module (gnu packages xdisorg))

(define-public calligra
  (package
    (name "calligra")
    (version "4.0.1")
    (source (origin
              (method url-fetch)
              (uri (string-append "mirror://kde/stable/calligra/"
                                  "calligra-" version ".tar.xz"))
              (sha256
               (base32
                "0pyri2ypzva4b4rnl2p3xp0ph5xcn181msj86l5xq6sg7zkza0fl"))))
    (build-system qt-build-system)
    (arguments
     (list #:qtbase qtbase
           ;; XXX: 26/164 tests fail.
           #:configure-flags
           #~(list "-DBUILD_TESTING=OFF")
           #:tests? #f))
    (native-inputs
     (list extra-cmake-modules kdoctools perl pkg-config))
    (inputs
     (list boost
           eigen
           fontconfig
           freetype
           gsl
           imath
           karchive
           kcmutils
           kcompletion
           kconfig
           kconfigwidgets
           kcoreaddons
           kcrash
           kdbusaddons
           kdiagram
           kguiaddons
           ki18n
           kiconthemes
           kio
           kitemviews
           kjobwidgets
           knotifications
           knotifyconfig
           ktextwidgets
           kwidgetsaddons
           kwindowsystem
           kxmlgui
           lcms
           libdisplay-info
           libetonyek
           libgit2
           libodfgen
           librevenge
           libvisio
           libwpd
           libwpg
           libwps
           libxkbcommon
           okular
           openexr
           openssl
           phonon
           poppler-qt6
           pstoedit
           qca-qt6
           qtkeychain-qt6
           qtsvg
           qtwebengine
           shared-mime-info
           sonnet
           threadweaver
           zlib))
    (home-page "https://calligra.org/")
    (synopsis "Office and graphic art suite")
    (description
     "Calligra Suite is a collection of office applications linked together by
a common base.

The applications currently included in Calligra Suite are:

Office productivity:
@itemize
@item Words: Word processor
@item Sheets: Spreadsheet calculator
@item Stage: Presentation program
@end itemize

Graphics:
@itemize
@item Karbon: Vector graphics
@end itemize

Advanced plugins:
@itemize
@item Chart: Graphic data visualization
@item KFormula: Mathematical formulas
@end itemize")
    (license (list license:lgpl2.0+ license:gpl2+))))

(define-public ghostwriter
  (package
    (name "ghostwriter")
    (version "24.05.2")
    (source (origin
              (method url-fetch)
              (uri (string-append "mirror://kde/stable/release-service/" version
                                  "/src/ghostwriter-" version ".tar.xz"))
              (sha256
               (base32 "181izld9wnbwlknw7h876ysranqqvbvb0h2p4ky54jfb82f9h513"))))
    (build-system qt-build-system)
    (arguments
     (list #:qtbase qtbase
           #:configure-flags
           #~(list "-DQT_MAJOR_VERSION=6"
                   "-DBUILD_TESTING=ON")))
    (native-inputs
     (list extra-cmake-modules kdoctools pkg-config qttools))
    (inputs
     (list hunspell
           kconfigwidgets
           kcoreaddons
           kwidgetsaddons
           kxmlgui
           qt5compat
           qtsvg
           qtwebchannel
           qtwebengine
           sonnet))
    (home-page "https://ghostwriter.kde.org/")
    (synopsis "Text editor for Markdown")
    (description "@code{ghostwriter} is a text editor for Markdown, which is a plain
text markup format.  It features a live HTML preview as you type, theme
creation, focus mode, fullscreen mode, live word count, and document navigation
in an aesthetic writing environment.  It comes with the cmark-gfm Markdown
processor built in, and can integrate with Pandoc, MultiMarkdown, Discount, and
cmark processors if they are installed.")
    (license license:gpl3+)))
otstrap-bootfiles): Likewise. * gnu/packages/racket.scm (racket-vm-cs): Likewise. Change-Id: I46efebaf48cce388075ab4873c16a6f5f9692bb7 Signed-off-by: Ludovic Courtès <ludo@gnu.org> Philip McGrath 2024-04-11gnu: racket: Update to 8.12....All of Racket's changes to Chez Scheme have been merged upstream. They are the basis for the Chez Scheme 10.0.0 release. For the forseeable future, Racket will continue to depend on a specific pre-release version of Chez Scheme as part of Racket's "ABI": see upstream discussion at <https://racket.discourse.group/t/2739/3>. * gnu/packages/chez.scm (chez-configure): Change to define a phase to run the Chez Scheme configure script, renaming the old definition to ... (configure-chezschemelibdirs): ... this new variable. (chez-srfi, chez-matchable, chez-irregex, chez-fmt, chez-mit) (chez-scmutils)[arguments]<#:phases>: Update accordingly. (unpack-nanopass+stex): Replace with ... (unpack-nanopass): ... this new variable. (chez-scheme)[arguments]<#:phases>: Inline old definition of 'unpack-nanopass+stex' to facilitate transition. (chez-scheme-for-racket): Stop inheriting from 'chez-scheme'. [version]: Update to 9.9.9-pre-release.23. [outputs]: Add "debug" output. [native-inputs]: Add 'texlive-enumitem' for native builds. For cross builds, omit TeX-related inputs and add this-package:doc. [inputs, native-search-paths, home-page]: Rewrite without inheritance. [arguments]: Likewise, and adjust for upstream changes. [synopsis, description]: Rewrite to reflect upstreaming of Racket's changes to Chez Scheme. (chez-scheme-for-racket-bootstrap-bootfiles): Stop inheriting from 'chez-scheme-bootstrap-bootfiles'. [arguments]: Rewrite without inheritance. Use `make cross.boot` instead of broken experimental script for cross builds. [home-page]: Use bootstrapping Racket package instead of archived Git repository. [description]: Rewrite to reflect upstreaming of Racket's changes to Chez Scheme. * gnu/packages/patches/racket-backport-8.11-layered-docs.patch: Delete file. * gnu/packages/patches/racket-backport-8.12-chez-configure.patch: New file. * gnu/local.mk (dist_patch_DATA): Update accordingly. * gnu/packages/racket.scm (%racket-origin)[patches]: Likewise. [snippet]: Also unbundle Zuo and potential pre-built boot files. (%racket-version): Update to 8.12. (racket-vm-cs)[arguments]<#:phases>: Use 'unpack-nanopass' instead of 'unpack-nanopass+stex'. (racket)[inputs]<data, deinprogramm, drracket, gui, htdp, net-cookies> <pict, plot, rackunit, redex, scribble, typed-racket, string-constants> <web-server>: Update hashes. <quickscript>: Likewise, and remove obsolete snippet. Change-Id: I11e7f44be37c60c91b03d246a50e75e418bd0672 Signed-off-by: Ludovic Courtès <ludo@gnu.org> Philip McGrath 2024-04-11gnu: zuo: Update to 1.9....Zuo now has tagged releases independent of the Racket release cycle. * gnu/packages/patches/racket-zuo-bin-sh.patch: Move to ... * gnu/packages/patches/zuo-bin-sh.patch: ... this file, and refresh it. * gnu/local.mk (dist_patch_DATA): Update accordingly. * gnu/packages/racket/scm (%racket-origin)[patches]: Likewise. * gnu/packages/patches/racket-chez-scheme-bin-sh.patch: Refresh patch. * gnu/packages/patches/racket-rktio-bin-sh.patch: Likewise. * gnu/packages/racket/scm (%zuo-version): Move to ... (zuo)[version]: ... this field, and update to 1.9. [source]: Change to the repository where Zuo releases are tagged. [arguments]: Stop supplying '#:phases'. Change-Id: Ia82c0f7a8e4696ae08e30965e3f4ec85673b86e5 Signed-off-by: Ludovic Courtès <ludo@gnu.org> Philip McGrath