Feeds:
Posts
Comments

Posts Tagged ‘cutting-edge’

KDE 4.1 Beta

Finally, I switched to KDE 4! I said goodbye to my KDE 3.5, which served me well over the years, and now I enjoy it’s more futuristic successor. After failing to make friends with the KDE 4 alpha/beta/.0 releases, 4.1 (4.0.82 to be exact) meets my¬†needs.

Plasma is almost stable, only crashes once a day or so ūüėČ Also KMail and some other stuff that was missing in 4.0 is back. The build-in desktop effects aren’t killing X anymore and some apps have new features.

I’m not really a fan of the whole plasma/oxygen/vista-clone design but I can live with it till someone makes more colourfull alternatives. Qt4 is more important than my old styles¬†ūüėČ

Some upsides

  • Qt4 + SVG + kde-look.org build-in everywhere
  • Okular!
  • KMail works, Kopete works, the classic application laucher is back (but I have grown to like Kickoff) and “Run command” has previews.
  • An enhanced¬†KTeaTime

Some downsides

  • Plasma: slow, unstable, you can’t even move icons on your panel, …
  • Desktop effects are slow and not perfect
  • GTK apps don’t cooperate very well
  • User-defined global shortcuts don’t work at all
  • KMail crashes while renaming IMAP folders‚Ķ¬†ūüôā

(These are problems that I have. I have seen some of the features work on other machines.)

4.1 on Gentoo

I have Kubuntu too on my notebook, but I haven’t checked it out yet. It’s propably more itegrated and stuff, but I’m a gentoo¬†user!

What you need to get 4.1 running on gentoo is layman and if you lazy a tool called autounmask:

layman -a kdesvn-portage
autounmask kde-base/kde-meta-4.0.82-r3
emerge -av kde-meta

This should work fine, you probably have to remove qt-4.3 manually and remerge 4.4; make sure you have all Qt4 libs (eix qt -C x11-libs), otherwise a lot of apps won’t¬†merge.

Read Full Post »

I recently switched from the django svn trunk to the newforms-admin branch ‚ÄĒ mainly because I wanted more control over the querysets, which are used in the admin interface. In the end I had to patch the code myself to get it working, but the newforms-admin has a few other advantages (and¬†disadvantages).

Advantages

Everything is written in newforms. For administrative purposes this doesn’t really makes any difference, but for django.contrib.auth it does. Till now login and password reset/change forms where using oldforms too and that was very annoying. With the newforms branch you can easily add all this nice admin features to your¬†page.

For example, to add a “Password forgotten” feature, all you have to do is add some URL¬†patterns:

File: yourproject/urls.py

from django.conf.urls.defaults import *
from django.contrib.auth.views import *
urlpatterns = patterns('',
    # ...
    url(r'^password/reset/$', password_reset, name='reset_password'),
    url(r'^password/reset/done/$', password_reset_done),
)

And make you own template:

File: registration/password_reset_form.html

{% extends "base.html" %}
{% block content %}
    <form action="." method="post">
        <table>
            {{ form.as_table }}
        </table>
        <p><input type="submit" value="Reset password" /></p>
    </form>
{% endblock %}

You’ll also need a registration/password_reset_done.html template and if you don’t like the default message a registration/password_reset_email.html template.

Done.

Disadvantages

Since the Admin class is decoupled from the model classes, you’ll have to change all your models to get them working with the new system. Sounds harder than it is. All you have to do is make a new class, register it with the administration system and copy the contents of you model’s Admin subclass to the new¬†one:

from django.contrib import admin
class BlogAdmin(admin.ModelAdmin):
    prepopulated_fields = {'slug': ('title',)}
    list_display = ('title', 'author')
    date_hierarchy = 'published'
admin.site.register(Blog, BlogAdmin)

If you use third party add-ons like django-tagging or django-registration they will not appear in you administration, but they will still work. Only a few apps are backwards incompatible.

Here’s a list of apps that I¬†use:

App Compatible Admin Support
django.contrib.* yes yes
django-registration yes no¬Ļ
django-tagging yes no¬Ļ
django-robots no² no²

¬Ļ There is no newforms-admin support, but with this app you don’t really need¬†one.
² I submitted a patch to introduce newforms-admin support.

Apps that don’t use models are always compatible and, obviously, don’t need the admin¬†interface.

See also:

Read Full Post »