Daily Archives: 16.7.2008

You are browsing the site archives by date.

Canon IP2500 unter Suse 11.0

Um den IP2500 unter Suse 11.0 zu betreiben, ist es notwendig zwei Pakete nachzuinstallieren. Die Firma Canon stellt für diesen Drucker, sowie für weitere IP Modelle, binäre Treiber zur Verfügung. Über die Canon Supportseite können derzeit die Pakete cnijfilter-common-2.70-2.src.rpm und cnijfilter-ip2500series-2.70-1.i386.rpm heruntergeladen werden.

In der dort ebenfalls erhältlichen Anleitung guideip2500series-pd-2.70-1.tar.gz ist die Rede von einem cnijfilter-common-2.70-2.rpm, welches sich aber erst auf einer anderen Download Location findet.

Aufgrund dieser Konfusion habe ich mich entschieden meine Pakete direkt aus dem cnijfilter-common-2.70-2.src.rpm zu erstellen, um evtl. Problemen aus dem Weg zu gehen (wer weis mit welchen libs diese Pakete gebaut wurden). Read More …

Trac 0.11 – nur owner bzw. TRAC_ADMINs sollen tickets schließen (close)

In der aktuellen Trac Version 0.11 werden Aktionen wie assign, close mit Hilfe workflows definiert. So kann Trac Usern hier das Recht gegeben werden Tickets zu modifizieren (TICKET_MODIFY) oder zu verwalten(TICKET_ADMIN) etc. . Leider ist es derzeit nicht möglich Rechte zu definieren, die nur für „Ticketbezogene“ User gelten. Ist z.B. die permission = TICKET_ADMIN bei einem close workflow gesetzt, so können nur noch User mit TICKET_ADMIN Berechtigung Tickets schließen. Hat aber jemand TICKET_ADMIN Berechtigung, so kann er diese Aktion für jedes Ticket durchführen, was wohl nicht immer erwünscht ist.

In meinem konkreten Fall sollte nur der Owner, bzw ein TICKET_ADMIN ein Ticket schließen können. Durch eine Anpassung im File default_workflow.py wurde das gewünschte Verhalten ermöglicht. Folgende Zeile ist zu ändern:

@@ -184,7 +184,7 @@
required_perms = action_info[‚permissions‘]
if required_perms:
for permission in required_perms:
–                        if permission in req.perm(ticket.resource):
+                        if permission in req.perm(ticket.resource) or ticket[‚owner‘] == req.authname:
allowed = 1
break
else:

Danach reicht es im Konfigurationsfile (trac.ini) des jeweiligen Projektes  z.B. bei einer close Aktion:

pass = * -> closed
pass.name = Close ticket
pass.permissions = TRAC_ADMIN

den TRAC_ADMIN unter permissions einzutragen. Ab sofort können nur noch owner und TICKET_ADMINs ein Ticket schließen.

Das Ganze lässt natürlich Spielraum für weitere Optimierungen, z.B. das Verwalten dieser speziellen Berechtigung via Admin Template.