README
cookopts.txt
cookutils.de.html
cookutils.en.html
cookutils.fr.html
cookutils.html
cookutils.pt.html
cookutils.ru.html
cross.txt
general-questions.md
receipts-v2.md
timestats.txt
cookopts.txt
You can use a variable COOKOPTS in the receipts to adjust certain aspects of the
preparation of a package. Multiple options are allowed, that can be written
together or separated by spaces, tabs or any other symbols.
Example of use:
COOKOPTS="!menus !pngz"
Currently, the following options are recognized:
!pixmaps
Default action is to copy icons from a /usr/share/pixmaps folder as well as
from the stuff folder (the same action that made obsolete option
`GENERIC_PIXMAPS="no"`).
The presence of this option overrides the default action (files will not be
automatically copied).
!menus
Default action is to copy desktop files from a /usr/share/applications
folder (the same action that made obsolete option `GENERIC_MENUS="no"`).
The presence of this option overrides the default action (files will not be
automatically copied).
!fixdesktops
Default action is to fix common errors and warnings in the .desktop files.
The presence of this option overrides the default action (.desktop files
will not be changed).
!i18nz
1. Default action is to delete locales that are not currently supported by
SliTaz while processing desktop files.
The presence of this option overrides the default action (.desktop files
will contain the original set of locales).
Please note, this option does not have any action if the `!fixdesktops`
option is provided (desktop files will not change in any way).
2. Default action is to keep only supported translations provided by the
*.mo files.
The presence of this option overrides the default action (all existing *.mo
files will remain).
Please note, you can add all the translations to the package, for example,
using the command: `copy *.mo` (then by default only the supported locales
will be left).
!extradesktops
Default action is to remove extra information from the desktop files:
entries such as 'GenericName', 'X-GNOME-FullName' (all X-* are exposed),
'Terminal=false', Keywords and other sections. This extra information just
isn't supported in the current (LXDE) environment.
The presence of this option overrides the default action (extra information
will not be removed from the .desktop files).
!strip
Default action is to strip executable files, shared and static libraries,
as well as remove Python (*.pyc and *.pyo) and Perl (perllocal.pod and
.packlist) files.
The presence of this option overrides the default action (executable files
and libraries will not be stripped, and Python and Perl files will all be
left).
!perlz
Default action is to strip POD (plain old documentation) from the Perl
modules (*.pm) and program (*.pl) files.
The presence of this option overrides the default action (Perl files will
not be stripped).
Note, if you disabled the cleaning by using the higher !strip option, Perl
files also will not be stripped.
!rmpod
Default action is to remove Perl's POD (plain old documentation) (*.pod)
files.
The presence of this option overrides the default action (*.pod files will
all be left).
Note, if you disabled the cleaning by using the higher !strip option, *.pod
files also will all be left.
!manz
Default action is to compress all man pages.
The presence of this option overrides the default action (all man pages will
be left "as is"). Please note that these files may be installed in a
compressed format.
!gz
Default action is to recompress all *.gz files (excluding man pages) with
the better compression ratio.
The presence of this option overrides the default action (all *.gz files
will be left "as is").
!zip
Default action is to recompress all *.zip files with the better compression
ratio.
The presence of this option overrides the default action (all *.zip files
will be left "as is").
!pngz
Default action is to compress all PNG images. Image compression allows you
to save some space, but it takes a lot of time.
The presence of this option overrides the default action (all PNG images
will be left "as is").
!pngquant
Default action is to use `pngquant` while compressing PNG images. Please
note, `pngquant` produces indexed images (max 256 colors) which can be
inappropriate in some cases, a few programs (such as SLiM) will not
recognize this PNG file format.
The presence of this option overrides the default action (`pngquant` will
not be used).
!optipng
Default action is to use `optipng` to compress PNG images. Please note,
`optipng` is a lossless PNG compressor. Using `pngquant` and `optipng` in
conjunction allows you to save more space.
The presence of this option overrides the default action (`optipng` will not
be used).
op0 to op8
Default action is to use optimization level 2 while processing PNG images by
`optipng`. Using this option you can set the desired `optipng` optimization
level. The higher the level, the slower the compression and the smaller the
file size. Please note that this option has no exclamation mark, because it
means "don't do", and here, on the contrary, "to do".
!svgz
Default action is to compress all SVG images.
The presence of this option overrides the default action (all SVG images
will be left "as is").
!svgextra
Default options assumed applying transformation to paths and reducing the
accuracy of the coordinates to the tenth.
The presence of this option overrides the default behaviour (transformations
will not be applied to paths and default numeric precision will be 6 digits
after the dot).
!gifz
Default action is to compress all GIF images.
The presence of this option overrides the default action (all GIF images
will be left "as is").
!uiz
Default action is to compress Glade UI files. Compression means the removal
of insignificant spaces and comments.
The presence of this option overrides the default action (all *.ui and
*.glade files will be left "as is").
!cssz
Default action is to compress CSS files. Compression means the removal
of insignificant spaces and comments.
The presence of this option overrides the default action (all *.css files
will be left "as is").
!monorm
Default action is to normalize *.mo files. Normalization means the
unconditional conversion to UTF-8, removal of accidental duplicates and
most of the header lines as well as catalog entries that are not added to
the translation (when string in msgid equals to string in msgstr).
The presence of this option overrides the default action (all *.mo files
will be left "as is").
skip-log-errors
Default behaviour is to end work with error message when certain words occur
in the log: "ERROR" or "undefined reference to". In some cases it may
produce false positives when no errors are produced during cooking, but these
words occur. For example, next line:
g_simple_async_result_set_error (simple, G_IO_ERROR, G_IO_ERROR_FAILED
The presence of this option overrides the default behaviour (word "ERROR" in
the log will not produce errors, etc.)
empty-pkg
Default behaviour is to end work with error message when package contains no
files (exception is made for packages belonging to the "meta" category).
Presence of this option allows the package not to contain files.
instant-pack
Usual behaviour is to make the sources (when sources in the $src became
files in the $install) and then pack the package (when files from $install
split to one or another $fs and then became the *.tazpkg archives).
When multiple SETs are used in the receipt, the default behaviour is to make
all the sources for all the sets and only then to pack all the packages.
Presence of this option will pack the SET packages instantly before
to switch to another SET. So, packages created in the first SET will be
immediately available to use in the second SET and so on.
force-arch
Architecture of the package determined by examining executable files on
a packing stage. System with "i486" architecture may produce packages with
architecture "i486" or "any" (if there's no architecture-dependent no files
like shared libraries or binaries are found, but only Shell, Python, Perl
scripts, fonts, icons, and so on). System with "x86_64" architecture may
produce packages with architecture "x86_64" or "any".
In rare cases architecture-independent packages built in "i486" and "x86_64"
environments may have architecture-dependent settings in configuration
files or package may provide architecture-dependent paths (Perl modules
packages) - this checking is not implemented yet or package may contain some
files for another architecture and you need to override default behavior.
In all these cases you can use this option and architecture of all packages
produced with this receipt will be the same as the build environment.