CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutSign UpSign In
sagemathinc

Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place. Commercial Alternative to JupyterHub.

GitHub Repository: sagemathinc/cocalc
Path: blob/master/src/packages/comm/x11-apps.ts
Views: 923
1
/*
2
* This file is part of CoCalc: Copyright © 2020 Sagemath, Inc.
3
* License: MS-RSL – see LICENSE.md for details
4
*/
5
6
//import { IconName } from "@cocalc/frontend/components/icon";
7
import { R_IDE } from "@cocalc/util/consts/ui";
8
9
type App = {
10
icon: string;
11
desc: string;
12
label?: string;
13
command?: string;
14
args?: string[];
15
};
16
17
export const APPS = {
18
unknown_test: {
19
icon: "skull-crossbones",
20
desc: "I don't exist, I'm just a test",
21
label: "Unknown App",
22
},
23
drracket: {
24
icon: "scheme",
25
label: "DrRacket",
26
desc: "Racket is a general-purpose programming language as well as the world’s first ecosystem for language-oriented programming.",
27
},
28
/* xclock: { icon: "clock", desc:"Shows UTC time" }, */
29
emacs: {
30
icon: "emacs",
31
desc: "An extensible, customizable, text editor — and more.",
32
label: "Emacs",
33
},
34
gvim: { icon: "vim", desc: "The ubiquitous text editor", label: "Vim" },
35
inkscape: {
36
icon: "inkscape",
37
desc: "Vector graphics editor",
38
label: "Inkscape",
39
},
40
gimp: { icon: "brush", desc: "Image editing", label: "GIMP" },
41
krita: { icon: "brush", desc: "Image editing", label: "Krita" },
42
vscode: {
43
label: "VS Code",
44
command: "code",
45
icon: "vscode",
46
desc: "Visual Studio code",
47
},
48
terminal: {
49
label: "Terminal",
50
command: "gnome-terminal",
51
icon: "terminal",
52
desc: "Command line terminal",
53
},
54
firefox: {
55
icon: "firefox",
56
desc: "A powerful free web browser backed by Mozilla",
57
label: "Firefox",
58
},
59
gitk: { icon: "git", desc: "Explore Git repository in current directory" },
60
gitg: { icon: "git", desc: "GNOME's client to work with Git repositories" },
61
idle: {
62
icon: "python",
63
desc: "Minimalistic Python IDE",
64
label: "IDLE",
65
},
66
okular: {
67
icon: "file-pdf",
68
desc: "PDF reader and annotator (Tools → Review)",
69
label: "Okular",
70
},
71
libreoffice: {
72
icon: "libreoffice",
73
desc: "A powerful office suite (spreadsheet, word processor, presentations, etc. -- open Word, Excel, Powerpoint, etc.)",
74
label: "LibreOffice",
75
},
76
lowriter: {
77
desc: "LibreOffice Writer",
78
icon: "libreoffice",
79
label: "Writer",
80
},
81
localc: {
82
desc: "LibreOffice Calc",
83
icon: "libreoffice",
84
label: "Calc",
85
},
86
loimpress: {
87
desc: "LibreOffice Impress",
88
icon: "libreoffice",
89
label: "Impress",
90
},
91
nteract: {
92
command: "nteract",
93
icon: "cube",
94
desc: "A desktop Jupyter Notebook Client",
95
label: "nteract",
96
},
97
wxmaxima: {
98
icon: "square-root-alt",
99
desc: "A legendary computer algebra system",
100
label: "Maxima",
101
},
102
rstudio: {
103
icon: "r",
104
desc: "An integrated development environment (IDE) for R. Posit Software, PBC (formerly RStudio, PBC) is in no way affiliated with CoCalc",
105
label: R_IDE,
106
},
107
/* See https://github.com/sagemathinc/cocalc/issues/5427
108
Sometimes, Octave GUI works, sometimes not.
109
If it works, write an executable mini script launching it.
110
That avoids registering the launch icon even though it is broken.
111
$ cat octave-gui
112
#!/usr/bin/env bash
113
exec octave --gui "$@"
114
*/
115
octave: {
116
icon: "octave",
117
desc: "Scientific programming largely compatible with Matlab",
118
label: "Octave",
119
command: "octave-gui",
120
},
121
texmacs: {
122
icon: "tex-file",
123
desc: "A wysiwyw (what you see is what you want) editing platform with special features for scientists",
124
label: "TeXMacs",
125
},
126
texstudio: {
127
icon: "tex-file",
128
desc: "An integrated writing environment for creating LaTeX documents",
129
label: "TeXstudio",
130
},
131
openmodelica: {
132
icon: "cogs",
133
desc: "an open-source Modelica-based modeling and simulation environment intended for industrial and academic usage",
134
label: "OpenModelica",
135
command: "OMEdit",
136
},
137
pspp: {
138
icon: "table",
139
desc: "Statistical analysis of sampled data, similar to SPSS",
140
label: "PSPP",
141
command: "psppire",
142
},
143
gnumeric: {
144
icon: "table",
145
desc: "Gnumeric is a spreadsheet, a computer program used to manipulate and analyze numeric data",
146
label: "Gnumeric",
147
command: "gnumeric",
148
},
149
scribus: {
150
icon: "address-card",
151
desc: "a page layout program",
152
command: "scribus",
153
label: "Scribus",
154
},
155
spyder: {
156
command: "spyder",
157
desc: "Spyder is a powerful scientific environment written in Python, for Python, and designed by and for scientists, engineers and data analysts.",
158
icon: "python",
159
label: "Spyder",
160
},
161
gchempaint: {
162
desc: "GChemPaint is a 2D chemical structures editor.",
163
icon: "atom",
164
label: "GChemPaint",
165
},
166
diffpdf: {
167
desc: "compare two PDF files textually or visually",
168
icon: "copy",
169
label: "DiffPDF",
170
},
171
"massif-visualizer": {
172
desc: "Visualize output generated by Valgrind's massif tool",
173
icon: "areaChart",
174
label: "Massif Visualizer",
175
},
176
kcachegrind: {
177
desc: "Inspect Callgrind (Valgrind) output",
178
icon: "search",
179
label: "KCachegrind",
180
},
181
dia: {
182
desc: "Dia is a program to draw structured diagrams.",
183
icon: "flow-chart",
184
label: "Dia",
185
},
186
pycharm: {
187
command: "pycharm.sh",
188
desc: "A powerful and smart IDE for productive Python development.",
189
icon: "python",
190
label: "PyCharm",
191
},
192
intellij: {
193
label: "IntelliJ IDEA",
194
desc: "A powerful and smart IDE for productive JAVA development.",
195
command: "idea.sh",
196
icon: "lightbulb",
197
},
198
avogadro: {
199
label: "Avogadro",
200
desc: "An advanced molecule editor and visualizer designed for cross-platform use in computational chemistry, molecular modeling, bioinformatics, materials science, and related areas",
201
icon: "atom",
202
},
203
shotwell: {
204
label: "Shotwell",
205
desc: "Shotwell is a personal photo manager.",
206
icon: "camera",
207
},
208
evince: {
209
label: "Evince",
210
icon: "file-pdf",
211
desc: "A document viewer for PDF, PostScript, DVI, DjVu, ...",
212
},
213
calibre: {
214
label: "Calibre",
215
icon: "book",
216
desc: "A powerful and easy to use e-book manager",
217
},
218
qgis: {
219
label: "QGIS",
220
icon: "qgis",
221
desc: "A user friendly Open Source Geographic Information System.",
222
},
223
grass: {
224
label: "GRASS",
225
icon: "grass",
226
desc: "Geographic Resources Analysis Support System",
227
},
228
ds9: {
229
icon: "sun",
230
label: "SAOImage DS9",
231
desc: "An astronomical imaging and data visualization application.",
232
},
233
xcas: {
234
icon: "square-root-alt",
235
label: "Xcas",
236
desc: "An interface to perform computer algebra, function graphs, interactive geometry (2-d and 3-d), spreadsheet and statistics, programmation.",
237
},
238
"gnome-system-monitor": {
239
icon: "microchip",
240
label: "System Monitor",
241
desc: "Shows you what programs are running and how much processor time, memory, and disk space are being used.",
242
},
243
gedit: {
244
icon: "edit",
245
label: "Gedit",
246
desc: "The GNOME text editor",
247
},
248
scilab: {
249
desc: "A free and open source software for engineers & scientists",
250
label: "Scilab",
251
icon: "calculator",
252
},
253
cadabra2: {
254
command: "cadabra2-gtk",
255
icon: "square-root-alt",
256
label: "Cadabra 2",
257
desc: "A field-theory motivated approach to computer algebra",
258
},
259
"vqe-playground": {
260
icon: "atom",
261
label: "VQE Playground",
262
desc: "Gaining intuition about Variational Quantum Eigensolver",
263
},
264
kbibtex: {
265
icon: "tex-file",
266
label: "KBibTeX",
267
desc: "A reference management software primarily for BibTeX",
268
},
269
texmaker: {
270
icon: "tex-file",
271
label: "TeXmaker",
272
desc: "Free cross-platform LaTeX editor since 2003",
273
},
274
zotero: {
275
icon: "tex-file",
276
label: "Zotero",
277
desc: "A free, easy-to-use tool to help you collect, organize, annotate, cite, and share research.",
278
},
279
jurism: {
280
icon: "tex-file",
281
label: "Juris-M",
282
desc: "A fork of Zotero with additional features supporting legal research and multilingual citations.",
283
},
284
xfractint: {
285
icon: "star",
286
desc: "A fractal generator that creates beautiful images using various mathematical formulas.",
287
label: "XFractint",
288
command: "xfractint",
289
},
290
sqlitebrowser: {
291
label: "Sqlite Browser",
292
desc: "A high quality, visual, open source tool to create, design, and edit database files compatible with SQLite.",
293
icon: "database",
294
command: "sqlitebrowser",
295
},
296
} as const satisfies { [key: string]: App };
297
298