File: README

package info (click to toggle)
fbpanel 7.0-4
  • links: PTS
  • area: main
  • in suites: buster, sid
  • size: 5,040 kB
  • sloc: ansic: 11,684; sh: 404; python: 382; makefile: 315
file content (423 lines) | stat: -rw-r--r-- 10,726 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
	Configuring
	===========

fbpanel stores its configurations in ~/.config/fbpanel directory. 
Every profile is represented by a single text file with a same name. 
Name of default profile is ┬źdefault┬╗. Edit relevant file and restart fbpanel. 


You can also tell running fbpanel to reload its configuration by sending it USR1 signal.
% vim ~/.config/fbpanel/default  
% killall -USR1 fbpanel         # tell fbpanel to reload configuration

In addition, there is configuration GUI that covers all panel's options, but not plugins yet. 
To get it, click Ctrl-Button2 anywhere in panel or run it with -C option.




<<<<	 Configuration file structure   >>>>
	==============================


Configuration file consists from one Global section, that covers panel options, and one or more Plugin sections.
The syntax is following:

    * Spaces at the begining and at the end of a line are ignored
    * Lines strarting with '#' or blank lines are ignored. '#' in any other place is NOT treated as comment
    * Variable's name is NOT case sensitive
    * Variable's value IS case sensitive
    * Variable's value is a text from first non-blank char after '=' till the last non-blank char.
    * Section starts by its type (Global or Plugin) and "{' on a same line, then inner variables and sections, and ends with '}' on separate line.



<<<<<		Global section  	>>>>>


It describes global panel parameters like position, size and some NETWM settings.
If variable has default value, it can be omited. The full variable list is:

    * Edge - screen edge
      Legal values are left, right, top or bottom.
      Default is bottom.
    * Allign - allignment of a panel
      Legal values are left, right or center.
      Default is center.
    * WidthType - units of width
      Legal values are
          o pixel - width is number of pixels
          o percent - width is percent of an edge
          o request - follow widgets' size requests. can shrink or grow dynamically
      Default is percent.
    * Width - panel width in widthtype units
      Legal values are numbers.
      Default is 100.
    * HeightType - units of height
      Legal values are
          o pixel - height is number of pixels
      Default is pixel.
    * Height - panel height in heighttype units
      Legal values are numbers.
      Default is 26.
    * Margin - margin from screen edge for left or right allignment. Legal values are numbers.
      Default is 0.
    * SetDockType - set panel's NETWM window type to Dock Legal values are true or false.
      Default is true.
    * SetPartialStrut - ask NETWM compliant window manager to not cover panel by maximized windows. Legal values are true or false.
      Default is true.
    * Transparent - enable transparent background Legal values are true or false.
      Default is false.
    * TintColor - color to composite on root background Legal values are colors, eg 0xRRGGBB or red, black etc.
      Default is white.
    * Alpha - transparency of the tint color Legal values are numbers from 0 to 255.
      Default is 127.
    * Autohide - hide panel when mouse is far enough Legal values are true or false.
      Default is false.
    * RoundCorners - panel has rounded corners Legal values are true or false.
      Default is true.
    * RoundCornersRadius - radius of ronded corners. Legal values are numbers from 0 to 25.
      Default is 7.
    * Layer - stacking layer of a panel Legal values are above or below.
      Default is above.
    * SetLayer - set or not stacking layer of panel. If not, defaul WM policy is used. Legal values are true or false.
      Default is false.
    * MaxElemHeight - maximal height of plugins' lements, like icons, messages etc. If plugin has more space, it can place elements in multiple rows. Legal values are numbers from 10 to 200.
      Default is 200

For example:

Global {
    edge = bottom
    allign = center
    margin = 0
    widthtype = percent
    width = 92
    height = 48
    transparent = true
    tintcolor = #ffffff
    alpha = 32
    setdocktype = true
    setpartialstrut = true
    autohide = false
    heightWhenHidden = 2
    roundcorners = false
    roundcornersradius = 7
    layer = above
    setlayer = false
    maxelemheight = 24
}



<<<<<		Plugin section  	>>>>>


It describes which plugin to load, how to position it and has plugin specific configuration section. If variable has default value, it can be omited. The full variable list is:

    * type - plugin type
      Legal values are battery, cpu, dclock, deskno, deskno2, genmon, icons, image, launchbar, mem, menu, net, pager, separator, space, systray, taskbar, tclock, volume, wincmd
      Mandatory.
    * expand - expand plugin if extra space is available
      Legal values are true or false
      Default is false
    * padding - padding around plugin in pixels
      Legal values are numbers
      Default is 0
    * config - a section with plugin specific configuration.

For example:

Plugin {
    type = space
    expand = false
    padding = 0
    config {
        size = 2
    }
}

Plugin {
    type = cpu
}


Plugins with additional configuration
Cpu

    * color - chart color
      Legal values are colors eg 0xRRGGBB or red, black etc.
      Default is green.

For example:

Plugin {
    type = cpu
    config {
        Color = green
    }
}

Net

    * interface - interface to watch
      Legal values are network interface names.
      Default is eth0.
    * TxColor - color of Tx traffic
      Legal values are colors.
      Default is violet.
    * RxColor - color of Rx traffic
      Legal values are colors.
      Default is blue.
    * TxLimit - Tx limit of the connection, in KB/s. Used to scale chart properly
      Legal values are numbers.
      Default is 12.
    * RxLimit - Rx limit of the connection, in KB/s. Used to scale chart properly
      Legal values are numbers.
      Default is 120.

For example:

Plugin {
    type = net
    config {
        interface = eth0
        TxLimit = 20
        RxLimit = 190
        TxColor = violet
        RxColor = blue
    }
}

Pager

    * ShowWallpaper - show desktop wallpaper in pager window or not
      Legal values are true or false.
      Default is true.

For example:

Plugin {
    type = pager
    config {
        showwallpaper = true
    }
}

Space

    * size - size of space to occupy in pixels
      Legal values are numbers.
      Default is 1.

For example:

Plugin {
    type = space
    config {
        size = 15
    }
}

Mem

    * ShowSwap - show swap usage or not
      Legal values are true or false
      Default is false.

For example:

Plugin {
    type = mem
    config {
        ShowSwap = true
    }
}

dclock

    * ShowSeconds - show secondsor not
      Legal values are true or false
      Default is false.
    * HoursView - 24h or 12h hours view
      Legal values are 12 or 24
      Default is 24.
    * TooltipFmt - tooltip content
      Legal values are strftime formats
      Default is %A %x.
    * Action - command to run on mouse click
      Legal values are bash commands
      Default is none.
    * Color - digits color
      Legal values are colors, eg 0xRRGGBB or red, black etc.
      Default is blue.

For example:

Plugin {
    type = dclock
    config {
        ShowSeconds = false
        HoursView = 24
        Action = xmessage Please define some command 
    }
}

tclock

    * ClockFmt - Clock format string. May contain strftime conversion specifications and Pango markup information.
      Legal values are strings
      Default is "%R".
    * TooltipFmt - Tooltip format string. May contain strftime conversion specifications and Pango markup information.
      Legal values are strings
      Default is "%A %x".
    * Action - command to run on mouse click
      Legal values are bash commands
      Default is none.
    * ShowCalendar - Show a GTK calendar widget when the clock is clicked. Only valid if Action is unset.
      Legal values are true or false
      Default is true.
    * ShowTooltip - Show tooltip for clock
      Legal values are true or false
      Default is true.

Plugin {
    type = tclock
    config {
        # 2 line view, time in bold above and date below
        ClockFmt = %-l:%M %P&#xA;%a %B %-e
        TooltipFmt = %A %x
        #Action = xmessage Please define some command 
        ShowCalendar = false
        ShowTooltip = true
    }
}

Taskbar

    * TBD

For example:

plugin {
    type = taskbar
    expand = true
    config {
        ShowIconified = true
        ShowMapped = true
        ShowAllDesks = false
        tooltips = true
        IconsOnly = false
        MaxTaskWidth = 150
    }
}

Launchbar

    * TBD

For example:

plugin {
    type = launchbar
    expand = false
    padding = 0
    config {
        button {
            icon = gnome-terminal
            tooltip = Terminal
            action = xterm
        }
        button {
            image = /opt/google/chrome/product_logo_48.png
            tooltip = Google Chrome
            action = google-chrome
        }     
    }
}

Menu

    * TBD

For example:

plugin {
    type = menu
    config {
        icon = start-here
        systemmenu {
        }
        separator {
        }
        menu {
            name = Computer
            icon = computer
            item {
                name = Terminal
                icon = terminal
                action = x-terminal
            }
            item {
                name = Lock Display
                icon = gnome-lockscreen
                action = xtrlock2
            }
            separator {
            }
            item {
                name = Reboot
                icon = gnome-session-reboot
                action = sudo reboot
            }
        
        }
    }
}

Icons

    * TBD

For example:

plugin {
    type = icons
    expand = false
    padding = 0
    config {
        DefaultIcon = /usr/share/fbpanel/images/default.xpm
        application {
            icon = gnome-terminal
            ClassName = XTerm
        }
        application {
            icon = gnome-terminal
            ClassName = mlterm
        }
        application {
            icon = gnome-terminal
            ClassName = URxvt
        }
        application {
            icon = gnome-emacs
            ClassName = Emacs
        }
        application {
            icon = mozilla-firefox
            ClassName = Firefox-bin
        }
        application {
            icon = mozilla-firefox
            ClassName = Firefox
        }
        application {
            image = /usr/share/icons/yasis/scalable/apps/gnome-ppp.svg
            AppName = minicom
        }
    }
}



 -- Ulises Vitulli <dererk@debian.org>  Tue, 06 Jul 2010 02:35:37 -0300