summaryrefslogtreecommitdiff
path: root/sc-im.scm
blob: 8af53bbd1fb191c9e8098127274bd8c2ce916961 (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
; Configure it for my needs
(define-module (sc-im)
               #:use-module (guix packages)
               #:use-module (guix git-download)
               #:use-module (guix build-system gnu)
               #:use-module (guix licenses)
               #:use-module (gnu packages)
               #:use-module (gnu packages pkg-config)
               #:use-module (gnu packages bison)
               #:use-module (gnu packages ncurses)
               #:use-module (gnu packages lua) ; I think it's not taking it well

               ; It's not really a dependency, can be changed at runtime
               ; #:use-module (gnu packages xclip)
               ; If we add it, it must be part of `propagated-inputs`
               ) 

(define-public sc-im
  (let ((commit-ref "9beb5c0a7b24f4fe05e2ad6b0b0c24c5939c3fe3")) 
    (package
      (name "sc-im")
      (version "freeze")
      (source (origin
                (method git-fetch)
                (uri (git-reference
                       (url "https://github.com/andmarti1424/sc-im.git")
                       (commit commit-ref)))
                (sha256
                  (base32
                    "11cdz2jm9bsp693xj708m38dpcxysb0mbdsw8fwvsmcr44sjcx6v"))
                (patches (search-patches
                                 "sc-im.patch"))))
      (build-system gnu-build-system)
      (arguments
        `(#:tests? #f
          #:make-flags (list 
                         "-C" "src"
                         "CC=gcc"
                         (string-append "prefix=" (assoc-ref %outputs "out")))
          #:phases (modify-phases
                     %standard-phases
                     (delete 'configure))))
      (inputs `(("ncurses" ,ncurses)))
      (native-inputs `(("pkg-config" ,pkg-config)
                       ("bison" ,bison)))
      (propagated-inputs `(("lua-5.1", lua-5.1)))
      (synopsis "Spreadsheet program based on SC")

      (description "
Capabilities: UNDO / REDO. 65.536 rows and 702 columns supported (the number of
rows can be expanded to 1.048.576 if wished). CSV / TAB delimited / XLSX file
import and export. Scripting support with LUA. Also with triggers and c dynamic
linked modules. Clipboard support. GNUPlot interaction.  Key-mappings. Sort of
rows. Filter of rows.  Subtotals. Cell shifting. 256 color support - screen
colors can be customized by user, even at runtime. Colorize cells or give them
format such as bold or underline. Wide character support.  The following
alphabets are supported: English, Spanish, French, Italian, German, Portuguese,
Russian, Ukrainian, Greek, Turkish, Czech, Japanese, Chinese. Autobackup.
Implement external functions in the language you prefer and use them in SC-IM.
Use SC-IM as a non-interactive calculator, reading its input from a external
script. More movements commands implemented! Input and Output was completely
rewritten.")
      (home-page "https://github.com/andmarti1424/sc-im")
      (license bsd-3)))) ; I'm not sure