10LAUNCH(1) 0LAUNCH(1)
2
3
4
6 0launch — download and run programs by URL
7
8
10 0launch [OPTION]... INTERFACE [ARG]...
11
12 0launch --list [SEARCH-TERM]
13
14 0launch --import [FEED-FILES]
15
16
18 0launch runs a program, identified by an `INTERFACE'. If the program is
19 not already on your computer, it downloads information about which ver‐
20 sions are available, and lets you choose one to download. It will also
21 (automatically) do the same for libraries the program needs.
22
23
24 0launch will also check for updates if it has been a long time since
25 the last check (configurable).
26
27
28 Normally, INTERFACE is taken as a FEED, which can be either a URL in
29 the form `http://site/program' or a local path name like `/path/to/pro‐
30 gram.xml'. For HTTP URLs, the remote file is a GPG-signed XML document.
31 Local feed files are not signed. The default one-to-one mapping from
32 interface URIs to feed URLs can be changed using the --feed option.
33
34
36 When a program is available using 0launch, it will have an associated
37 URL. To run the program, simply invoke 0launch with this as an argu‐
38 ment:
39
40 0launch http://rox.sourceforge.net/2005/interfaces/Edit
41
42
43 The first time you do this, details about the program are downloaded
44 and cached, and you will be prompted to confirm the versions to use. In
45 future, the program will run directly from the cache without confirma‐
46 tion.
47
48
49 To check for new versions:
50
51 0launch --refresh http://rox.sourceforge.net/2005/interfaces/Edit
52
53
54 To search the list of cached URLs:
55
56 0launch --list Edit
57
58
59 To avoid having to keep typing the full URI, use the 0alias(1) command
60 to create shortcuts to run your programs.
61
62
64 --before=VERSION
65 Chosen implementation's version number must be earlier than VER‐
66 SION. i.e., force the use of an old version the program.
67
68
69 -c, --console
70 Never use the GUI. Normally, 0launch switches to graphical mode
71 if it needs to download anything from the network (unless DIS‐
72 PLAY is not set).
73
74
75 -d, --download-only
76 Download any needed files, but stop before actually running the
77 program.
78
79
80 -D, --dry-run
81 Just print what actions would be taken.
82
83
84 -f, --feed
85 Register (or unregister) an additional source of implementa‐
86 tions. When you check out a developer version of a project, it
87 may contain an XML feed file. To add this version to the list of
88 available versions, use --feed on this XML file. The file is not
89 copied, so you don't need to re-add the file each time it is
90 updated.
91
92 Note that if you just want to run the program, you can invoke
93 0launch on the feed file directly (without using --feed). This
94 will force the injector to use that version, but won't affect
95 what happens when you run it using the URI as normal. Use --feed
96 when you want to use the developer version even when using the
97 URI, or if the program is a library (and thus referenced by URI
98 by other programs).
99
100
101 --get-selections
102 Instead of running the program, just print the set of chosen
103 implementations as an XML document to stdout. This can be used
104 later with --set-selections. Use --select-only if you don't
105 even want to download the packages.
106
107
108 -g, --gui
109 Show the graphical policy editor. This allows you to select
110 which version of a program or library to use.
111
112
113 -h, --help
114 Show the built-in help text.
115
116
117 -i, --import
118 Import from files, not from the network. This is useful when
119 testing a feed file, to avoid uploading it to a remote server in
120 order to download it again. It might also be useful when
121 installing from a CD or similar. The file must have a trusted
122 GPG digital signature, as when fetching from the network. For
123 unsigned interfaces, see --feed.
124
125
126 -l, --list
127 List all known interface (program) URIs. If a search term is
128 given, only URIs containing that string are shown (case insensi‐
129 tive).
130
131
132 -m, --main=MAIN
133 Run the specified executable instead of the default. If MAIN
134 starts with '/' then the path is relative to the implementa‐
135 tion's top-level directory, whereas otherwise it is relative to
136 the directory containing the default MAIN program. For example,
137 if the default MAIN is bin/svn then using --main=svnadmin will
138 run .../bin/svnadmin instead.
139
140
141 --not-before=VERSION
142 Chosen implementation's version number must not be earlier than
143 VERSION. E.g., if you want to run version 2.0 or later, use
144 --not-before=2.0.
145
146
147 -o, --offline
148 Run in off-line mode, overriding the default setting. In off-
149 line mode, no interfaces are refreshed even if they are out-of-
150 date, and newer versions of programs won't be downloaded even if
151 the injector already knows about them (e.g. from a previous
152 refresh).
153
154
155 -r, --refresh
156 Fetch a fresh copy of all used interfaces. This will normally
157 switch to GUI mode, unless --console is also given.
158
159
160 --select-only
161 Download any required feeds and choose a set of implementations,
162 but don't actually download them. If there are stale feeds,
163 check for updates first (if we're not off-line).
164
165
166 --set-selections=FILE
167 Instead of choosing suitable implementations using the policy,
168 run exactly the versions given in FILE. A suitable file can be
169 created using the --get-selections option described above.
170
171
172 --show Print the selected versions in a human-readable format to std‐
173 out. The display is similar to the GUI; it shows the program
174 being run and its dependencies. For each selected component,
175 the version number is displayed and its location on the file-
176 system. Implies --download-only.
177
178
179 -s, --source
180 The implementation of the main (root) interface must have an
181 architecture of the form '*-src' (normally a literal "*", but
182 could be a compatible OS). Dependencies are normal implementa‐
183 tions, not source ones. See 0compile for details.
184
185
186 -v, --verbose
187 More verbose output. Use twice for even more verbose output.
188
189
190 -V, --version
191 Display version information.
192
193
194 -w, --wrapper=COMMAND
195 Instead of executing the chosen program directly, run COMMAND
196 PROGRAM ARGS. This is useful for running debuggers and tracing
197 tools on the program (rather than on 0launch!). Note that the
198 wrapper is executed in the environment selected by the program;
199 hence, this mechanism cannot be used for sandboxing. See the
200 DEBUGGING section below.
201
202
203 --with-store=DIR
204 Append a directory to the list of implementation caches.
205
206
208 To debug 0launch itself, use the --verbose and --console options. For
209 example:
210
211 $ 0launch -vvc http://myprog
212
213
214 To trace or debug programs run by 0launch, use the --wrapper option.
215 For example, to run myprog --help, displaying all calls to open(2):
216
217 $ 0launch --wrapper="strace -e open" http://myprog --help
218
219 If your program is interpreted (e.g. a Python program), and you wish to
220 debug the interpreter running it, you can do it like this:
221
222 $ 0launch --wrapper="gdb --args python" http://myprog --help
223
224
226 Configuration files (see freedesktop.org basedir spec):
227
228
229 ~/.config/0install.net/injector/global
230 Global configuration settings.
231
232
233 ~/.config/0install.net/injector/trustdb.xml
234 List of trusted keys.
235
236
237 ~/.config/0install.net/injector/interfaces
238 Per-interface settings, and extra feeds.
239
240
241 Cached data (can be re-downloaded if lost):
242
243
244 ~/.cache/0install.net/interfaces
245 Downloaded cached feed files.
246
247
248 ~/.cache/0install.net/implementations
249 Downloaded cached implementations, indexed by manifest digest.
250
251
252 See the 0store(1) man page for more information.
253
254
256 Copyright (C) 2010 Thomas Leonard.
257
258
259 You may redistribute copies of this program under the terms of the GNU
260 Lesser General Public License.
261
263 Please report bugs to the developer mailing list:
264
265 http://0install.net/support.html
266
267
269 The Zero Install Injector was created by Thomas Leonard.
270
271
273 0install(1), 0alias(1), 0store(1)
274
275 The Zero Install web-site:
276
277 http://0install.net
278
279
280
281Thomas Leonard 2010 0LAUNCH(1)