what event was held for the first time at the 2008 summer games hotel in rome demasculinization of men in sitcoms free motorola games los angeles times newspaper

Contents

Installation

Ah, sweet-looking stuff! How do I install this?!? Read more below!!

Getting the latest package (manual install, most distros can use this)

Do not use the package on the front page. That is pretty old, but unfortunately the manager of this site is missing in action at the moment.
Here is the newest stable packages on Launchpad: https://launchpad.net/screenlets/trunk/0.0.12
For any Linux system, download the .tar.gz, and do:
tar -xzf thedownloadedfile.tar.gz
cd screenlets
python setup.py install
The last command needs to be run as superuser/root
You need to remove any old version before doing all this.
Run screenlets-manager to start. (Do NOT do this as superuser/root)

Ubuntu (Edgy/ Feisty/ Gutsy/ Hardy)

There is a PPA repo that includes the latest stable version of Screenlets. The maintenance in trunk is being done by Whise, and Gilir set up a repo. Here's how to get it (original version found on the screenlets forums:
http://forum.compiz-fusion.org/showthread.php?t=6889:

Words of caution:

1. Do NOT, NOT, NOT use any other packages from this repo, or you're in for surprises!
2. PPA repositories does not use GPG keys by design, so don't bother asking!
3. ALWAYS use 3rd party repos with caution

Getting it on!

Gilir has made an Ubuntu repo. There are three ways (at least) to set this up on your computer:
- Console mode
- GUI mode
- Just get the package

First, removing the old cruft:

There are two ways you could have used previous versions:
1. By using your package manager, or
2. By using bzr to get the latest from trunk or whise's revisions in Screenlets-new.
If you used the package manager:
GUI mode:
1. In Synaptic: Search for "screenlets"
2. If an old version is installed (if it has a green square with a yellow arrow into it), right-click it, choose "Completely remove".
3. Click "Apply"
Console mode:
Run the following:
sudo apt-get remove --purge screenlets
If you used bzr:
Do the following in a console:
cd screenlets-new
sudo make uninstall
sudo rm -rf /usr/lib/python2.5/site-packages/screenlets*
NOTE: the first command in this last code box may be a different one, if you renamed the directory, etc.

Just get the newest package:

First, make you removed previous packages. (Scroll down a bit)
1. Go to: http://ppa.launchpad.net/gilir/ubuntu/pool/main/s/screenlets/
2. Download the package that applies to your system.
3. Double click the file you just downloaded.
> Done.
You will NOT be notified of updates through you package manager if you do this.

Using the package manager

GUI style
1. Open Synaptic.
2. Go to: Settings > Repositories > Tab: 3rd party.
3. Click "Add".
4. Add the following line:
deb http://ppa.launchpad.net/gilir/ubuntu gutsy main universe
5. Click OK, close, etc. until only the main Synaptic window is open. Click "Update" (Far left button)
6. In Synaptic: Search for "screenlets"
7. Mark it for installation
8. "Apply"
You will be notified by the update manager whenever there's an update to the installed package.
Console style:
echo "deb http://ppa.launchpad.net/gilir/ubuntu gutsy main universe #Gilir's screenlets packages and some stuff you shouldn't use" | sudo tee -a /etc/apt/sources.list
sudo apt-get update
sudo apt-get install screenlets
You will be notified by the update manager whenever there's an update to the installed package.

The OLD way of Ubuntu installation:

Go to System -> Administration -> Synaptic Package Manager and open up Settings -> Repositories. In the tab 'Third-Party Software' press the 'Add' button.
In the dialog window enter one of these lines:
deb http://download.tuxfamily.org/screenlets edgy screenlets
deb http://download.tuxfamily.org/screenlets feisty screenlets
deb http://download.tuxfamily.org/screenlets gutsy screenlets
depending on your version of Ubuntu. Close Synaptic Package Manager.
Then press alt+F2 and in the dialog enter:
wget http://download.tuxfamily.org/screenlets/hendrikkaju.gpg -O- | sudo apt-key add -
After pressing the 'reload' button in the Synaptic Package Manager you should find the package named 'screenlets' in the :::list. Mark it for installation and apply! Ready you are now.
Alternatively you can:
  • directly edit /etc/apt/sources.list by adding one of the deb-lines shown above
  • Run this in a terminal:
wget http://download.tuxfamily.org/screenlets/hendrikkaju.gpg -O- | sudo apt-key add - && sudo apt-get update
  • Again in the terminal run: 'sudo apt-get install screenlets' to install the package

OpenSUSE

Here we are: http://packman.links2linux.de/package/screenlets
There is a thread about the packages here: http://forum.compiz-fusion.org/showthread.php?t=6831

Installation

GUI style:
After putting in the repo: Use YaST
Or use this One-click: http://packman.links2linux.de/install/screenlets
Console style
Again, after putting in the repo, run the following:
zypper refresh
zypper install screenlets

Removal

If you used Zypper/YaST/One-Click
zypper remove screenlets
or
rpm -e screenlets
and
su
rm -rf /usr/lib(64)/python2.5/site-packages/screenlets* rm -rf ~/.screenlets rm -rf /usr/share/screenlets*

Gentoo

First, create overlay

Create some directorys:
cd /usr/portage/local
mkdir -p myoverlay/{eclass,x11-plugins/screenlets}
Append the directory to the make.file:
PORTDIR_OVERLAY="/usr/portage/local/myoverlay $PORTDIR_OVERLAY"

Let the bzr eclass handle bzr branches

Before we can start we need the bzr eclass to handle bzr branches (myoverlay/eclass/bzr.eclass):
# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
#
# Originally derived from the git eclass
#
# Just set EBZR_REPO_URI to the url of the branch and the src_unpack this
# eclass provides will put an export of the branch in ${WORKDIR}/${PN}.

inherit eutils

EBZR="bzr.eclass"

EXPORT_FUNCTIONS src_unpack

HOMEPAGE="http://bazaar-vcs.org/"
DESCRIPTION="Based on the ${GIT} eclass"

## -- add bzr in DEPEND
#
DEPEND="dev-util/bzr"


## -- EBZR_STORE_DIR:  bzr sources store directory
#
EBZR_STORE_DIR="${PORTAGE_ACTUAL_DISTDIR-${DISTDIR}}/bzr-src"


## -- EBZR_FETCH_CMD:  bzr fetch command
#
EBZR_FETCH_CMD="bzr checkout"

## -- EBZR_UPDATE_CMD:  bzr update command
#
EBZR_UPDATE_CMD="bzr update"

## -- EBZR_DIFFSTAT_CMD: Command to get diffstat output
#
EBZR_DIFFSTAT_CMD="bzr diff"

## -- EBZR_EXPORT_CMD: Command to export branch
#
EBZR_EXPORT_CMD="bzr export"

## -- EBZR_REVNO_CMD: Command to list revision number of branch
#
EBZR_REVNO_CMD="bzr revno"

## -- EBZR_OPTIONS:
#
# the options passed to branch and merge
#
: ${EBZR_OPTIONS:=}


## -- EBZR_REPO_URI:  repository uri
#
# e.g. http://foo, sftp://bar
#
# supported protocols:
#   http://
#   https://
#   sftp://
#   rsync://
#
: ${EBZR_REPO_URI:=}


## -- EBZR_BOOTSTRAP:
#
# bootstrap script or command like autogen.sh or etc..
#
: ${EBZR_BOOTSTRAP:=}


## -- EBZR_PATCHES:
#
# bzr eclass can apply patches in git_bootstrap().
# you can use regexp in this valiable like *.diff or *.patch or etc.
# NOTE: this patches will apply before eval EGIT_BOOTSTRAP.
#
# the process of applying the patch is:
#   1. just epatch it, if the patch exists in the path.
#   2. scan it under FILESDIR and epatch it, if the patch exists in FILESDIR.
#   3. die.
#
: ${EBZR_PATCHES:=}


## -- EBZR_BRANCH:
#
# bzr eclass can fetch any branch in bzr_fetch().
# Defaults to 'trunk'
#
: ${EBZR_BRANCH:=trunk}


## -- EBZR_REVISION:
#
# Revision to get, if not latest (see http://bazaar-vcs.org/BzrRevisionSpec)
#
: ${EBZR_REVISION:=}


## -- EBZR_CACHE_DIR:
#
# The location in which to cache the version, relative to EBZR_STORE_DIR.
#
: ${EBZR_CACHE_DIR:=${PN}}


## -- bzr_fetch() ------------------------------------------------- #

bzr_fetch() {

	local EBZR_BRANCH_DIR

	# EBZR_REPO_URI is empty.
	[[ -z ${EBZR_REPO_URI} ]] && die "${EBZR}: EBZR_REPO_URI is empty."

	# check for the protocol or pull from a local repo.
	if [[ -z ${EBZR_REPO_URI%%:*} ]] ; then
		case ${EBZR_REPO_URI%%:*} in
			http|https|rsync|sftp)
				;;
			*)
				die "${EBZR}: fetch from ${EBZR_REPO_URI%:*} is not yet implemented."
				;;
		esac
	fi

	if [[ ! -d ${EBZR_STORE_DIR} ]] ; then
		debug-print "${FUNCNAME}: initial branch. creating bzr directory"
		addwrite /
		mkdir -p "${EBZR_STORE_DIR}" \
			|| die "${EBZR}: can't mkdir ${EBZR_STORE_DIR}."
		chmod -f o+rw "${EBZR_STORE_DIR}" \
			|| die "${EBZR}: can't chmod ${EBZR_STORE_DIR}."
		export SANDBOX_WRITE="${SANDBOX_WRITE%%:/}"
	fi



	cd -P "${EBZR_STORE_DIR}" || die "${EBZR}: can't chdir to ${EBZR_STORE_DIR}"

	# every time
	addwrite "${EBZR_STORE_DIR}"

	EBZR_BRANCH_DIR="${EBZR_STORE_DIR}/${EBZR_CACHE_DIR}"

	addwrite "${EBZR_BRANCH_DIR}"

	debug-print "${FUNCNAME}: EBZR_OPTIONS = ${EBZR_OPTIONS}"

	if [[ ! -d ${EBZR_BRANCH_DIR} || ${EBZR_REVISION} ]] ; then
		# fetch branch
		einfo "bzr branch start -->"
		einfo "   repository: ${EBZR_REPO_URI}${EBZR_BRANCH}"

		${EBZR_FETCH_CMD} ${EBZR_OPTIONS} "${EBZR_REPO_URI}${EBZR_BRANCH}" ${EBZR_BRANCH_DIR} \
			|| die "${EBZR}: can't branch from ${EBZR_REPO_URI}${EBZR_BRANCH}."

	else
		# update branch
		einfo "bzr merge start -->"
		einfo "   repository: ${EBZR_REPO_URI}${EBZR_BRANCH}"

		cd "${EBZR_BRANCH_DIR}"
		${EBZR_UPDATE_CMD} ${EBZR_OPTIONS} \
			|| die "${EBZR}: can't merge from ${EBZR_REPO_URI}${EBZR_BRANCH}."
		${EBZR_DIFFSTAT_CMD}
	fi

	cd "${EBZR_BRANCH_DIR}"

	einfo "exporting..."
	${EBZR_EXPORT_CMD} ${EBZR_REVISION:+-r ${EBZR_REVISION}} "${WORKDIR}/${P}" \
			|| die "${EBZR}: export failed"

	einfo "Revision ${EBZR_REVNO_COMMAND} is now in ${WORKDIR}/${P}"

	cd "${WORKDIR}"
}


## -- bzr_bootstrap() ------------------------------------------------ #

bzr_bootstrap() {

	local patch lpatch

	cd "${S}"

	if [[ -n ${EBZR_PATCHES} ]] ; then
		einfo "apply patches -->"

		for patch in ${EBZR_PATCHES} ; do
			if [[ -f ${patch} ]] ; then
				epatch ${patch}
			else
				for lpatch in "${FILESDIR}"/${patch} ; do
					if [[ -f ${lpatch} ]] ; then
						epatch ${lpatch}
					else
						die "${EBZR}: ${patch} is not found"
					fi
				done
			fi
		done
		echo
	fi

	if [[ -n ${EBZR_BOOTSTRAP} ]] ; then
		einfo "begin bootstrap -->"

		if [[ -f ${EBZR_BOOTSTRAP} ]] && [[ -x ${EBZR_BOOTSTRAP} ]] ; then
			einfo "   bootstrap with a file: ${EBZR_BOOTSTRAP}"
			eval "./${EBZR_BOOTSTRAP}" \
				|| die "${EBZR}: can't execute EBZR_BOOTSTRAP."
		else
			einfo "   bootstrap with commands: ${EBZR_BOOTSTRAP}"
			eval "${EBZR_BOOTSTRAP}" \
				|| die "${EBZR}: can't eval EBZR_BOOTSTRAP."
		fi
	fi

}


## -- bzr_src_unpack() ------------------------------------------------ #

bzr_src_unpack() {

	bzr_fetch     || die "${EBZR}: unknown problem in bzr_fetch()."
	bzr_bootstrap || die "${EBZR}: unknown problem in bzr_bootstrap()."

}

Now, add the overlay

After that we can add the overlay (myoverlay/x11-plugins/screenlets/screenlets-9999.ebuild):
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $

inherit gnome2 bzr autotools eutils distutils

EBZR_REPO_URI="http://bazaar.launchpad.net/~screenlets-dev/screenlets/"

DESCRIPTION="Screenlets are small owner-drawn applications"
HOMEPAGE="http://www.screenlets.org"
SRC_URI=""

LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE=""

DEPEND="
        dev-python/dbus-python
        >=dev-python/gnome-python-desktop-2.16.0
        dev-python/pyxdg
        x11-libs/libnotify
        x11-misc/notification-daemon
        x11-misc/xdg-utils"

RDEPEND="${DEPEND}"

src_unpack() {
        bzr_src_unpack
}

src_install() {
        distutils_src_install

        insinto /usr/share/desktop-directories
        doins "${S}"/desktop-menu/desktop-directories/Screenlets.directory

        insinto /usr/share/icons
        doins "${S}"/desktop-menu/screenlets.svg

        # Insert .desktop files
        for x in $(find "${S}"/desktop-menu -name "*.desktop"); do
                domenu ${x}
        done
}

Create the digest...

ebuild myoverlay/x11-plugins/screenlets/screenlets-9999.ebuild digest

last step:

echo "x11-plugins/screenlets **" >> /etc/portage/package.keywords
Now you can emerge screenlets:
emerge screenlets

What are the requirements/dependencies for running the screenlets?

First of all you need python (tested with 2.4 and 2.5). Further you need pygtk (at least version 2.10), pycairo, python-xdg and the package python-gnome2-desktop. The latter is unfortunately needed for the wnck/rsvg bindings (hopefully this will change sometime).
For Fedora users, the prerequisites can be installed by running the following as root:
yum -y install python pygtk2 pycairo pyxdg gnome-python2-desktop gnome-python2-rsvg

How do I install new Screenlets?

Easy Way

Simply open up the Screenlets manager (System - Preferences - Screenlets). Select the Install option on your right, search for the screenlet you want to install, select it, and you're all set.

Manually

Some screenlets that weren't updated to the new API don't work with the Screenlets manager installation method, and need to be installed manually. You need to copy the Screenlet's directories to either your ~/.screenlets directory (if it doesn't exists, just create it) or to /usr/local/share/screenlets (for system-wide access).


How do I completely uninstall all screenlets?

A reliable but dangerous way of removing all screenlets and all settings is using the following commands (Ubuntu users add :a "sudo " to the front of each command):
rm -rf /usr/local/share/screenlets*
rm -rf /usr/local/bin/screenlets*
rm -rf /usr/lib/python2.4/site-packages/screenlets*
rm -rf /usr/lib/python2.5/site-packages/screenlets*
rm -rf ~/.config/Screenlets
If you also want to delete all your user screenlets, run the following command:
rm -rf ~/.screenlets

Usage

Questions and answers about using the screenlets.


How do I start/launch a screenlet?

The recommended way is to use the screenlets-manager for that. Alternatively you can start it either using the Applications-menu (if you have installed the desktop-menu entries using "make menu") or using the Alt+F2 dialog or by launching the individual screenlets directly like this (e.g. launching the Clock):
/usr/local/share/screenlets/Clock/ClockScreenlet.py


How do I make my screenlets automatically start when I login?

Open the Screenlets Manager, select the screenlet you want to autostart and check the checkbox "Automatically start on login". Alternatively you could use a script or add the individual screenlets to your session's startup programs.
(There is a third-party toolbar screenlet that can load other applets as well. Like this, only one screenlet (the toolbar) needs to be autostarted in the Screenlets Manager.)


For KDE users

Open /usr/local/share/screenlets-manager/screenlets-manager.py using text editor (kwite/kate/mc/vi) as root.
On line 38 change to this :
DIR_AUTOSTART = os.environ['HOME'] + '/.kde/Autostart'
About line 178 change .config/autostart to .kde/Autostart
and in about line 188 (below code = ['[Desktop Entry]'] add this line :
code.append('Type=Application')
code.append('MimeType=application/x-screenlet')

Troubleshooting

Answers for people having problems with the screenlets.


Why are there black boxes around all my screenlets?

The black boxes appear if you have no compositing manager (e.g. compiz, beryl or compiz-fusion) running. This issue may get solved in future versions.

Where are the individual official screenlets kept after I installed the package?

In /usr/share/screenlets

Where do I put individual screenlets

In ~/.screenlets

What's in ~/.config/screenlets

That would be the config files for each individual screenlet. You can change those files manually (if you know what to put in), or you can use the options for each individual screenlet.

How do I reset the settings for a single screenlet?

You could simply delete all open instances for the screenlet, when you open it the next time it will be created with its default values. However - sometimes this may not work. The most reliable way is to remove the entire data-directory for that Screenlet like this:
rm -rf $HOME/.screenlets/<ScreenletName>/*
That's the old way of doing this. With the newest release, you can use Screenlets Manager.

How do I completely reset all my settings?

This command deletes ALL your configuration and settings for ALL screenlets. Be careful with this!
rm -rf $HOME/.screenlets/*


How can I check which version of the screenlets I have installed?

Enter this command in a terminal:
python -c "import screenlets;print screenlets.VERSION"


Why do some screenlets appear twice when I click one time on the add button?

If you click on the "Launch/Add"-button for the first time you will open the screenlet's application. If you had created more than one instance of the given Screenlet's type, you will now restore all your previously opened screenlets (from before you selected "Quit" last time).
Whenever you now click the "Launch/Add"-button you will add one new instance to the already opened screenlet. If you choose "Quit" and then re-start the screenlet again you will have all your previously opened screenlets restored.

Why do my screenlets disappear when I show the desktop?

1. Have you installed latest widget plugin (for Compiz-Fusion)?
http://forum.compiz-fusion.org/showp...1&postcount=15
Look at the code box. git-clone > cd widget > make > sudo make install
2. All screenlets defined as widgets?
Right click>properties tab options: "Treat as widget"
3. Compiz-Fusion restarted?
4. Compiz Control Center Settings > Widget plugin enabled?
"End widget mode on click" unchecked and "Brightness" to 100% if you just want to toggle Screenlets On/Off with F9.

OR In Compiz Settings Manager (System->Parameters->Advanced Desktop Effects Settings)) in General Options uncheck Hide all window Skip Taskbar Windows

Developers

Developer information focused on creating and releasing your own screenlets.

The maintenance in trunk is currently being done by Whise. The creator of the Screenlets project is Ryx.

Screenlets-extras

It's a new project. See:

Project: Screenlets-extras
Guidelines for Screenlets-extras
Screenlets-extras-team

Packaging/Releasing

Info related to packaging, releasing and submitting your own screenlets.


How do I submit my own screenlet?

Use the screenlets-packager tool to create a package from your screenlet, upload it somewhere (currently we don't accept uploads of archives, it will come soon) and then create a new entry in the third-party screenlets archive. For more information, read how to submit your own screenlet ...


Where/how can I get the development version?

The screenlets' sourcecode is hosted on http://launchpad.net. You can easily download and install the latest development branch using these commands (you need to install 'bzr' first):
bzr co http://bazaar.launchpad.net/~screenlets-dev/screenlets/trunk screenlets
cd screenlets
python setup.py install
That last command must be run as superuser/root, i.e. 'sudo' for Ubuntu et.al, and 'su -' for many others.
For pulling in the latest updates you just need to run: 'bzr update' (inside the screenlets directory). Depending on development activity, you might want to do this daily. You could also set up a script to run this at specific times, e.g. midnight every day.