-
Notifications
You must be signed in to change notification settings - Fork 0
License
bwalle/lcd-stuff
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
lcd-stuff
=========
Description
-----------
lcd-stuff is a client for lcdproc written in C.
Features
--------
* display of e-mail using POP3, IMAP and local mailboxes
* MPD control
* display of news items using RSS
* display of the weather from weather.com
* play web radio with MPlayer
(because it has support for almost every format, especially
RealAudio, which MPD hasn't)
Requirements
------------
* 20×4 display
* lcdproc, of course
* CMake
* C compiler
* glib
* mail
- libetpan
* weather
- nxml
- curl (required by nxml)
* mpd
- libmpd (>= 0.12.0)
* rss
- mrss
- nxml
- curl (required by nxml)
* mplayer (optional, only at runtime)
Installation
------------
* mkdir build
* cd build
* cmake ..
* make
* make install
If you don't have all libraries installed and you don't need the features, you
can use following parameters for the cmake run to disable the libraries and
their corresponding features:
-DBUILD_RSS=OFF disables rss
-DBUILD_WEATHER=OFF disables weather
-DBUILD_MAIL=OFF disables mail
-DBUILD_MPD=OFF disables mpd
Usage
-----
Just as every lcdproc client. Type "lcd-stuff -h" for more information. An
example configuration file is supplied with lcd-stuff (lcd-stuff.conf). The
documentation for all the various parameters is contained below.
Keys
----
mail, rss: Up and Down select previous or next item
mpd: Up: when playing (i.e. not pause), selects the next tile
when pausing, then stops playback
Down: toggles between play and pause
mplayer: Up: toggle between play and pause
Down: Stop
Remote Interface
----------------
This program itself has a remote interface to be controlled from another
computer. See the [network] entry of the configuration file below. By default,
the network interface is disabled for security reasons!
The only client that implements the interface is the mplayer client.
It's a simple text protocol:
mplayer command args
And command can be one of:
streams Returns a list of stream names, the same as
shown in the menu.
play <number> Plays stream <number>. Counting starts with 0.
pause_play Toggles playback and pause of the current stream.
stop Stops playing the current stream.
In the scripts directory of the source distribution, there's a sample client
written in Python that implements these commands. It's both meant as usable
client and as example.
Configuration file
------------------
The configuration file is in a INI-style format. As parser, the glib2
"Key-value file parser" is used which is documented at
http://developer.gnome.org/doc/API/2.0/glib/glib-Key-value-file-parser.html.
In the description below, following place holders are used
<str> A simple text which may contain spaces. There's
_no_ need to escape spaces with backslash or
something else.
<no> A continuous number, starting with 0 and increased
each time. You'll see below the sense of this
<no> stuff.
<int> A number in decimal representation.
<list> Not any arbitrary string but a string from a list
that is listed in the description on the right.
<bool> "true" or "false"
Now, the options for each client are explained. It's legal to leave out a client
in the configuration file which means that this client doesn't get displayed.
[mail]
name=<str> This is the name that is shown as title for the
mail screen.
Default: Mail
interval=<int> The update interval in seconds at which lcd-stuff
looks for new mails.
Default: 300
number_of_servers=<int> The number of mail servers to check. The number is
read to retrieve the information that is specific
for the mail server below.
Default: 0
name<no>=<str> The name for the server which gets displayed in the
title.
Default: Server name
type<no>1=<list> The type of the server, currently "pop3" and "imap"
are supported. For local mailboxes, "maildir" (for
the maildir format which stores mails in three
subdirectories named "cur", "tmp" and "new),
"mbox" (for the mbox format, which stores all
mails in a single file) and "mh" (stores each
mail in a file, but all in one directory)
are supported.
Default: pop3
server<no>=<str> The server that contains the mailbox, e.g.
"pop3.gmx.net" if your mail provider is GMX.
For local mailboxes use "localhost".
Default: no default
user<no>=<str> The user name for the login. Not required when
using local mailboxes.
Default: empty string
password<no>=<str> The password for the login. Please set the
permissions of the file so that no other user
from your system can read your mail passwords.
Not required when using mailboxes.
Default: no default
mailbox_name<no>=<str> When type=imap, this variable holds the name of the
mailbox to check for new mail. For pop3, this is
ignored. For local mailboxes, you have to specify
the full path for the box, e.g.
/home/user/mail/inbox.
Default: INBOX
hidden<no>=<bool> Show only the number of mails in the first line but
don't browse through the mails with author and
subject
Default: false
[rss]
interval=<int> The update interval at which the RSS feeds are
retrieved. Currently, there's no check if the
feed was updated, always the complete titles
are retrieved and updated.
Default: 1800 (= 30 min)
number_of_feeds=<int> The number of RSS feeds to retrieve. The number is
read to retrieve the information that is specific
for the RSS feed below.
Default: 0
url<no>=<str> The URL to the feed.
Default: no default
items<no>=<int> The number of items to retrieve. This is counted
from new to old, so if e.g. items=10, the 10 latest
items are shown.
Default: 0
name<no>=<str> The name that is shown in the title for the feed.
Default: no default
[weather]
name=<str> The title that is used for the weather screen.
Default: Weather
interval=<int> The update interval for the weather.
Default: 3600 (= 1 h)
citycode=<str> The city code that can be retrieved from
http://www.weather.com/. Just enter your city
in the search box, click on the city. Then you
can extract the code from the URL. For example,
GMXX0096 stands for Nürnberg in Germany.
Default: no default
unit=<str> Switches between metric units like Celsius
("metric") and imperial units like Fahrenheit
("imperial").
Default: metric
[mpd]
name=<str> The title for the MPD screen.
server=<str> The server name, can also be "localhost" if
the MPD server is running on the same machine.
Default: localhost
port=<int> The port number where the MPD accepts connections.
Default: 6600
timeout=<int> Timeout for MPD connections in seconds.
Default: 10
[mplayer]
name=<str> The title for the mplayer screen that is displayed
if you select a station from the lcdproc menu.
Default: Webradio
<str>=<str> For each stream, a key value pair with station=url
must be used. This should save typing instead of the
scheme which is used for E-Mail and RSS feeds [1].
If the URL is a play list, then the prefix
"playlist " has to be used. This is simply because
mplayer cannot determine if it's a playlist
automatically but the starter has to give the
"-playlist" parameter.
Examples:
DLF=http://dradio-ogg.t-bn.de/dlf_high.ogg
Bayern2=playlist ...
...http://www.br-online.de/streaming/...
...bayern2radio/bayern2radio_m20.red.smil
[network]
Adding this entry without any key/values enables the network interface.
By default, the network interface is disabled.
DON'T USE THIS OPTION IF YOUR COMPUTER IS DIRECTLY CONNECTED TO THE
INTERNET. IT'S DESIGNED FOR SMALL HOME NETWORKS ONLY!
port=<int> The port where a remote client can connect to.
Default: 12454
License, Author
---------------
lcd-stuff was written by Bernhard Walle <bernhard@bwalle.de>. It's
licensed under the terms of the GNU General Public License version 2.
About
No description, website, or topics provided.
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published