tazpkg view doc/tazpkg.en.html @ rev 835

en: edit docs
author Paul Issott <paul@slitaz.org>
date Sat Aug 15 12:23:33 2015 +0100 (2015-08-15)
parents f1c82b2d20aa
children d6cbd0c5f273
line source
1 <!DOCTYPE html>
2 <html lang="en">
3 <head>
4 <meta charset="utf-8" />
5 <title>TazPkg Manual</title>
6 <meta name="viewport" content="width=device-width,initial-scale=1"/>
7 <link rel="stylesheet" type="text/css" href="../slitaz-doc.css" />
8 <script type="text/javascript" src="../slitaz-doc.js"></script>
9 </head>
10 <body>
12 <header>
13 <h1>TazPkg Manual</h1>
14 </header>
16 <!-- Start content -->
17 <div id="content">
20 <h2>Name</h2>
22 <p>TazPkg — Tiny autonomous zone package manager</p>
25 <h2>Syntax</h2>
27 <pre>
28 tazpkg [command] [options...]
29 </pre>
32 <h2>Description</h2>
34 <p>TazPkg is a lightweight package manager to install, list, download, update or
35 remove precompiled packages on a GNU/Linux system. TazPkg offers commands for
36 searching and creating packages and was created independently for the project.
37 The format of the packages using the *.tazpkg extension is a cpio archive
38 containing a filesystem compressed with gzip, a receipt and an optional
39 description. TazPkg also manages dependencies based on package receipts. Each
40 receipt contains all the information about a package and can also include pre-
41 and post-installation functions. The same receipt is used by Cookutils to
42 compile sources and generate a .tazpkg package.</p>
44 <p>TazPkg is entirely built from scratch using Shell script, compatible with
45 Bash; it runs under Ash — part of the Busybox project. TazPkg is distributed
46 under the free GNU license <a href="file:///usr/share/licenses/gpl.txt"
47 target="_blank">GPL V3</a>.</p>
50 <h2>Environment</h2>
52 <p>TazPkg uses some environment variables:</p>
54 <ul>
55 <li><tt>LANGUAGE</tt>: defines the language of output and user
56 confirmations. <x-details>Note, <tt>LANG</tt> and <tt>LC_ALL</tt>
57 environment variables also affect output language</x-details></li>
58 <li><tt>LC_TIME</tt>: defines the date format in the <a
59 href="#activity">activity</a> command</li>
60 <!-- li><tt>TAZPKG_ROOT</tt>: if defined it points to the root of file system
61 where TazPkg should work. Note, value defined using <tt>--root=</tt>
62 option has precedence over this environment variable</li -->
63 </ul>
66 <h2>Files</h2>
69 <h3>Configuration files</h3>
71 <ul>
72 <li><tt><a href="file:///etc/slitaz/slitaz.conf"
73 target="_blank">/etc/slitaz/slitaz.conf</a></tt></li>
74 <li><tt><a href="file:///etc/slitaz/tazpkg.conf"
75 target="_blank">/etc/slitaz/tazpkg.conf</a></tt></li>
76 </ul>
79 <h3>Package database files</h3>
81 <p>Default placement of the package database is <tt>/var/lib/tazpkg</tt>.</p>
83 <ul>
84 <li><tt><a href="file:///var/lib/tazpkg/ID" target="_blank">ID</a></tt>
85 (deprecated): identifier of the current SliTaz repository state.
86 <x-details>The value changes when new or updated packages appear in the
87 repository.</x-details></li>
88 <li><tt><a href="file:///var/lib/tazpkg/IDs" target="_blank">IDs</a></tt>:
89 identifier of the current SliTaz repository state and the UNIX time stamp.
90 <x-details>The ID value changes when new or updated packages appear in
91 the repository. Time stamp allows you to track how long a change is made in
92 the repository and to track the freshness of repository mirrors.
93 (To convert UNIX time stamp to the date:
94 <code>date -d@<em>timestamp</em></code>)</x-details></li>
95 <li><tt><a href="file:///var/lib/tazpkg/mirror"
96 target="_blank">mirror</a></tt>: URL of the current repository mirror in
97 use. <x-details>URL points to the remote folder containing packages and
98 database files.</x-details></li>
99 <li><tt><a href="file:///var/lib/tazpkg/mirrors"
100 target="_blank">mirrors</a></tt>: list of URLs of available repository
101 mirrors. <x-details>Note the difference between URLs from these two
102 files; you should append URL from this file by
103 <tt>packages/<em>cooking</em>/</tt> (for <tt><em>cooking</em></tt>-based
104 Slitaz version).</x-details></li>
105 <li><tt><a href="file:///var/lib/tazpkg/packages.list"
106 target="_blank">packages.list</a></tt> (deprecated): list of package
107 names with version numbers available in the repository.</li>
108 <li><tt><a href="file:///var/lib/tazpkg/packages.desc"
109 target="_blank">packages.desc</a></tt> (deprecated): list contained
110 package name, version, short description, category and upstream
111 URL.</li>
112 <li><tt><a href="file:///var/lib/tazpkg/packages.txt"
113 target="_blank">packages.txt</a></tt> (deprecated): list containing
114 package name, version, short description and two package sizes
115 <x-details>(first — traffic to download package, second — HDD size for
116 installed package)</x-details>.</li>
117 <li><tt><a href="file:///var/lib/tazpkg/packages.md5"
118 target="_blank">packages.md5</a></tt> (deprecated): list containing MD5
119 checksum with package file name.</li>
120 <li><tt><a href="file:///var/lib/tazpkg/packages.info"
121 target="_blank">packages.info</a></tt>: list was built to replace and
122 extend above lists. <x-details>For every package available in the
123 repository it contains: package name, version, category, short
124 description, upstream URL, tags, package sizes, depends and MD5
125 checksum. Development continues, and the list can be extended by other
126 fields, if necessary.</x-details></li>
127 <li><tt><a href="file:///var/lib/tazpkg/packages.equiv"
128 target="_blank">packages.equiv</a></tt>: list of equivalent packages
129 available in the repository. <x-details>Format of the list item:
130 <tt><em>package</em>=<em>rule rule…</em></tt>.<br>
131 Format of the rule: <tt><em>alternative:newname</em></tt> — if
132 <tt><em>alternative</em></tt> is installed then
133 <tt><em>newname</em></tt> will be installed instead of the
134 <tt><em>package</em></tt>.<br>
135 In the second format of the rule <tt><em>alternative:</em></tt> part is
136 omitted — in this case <tt><em>newname</em></tt> <em>can be</em>
137 installed instead of the <tt><em>package</em></tt> (in the user
138 choice).</x-details></li>
139 <li><tt><a href="file:///var/lib/tazpkg/packages.diff"
140 target="_blank">packages.diff</a></tt>: list created when you run
141 <tt><a href="#recharge">recharge</a></tt> command. <x-details>List
142 contains package names with versions of the new packages available in
143 the repository with the last recharge.</x-details></li>
144 <li><tt><a href="file:///var/lib/tazpkg/packages.up"
145 target="_blank">packages.up</a></tt>: list created when you run
146 <tt><a href="#upgrade">upgrade</a></tt> command. <x-details>List
147 contains package names you can upgrade with the last
148 recharge.</x-details></li>
149 <li><tt><a href="file:///var/lib/tazpkg/descriptions.txt"
150 target="_blank">descriptions.txt</a></tt>: list of the “long”
151 descriptions of the all packages available on the repository.</li>
152 <li><tt>packages-desc.<em>language</em></tt> — optional list of the packages
153 translated short descriptions <x-details>(see the package
154 tazpkg-desc-ru)</x-details>.</li>
155 <li><tt>descriptions.<em>language</em>.txt</tt> — optional list of the
156 packages translated “long” descriptions <x-details>(see the package
157 tazpkg-desc-ru)</x-details>.</li>
158 <li><tt>packages.icons</tt> — optional list of the packages icons for
159 TazPanel.</li>
160 <li><tt><a href="file:///var/lib/tazpkg/blocked-packages.list"
161 target="_blank">blocked-packages.list</a></tt>: optional list of the
162 packages blocked for update.</li>
163 <li><tt><a href="file:///var/lib/tazpkg/extra.list"
164 target="_blank">extra.list</a></tt>: list of the extra packages
165 <x-details>(non-free packages; free packages but not compiled from
166 sources). List contains package name, short description, upstream URL,
167 category, version, license.</x-details></li>
168 <li><tt>files.list.lzma</tt>: very large compressed list which contains all
169 the files of all the packages available in the repository
170 <x-details>(nearly 5,000 packages and nearly 0.7 million
171 files now)</x-details>.</li>
172 <li><tt>files-list.md5</tt>: MD5 checksum of the
173 <tt>files.list.lzma</tt>.</li>
174 <li><tt><a href="file:///var/lib/tazpkg/installed.info"
175 target="_blank">installed.info</a></tt>: list of the installed packages
176 with the exact format of the <tt>packages.info</tt> list.
177 <x-details>Idea is just to copy list item from <tt>packages.info</tt> to
178 the <tt>installed.info</tt> during package installation.</x-details></li>
179 <li><tt><a href="file:///var/lib/tazpkg/installed.md5"
180 target="_blank">installed.md5</a></tt> (deprecated): list containing MD5
181 checksum with file names of all installed packages.</li>
182 </ul>
184 <p>All the deprecated files will be deleted after we verify that the programs do
185 not use them (and modify the programs as necessary).</p>
187 <p>In addition to the common package database files there is also individual
188 folders for all installed packages placed by default in the
189 <tt>/var/lib/tazpkg/installed/<em>package</em></tt>. Every folder here may
190 contain the following files:</p>
192 <ul>
193 <li><tt>receipt</tt> (mandatory) — the package recipe</li>
194 <li><tt>files.list</tt> (mandatory) — list of package files</li>
195 <li><tt>md5sum</tt> (mandatory) — checksums of package files (other checksum
196 files can be specified in the settings: <tt>cksum</tt> (CRC32),
197 <tt>md5sum</tt> (MD5), <tt>sha1sum</tt> (SHA1), <tt>sha256sum</tt>
198 (SHA256), <tt>sha512sum</tt> (SHA512), <tt>sha3sum</tt> (SHA3-512))</li>
199 <li><tt>description.txt</tt> (optional) — “long” description</li>
200 <li><tt>modifiers</tt> (optional) — list of packages that have replaced some
201 of the files of this package</li>
202 <li><tt>volatile.cpio.gz</tt> (optional) — archive of “official”
203 configuration files</li>
204 </ul>
207 <h3>Cache</h3>
209 <p>Default placement of the packages cache is <tt>/var/cache/tazpkg</tt> with
210 sub-folders for the different repositories. <x-details>It is exactly
211 <tt>/var/cache/tazpkg/<em>cooking</em>/packages</tt> for the
212 <tt><em>cooking</em></tt>-based SliTaz version.</x-details></p>
215 <h3>Misc files</h3>
217 <p>File with default placement <tt><a href="file:///var/log/slitaz/tazpkg.log"
218 target="_blank">/var/log/slitaz/tazpkg.log</a></tt> stores TazPkg activity log.
219 <x-details>Log stores five types of actions: installing, uninstalling, blocking,
220 unblocking, reconfiguring packages.</x-details></p>
222 <p>Shared MIME information which allows to “guess” SliTaz package files, package
223 receipts and SliTaz flavor files. <x-details>File placed here: <tt><a
224 href="file:///usr/share/mime/packages/tazpkg.xml"
225 target="_blank">/usr/share/mime/packages/tazpkg.xml</a></tt>.</x-details></p>
227 <p>Plug-in for the TazPanel (SliTaz administration and configuration panel)
228 <tt>/var/www/tazpanel/pkgs.cgi</tt> allows you to manage SliTaz packages in the
229 <a href="" target="_blank">web application</a>.</p>
231 <p>TazPkg documentation is placed in the <tt>/usr/share/doc/tazpkg</tt>
232 folder.</p>
237 <h2>Commands</h2>
239 <p>The first <tt>tazpkg</tt> parameter is a command followed by other mandatory
240 and optional parameters as will be described hereinafter. Options begin with
241 double dashes, you can arrange them in any order and in any place, even before
242 the command. Unknown and inappropriate options are ignored. The following
243 commands are equivalent:</p>
245 <pre>
246 $ tazpkg info nano --root=<em>/mnt/sda6</em>
247 $ tazpkg --root=<em>/mnt/sda6</em> info nano
248 $ tazpkg info --root=<em>/mnt/sda6</em> nano <em>--color</em>
249 </pre>
251 <!-- p>You can add global option <tt>--root=…</tt> to any TazPkg command. This
252 option allows to work with other SliTaz installations. Option points to the root
253 of mounted file system from other SliTaz installation. <x-details>By the way,
254 using this option allows to install SliTaz to the other file system “from
255 scratch”, and upgrade SliTaz packages remotely.</x-details></p -->
258 <h3>Service commands</h3>
260 <ul>
261 <li><a href="#usage">usage</a>: print short usage</li>
262 <li><a href="#help">help</a>: show help on the TazPkg commands</li>
263 <li><a href="#activity">activity</a>: show TazPkg activity log</li>
264 <li><a href="#clean-cache">clean-cache</a>: clean all packages downloaded in
265 cache directory</li>
266 <li><a href="#shell">shell</a>: run interactive TazPkg shell</li>
267 </ul>
270 <h3>Working with lists</h3>
272 <ul>
273 <li><a href="#list">list</a>: list installed packages on the system</li>
274 <li><a href="#list-mirror">list-mirror</a>: list all available packages on
275 the mirror</li>
276 <li><a href="#list-config">list-config</a>: list the configuration
277 files</li>
278 </ul>
281 <h3>Search</h3>
283 <ul>
284 <li><a href="#search">search</a>: search for a package by pattern or
285 name</li>
286 <li><a href="#search-pkgname">search-pkgname</a>: search on mirror for
287 package having a particular file</li>
288 <li><a href="#search-file">search-file</a>: search for file in all installed
289 packages files</li>
290 </ul>
293 <h3>Installing and removing packages</h3>
295 <ul>
296 <li><a href="#get">get</a>: download a package into the current
297 directory</li>
298 <li><a href="#install">install</a>: install a local package</li>
299 <li><a href="#get-install">get-install</a>: download and install a package
300 from the mirror</li>
301 <li><a href="#install-list">install-list</a>: install all packages from a
302 list of packages</li>
303 <li><a href="#install-list">get-install-list</a>: download and install a
304 list of packages from the mirror</li>
305 <li><a href="#remove">remove</a>: remove the specified package and all
306 installed files</li>
307 <li><a href="#reconfigure">reconfigure</a>: replay post install script from
308 package</li>
309 <li><a href="#link">link</a>: link a package from another SliTaz
310 installation</li>
311 <li><a href="#set-release">set-release</a>: change release and update
312 packages</li>
313 <li><a href="#add-flavor">add-flavor</a>: install the flavor list of
314 packages</li>
315 <li><a href="#add-flavor">install-flavor</a>: install the flavor list of
316 packages and remove other ones</li>
317 </ul>
320 <h3>Working with packages</h3>
322 <ul>
323 <li><a href="#info">info</a>: print information about a package</li>
324 <li><a href="#desc">desc</a>: print description of a package</li>
325 <li><a href="#list-files">list-files</a>: list the files installed with a
326 package</li>
327 <li><a href="#block">block, unblock</a>: block an installed package version
328 or unblock it for upgrade</li>
329 <li><a href="#check">check</a>: verify consistency of installed
330 packages</li>
331 <li><a href="#bugs">bugs</a>: show known bugs in packages</li>
332 <li><a href="#depends">depends</a>: display dependencies tree</li>
333 <li><a href="#depends">rdepends</a>: display reverse dependencies tree</li>
334 <li><a href="#extract">extract</a>: extract a (*.tazpkg) package into a
335 directory</li>
336 <li><a href="#pack">pack</a>: pack an unpacked or prepared package tree</li>
337 <li><a href="#repack">repack</a>: create a package archive from an installed
338 package</li>
339 <li><a href="#repack-config">repack-config</a>: create a package archive
340 with configuration files</li>
341 <li><a href="#recompress">recompress</a>: rebuild a package with a better
342 compression ratio</li>
343 <li><a href="#convert">convert</a>: convert alien package to tazpkg</li>
344 <li><a href="#list-suggested">list-suggested</a>: print list of suggested
345 packages</li>
346 </ul>
349 <h3>Working with repositories</h3>
351 <ul>
352 <li><a href="#recharge">recharge</a>: recharge your packages database from
353 the mirror</li>
354 <li><a href="#upgrade">upgrade</a>: check packages, list and install latest
355 upgrades</li>
356 <li><a href="#setup-mirror">setup-mirror</a>: change the mirror URL
357 configuration</li>
358 <li><a href="#add-undigest">setup-undigest</a>: update an undigest
359 mirror</li>
360 <li><a href="#list-undigest">list-undigest</a>: list undigest mirrors</li>
361 <li><a href="#add-undigest">add-undigest</a>: add an undigest mirror</li>
362 <li><a href="#remove-undigest">remove-undigest</a>: remove an undigest
363 mirror</li>
364 </ul>
369 <h2>Service commands</h2>
372 <h3 id="usage">usage</h3>
374 <p>Show the full list of the TazPkg commands with a brief description.</p>
376 <pre>
377 $ tazpkg usage
378 $ tazpkg
379 </pre>
382 <h3 id="help">help</h3>
384 <p>Display help for the selected command (<tt>help</tt> or <tt>-h</tt>). You can
385 enter a short name of the command, the full name or a part of the full name. You
386 can ignore hyphens at the beginning of the short name. If the requested part of
387 the full name match the several commands, you will be asked to clarify the
388 request.</p>
390 <pre>
391 $ tazpkg help <em>-gi</em>
392 $ tazpkg -h <em>us</em>
393 </pre>
396 <h3 id="activity">activity</h3>
398 <p>Display TazPkg activity log (<tt>activity</tt> or <tt>log</tt> or
399 <tt>-a</tt>). Optional parameter <tt>--nb=</tt> lets you set number of displayed
400 lines.</p>
402 <pre>
403 $ tazpkg activity
404 $ tazpkg -a --nb=<em>20</em>
405 </pre>
408 <h3 id="clean-cache">clean-cache</h3>
410 <p>Remove *.tazpkg packages downloaded to the cache (<tt>clean-cache</tt> or
411 <tt>-cc</tt>). During installation, TazPkg keeps a copy of packages downloaded
412 from the Web. This is done to save bandwidth in case of reinstallation, but you
413 may want to free up space on the hard drive or re-download the packages.</p>
415 <pre>
416 # tazpkg clean-cache
417 # tazpkg -cc
418 </pre>
421 <h3 id="shell">shell</h3>
423 <p>Run interactive TazPkg shell. Here you can enter all the TazPkg commands
424 listed above.</p>
426 <pre>
427 $ tazpkg shell
428 # tazpkg shell
429 </pre>
434 <h2>Working with lists</h2>
437 <h3 id="list">list</h3>
439 <p>List packages installed on the system (<tt>list</tt> or <tt>-l</tt>). This
440 command displays a column list of all installed packages. It also allows you to
441 list the categories (<tt>c</tt> or <tt>cat</tt> or <tt>categories</tt>),
442 packages based on category and packages placed on hold (<tt>b</tt> or
443 <tt>blocked</tt>). You can also use the <tt><a href="#search">search</a></tt>
444 command for a list based on a term or package name.</p>
446 <pre>
447 $ tazpkg list
448 $ tazpkg list cat
449 $ tazpkg list <em>games</em>
450 $ tazpkg list blocked
451 </pre>
454 <h3 id="list-mirror">list-mirror</h3>
456 <p>List packages available on the mirror (<tt>list-mirror</tt> or <tt>-lm</tt>).
457 This command will display the packages list recharged from the mirror. If it
458 doesn't exist, you will be asked to launch <code>tazpkg
459 <a href="#recharge">recharge</a></code> as administrator (root) for a list of
460 available packages. The <tt>--diff</tt> option is used to display the
461 differences between the last and current list of packages.</p>
463 <pre>
464 $ tazpkg list-mirror
465 $ tazpkg -lm --diff
466 </pre>
469 <h3 id="list-config">list-config</h3>
471 <p>Lists the system configuration files. The <tt>--box</tt> option displays in
472 table form. You can specify package name to display configuration files only for
473 this package.</p>
475 <pre>
476 $ tazpkg list-config
477 $ tazpkg list-config --box
478 $ tazpkg list-config <em>slim</em>
479 $ tazpkg list-config --box <em>slim</em>
480 </pre>
485 <h2>Search</h2>
488 <h3 id="search">search</h3>
490 <p>Search for packages by owner or package name (<tt>search</tt> or
491 <tt>-s</tt>). This command will search for the term wanted in the installed
492 packages (<tt>-i</tt> or <tt>--installed</tt>) and the list of available
493 packages on the mirror (<tt>-l</tt> or <tt>--list</tt>).</p>
495 <p>To obtain the latest list of installable packages on the mirror, just run
496 <code>tazpkg recharge</code> before conducting a search.</p>
498 <pre>
499 $ tazpkg search <em>gcc</em>
500 $ tazpkg search <em>mt</em> -i
501 $ tazpkg search <em>bit</em> -l
502 </pre>
505 <h3 id="search-pkgname">search-pkgname</h3>
507 <p>Search for a file on mirror and output only the packages names
508 (<tt>search-pkgname</tt> or <tt>-sp</tt>).</p>
510 <pre>
511 $ tazpkg search-pkgname <em>libnss</em>
512 $ tazpkg -sp <em>/usr/share/fonts</em>
513 </pre>
516 <h3 id="search-file">search-file</h3>
518 <p>Search for a file among the files installed by the packages
519 (<tt>search-file</tt> or <tt>-sf</tt>). This command is very useful to find the
520 full path to a file and determine if a file is present on the system. Option
521 <tt>--mirror</tt> allows to search for a file among all the files available on
522 the mirror.</p>
524 <pre>
525 $ tazpkg search-file <em>libnss</em>
526 $ tazpkg -sf <em>/usr/share/fonts</em> --mirror
527 </pre>
532 <h2>Installing and removing packages</h2>
535 <h3 id="get">get</h3>
537 <p>Get a package from the mirror (<tt>get</tt> or <tt>-g</tt>). The downloaded
538 package is stored in the current directory. To find the path you can use
539 <code>pwd</code>.</p>
541 <pre>
542 # tazpkg get <em>grub</em>
543 # tazpkg get <em>nano</em> --root=<em>/mnt/sda6</em>
544 </pre>
547 <h3 id="install">install</h3>
549 <p>This command allows the installation of a local package with the
550 <tt>.tazpkg</tt> extension (<tt>install</tt> or <tt>-i</tt>). See
551 <tt><a href="#get-install">get-install</a></tt> to install a package from the
552 internet. Note that you can force the installation via the <tt>--forced</tt>
553 option. Option <tt>--newconf</tt> allows you to rewrite all user configuration files
554 using the new files from package. Option <tt>--nodeps</tt> allows you to install only
555 a specified package without its dependencies.</p>
557 <pre>
558 # tazpkg install <em>package-1.0.tazpkg</em>
559 # tazpkg -i <em>path/to/package-1.0.tazpkg</em> --forced
560 # tazpkg -i <em>path/to/package-1.0.tazpkg</em> --root=<em>/mnt/rootfs</em>
561 </pre>
564 <h3 id="get-install">get-install</h3>
566 <p>Get and install a package from a mirror on the internet (<tt>get-install</tt>
567 or <tt>-gi</tt>). Command begins by checking whether the package exists on the
568 mirror and if it has been already downloaded. For a list of packages on the
569 mirror, we must use the <tt><a href="#list-mirror">list-mirror</a></tt>
570 command. Note that you can force the installation via the <tt>--forced</tt>
571 option. Option <tt>--newconf</tt> allows you to rewrite all user configuration files
572 using the new files from a package. Option <tt>--nodeps</tt> allows you to install only
573 a specified package without its dependencies.</p>
575 <p>Option <tt>--forced</tt> allows you to update an already installed package.</p>
577 <pre>
578 # tazpkg get-install <em>grub</em>
579 # tazpkg -gi <em>grub</em> --forced
580 # tazpkg -gi <em>nano</em> --root=<em>/mnt/sda6</em>
581 </pre>
584 <h3 id="install-list">install-list, get-install-list</h3>
586 <p>Install a set of packages listed in a file. This command allows you to
587 (download and) install several packages with a single command and can also be
588 forced.</p>
590 <pre>
591 # tazpkg install-list <em>my-packages.list</em>
592 # tazpkg get-install-list <em>my-packages.list</em> --forced
593 </pre>
596 <h3 id="remove">remove</h3>
598 <p>Remove a package (<tt>remove</tt> or <tt>-r</tt>). You will be asked for
599 confirmation (y/N) of removing the package, as well as for removing packages
600 depending on this package, and for reinstalling packages modified by this
601 package. This command will delete all files installed with the package.</p>
603 <p>Option <tt>--auto</tt> removes and reinstalls packages without your
604 confirmation.</p>
606 <pre>
607 # tazpkg remove <em>bc</em>
608 # tazpkg -r <em>gtk+-3</em> --root=<em>/mnt/sda6</em>
609 # tazpkg -r <em>nano</em> --auto
610 </pre>
613 <h3 id="reconfigure">reconfigure</h3>
615 <p>Replays the post-install script from the package.</p>
617 <pre>
618 # tazpkg reconfigure <em>gcc</em>
619 # tazpkg reconfigure <em>gcc</em> --root=<em>/mnt/sda6</em>
620 </pre>
623 <h3 id="link">link</h3>
625 <p>This command allows the installation of a package from another media device.
626 The set up is done through symbolic links and consumes very little memory. It is
627 generally used within the system RAM to install add-ons from a USB key.</p>
629 <pre>
630 # tazpkg link <em>openoffice /media/usbdisk</em>
631 </pre>
634 <h3 id="set-release">set-release</h3>
636 <p>The <tt>set-release</tt> command changes the current version and upgrades all
637 of the packages to the latest release.</p>
639 <pre>
640 # tazpkg set-release <em>cooking</em>
641 </pre>
644 <h3 id="add-flavor">add-flavor, install-flavor</h3>
646 <p>Install a set of packages from a flavor. In addition, <tt>install-flavor</tt>
647 purges other installed packages.</p>
649 <pre>
650 # tazpkg add-flavor <em>gtkonly</em>
651 # tazpkg install-flavor <em>justx</em>
652 </pre>
657 <h2>Working with packages</h2>
660 <h3 id="info">info</h3>
662 <p>Show all the available information related to your package. You can specify
663 the name of the installed package or a package that is not yet installed, but
664 available in the repository. You can also get information about a local file
665 package by entering an absolute or relative path to the file <tt>.tazpkg</tt>.
666 The information contained in the TazPkg database and in the package recipe —
667 its version, category, maintainer, Web site and all the dependencies (see also
668 Cookutils for more information on recipes).</p>
670 <pre>
671 $ tazpkg info <em>busybox</em>
672 $ tazpkg info <em>minitube</em>
673 $ tazpkg info <em>packages/comix-4.0.4.tazpkg</em>
674 </pre>
677 <h3 id="desc">desc</h3>
679 <p>Description of the package (if it exists) (<tt>desc</tt> or <tt>-d</tt>).
680 This command displays the <tt>description.txt</tt> file of each package (a
681 simple text file, justified to 80 characters to fit in a standard terminal).</p>
683 <pre>
684 $ tazpkg desc <em>busybox</em>
685 </pre>
688 <h3 id="list-files">list-files</h3>
690 <p>List all files installed with a package (<tt>list-files</tt> or
691 <tt>-lf</tt>). This command will simply read and display the <tt>files.list</tt>
692 of each package which is automatically generated when the package is created and
693 is also used to remove files when uninstalling a package.</p>
695 <pre>
696 $ tazpkg list-files <em>bc</em>
697 </pre>
700 <h3 id="block">block, unblock, chblock</h3>
702 <p>The <tt>block</tt> (or <tt>-b</tt>) and <tt>unblock</tt> (or <tt>-u</tt>)
703 commands permit you to block installed package versions so that they are not
704 maintained by an <tt><a href="#upgrade">upgrade</a></tt>. Command
705 <tt>chblock</tt> changes the blocking state of the package. The list of packages on
706 hold are contained in the <tt>/var/lib/tazpkg/blocked-packages.list</tt>. This
707 file can also be edited by hand.</p>
709 <pre>
710 # tazpkg block <em>grub</em>
711 # tazpkg unblock <em>grub</em>
712 # tazpkg chblock <em>grub</em>
713 </pre>
716 <h3 id="check">check</h3>
718 <p>The <tt>check</tt> command can check dependencies on installed packages and
719 determine whether all the files needed for the repacking of packages are
720 present.</p>
722 <pre>
723 $ tazpkg check
724 $ tazpkg check --full
725 $ tazpkg check <em>nano</em>
726 $ tazpkg check <em>sakura</em> --full
727 </pre>
730 <h3 id="bugs">bugs</h3>
732 <p>Generates a list of known bugs in the packages. You can specify a single
733 package to show bugs.</p>
735 <pre>
736 $ tazpkg bugs
737 $ tazpkg bugs <em>my_package</em>
738 </pre>
741 <h3 id="depends">depends, rdepends</h3>
743 <p>Displays a dependency tree or reverse dependency tree for a package.</p>
745 <p>For <code>depends</code> command: option <tt>--mark</tt> marks installed
746 packages with plus sign and not installed with a minus/dash. Option
747 <tt>--total</tt> calculates the number of displayed packages and their size. Also,
748 with both options at a time you'll get the number and size of packages to be
749 installed.</p>
751 <p>For <code>rdepends</code> command: without the <tt>--all</tt> option you'll get
752 the list of only installed reverse dependency packages, with this option — a list
753 of all available packages. Option <tt>--mark</tt> marks packages as in the
754 <code>depends</code> command.</p>
756 <pre>
757 # tazpkg depends <em>mpd</em>
758 # tazpkg rdepends <em>mpd</em>
759 </pre>
762 <h3 id="extract">extract</h3>
764 <p>Extract a package into a directory (<tt>extract</tt> or <tt>-e</tt>). If you
765 do not specify the destination directory, the package will be extracted in the
766 current directory using the name <tt><em>package-version</em></tt>.</p>
768 <pre>
769 $ tazpkg extract <em>package.tazpkg</em>
770 $ tazpkg extract <em>package.tazpkg target/dir</em>
771 </pre>
774 <h3 id="pack">pack</h3>
776 <p>The <tt>pack</tt> command will create a package from a directory prepared in
777 advance or from an unpacked package. It can also manually create a .tazpkg
778 package (see the Cookutils documentation for the automatic creation of
779 packages).</p>
781 <pre>
782 # tazpkg pack <em>package-version</em>
783 </pre>
786 <h3 id="repack">repack</h3>
788 <p>The <tt>repack</tt> command allows you to recreate a package from the files
789 on a system where it was previously installed.</p>
791 <pre>
792 $ tazpkg repack <em>package</em>
793 </pre>
796 <h3 id="repack-config">repack-config</h3>
798 <p>The <tt>repack-config</tt> command recreates a package of the system
799 configuration files (see <tt><a href="#list-config">list-config</a></tt>). It is
800 enough to install the package to find the current configuration.</p>
802 <pre>
803 # tazpkg repack-config
804 </pre>
807 <h3 id="recompress">recompress</h3>
809 <p>Recompress .tazpkg cpio archive with lzma.</p>
811 <pre>
812 $ tazpkg recompress <em>package.tazpkg</em>
813 </pre>
816 <h3 id="convert">convert</h3>
818 <p>Converts an "alien" package into a SliTaz package (.tazpkg) (<tt>convert</tt>
819 or <tt>-c</tt>).</p>
821 <p>Supported packages formats:</p>
823 <ul>
824 <li><a href="https://packages.debian.org/search" target="_blank">Debian
825 packages</a> (<tt>*.deb</tt>, <tt>*.udeb</tt>)</li>
826 <li><a href="http://rpmfind.net/linux/rpm2html/search.php"
827 target="_blank">RPM packages</a> (<tt>*.rpm</tt>)</li>
828 <li><a href="http://www.slax.org/" target="_blank">Slax packages</a>
829 (<tt>*.sb</tt>)</li>
830 <li><a href="http://puppylinux.org/" target="_blank">Puppy packages</a>
831 (<tt>*.sfs</tt>, <tt>*.pet</tt>)</li>
832 <li><a href="http://www.slackware.com/packages/" target="_blank">Slackware
833 packages</a> (<tt>*.tgz</tt>)</li>
834 <li><a href="http://www.nutyx.org/" target="_blank">NuTyX packages</a>
835 (<tt>*.cards.tar.xz</tt>)</li>
836 <li><a href="https://www.archlinux.org/packages/" target="_blank">Arch
837 Linux</a> / <a href="http://pkgs.alpinelinux.org/packages"
838 target="_blank">Alpine Linux packages</a> (<tt>*.apk</tt>,
839 <tt>*.pkg.tar.gz</tt>, <tt>*.pkg.tar.xz</tt>)</li>
840 <li><a href="http://wiki.openwrt.org/doc/packages" target="_blank">OpenWrt
841 packages</a> (<tt>*.ipk</tt>, <tt>*.opk</tt>)</li>
842 <li><a href="http://0.tuxfamily.org/doku.php/paquets/start"
843 target="_blank">0Linux packages</a> (<tt>*.spack</tt>)</li>
844 <li><a href="http://www.paldo.org/index-section-packages.html"
845 target="_blank">paldo packages</a> (<tt>*.tar.bz2</tt>)</li>
846 <li><a href="http://www.voidlinux.eu/packages/" target="_blank">Void
847 packages</a> (<tt>*.xbps</tt>)</li>
848 <li><a href="http://tinycorelinux.net/" target="_blank">Tinycore
849 packages</a> (<tt>*.tce</tt>, <tt>*.tcel</tt>, <tt>*.tcem</tt>,
850 <tt>*.tcz</tt>)</li>
851 </ul>
853 <pre>
854 # tazpkg convert <em>alien-package-file</em>
855 </pre>
858 <h3 id="list-suggested">list-suggested</h3>
860 <p>List suggested packages for each of your installed packages. With option
861 <tt>--all</tt> it shows all suggested packages, and without option it shows only
862 non installed suggested packages.</p>
864 <pre>
865 $ tazpkg list-suggested
866 $ tazpkg list-suggested --all
867 </pre>
872 <h2>Working with repositories</h2>
875 <h3 id="recharge">recharge</h3>
877 <p>Recharge the list of available packages on the mirror. This command will
878 download the most recent packages database of installable packages on the mirror
879 and before starting will save the old database. Once the DB is updated, you can
880 then use the <tt><a href="#list">list</a></tt> and
881 <tt><a href="#search">search</a></tt> commands. To view and list the
882 differences, you can use <code>list-mirror --diff</code>; and to view and update
883 packages, you can simply <tt><a href="#upgrade">upgrade</a></tt>.</p>
885 <p>Command without options will recharge databases of all your repositories. You
886 can specify the repository to be recharged: "main" for main repo, or undigest
887 repository name. Option <tt>--root=</tt> allows you to specify the root of the filesystem
888 where you want to recharge DB.</p>
890 <pre>
891 # tazpkg recharge
892 # tazpkg recharge main
893 # tazpkg recharge <em>My_Undigest</em>
894 # tazpkg recharge --root=<em>/mnt/sda6</em>
895 </pre>
898 <h3 id="upgrade">upgrade</h3>
900 <p>Upgrade allows you to update all installed packages available on the current
901 mirror (<tt>upgrade</tt> or <tt>up</tt>). Upgrading packages is an important
902 part of system security, it helps to keep you secure with the latest updates and
903 fixes. The SliTaz project, although tiny, provides regular updates on security
904 and generally offers the latest versions of software. Note that this function is
905 aimed at people with SliTaz installed on a hard drive. Updated packages in
906 Live CD mode will be lost on system shutdown.</p>
908 <p>At the beginning the packages database is updated automatically (<tt><a
909 href="#recharge">recharge</a></tt>) in order to provide you with the current
910 list of packages that you can update.</p>
912 <p>Without options it runs in interactive mode and asks before install. You can
913 specify one of the next options: <tt>-c</tt> or <tt>--check</tt> to check only
914 for available upgrades; <tt>-i</tt> or <tt>--install</tt> to check for upgrades
915 and install them all.</p>
917 <pre>
918 # tazpkg upgrade
919 # tazpkg up --check
920 # tazpkg up -i
921 </pre>
924 <h3 id="setup-mirror">setup-mirror</h3>
926 <p>Setup the URL for the mirror. The <tt>setup-mirror</tt> (or <tt>-sm</tt>)
927 command will ask for the URL of the new mirror. Note that you can also modify
928 the main <tt>/var/lib/tazpkg/mirror</tt> file. The URL must point to the
929 directory containing the <tt>packages.info</tt> and packages.</p>
931 <pre>
932 # tazpkg setup-mirror
933 </pre>
936 <h3 id="add-undigest">add-undigest, setup-undigest</h3>
938 <p>Set the URL of an additional unofficial mirror to test packages that are not
939 yet present on the official mirrors. Note, you can also manually edit the file
940 in <tt>/var/lib/tazpkg/undigest/<em>repository</em></tt>. The URL must point to
941 the directory containing the packages and <tt>packages.info</tt>.</p>
943 <pre>
944 # tazpkg add-undigest <em>public-repository http://my.home.org/slitaz</em>
945 # tazpkg setup-undigest <em>local-repository /home/slitaz/packages</em>
946 </pre>
949 <h3 id="list-undigest">list-undigest</h3>
951 <p>Lists additional undigest mirrors. Option <tt>--box</tt> will output list in
952 the table form.</p>
954 <pre>
955 # tazpkg list-undigest
956 # tazpkg list-undigest --box
957 </pre>
960 <h3 id="remove-undigest">remove-undigest</h3>
962 <p>Removes the URL of an undigest mirror. You will be asked for
963 confirmation.</p>
965 <pre>
966 # tazpkg remove-undigest <em>my-repository</em>
967 </pre>
972 <h2>Maintainer</h2>
974 <p>Christophe Lincoln &lt;pankso at slitaz.org&gt;</p>
976 </div>
977 <!-- End content -->
979 <footer>
980 Copyright © 2015 <a href="http://www.slitaz.org/">SliTaz GNU/Linux</a>
981 </footer>
983 </body>
984 </html>