aboutsummaryrefslogtreecommitdiffhomepage
path: root/data/doc/sisu/org/sisu_packaging.org
blob: 3ef53fe72870154a213f2f6f7ebfaa98ff34a539 (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
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
#+OPTIONS: ^:nil _:nil
Developer Notes, Dependencies

* description
** short summary: 80 chars
smart text parser for document structuring, multiple format publishing & search
** longer
 SiSU is a lightweight markup based, command line oriented, document
 structuring, publishing and search framework for document collections.
 .
 With minimal preparation of a plain-text (UTF-8) file, using sisu markup
 syntax in a text editor of your choice, SiSU can generate various document
 formats (most of which share a common object numbering system for locating
 content), including plain text, HTML, XHTML, XML, EPUB, OpenDocument text
 (ODF:ODT), LaTeX, PDF files, and populate an SQL database with objects
 (roughly paragraph-sized chunks) so searches may be performed and matches
 returned with that degree of granularity. Think being able to finely match
 text in documents, using object numbers, across different output formats (and
 across languages if you have translations of the same document). Search results
 can be an index of documents and object numbers within them, your criteria is
 met by these documents at these locations within each document (equally
 relevant across different output formats and languages). To be clear (if
 obvious) page numbers provide none of this functionality. Object numbering is
 particularly suitable for "published" works (finalized texts as opposed to
 works that are frequently changed or updated) for which it provides a fixed
 means of reference of content. Document outputs can also share provided
 semantic meta-data.
 .
 SiSU also provides concordance files, document content certificates and
 manifests of generated output. SiSU provides the means to make book indexes
 that make use of its object numbering.
 .
 A vim syntax highlighting file and an ftplugin with folds for sisu markup is
 provided. Vim 7 includes syntax highlighting for SiSU. Some syntax hilighting
 is also available for Emacs and a few other editors.
 .
 Dependencies for various features are taken care of in sisu related packages.
 The package sisu-complete installs the whole of SiSU.
 .
 Additional document markup samples are provided in the package
 sisu-markup-samples which is found in the non-free archive. The licenses for
 the substantive content of the marked up documents provided is that provided
 by the author or original publisher.
 .
 SiSU uses utf-8 & parses left to right. Currently supported languages:
 am bg bn br ca cs cy da de el en eo es et eu fi fr ga gl he hi hr hy ia is it
 ja ko la lo lt lv ml mr nl nn no oc pl pt pt_BR ro ru sa se sk sl sq sr sv ta
 te th tk tr uk ur us vi zh (see XeTeX polyglossia & cjk)
 .
 SiSU works well under po4a translation management, for which an administrative
 sample Rakefile is provided with sisu_manual under markup-samples.
* Generic Dependencies
** source
git clone --depth 1 git://git.sisudoc.org/git/code/sisu.git --branch upstream
*** full source
git clone git://git.sisudoc.org/git/code/sisu.git --branch upstream

** an install method

$ qi setup --bin --lib --share --dryrun
$ sudo ./qi setup --bin --lib --share

$ qi setup --bin --lib --share --conf --data --dryrun
$ sudo ./qi setup --bin --lib --share --conf --data

$ qi setup --all --dryrun
$ sudo ./qi setup --all dryrun

** minimal
            needed for
----------------------
ruby        all, provides outputs text, html
xz          sisupod
zip unzip   epub & odt

*** images
imagemagick | graphicsmagick
ruby-rmagick ?

** special requirements

*** pdf

texlive
texlive-cjk
texlive-fonts ?
texlive-latex ?

.sty (texpdf_format.rb)

alltt.sty
amssymb.sty
babel.sty
boites.sty
color.sty
endnotes.sty
fancyhdr.sty
fontspec.sty
footmisc.sty
graphicx.sty
inputenc.sty
listings.sty
longtable.sty
manyfoot.sty
multicol.sty
parskip.sty
polyglossia.sty
soul.sty
textcomp.sty
thumbpdf.sty
titlepic.sty
ucs.sty
ulem.sty
url.sty
xetex.sty
xltxtra.sty
xunicode.sty

*** sql db
**** sqlite3

sqlite3
ruby-sqlite3

ruby-fcgi (fast-cgi)
httpd

**** postgresql

postgresql
ruby-pg

ruby-fcgi (fast-cgi)
httpd

*** qr codes

qrencode

*** maintenance/installation
ruby-thor | rake

ruby-thor
rake

* Debian Dependencies

** source
git clone --depth 1 git://git.sisudoc.org/git/code/sisu.git --branch debian/sid

** debian/control (extract)

Package: sisu
Depends: ${misc:Depends}, ruby | ruby-interpreter, rsync, unzip, zip, xz-utils
Recommends:
 sisu-pdf, sisu-sqlite, sisu-postgresql, imagemagick | graphicsmagick, keychain,
 openssh-client | lsh-client, openssl, po4a, qrencode, rake, ruby-rmagick,
 ruby-thor, tidy, tree, vim-addon-manager
Suggests: sisu-markup-samples, lv, calibre, pinfo, poedit, texinfo, trang

Package: sisu-complete
Depends:
 ${misc:Depends}, sisu (= ${source:Version}), sisu-pdf (= ${source:Version}),
 sisu-postgresql (= ${source:Version}), sisu-sqlite (= ${source:Version}),
 imagemagick | graphicsmagick, openssl, qrencode, ruby-thor, tree
Suggests: sisu-markup-samples

Package: sisu-pdf
Depends:
 ${misc:Depends}, sisu (= ${source:Version}),
 texlive-latex-base, texlive-fonts-recommended, texlive-generic-recommended,
 texlive-latex-recommended, texlive-latex-extra, texlive-math-extra,
 texlive-xetex, fonts-liberation, lmodern, latex-cjk-all, texlive-lang-cjk
Suggests: evince | pdf-viewer

Package: sisu-postgresql
Depends:
 ${misc:Depends}, sisu (= ${source:Version}),
 postgresql, ruby-pg, ruby-fcgi | libfcgi-ruby
Suggests: fcgiwrap, httpd, postgresql-contrib

Package: sisu-sqlite
Depends:
 ${misc:Depends}, sisu (= ${source:Version}),
 sqlite3, ruby-sqlite3, ruby-fcgi | libfcgi-ruby
Suggests: fcgiwrap, httpd

* Arch Linux Dependencies

** source

sisu-git

full clone is more than is needed, so is limiting the branch

git clone --branch upstream git://git.sisudoc.org/git/code/sisu.git

try get a shallow clone that contains the last tag for git describe source version info

git clone --depth 1 --branch upstream git://git.sisudoc.org/git/code/sisu.git
git clone --depth 1 --branch archlinux git://git.sisudoc.org/git/code/sisu.git

git clone --depth 1 --no-single-branch --branch upstream \
  git://git.sisudoc.org/git/code/sisu.git

*** git describe, source version
git describe --long --tags | sed 's/^sisu_//;s/\([^-]*-g\)/r\1/;s/-/./g'
git describe --long --tags | sed 's/^[a-z_-]\+//;s/\([^-]*-g\)/r\1/;s/-/./g'
git describe --long --tags | \
  sed 's/^[a-z_-]\+\([0-9.]\+\)/\1/;s/\([^-]*-g\)/r\1/;s/-/./g'

needs more than a shallow clone of depth 1

** pacman install

sudo pacman -S ruby \
  zip unzip xy

sudo pacman -S ruby \
  texlive-core texlive-latexextra texlive-fontsextra texlive-langcjk

sudo pacman -S ruby \
  sqlite postgresql

# issue with ruby-pg ruby-sqlite ruby-fcgi

** interpreter
  ruby

** compression tools (epub, odf:odt, sisupod)
  zip unzip
  xy

** texlive (pdf)
sudo pacman -S texlive-core texlive-latexextra
sudo pacman -S texlive-core texlive-latexextra texlive-fontsextra texlive-langcjk

texlive-core       extra/texlive-core
texlive-fontsextra extra/texlive-fontsextra
texlive-langcjk    extra/texlive-langcjk

*** .sty (called from texpdf_format.rb)
alltt.sty          extra/texlive-core
amssymb.sty        extra/texlive-core
babel.sty          extra/texlive-core
boites.sty         extra/texlive-latexextra
color.sty          extra/texlive-core
endnotes.sty       extra/texlive-latexextra
fancyhdr.sty       extra/texlive-core
fontspec.sty       extra/texlive-core
footmisc.sty       extra/texlive-latexextra
graphicx.sty       extra/texlive-core
inputenc.sty       extra/texlive-core
listings.sty       extra/texlive-core
longtable.sty      extra/texlive-core
manyfoot.sty       extra/texlive-latexextra
multicol.sty       extra/texlive-core
parskip.sty        extra/texlive-core
polyglossia.sty    extra/texlive-core
soul.sty           extra/texlive-latexextra
textcomp.sty       extra/texlive-core
thumbpdf.sty       extra/texlive-core
titlepic.sty       extra/texlive-latexextra
ucs.sty            extra/texlive-latexextra
ulem.sty           extra/texlive-core
url.sty            extra/texlive-core
xetex.sty          ??
xltxtra.sty        extra/texlive-core
xunicode.sty       extra/texlive-core