aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/spreadsheet.scm
blob: 3ccd92274766147a94ef338233569d6d53541898 (about) (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2020, 2021 Ryan Prior <rprior@protonmail.com>
;;; Copyright © 2020 Ekaitz Zarraga <ekaitz@elenq.tech>
;;; Copyright © 2021, 2023-2024 jgart <jgart@dismail.de>
;;;
;;; 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 spreadsheet)
  #:use-module (guix packages)
  #:use-module (guix gexp)
  #:use-module (guix git-download)
  #:use-module (guix download)
  #:use-module (guix utils)
  #:use-module (guix build-system gnu)
  #:use-module (guix build-system python)
  #:use-module (guix licenses)
  #:use-module (gnu packages base)
  #:use-module (gnu packages bash)
  #:use-module (gnu packages bison)
  #:use-module (gnu packages check)
  #:use-module (gnu packages compression)
  #:use-module (gnu packages maths)
  #:use-module (gnu packages ncurses)
  #:use-module (gnu packages time)
  #:use-module (gnu packages pkg-config)
  #:use-module (gnu packages python-web)
  #:use-module (gnu packages python-xyz)
  #:use-module (gnu packages statistics)
  #:use-module (gnu packages valgrind)
  #:use-module (gnu packages xml))

(define-public sc-im
    (package
      (name "sc-im")
      (version "0.8.3")
      (home-page "https://github.com/andmarti1424/sc-im")
      (source (origin
                (method git-fetch)
                (uri
                  (git-reference
                    (url home-page)
                    (commit (string-append "v" version))))
                (file-name (git-file-name name version))
                (sha256
                  (base32
                    "10x50smn0xl9k6m0bgfcvpwgvivmjkysawvc4zyibc8nxlqz2na2"))))
      (build-system gnu-build-system)
      (arguments
        (list
         #:make-flags
           #~(list "-C" "src"
                   (string-append "CC=" #$(cc-for-target))
                   (string-append "prefix=" #$output))
          #:phases
            #~(modify-phases %standard-phases
                 (delete 'configure)
                 (add-after 'unpack 'fix-bash-path-declaration-in-script
                   (lambda _
                     (substitute* "tests/run_all_tests.sh"
                       (("/bin/bash") (string-append "#!" (which "bash"))))))
                 (replace 'check
                   (lambda* (#:key tests? #:allow-other-keys)
                     (with-directory-excursion "tests"
                       (when tests?
                         (invoke "bash" "run_all_tests.sh"))))))))
      (inputs
        (list gnuplot
              libxls
              libxlsxwriter
              libxml2
              libzip
              ncurses))
      (native-inputs
        (list bash-minimal
              bison
              pkg-config
              valgrind
              which))
      (synopsis "Spreadsheet program with vim-like keybindings")
      (description
 "@code{sc-im} is a highly configurable spreadsheet program
 providing a vim-like experience.  @code{sc-im} supports @{gnuplot} interaction,
 functions for sorting and filtering, 256 color support, and much more.")
      (license bsd-4)))

(define-public visidata
  (package
    (name "visidata")
    (version "3.0.2")
    (source
     (origin
       (method url-fetch)
       (uri (pypi-uri "visidata" version))
       (sha256
        (base32
         "0nn0fwm0172gn5ffil310k7hmxqrrc1dn6xfz7jxsj0vikq8vhrq"))))
    (build-system python-build-system)
    (arguments
     (list #:phases
           #~(modify-phases %standard-phases
               (replace 'check
                 (lambda* (#:key tests? #:allow-other-keys)
                   (when tests? (invoke "pytest")))))))
    (inputs
     (list python-dateutil
           python-importlib-metadata
           python-requests
           python-lxml
           python-openpyxl
           python-xlrd))
    (native-inputs
     (list python-pytest))
    (synopsis "Terminal spreadsheet multitool for discovering and arranging data")
    (description
     "VisiData is an interactive multitool for tabular data.  It combines the
clarity of a spreadsheet, the efficiency of the terminal, and the power of
Python, into a lightweight utility which can handle millions of rows.")
    (home-page "https://www.visidata.org/")
    (license gpl3)))
class='msg-tooltip'>Golang versions 1.17 (02 Aug 2022), 1.18 (01 Feb 2023), 1.19 (06 Sep 2023) and 1.20 (06 Feb 2024) are EOL <https://endoflife.date/go>. These changes set preferable default version to the minimal currently maintained one e.g. 1.21 * gnu/packages/golang.scm (go): Set default to go-1.21, add annotation for the future maintenance. Remove field <#:go> setting Golang version to go-1.18, go-1.19, 1.20 and 1.21: * gnu/packages/admin.scm * gnu/packages/configuration-management.scm * gnu/packages/databases.scm * gnu/packages/disk.scm * gnu/packages/education.scm * gnu/packages/file-systems.scm * gnu/packages/finance.scm * gnu/packages/golang-check.scm * gnu/packages/golang-crypto.scm * gnu/packages/golang-web.scm * gnu/packages/golang-xyz.scm * gnu/packages/golang.scm * gnu/packages/high-availability.scm * gnu/packages/ipfs.scm * gnu/packages/irc.scm * gnu/packages/messaging.scm * gnu/packages/networking.scm * gnu/packages/syncthing.scm * gnu/packages/textutils.scm * gnu/packages/time.scm * gnu/packages/version-control.scm * gnu/packages/video.scm Change-Id: Ieba6a5d7a18423f838d14c02ad55a2ba9c8559eb Sharlatan Hellseher 2024-07-05gnu: python-ta-lib: Update to 0.4.32....* gnu/packages/finance.scm (python-ta-lib): Update to 0.4.32. Change-Id: I4cafd320daf68fd3de69ced3cf310443df7c2255 Vinicius Monego 2024-07-05gnu: homebank: Update to 5.8.1....* gnu/packages/finance.scm (homebank): Update to 5.8.1. Change-Id: I7e050d9a997bab73312691e272a1836dd85580f2 Vinicius Monego 2024-07-05gnu: quantlib: Update to 1.34....* gnu/packages/finance.scm (quantlib): Update to 1.34. [source]: Update URI. Change-Id: Ic357e0fffba595d0591ef6fe290de1945a98cfc8 Vinicius Monego 2024-06-18gnu: bitcoin-core: Update to 27.1....* gnu/packages/finance.scm (bitcoin-core): Update to 27.1. Signed-off-by: Guillaume Le Vaillant <glv@posteo.net> Change-Id: Idc6a1c949103904829ed12cc7699d63e5d6d9d37 Michael Ford 2024-05-30gnu: electron-cash: Update to 4.4.1....* gnu/packages/finance.scm (electron-cash): Update to 4.4.1. Change-Id: I79e4bd3b039074440d897a72ca145c2b2adf0c48 Guillaume Le Vaillant 2024-05-30gnu: bitcoin-unlimited: Update to 2.1.0.0....* gnu/packages/finance.scm (bitcoin-unlimited): Update to 2.1.0.0. Change-Id: I2faf7909c39bb72ceaf4d03b8bbb4f52e599fa3e Guillaume Le Vaillant 2024-04-26gnu: bitcoin-core: Update to 27.0....* gnu/packages/finance.scm (bitcoin-core): Update to 27.0. Signed-off-by: Christopher Baines <mail@cbaines.net> Change-Id: I9dfe21dd2fb49fd6e96d2cfc407c927a770b776e fanquake 2024-04-08gnu: xmrig: Update to 6.21.2....* gnu/packages/finance.scm (xmrig): Update to 6.21.2. Change-Id: I6d4ae6a365979735421a24f0de7225e9268e99ee Signed-off-by: Guillaume Le Vaillant <glv@posteo.net> Ahmad Draidi 2024-04-05gnu: bitcoin-core: Update to 26.1....* gnu/packages/finance.scm (bitcoin-core): Update to 26.1. Signed-off-by: Christopher Baines <mail@cbaines.net> fanquake 2024-03-31gnu: homebank: Update to 5.7.4....* gnu/packages/finance.scm (homebank): Update to 5.7.4. [source, home-page]: Follow redirect. [inputs]: Replace libsoup-minimal-2 with libsoup-minimal. Change-Id: Ie48020959f104ce7b0de4fdbf67471de5360d008 Vinicius Monego 2024-03-29gnu: go-gopkg-in-natefinch-lumberjack.v2: Move to golang-xyz....* gnu/packages/golang.scm (go-gopkg-in-natefinch-lumberjack.v2): Move from here ... * gnu/packages/golang-xyz.scm: ... to here. * gnu/packages/finance.scm: Add (gnu packages golang-xyz) module. Change-Id: Ib31fe5787f7b9a5c10e527ea344adaf587aeea13 Sharlatan Hellseher 2024-03-26gnu: monero-gui: Update to 0.18.3.3....* gnu/packages/finance.scm (monero-gui): Update to 0.18.3.3. Change-Id: I68c6bace805b20de7b172687542a997db48b515b Guillaume Le Vaillant 2024-03-26gnu: monero: Update to 0.18.3.3....* gnu/packages/finance.scm (monero): Update to 0.18.3.3. Change-Id: I9fb61fc648f4839642138ae7b577a1452513891e Guillaume Le Vaillant 2024-03-20gnu: electron-cash: Update to 4.4.0....* gnu/packages/finance.scm (electron-cash): Update to 4.4.0. Change-Id: Ibe9ee61d4d2817b68fb36fb3072c6d16b8bc1016 Guillaume Le Vaillant 2024-03-19gnu: Add fava....* gnu/packages/finance.scm (fava): New variable. Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com> dan 2024-03-19gnu: beancount: Enable tests....* gnu/packages/finance.scm (beancount) [source]: Swap to git checkout, containing all required test data files. [build-system]: Swap to pyproject-build-system. [arguments] <#:phases>: Add 'build-extensions phase. [propagated-inputs]: Add python-auth2client. [native-inputs]: Add gnupg and python-pdfminer-six. Change-Id: Id0c725cae8cdc677ad0c3a0a75be6eea682eee05 Sharlatan Hellseher 2024-03-19gnu: beancount: Enable sanity check....Inputs were swapped to propagated-inputs to allow other packages depending on `beancount` to pass sanity check. * gnu/packages/finance.scm (beancount) [arguments] <#:phases>: Remove 'ignore-googleapis phase. Add 'relax-requirements phase, disabling check for "pdfminer2". [propagated-inputs]: Add python-google-api-client and python-google-auth-oauthlib. Change-Id: I15af4cd9cdbf5d522b9c5570e3ba60ad4d29e231 Sharlatan Hellseher 2024-03-19gnu: beancount: Adjust package style....* gnu/packages/finance.scm (beancount) [arguments]: Use G-expressions. <#:phases>: Remove trailing #f from lambda. Change-Id: I3a248c0b233b0f4d73dcc01f269cfb0a12fe06ff Sharlatan Hellseher 2024-03-17gnu: OpenTaxSolver: Update for 2023 tax filing....* gnu/packages/finance.scm (opentaxsolver)<tax-year, ots-version>: Update for 2023 taxes. Change-Id: I4d740951eff74072acd80948cfac17100345f55c Signed-off-by: Leo Famulari <leo@famulari.name> Zacchaeus Scheffer