Welcome to the Tiny Core Linux Wiki at tinycorelinux.net!

Menu entries, icons, setup scripts, .info and .dep files

For graphical applications, or front-ends to command line applications, you might want to add an icon, a menu entry, or both. An info file is needed for all extensions, if they will be submitted; a .dep file is also required, if your extension always requires some other extensions to run.

Menu Entries and Icons

Menu Entries and Icons are provided by a .desktop file stored at


The .desktop file must have the same base name as the application package. (e.g. the desktop file for homebank.tcz must be named homebank.desktop)

A deskop file must begin with

[Desktop Entry]

For the full specifications see http://standards.freedesktop.org/desktop-entry-spec/latest/

Menu Entries

These are added to the submenu “Applications”, which is empty by default. Entries are created automatically by the system at the time the extension is loaded. In order to have a menu entry the .desktop file needs, at the least, this line:


followed, on the same line, by the name you want to appear in the menu. Note: The default wbar setup provided in TinyCore 4.1 will not keep any spaces in the the value of “Name=”. (e.g. “Name= Battle for Wesnoth” will have the label “BattleforWesnoth”.) Of course, this only matters your .desktop file also has an icon referenced as instructed below.

You'll also need this line:


followed, on the same line, by the executable to be run when the item is clicked.


Icons are shown in the wbar, which can be positioned on any edge of the screen (bottom by default). In order to have an icon you will need the things mentioned above as well as


followed, on the same line, by the absolute path to the icon you want to be displayed.

Please note, that X-FullPathIcon= field is not part of the .desktop file provided by applications; it is TC specific and must be added by the extension creator.

The icon should be a 48×48 PNG, and the preferred location for storing icons is


For example icon for Opera10 defined as


so for opera, example line becomes


Startup script

When an extension is loaded, an executable file of the same name as the extension in /usr/local/tce.installed/ will be called, if it exists. This is optional.

For details see Adding Custom Startup Scripts section in the Wiki.

.info files

They are named like the extension, with .info added, for example kmaps.tce.info. Use all parts, even if your extension does not match; in that case, put n/a for example to the unneeded field. Please do not forget a proper description of your software!

View an example .info file

At Tiny Core version 5, .info files should include 12 sections:

  1. Title
  2. Description
  3. Version
  4. Author
  5. Original-site
  6. Copying-policy
  7. Size
  8. Extension-by
  9. Tags
  11. Change-log
  12. Current

.dep files: dependency handling

Tiny Core handles dependencies only when using tce-load or the graphical appbrowser apps to either (1) install local extensions or (2) download extensions from the repository. The .dep files have no effect for manual downloads (using wget or any other tool) or local extensions.

The dependency file is named by appending .dep to the extension file name. For example extension1.tcz.dep is the dependency list for exension1.tcz.

Dependency lists are recursively resolved as of Tiny Core 2.10. It is only necessary to list first-level dependencies. Before 2.10, the dependency list would include all dependents, their dependents, etc. This method is still compatible, but the recursive approach is now standard.

The list file format is one extension per line with no empty lines. For example, an extension.tcz.dep might have:


where a.tcz.dep might contain only


Please see also creating_extensions