Interactivly editing yahiko styles via the sx-web plugin
Well after the release we had about 6000 visitors to the sx site! woo! Thats about 5500 more than usual! ;) Not got much more to say about the release except that Iv now fixed the download problem with ooxcb.
What we've done since? Fred has re-arranged ooxcb quite a bit and started wrapping some more extensions *whisper* composite *whisper*. Ive been trying to get bbpager ( and hopefully other pagers ) to work and have been looking at ewmh stuff. Now plugins can tell the app what hints they provide support for.
Cant think of anything else right now...
firstly: Yay!
The release announcment looked like this ( just in case you missed it ):
We are happy to release version 0.2 of samurai-x. samurai-x is a
window manager written in pure python using ctypes, xcb and cairo.
A lot has happened since version 0.1 including:
* a new plugin system - the core samurai-x is now very small
with all other functionality added via plugins
* a new xcb binding - ooxcb - for more information
see http://docs.samurai-x.org/ooxcb/
* lots of plugins! we now have plugins for most common
features found in other window managers
For more information, including installation instructions check
http://samurai-x.org or join us in #samuraix on irc.freenode.net
Big thanks to all have helped out with samurai-x but especially to
Friedrich Weber for writing ooxcb and all the other work on
samurai-x he has done and also to Jochen Maes for hosting the
project.
So whats in store for sx 0.3 and beyond? Hopefully:
So stay tuned! Lots of exciting code to come!
A plugin that has been asked for a few times ( ... ok - once! ) was something to allow putting clients onto specific desktops. What was really needed was just a simple plugin to perform actions on new clients. So now there is sx-autoclient which means you can do things like this in your config:
import logging
log = logging.getLogger(__name__)
def test_rule(screen, client):
log.info('test rule!')
client.actor.configure(x=100, y=100)
config = {
'core.plugins': [
#...
'sxautoclient',
],
#...
'autoclient.rules': [test_rule],
}
...and all your new clients will be moved to 100,100.
Ok its still a bit low level, but once Iv added some simple rule functions for matching window names and classes and some easy actions it will be much better.
Trying to write a new window decorator for samurai-x at the moment. Not an easy task!. Its using my yahiko library which has led me to fix a few bugs. Widget libs are always such a pain in the ass! I see they are discussing one on the pyglet google group at the moment. If only we had a compositing wm we could use their code in an opengl window - zoom zoooom... *evil grin*
Anyway yahiko seems to be working ok with a X window as a child widget...more later
Grrrrrr... it just wont work with samurai-x. I can run a service outside of sx and talk to it with a client, but I cant run the service inside sx!. http://samurai-x.org/browser/sx-dbus/sxdbus.py I even created a gobject main loop plugin to run this! more grrrrr's....
Anyway... I went back to a bit of hacking with the sx-web plugin and made it use webob and mako templates. Mixed in with a theme and some js magic from jquery and we've got something that looks rather nice!