Version 1.5.2, March 2025

Clock
Sound Control
Battery Monitor
Wireless Control
General Options
Saving Preferences
GPL Licence

INTRO

Flit is an applet 'tray', currently offering clock, master sound volume control, wireless networking control and battery monitor. It is written to be small and low-overhead, using the FLTK user interface library, so it is especially efficient on TinyCore Linux. The source code of Flit is released under the GNU license. See http://www.gnu.org/licenses/ for more details.

Newest features: As of version 1.5.2:

Commandline options:

-a = All desktops: Make flit appear on all desktops (experimental)

-d = Dock: Make flit dock by setting _NET_WM_WINDOW_TYPE_DOCK

-m = Multiple: Allow multiple instances of flit (not allowed by default now)

-c CONF = Config file: use CONF instead of ~/.flit.conf for configuration

By combining -m and -c, you can load differnt Flit applets into different areas of your screen.

There is a menu of choices made available through right-clicking on Flit. The sound control applet has several additional keyboard shortcuts (see below). The Flit menu may optionally be opened automatically by a Ctrl key, as defined in the General Options section.

If you don't want to see all three applets, you can disable one or two of them in the right-click menu, but not all three!

'Hover' your mouse pointer over each applet to get more detailed information. The battery recharge time estimate is approximate.

If you want to start Flit automatically, invoke it in your /opt/bootlocal.sh startup script or make a custom .xsession script file, and use a & symbol to return control immediately to the script, like this:
     /path/to/flit &
Note: The base configuration of TinyCore Linux versions 2.3 through 2.9 automatically started Flit during the startx sequence. Versions 2.10 and later do not, so you will need to update .xsession or /opt/bootlocal.sh as described above.

CLOCK

The only option for the clock is 24-hour time format, or 12-hour format with AM or PM indication. Use the right-click menu to toggle between these modes. Hover the mouse pointer to see date and year in addition to time.

SOUND CONTROL

The current sound volume level is indicated by the cyan-colored arc to the right of the speaker icon. To adjust the volume, place your mouse cursor over the speaker and use the mouse scroll wheel (or equivalent) to adjust the sound volume in 5% increments. You may also use the following keystrokes:
Louder: Ctrl+U, or Up arrow cursor key, or + key
Quieter: Ctrl+L, or Down arrow cursor key, or - key
Mute/Unmute: Ctrl+M, or Pause key

The sound control requires an OSS "mixer" device '/dev/mixer' or the ALSA amixer utility to be present. There is a lot of variation in how sound devices can be controlled depending on your audio hardware, but Flit will try to support some common methods. By default, Flit will try to find an appropriate mixer control parameter to adjust the overall playback volume. You can override this behavior by specifying an exact OSS or ALSA mixer control name in the .flit.conf file, in the "sound_control_name =" statement. If the name is "autosel", Flit will do the default auto-selection. But if you know that you get best results from a specific mixer control, such as "vol" or "pcm" or something else, put it name into the .flit.conf file, such as:

    sound_control_name = pcm
If flit is not successful in finding a suitable control (which must be marked with the MASTER_VOLUME or PCM_VOLUME in OSS or pvolume in ALSA), you won't see the sound control applet in Flit, and you won't be able to "unhide" it. You may want to manually experiment with one or move sound mixer utilities such as ossxmix (note the X in the name) or amixer and experiment with the controls made available for your hardware to see which ones can control the volume. If OSS/ALSA + your hardware does not support an adjustable output volume, you may still be able to use a mute control with Flit.

LIMITATIONS: ALSA is now the most tested sound syste. PulseAudio was tested, but PulseAudio saves settings in files that are renamed on each reboot, making settings changes difficult to make persistent. OSS may still work but is not tested. PipeWire has not been tested.

WIRELESS CONTROL

The wireless networking applet shows a wireless icon with a horizontal bar underneath that indicates the wireless signal strength if the wireless device is enabled and connected to an access point by changing the fraction of the bar that is strongly colored rather than outline-colored. Also the color of the signal bar is green when at 90% or above, yellow from 65% to 89%, orange from 40% to 64%, and red if below 40%.

Wireless connectivity is controlled through four command line strings defined in the config file, which is .flit.conf in your home folder by default. The command-line strings are:

Flit will attempt to figure out your wireless device name (e.g. wlan0), then customize the commandline in the flit conf file with two insertions of that device name where there is a '%s' in the command string. The Enable and Disabled command lines may work for you with no editing. The default version of the Wireless_Online_cmd will only work for unsecured wireless networks. If you have simple WEP password security and a named wireless network, you can change the 'essid any' phrase to 'essid "MY_NETWORK" key s:MY_KEY ' The default "Manage" command line will simply open the Flit config file in the TC editor for manual edits.

.

If you use a wireless network with WPA/WPA2 authentication (which is typical today), you most likely need to use the wpa_supplicant extension. A relatively easy way to do this is load the wifi.tcz extension, then configure the Wireless_Online_cmd to be 'exec cliorx sudo wifi.sh -a' (auto-connect to first recognized network) and configure the Wireless_Manage_cmd to be 'exec cliorx sudo wifi.sh' (no auto-connect... if already connected prompt before disconnecting in terminal shell, then scan for networks and allow user to select one and enter password if not cached yet). It is possible to set up the Online command with the wpa_supplicant command line directly if you have a local copy of the the wpa_supplicant.conf network config file stored someplace convenient:
Wireless_Online_cmd = sudo /usr/local/sbin/wpa_supplicant -i wlan0 -c /home/tc/.config/wpa_supplicant.conf -B -D nl80211,wext; sleep 5; sudo /sbin/udhcpc -i %s &
Tailor this to fit your needs!

BATTERY MONITOR

In the battery icon, charge is colored green if the level is 50% or higher, yellow when 35% to 49%, orange for 20% to 34%, and red below 20%. If the estimated charge Is less than 13%, the outline of the battery icon will slowly flash red. When recharging power is available, an AC power plug icon is shown over the battery icon. If the battry is discharging, the remaining charge percentage number is shown above the battery icon.

GENERAL OPTIONS

By default, Flit will automatically pop up the right-click menu if Flit has the keyboard focus and you press either Ctrl key, which you may do as part of a Ctrl+key combination. If you would prefer to not have Flit open the menu on Ctrl keypress, select the 'Toggle Ctrl key menu activation' menu option and then save the configuration.

You can choose one of these appearance styles:
 a) Normal: black on light gray, with a sunken tray effect
 b) Inverse: light gray on black, also with a sunken tray effect
 c) 'Transparent', which has a background color slightly lighter than the
     X11 root window where Flit plans to appear and a contrasting
     foreground color, with a flat effect, which matches
     wbar nicely. If the planned location is occupied
     by a window when Flit starts, its background color
     will be based on that.
 d) Custom: The colors defined in the config file, or by default, a blue
     color that works with the default background to
     make flit look invisible.

You may reposition Flit with your mouse (left-click + drag), or hand-edit the .flit.conf configuration file (see cautions below). The location can be defined to one of the four corners (se = SouthEast, i.e. the lower-right corner, and so on) or a x,y pair. See the configuration file for an example.

You can scale the size of Flit! The simplest way is to 'Toggle Ctrl key menu activation' off, then use the Ctrl+Plus or Ctrl+Minus key combinations to set the scale to a larger or smaller size. Or you may enter a new zoom factor in the .flit.conf file. First, make sure you save your preferences (as described below), then edit the .flit.conf file in your home directory, changing the line zoom = 1.0 to new value. A factor of 1.5 would be 150% of the normal size (50% larger), 2.0 would be double-size, and so on. Smaller than normal sizes are possible too. Note that some factors will look better than others. In general, factors that are nice ratios will work better, e.g. 3/4 = 0.75, 4/3 = 1.33, et cetera.Note that after a size change, if Flit is configured to reside in a corner, after a short pause (a few seconds), Flit will automatically move itself to properly sit in the corner.

As of version 1.3.0, you may define foreground and background colors:
custom_fg = 128,255,128
custom_bg = 32,32,32
where the numbers range from 0 to 255 and specify amound of red, green, and blue respectively.

SAVING PREFERENCES

Use the 'Save configuration' command to make flit remember your preferences by writing the .flit.conf file in your home directory (as defined by the $HOME environment variable). You may edit this file with a text editor, but please preserve the spelling, capitalization, and spacing of content to prevent parsing problems. You can revert to default settings by deleting the .flit.conf file and restarting Flit.

Post bug reports and suggestions to the TinyCore Linux Forum (https://forum.tinycorelinux.net/) or email mlockmoore@gmail.com.

Michael A. Losh

GPL License

copyright 2010 - 2025 by Michael A. Losh and Jakob Bysewski

Flit is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3

Flit is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See http://www.gnu.org/licenses/ for more details.