ubuntuusers.de

23. Februar 2012

Im letzten Beitrag zum Thema Catacomb Snatch bin ich kurz auf die Weiterentwicklung des Spiels eingegangen und habe einen Leveleditor vorgestellt. In diesem Teil möchte ich nun genauer das Catacomb Snatch-”Ökosystem” ins Auge fassen.

Forks
Nachdem das Spiel am Sonntag freigegeben wurde, haben sich recht schnell verschiedene Forks gebildet. Besonders häufig wurden dabei die Steuerung (Mauskontrolle), verschiedene Bugs und natürlich die Platzhalter-Sprites ins Auge gefasst. Zu den bekannteren Forks gehören sicherlich:

  • Uber Catacomb Snatch
    Ein Fork, der mittlerweile durch einen Artikel in der englischen Wikipedia geadelt wurde und entsprechend oft verlinkt wird; das meiner Meinung nach aber etwas zu Unrecht: Es gibt anscheinend nur einen Entwickler, der Source scheint nicht verfügbar zu sein. Entsprechend hinkt dieser Fork den übrigen hinterher, wenngleich es ein paar nette Ideen gibt (so können die Droiden beispielsweise die Münzsammler leeren).
  • Catacomb Snatch: Reddit Edition
    Ein Fork, der von der Reddit-Community betrieben wird. Hier gibt es unter anderem zwei neue Level, neue Grafiken für einige Knöpfe und Sichtlinien für die Geschütze.
  • Maescool’s Catacomb Snatch fork
    Derzeit mit 67 Forks auf Github und über 110 Abonnements wohl der aktivste Ableger. Aufgrund der Vielzahl von Änderungen, soll dieser Fork etwas ausführlicher vorgestellt werden.
Maescool’s Catacomb Snatch fork
Bei mittlerweile mehr als 67 Forks und gut 40 Pulls Request auf Github kann dieser Fork sicher nicht mehr allein dem belgischen Entwickler “Maescool” zugeschrieben werden – dieser Fork hat sich zu einem tatsächlichen Gemeinschaftsprojekt weiter entwickelt. 
Neben dem Github-Projekt gibt es eine offizielle Seite mit Forum, ein automatisches Build-System mit den jeweils aktuellsten Version und ein kleines Wiki. IRC-Nutzer können im Freenode-Kanal #catacomb-snatch die Entwicklung verfolgen.
Einige Neuerungen bei diesem Fork sind:
  • Neue, schickere Grafiken in den Menüs.
  • Neue Levels und eine ansprechende Levelauswahl.
  • Levels werden automatisch aus dem Ordner ~./mojam/levels ausgelesen.
  • Neue Menüs “Optionen” und “How to Play”
  • Verschiedene Schwierigkeitsstufen
  • Zielen, schießen, kaufen und aufheben sind nun mit der Maus möglich
  • Levelsystem mit Erfahrungspunkten
  • Upgradesfür Münzsammler und Geschütze (Taste “F”)
  • Vollbildmodus (F11)
  • Pause-Bildschirm (ESC)
Durch die Änderungen und Verbesserungen ist diese CS-Version meiner Meinung nach derzeit die attraktivste und interessanteste. Auf der Issue-Seite bei Github gewinnt man schnell einen Überblick über die verschiedenen Ideen, die zur Zeit in Angriff genommen werden.
Weitere Ressourcen im Netz
Die Seite “The Crypt” bietet weiteres Material rund um Catacomb Snatch. Neben einem Forum finden sich dort Level zum Herunterladen, eine Übersicht verschiedener Forks und Anleitungen zum Erstellen von Leveln und Einrichten eines eigenen Eclipse-Projektes auf Basis des CS-Source Codes.
Das Entwickler-Team Mojang hat zudem eine kurze Anleitung veröffentlicht, in der geschildert wird, wie der CS-Source Code genutzt werden. Dort werden auch einige Probleme angerissen und mögliche Weiterentwicklungen vorgeschlagen.

Ich bin kürzlich Besitzer eines Synology DS411slim NAS geworden. Seit gestern habe ich auch 2 passende 500GB Festplatten dazu und die Station das erste mal in Betrieb genommen (Im SHR-Modus als Quasi-RAID1).

Sie quietscht jetzt komisch, wenn man darauf zugreifen will.

Grund dafür ist, dass ich in der Vergangenheit mich etwas nachlässig um die Thematik “Backup” gekümmert habe, zumindest was die Rechner zuhause angeht. Das hat sich sehr schmerzlich deutlich gemacht, als ich es für eine gute Idee hielt, meine System-Festplatte vor dem Urlaub auszulagern, aber kein Abbild davon mehr zu ziehen. Dummerweise ließ ich die Festplatte aus ca. 50cm Höhe fallen. Sie quietscht jetzt komisch, wenn man darauf zugreifen will.

4 Monate Arbeit: Im Arsch. Zum Glück kam da nichts wirklich wichtiges (das letzte Projekt war da bereits abgeschlossen) und Code-Projekte liegen meistens eh auf einem meiner Server, mindestens als Kopie.

Trotzdem hatte ich den Wunsch, eine zentrale Backupstelle zu haben, keine USB-Platten rumschleppen und an die Rechner hängen, sondern ein automatisches Backup. Dann habe ich ein Backup und muss nur gelegentlich mal ne Platte an das NAS hängen und von ebendiesem ein Backup ziehen. Das kann die Synology-Software automatisch.

Ist-Stand

SSH auf dem NAS geht, rsync via SSH klappt auch. Ich habe Shares für alle Rechner angelegt, die gesichert werden sollen.

Meine Fragestellungen

  1. Push-Style, Pull-Style, oder beides?
    Für den vServer bietet sich ein Pull an, mit nem SSH auf den Root-Account. Dann muss ich nicht neue Ports öffnen oder lustige neue Tunnels bauen. Alternative: Das Backup vom vServer auf die EEEBox legen und mit dem NAS von  da holen. Für den Desktop ist ein Push eher geeignet, am besten mit Anacron. Bei der EEEBox ist es egal, die läuft eh. Das Windows-Notebook macht sein Backup via Windows-Sicherungsdienst: Push.
  2. Wie löse ich das Problem mit dem verschlüsselten Home-Verzeichnis?
    Ich habe auf dem Desktop ein verschlüsseltes Home-Verzeichnis. Was macht ein Rsnapshot / rsync dann, wenn meine Frau eingeloggt ist, und mein Verzeichnis nicht entschlüsselt wurde? Kann ich überhaupt anachron für einen User benutzten?

Fragen über Fragen. Hat jemand Tipps oder gute Links dazu? Hat jemand Erfahrungswerte damit?

LibreOffice Logo 150x150Als die Mitteilung gerade reinkam, hatte ich auch zuerst gedacht ich hätte mich verlesen oder es ist das tägliche Update der Zungenbrecher-Gesellschaft. Deswegen noch mal: LibreOffice für Windows von SUSE ist in Intels AppUp(SM) Center verfügbar

Angekündigt wurde das hochoffiziell von The Document Foundation (TDF). Das ganze ist allerdings recht schnell aufgeklärt und erklärt. Intel wird Mitglied des TDF Advisory Board und unterstützen das LibreOffice-Projekt auch finanziell. Das Intel AppUp(SM) Center ist ein Software-Repository für Intel-basierte Geräte.

LibreOffice von SUSE in Intels AppUp(SM) Center

LibreOffice von SUSE in Intels AppUp(SM) Center

SUSE hat das LibreOffice-Pakete in Intels AppUp(SM) Center eingereicht. Es steht in fünf Sprachen zur Verfügung: Englisch, Deutsch, Französisch, Spanisch und Italienisch. Als eine von Intel überprüfte Applikation verspricht man eine einfache Installation und auch einen sauberen Desinstallations-Vorgang.

Lange Rede kurzer Sinn: LibreOffice ist in AppUp(SM) Center. Florian Effenberger von der TDF ist natürlich begeistert, dass LibreOffice auch über einen weiteren und wichtigen Kanal ausgegeben wird. Man darf sich laut eigener Aussage glücklich schätzen, mit Firmen wie SUSE, Red Hat, Google, der Free Software Foundation (FSF) und Software in the Public Interest (SPI) zusammenarbeiten zu können und deren Ratschläge zu haben.

Für die TDF und die Open-Source-Software LibreOffice ist dies ein weiterer wichtiger Schritt. Erst kürzlich hat man das OK bekommen, “rechtsfähige Stiftung des bürgerlichen Rechts” zu sein. LibreOffice in Intels Software-Repository findest Du hier.


Jürgen (jdo) für bitblokes.de, 2012. | Permalink | Twitter

Neulich hatte ich schon mal über Software- und Qualitätstests im Bezug zu Actionaz geschrieben. Heute ein ähnliches praktisches Tool. mit welchem man überprüfen kann, wie man eine Software im täglichen Einsatz nutzt, in dem man seine eigenen Mausbewegungen aufzeichnen lässt.

Hierdurch können sich interessante Einblicke in die Oberflächengestaltung von Software ergeben, da schneller erkennbar wird, welche Menüpunkte man öfter benutzt und welche vielleicht durch den Benutzer überhaupt nicht gefunden werden. Zu diesem Zweck kann man sich das Tool IOGraphica herunterladen, welches plattformübergreifend für Linux, Windows und Mac zur Verfügung steht, da es auf Java basiert.

Die Oberfläche und die allgemeine Bedienung von IOGraphics ist sehr schnell und intuitiv erklärt. Nachdem man die Java – Datei gestartet hat, muss man lediglich auf den schwarzen Punkt in der Mitte des Fensters klicken, um die Aufnahme zu starten. Anschließend kann man das Programm minimieren und die Bewegungen der Maus, inklusive der einzelnen Klicks werden auf einer weißen Fläche nachgezeichnet.

Die Kreise werden umso größer dargestellt, je mehr man sich über dem jeweiligen Bereich aufgehalten hat, bzw. je mehr man an der gleichen Stelle geklickt hat. Um nun die Aufzeichnungen für ein Programm nachvollziehen zu können, kann man über die Einstellungen noch definieren, dass statt einer weißen Fläche der aktuelle Bildschirmhintergrund genutzt werden soll.

Zusätzlich unterstützt das Programm die Möglichkeit mehrere Monitore aufzeichnen zu lassen, sowie das Anhalten der Maus zu Ignorieren, damit es unter Umständen nicht zu Verfälschungen kommt. Die Bilder können am Ende ganz normal in den üblichen Standardformaten abgespeichert werden.

Wer IOGraphica einmal ausprobieren möchte, kann das Programm von der Downloadseite beziehen. Für den einfachen Zweck der Mausaufzeichnung ist es ein durchaus geeignetes Tool.

Viele kennen es aus Hotels, Bahnhöfen, Cafes oder öffentlichen Plätzen. Es gibt ein offenes WLAN zum Internet und wenn man sich damit verbindet landet man zuerst einmal auf einer speziellen Seite. Auf dieser muss man sich dann irgendwie registrieren oder halt bezahlen. Aber wie funktioniert sowas und macht das vielleicht auch Sinn für ein Unternehmen intern?

Warum kann das unternehmensintern Sinn machen?

Also hier geht es nicht um Provider oder Firmen die das ganze öffentlich anbieten. Es gibt beispielsweise die Anforderung in Unternehmen die Produktionsstraßen besitzen, Großraumhallen, Fertigungshallen oder ähnliches. Oft gibt es dort viele Geräte verschiedener Hersteller die gewartet werden (nur ein Beispiel). Es kommen also externe Dienstleister um Updates einzuspielen oder Support zu leisten. Diese müssen mittlerweile, um vernünftig arbeiten zu können, Kontakt mit Ihrer Firma haben. Das kann über 3G geschehen, ist allerdings schneller über WLAN. Für solche Dienstleister macht ein WLAN Zugang also Sinn. Das auch für einen “normalen” Besprechungs- oder Schulungsraum schon Sinn machen.

Nun hat man ein Problem. Das WLAN offen zu lassen ist quasi grob fahrlässig. Das WLAN schützen macht es umständlich – je nach Anzahl der verschiedenen Benutzer. Dann haben wir da noch den Aspekt des Loggings. Prinzipiell muss man die Verbindungsdaten mitloggen, da man je nach dem in die Beweispflicht genommen werden kann. Um zu loggen muss ich auch wissen wer zu welchem Gerät gehört, da mir ansonsten die Information nichts bringt. Das alles kann ich mit der Anmeldung quasi erledigen. Ich weiß wer zu welchem Gerät gehört und kann auch mitloggen. Bevor der Nutzer sich über das WLAN mit dem Internet verbindet, muss er einer entsprechenden Nutzungserklärung zustimmen (wegen logging etc.).

Wie kann sich so was mit Linux darstellen?

Diese Portale sind gar nicht so kompliziert wie man denkt. Um so etwas unter Linux zu realisieren kann man sich fertiger Software bedienen oder auch einfach das ganze selbst – relativ schnell – programmieren. Ein Projekt mit einer “CaptivePortal” Funktion ist beispielsweise pfsense. Die meisten CaptivePortal Funktionen befinden sich im Bundle mit Firewalls und bieten weit mehr als eine einfach Authentifizierung für einen Netzzugang.

Um so etwas mit Linux Mitteln darstellen zu können habe ich folgende Komponenten genutzt:

  • einen Apache Webserver
  • MySQL Datenbank
  • iptables
  • DHCP Server (Standardkonfig mit Netz 192.168.199.0/24)

Das ganze funktioniert nach folgendem Ablauf:

  1. Gerät verbindet sich mit dem Netz (dabei ist unerheblich ob per WLAN oder per Kabel)
  2. das Gerät bekommt eine IP per DHCP
  3. per Default werden alle Verbindungen geblockt, Verbindungen zu Port 80 (egal wohin) werden auf den Webserver des Gateways umgeleitet, bis das Device registriert ist

Zur Registrierung benötigt man einen Schlüssel (5 Stellen, Alphanumerisch). Diesen kann man sich an eine interne Mailaddresse schicken lassen. Also können nur interne Accounts quasi den Zugriff genehmigen. Wenn man einen Schlüssel besitzt, dann kann man sich über das Portal registrieren (Name, Firma und Schlüssel werden abgefragt). Mit der Registrierung – richtiger Schlüssel vorausgesetzt – wird der Zugang für einen Tag freigegeben.

Genauer??

Der Client bekommt eine IP Adresse vom DHCP Server. Alle Zugriffe ins (bspw.) Internet werden erst einmal geblockt, außer Zugriffen auf Port 80 – diese werden umgeleitet auf den Webserver des Gatewyas – das CaptivePortal erscheint. Hat man noch keinen Schlüssel zum registrieren, so muss dieser angefordert werden. Man trägt eine eMail Adresse ein und sendet die Anfrage. Im Hintergrund wird per Perl Script geprüft ob die Empfängeradresse ok ist (bspw. interne Domain oder in einer Liste) und ein Schlüssel generiert. Dieser Schlüssel inkl. Mailadresse wird in der Datenbank hinterlegt und per Mail an den Empfänger geschickt.

Mit dem Schlüssel registriert sich der Client am Portal (inkl. Name, Firma). Mit dem Klicken des Buttons “registrieren” wird der Schlüssel geprüft und deaktiviert. MAC Adresse, Name und Firma des Anforderers werden in die Datenbank geschrieben. Danach wird ein iptables Befehl abgesetzt, der dem Client mit der betreffenden MAC Adresse den Zugriff zum Netz gewährt. Ebenfalls wird in der Datenbank ein Zeitstempel gespeichert, dadurch ist es möglich über ein iptables-update den Zugriff generell nur für eine gewisse Zeit freizugeben und dann automatisch wieder zu sperren. In der Datenbank gibt es ein Flag um zu definieren, ob dieser Eintrag überhaupt abläuft oder nicht (expires yes/no). Damit kann man also auch das ganze für interne Mitarbeiter statisch freigeben, damit diese sich nicht immer wieder neu registrieren müssen.

Die Komponenten

(Die Scripte liegen bei mir unter /opt/captivePortal – der Pfad ist in manchen Scripten zu finden)

iptables

iptables ist ja quasi auf jedem Linux System vorhanden und muss auch nicht groß konfiguriert werden.

Script 1 (Initiales iptables Script / iptables.sh):

#!/bin/bash
# Initial Iptables Script to enable captivePortal
#
# Ronny Becker, 02.2012

IPTABLES=/sbin/iptables
# the interface to authenticate
PORTAL_INT=eth2
# the interface where traffic goes through
OUTPUT_INT=eth0
# PortalIP (for captivePortal website)
PORTAL_IP=192.168.199.201

# clear all rules
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

# Create captivePortal chain
$IPTABLES -N captivePortal -t mangle

# All traffic goes to this chain
$IPTABLES -t mangle -A PREROUTING -j captivePortal

###### captivePortal CHAIN ##########
# get allowed MACs out of the database (maybe persistent or in time)
/opt/captivePortal/iptablesFromDB.pl

# DNS is allowed for all
$IPTABLES -t mangle -A captivePortal -i $PORTAL_INT -p udp --dport 53 -j RETURN
# Mark packets that are not allowed till here
$IPTABLES -t mangle -A captivePortal -i $PORTAL_INT -j MARK --set-mark 99

# redirect port 80 to captivePortal
$IPTABLES -t nat -A PREROUTING -m mark --mark 99 -i $PORTAL_INT -p tcp --dport 80 -j DNAT --to-destination $PORTAL_IP

# drop all marked with 99
$IPTABLES -t filter -A FORWARD -m mark --mark 99 -j DROP

# masquerading (if needed)
iptables -t nat -A POSTROUTING -o $OUTPUT_INT -s 192.168.199.0/24            -j MASQUERADE

Das iptables.sh Script muss bei jedem Systemstart ausgeführt werden. Des Weiteren muss ip_forward (/etc/sysctl.conf) gesetzt sein, damit der Server routen kann.

Script 2 (Perl Script zum Auslesen der aktuellen Berechtigungen aus der Datenbank / iptablesFromDB.pl):

#!/usr/bin/perl

# captivePortal
# Script to get registered MACs out of DB
use DBI;

# get Config from central conf file
BEGIN { require "/opt/captivePortal/captivePortal.conf" };

# database connection
$connectionInfo="DBI:mysql:database=$db;$host:$port";
$dbi = DBI->connect($connectionInfo,$userid,$passwd);

# select datasets
$sql="select mac from registered where expires='no' or ((UNIX_TIMESTAMP()-timestamp) < $tte)";
$sth = $dbi->prepare($sql);
$sth->execute() or die("Cannot get MACs");
$sth->bind_columns(undef, \$db_mac);
while ( $sth->fetch() ) {

# and run iptables
`/sbin/iptables -t mangle -A captivePortal -m mac --mac-source "$db_mac" -j RETURN`;
}

$sth->finish();

$dbi->disconnect();

Config (Konfig für die Perl Scripte (s. Script 2 / captivePortal.conf):

# captivePortal - central config

# this conf file is used in perl scripts
use vars qw( $tte $db $host $port $userid $passwd $iptables_if );

# Time To Expire for dynamic subscriptions
$tte="86400";

# Database Information
$db="captivePortal";
$host="localhost";
$port="3306";
$userid="portal";
$passwd="captive";

# portal interface
$iptables_if="eth2";

Script 3 (Updatescript für iptables um abgelaufene Registrierungen zu löschen / iptables_update.sh):

#!/bin/bash

# captivePortal

# Update iptables rules to delete expired registrations
IPTABLES=/sbin/iptables

# the interface to authenticate
PORTAL_INT=eth2

# clear the chain
$IPTABLES -t mangle -F captivePortal
# run the rules out of the db

/opt/captivePortal/iptablesFromDB.pl

# add default rules (see iptables.sh)
$IPTABLES -t mangle -A captivePortal -i $PORTAL_INT -p udp --dport 53 -j RETURN
$IPTABLES -t mangle -A captivePortal -i $PORTAL_INT -j MARK --set-mark 99

Das Update Script sollte per cron alle Xmin / Xstunden ausgeführt werden, damit abgelaufene Registrierungen den Zugriff verlieren. Wenn man den cronjob nicht gerade jede Minute laufen lässt, ist damit natürlich nicht gewährleistet dass eine Registrierung genau so lange gültig ist, wie es in der Konfiguration steht. In meinem Fall läuft das Script jede Stunde – das ist für meine Zwecke ausreichend.

MySQL

Die Datenbank besteht aus zwei Tabellen -> captivePortal.sql

Apache

Wir benötigen lediglich ein CGI Script. Auf dieses muss per Default umgeleitet werden sobald der Server eine Anfrage bekommt. Das kann man auf verschiedenste Weisen machen – also nicht schimpfen ;-)

Redirect

Damit das ganze mit iPhone und Android funktioniert, habe ich folgende Apache config am Start:

<VirtualHost 192.168.199.201:80>
ServerAdmin webmaster@localhost
Servername captivePortal
DocumentRoot /var/www

Redirect /index.html http://192.168.199.201/cgi-bin/captivePortal.pl

<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI Indexes -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^/$ http://192.168.199.201/cgi-bin/captivePortal.pl [L,R]
</IfModule>

ErrorLog ${APACHE_LOG_DIR}/error.log

# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn

CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

Dem entsprechend liegt das CGI (captivePortal.pl) unter /usr/lib/cgi-bin.

Das CGI

#!/usr/bin/perl
# captivePortal
#
# This is the cgi for the simple captivePortal
#
# Do not forget to change
#  line 51: valid domain to send regkey to
#  line 58: sender adress
#
#
#
# Ronny Becker, 02.2012

use CGI qw(:all);
use DBI;

# get Config from central conf file
BEGIN { require "/opt/captivePortal/captivePortal.conf" };

# connect to DB
$connectionInfo="DBI:mysql:database=$db;$host:$port";
$dbi = DBI->connect($connectionInfo,$userid,$passwd);

# params
$thisscript=$ENV{'SCRIPT_NAME'};

# cgi params
$para_req_sendto=param('req_sendto');
$para_req_submit=param('req_submit');
$para_reg_company=param('reg_company');
$para_reg_name=param('reg_name');
$para_reg_key=param('reg_key');
$para_reg_submit=param('reg_submit');

# print some headers
print "Content-type: text/html\n\n";
print '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>WLAN Gastzugang</title>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
</head>
<body style="font-family: courier,courier-new">
<h2>WLAN Gastzugang</h2><br>';

# request for key
if ( $para_req_submit ) {
# address valid?
if ( $para_req_sendto ) {
if ( $para_req_sendto =~ /.*\@mydomain\.de/i || $para_req_sendto =~ /.*\@mydomain2\.de/ ) {
# generate a key
my @chars=('a'..'z','0'..'9');
foreach (1..5) {
$secret.=$chars[rand @chars];
}
# send key to recipient
$result=`export EMAIL="gastzugang\@mydomain.de"; echo "Der Registrierungsschluessel fuer Ihren Gast lautet: $secret" | mail -s "WLAN Gastzugang" $para_req_sendto`;
print "$result";
# Insert Key into DB
$sql="insert into regkeys(regkey,sendto,datetime) values('$secret','$para_req_sendto',NOW())";
$sth = $dbi->prepare($sql);
$sth->execute() or die("Fehler beim schreiben in die Datenbank");
$sth->finish();
print "<div style='background-color: green; color: white'><p><b>Registrierungsschluessel wurde zugeschickt</b></p></div>";
}
}
}

# request for registration
if ( $para_reg_submit ) {
# name given?
if ( length($para_reg_name) <= 5 || length($para_reg_key) != 5 ) {
print "<div style='background-color: red; color: white'><p><b>Sie muessen einen Namen und den Registrierungsschluessel angeben.</b></p></div>";
} else {
# Check DB for regkey
$sql="select sendto from regkeys where regkey='$para_reg_key' and isActive='1'";
$sth = $dbi->prepare($sql);
$sth->execute() or die("DB: Cannot run select");
$sth->bind_columns(undef, \$db_sendto);
$sth->fetch();
$sth->finish();
if ( $db_sendto ) {
# disable key
$sql="update regkeys set isActive='0' where regkey='$para_reg_key'";
$sth = $dbi->prepare($sql);
$sth->execute() or die("DB: Cannot update");
$sth->finish();
# get MAC
open (ARP,"</proc/net/arp");
while (<ARP>) {
$line = $_;
$line =~ s/  */;/g;
($arp_ip,undef,undef,$arp_mac,undef,undef) = split(";",$line);
if ( $arp_ip eq $ENV{'REMOTE_ADDR'} ) {
$mac=$arp_mac;
}
}
close ARP;
# write data into db
$sql="insert into registered(name,guestof,mac,timestamp,expires) values('$para_reg_name, $para_reg_company','$db_sendto','$mac',UNIX_TIMESTAMP(),'yes')";
$sth = $dbi->prepare($sql);
$sth->execute() or die("DB: Cannot insert");
$sth->finish();
$output=`sudo /sbin/iptables -I captivePortal 1 -t mangle -m mac --mac-source $mac -j RETURN`;
print "<div style='background-color: green; color: white'><p><b>erfolgreich registriert</b><br>$output</p></div>";
} else {
print "<div style='background-color: red; color: white'><p><b>Registrierungsschluessel nicht gefunden</b></p></div>";
}
}
}

# disconnect from DB
$dbi->disconnect();

# print form etc.
print '
<form method=get action='.$thisscript.'>
<b>Registrierungsschluessel anfragen</b><br>
senden an:&nbsp;<input type=text name=req_sendto size=40>&nbsp;<input type=submit name=req_submit value=zusenden></form>
<hr><br>
<form method=get action='.$thisscript.'>
<b>Registrieren</b><br>
<b><u>Achtung! Registrieren Sie sich mit dem Geraet, mit dem Sie Zugriff benoetigen</b></u><br>
<table>
<tr><td>Name:</td><td><input type=text name=reg_name size=30></td></tr>
<tr><td>Firma:</td><td><input type=text name=reg_company size=30></td></tr>
<tr><td>Registrierungsschluessel:</td><td><input type=text name=reg_key size=10></td></tr>
<tr><td colspan=2 align=center><font color=red><b><u>Nutzungsbedingungen:</u><br>
Mit klicken auf den Button "registrieren" stimmen Sie zu,dass die ihre Verbindungsdaten (Zeitpunkt und Dauer einer Verbindung, Addressierungsdaten) mitprotokolliert werden.
Dies dient lediglich zur Fehleranalyse und zur Sicherheitsueberpruefung.
Es werden keine Daten an dritte weitergegeben oder weiterverarbeitet.<br><br><br>
Sie haben (per Default) ab dem Zeitpunkt der registrierung Zugriff fuer 24 Stunden.
<input type=submit name=reg_submit value=registrieren></td></tr>
</table>
</form>
</body>
</html>';

Das Webinterface ist recht einfach gehalten damit es auch mit mobilen Endgeräten keine Probleme gibt. Das ganze ist natürlich nach belieben anzupassen oder zu ändern ;-)

Ich hoffe ich hab nix vergessen – falls doch einfach fragen.

Flash LogoLaut eines Blog-Eintrags bei Adobe arbeiten Google und der Flash-Hersteller wohl an einer einzelnen API für das hosten von Plugins in einem Browser. Der neue Plugin-Code nennt sich Pepper. Dies ist eine Schicht zwischen Browser und Plugin, die Unterschiede zwischen Browser- und Betriebssystem-Implementierungen außer Acht lässt.

Bereits Ende dieses Jahres will Google den neuen Pepper-basierten Flash-Player als Teil von Google Chrome auf allen Plattformen ausliefern. Das betrifft natürlich auch Linux.

Die schlechten Nachrichten: Nach Version 11.2 wird es für Flash für Linux nur noch durch die Pepper-API geben. Als direkten Download will es Adobe nicht mehr anbieten. Zumindest verspricht Adobe noch 5 Jahre Sicherheits-Updates für Version 11.2, sobald diese auf dem Markt ist. Auf anderen Plattformen (Mac OS X und Windows) wird es auch einen ganz normalen Flash Player geben.

Bisher scheint Chrome der einzige Browser zu sein, der die neue Pepper-Schnittstelle unterstützt. Mozilla hat laut eigenem Wiki kein Interesse daran und von Opera und anderen Browser-Herstellern hat man noch keine Stellungsnahmen dazu. Ist sich Wert, da mal dran zu bleiben.

Ganz ehrlich? Im Browser Flash zu haben ist manchmal ganz nett, aber nicht wirklich erforderlich. YouTube stellt auf Nicht-Flash um oder hat schon umgestellt, das gleiche gilt für Anbieter wie Vimeo (mein Fehler, da gibt es derzeit nur einen Feature Request aber keine Details von Vimeo wann und ob! Sorry!). Ich bin mir nicht mal sicher, ob ich Flash überhaupt vermissen würde, wenn es nicht mehr installiert wäre. Adobe soll die freigewordenen Ressourcen investieren und Photoshop auf Linux portieren – das wäre mir viel lieber :)

Wer Flash wirklich braucht, kann sich Lightspark mal ansehen. Das ist ein unter der LGPLv3 lizenzierter Flash Player, der sich auch als Plugin in Browser integriert. Lighspark unterstützt Adobes neue Flash-Formate und die AVM2 Virtual Machine.


Jürgen (jdo) für bitblokes.de, 2012. | Permalink | Twitter

DragonFly BSD Logo 150x150Laut eigener Aussage kommt DragonFly BSD mit etwas Verspätung, weil man einen Fehler gesucht hat, der sich dann als AMD-CPU-Bug herausstellte. Als netter Nebeneffekt wurde der große Kernel-Lock entfernt und das wirkt sich wiederum positiv auf die Geschwindigkeit in Verbindung mit Multi-Core-Systemen aus.

Zuvor war der Großteil der VM unter einem einzelnen Token – dem vm_token. Nun hat jedes der vm_objects ein privates Token und somit ist die Skalierbarkeit verbessert. Benchmarktests mit PostgreSQL und MySQL würden das untermauern. Es gibt noch viele weitere Änderungen und Neuerungen, die Du alle in den Release-Notizen findest.

ISO-Abbilder gibt es im Download-Bereich der Projektseite oder von einem der Spiegel-Server: dfly-i386-3.0.1_REL.iso.bz2 (180 MByte), dfly-i386-gui-3.0.1_REL.iso.bz2 (1,1 GByte), dfly-x86_64-3.0.1_REL.iso.bz2 (198 MByte), dfly-x86_64-gui-3.0.1_REL.iso.bz2 (1,15 GByte). DragonFly BSD ist im Jahre 2003 aus einem FreeBSD-Fork entstanden.


Jürgen (jdo) für bitblokes.de, 2012. | Permalink | Twitter

22. Februar 2012

In vielen Installationen zeigt der XFCE-Dateimanager Thunar ein eigenartiges Verhalten: Löscht man in einem Ordner Dateien über das Kontextmenü oder schiebt sie mit der Maus in den Mülleimer, ist alles in Ordnung.

Nutzt man jedoch die Entfernen-Taste zur Verzeichnissäuberung, dann „piepst“ der Computer bei jedem Löschvorgang. Beheben lässt sich diese auf Dauer nervende akustische Warnung mit einem kleinen Eintrag in der Datei „.gtkrc-2.0“ im Home-Verzeichnis:

gtk-error-bell = 0

Danach ist Ruhe.

Mageia Linux Logo 150x150Mageia ist eigentlich aus einem Krach zwischen den Mandriva-Häuptlingen und den Entwicklern entstanden. Nun ist die Community-Version Mageia auf dem besten Weg, eine zweite Version in trockene Tücher zu bringen und gibt eine erste Beta-Version (Cauldron) aus. Schaun wir mal, was da in der Mageia Hexenküche so gebraut wird. Eine Beta ist eine Beta ist eine Beta und in der Regel nicht ganz ausgereift. Dennoch sollte es schon einen ganz guten Überblick geben, was da auf uns zukommt.

Nebenbei: Ob Mandriva nun endgültig den Bach runter geht oder nicht, ist immer noch in der Schwebe. Laut Blog-Einträgen hat sich das mit dem interessierten Investor in Luft aufgelöst, allerdings sei die finanzielle Situation doch nicht total hoffnungslos. Somit könne man die Entscheidung, wie es mit Mandriva weiter geht noch etwas hinauszögern. Doch zurück zu Mageia.

Laut der offiziellen Ankündigung sind derzeit noch keine Live-CDs verfügbar. Diese sind allerdings bereits in Arbeit und tauchen wahrscheinlich in den kommenden Tagen auf den öffentlichen Spiegel-Servern auf. Auch Recht, installieren wir eben das vorhandene DVD-Abbild. Das Einspielen des Betriebssystems lässt sich bereits komplett in Deutsch durchführen. Der Wizard führt gut und gezielt zum Ergebnis.

Mageia 2 KDE Menü Desktop

KDE: Menü und Desktop

Während der Installation kann sich der Anwender bereits entscheiden, ob er KDE, GNOME oder eine benutzerdefinierte Desktop-Umgebung haben möchte. Bei einem Klick auf Benutzerdefiniert ließen sich auch gleich diverse Server-Szenarien auswählen, LXDE als Desktop-Umgebung oder eine komplett individuelle Paketauswahl. Da mir KDE 4.8 in letzter Zeit so gut gefällt und Mageia 2 Beta 1 diesen mit sich bringt, habe ich mich dafür entschieden. In den Repositories sind übrigens noch jede Menge anderer Fenster-Manager verfügbar. Eine genaue Übersicht zur enthaltenen Software findest Du in den Release-Notizen.

In Sachen Menü setzen die Mageia-Entwickler eher auf die klassische Variante und nicht die KDE-typische. Der Software-Manager ist sehr übersichtlich und bietet Zugriff auf viele weitere prominente Open-Source-Pakete. VirtualBox 4.1.8 und Wine 1.4 RC sind auch mit von der Partie. Als Kernel dient der derzeit aktuelle 3.2.6.

Mageia 2 KDE Firefox

Firefox ESR 10

Als Standard-Browser dient Firefox ESR 10.0.2 und die Bürosoftware-Sammlung der Wahl ist wie nicht anders zu erwarten LibreOffice 3.5. Gimp und Amarok fehlen in der KDE-Version ebenso wenig wie Scribus, Ekiga und Filezilla. Zu Gimp ist noch anzufügen, dass sich bereits die recht stabile Entwickler-Version 2.7 an Bord befindet. Diese bringt den so lange ersehnten Einzelfenster-Modus für Gimp. Es sind wirklich schon sehr viele gut ausgesuchte Programme an Bord, die man für die tägliche Arbeit so brauchen kann. Den Rest holt man sich einfach über die Repositories.

Ein weiteres Schmankerl dieser Linux-Distribution ist das Mageia-Kontrollzentrum. Hier hast Du das gesamte System via grafische Oberfläche im Griff. Von Server bis zur persönlichen Firewall kannst Du alles konfigurieren. Das Kontrollzentrum ist nicht nur übersichtlich, sondern ist auch für das Auge ansprechend.

Mageia 2 KDE

Der Mandriva-Abkömmling wird erwachsen ...

14 Fotos

Mageia 2 muss sich in Sachen Anwender-Komfort auf gar keinen Fall hinter anderen großen Distributionen verstecken. Das verwundert auch nicht, da man eben den Mandriva-Hintergrund merkt und dort wurde auch schon immer großer Wert auf Benutzerfreundlichkeit gelegt. Wer also von den Ubuntus, openSUSEs, Fedoras und so weiter mal Abstand nehmen möchte – Habemus Alternative … vielleicht aber noch auf die finale Version warten.

Wieder einmal zeigt ein Community-Projekt in eindrucksvoller Weise, dass es auch ohne “große” Firma im Hintergrund geht. LibreOffice hat Oracle den Stinkefinger gezeigt, Mageia macht es genauso. Was ich bei der Beta 2 bisher gesehen habe, gefällt mir ausgezeichnet. Weiter so – das wird ne richtig geile Distribution!

Ein ISO-Abbild findest Du im Download-Bereich der Projektseite oder auf einem der Spiegel-Server: Mageia-2-beta1-i586-DVD.iso (3,4 GByte, torrent), Mageia-2-beta1-x86_64-DVD.iso (3,45 GB, torrent).


Jürgen (jdo) für bitblokes.de, 2012. | Permalink | Twitter

Linsen sind ja nun schon eine ganze Weile unter Unity bekannt und man bekommt inzwischen eine Vielzahl wirklich guter Linsen, z.B. für YouTube, Google Docs, AskUbuntu & Co (Eine schöne Übersicht hatte vor einiger Zeit der ubuntu-blog.de, oder bei AskUbuntu gibt es auch eine Vielzahl von verschiedenen Linsen mit Installationsanleitung).

Nun könnte man schnell auf die Idee kommen sich seine eigenen Linsen zu basteln, wird aber sehr schnell feststellen, dass diese zu Beginn recht einfache Aufgabe doch eine komplizierte Angelegenheit werden kann. Dazu sollte man sich am Besten einmal den Eintrag im Ubuntu Wiki, wie auch diesen Blogeintrag näher durchlesen. Im Wesentlichen kommunizieren die Linsen über DBus, welches eine steile Lernkurve beinhaltet, bis man hier mit den Grundlagen vertraut ist.

Aus diesem Grund hat sich Michael Hall diesem Problem gewidmet und eine Python Bibliothek namens Singlet geschrieben, die dem Entwickler wesentliche Arbeiten abnehmen sollen.

In seinem Blog beschreibt Hall, dass das wesentliche Ziel der Entwicklung gewesen sei, ein einfaches funktionierendes Grundgerüst dem Entwickler an die Hand zu geben, mit dem er möglichst wenig Arbeit hineinstecken muss und sich mehr auf seine eigentliche Linse konzentrieren kann.

Singlet sorgt im Hintergrund für die Kommunikation mit den Interfaces für DBus und GObject, sodass man sich nicht zusätzlich mit diesen Thematiken beschäftigen muss. Den aktuellen Code bekommt man bei Launchpad, ein PPA ist in Planung und in Ubuntu 12.04 liegt es auch in den Repositorys des Universe Zweiges. Singlet in der Version 0.2 unterstützt zusätzlich eine API Funktionalität für Scopes, funktioniert dann aber auch nur in 12.04, während die 0.1er Version auch in Ubuntu 11.10 funktioniert.

Wer sich also einmal mit der Entwicklung seiner eigenen Linsen in Unity heranwagen möchte, dem sei Singlet auf jeden Fall einmal empfohlen, aktuell arbeitet Hall an Singlet +Quickly, welches allerdings aktuell noch nicht fertig gestellt ist. Ein erstes Template kann man sich aber hier anschauen.

SystemRescueCd LogoNachdem kürzlich Parted Magic 2012_02_19 ausgegeben wurde, steht nun mit der SystemRescueCd 2.5.0 eine weitere, auf Linux basierende Datenrettungs-Distribution zur Verfügung. Das Changelog verrät, dass die Entwickler auf den Langzeit-unterstützten Linux-Kernel 3.0.21 (rescuecd + rescue64) umgestiegen sind. Alternativ steht Linux-Kernel 3.2.6 zur Verfügung (altker32 + altker64).

Aktualisiert wurde auch sys-fs/ntfs-3g auf 2012.1.15 und ersetzt damit die ntfsprogs. Die btrfs-progs wurden auf die neueste Version aus git aktualisiert. Diese sind alelrdings mit Vorsicht zu genießen, weil sie sich derzeit in einem nicht sehr stabilen Zustand befinden. Die Dateisystem-Tools für ext3 und ext4 e2fsprogs sind als Version 1.42 vorhanden. GParted wurde ein Update auf 0.12.0 spendiert.

SystemRescueCd 2.5.0

Retter in der Not ...

8 Fotos

Die Systempakete glibc und gcc sind als Versionen 2.13 und 4.4.6 vorhanden und die Firmwares wurde auf linux-firmware-20120125 aktualisiert. Um Platz zu sparen haben die Entwickler Firefox durch den leichtgewichtigen, auf WebKit basierenden Browser Midori ersetzt.

Für das Aufsprüren doppelter Dateien dient fdupes, das Du unter app-misc findest. Ebenso wurden sys-fs/partclone auf 0.2.38, app-admin/testdisk auf 6.13 und sys-boot/grub auf 1.99-r2 aktualisiert.

SystemRescueCd 2.5.0 Midori

Browser: Midori

Die Distribution bringt gleich Kernel für 32- und 64-Bit-x86-Systeme mit sich. Ebenso angenehm ist, dass man bei Systemstart ein Tastatur-Layout einstellen kann. Im Gegensatz zu Parted Magic startet die SystemRescueCd nicht direkt in eine grafische Oberfläche. Nach Systemstart bekommst Du aber die notwendigen Anleitungen, wie Du diese Starten kannst. Dort erfährt man auch, dass die SystemRescueCd auf Xfce setzt. Wenn Du Dir in Sachen grafische Oberfläche nicht sicher bist, hilft die Eingabe von wizard.

Neben den ganzen Datenrettungs-Tools sind auch ISO Master, vncviewer und Xfburn mit an Bord. Wer lieber auf die Konsolen-Werkzeuge setzt, muss sich mit dem Starten der grafischen Oberfläche erst gar nicht auseinandersetzen.

Ob Du nun Parted Magic oder der SystemRescueCd den Vorzug gibst, ist sicher Geschmacksache. Für IT-Professionelle schadet es auf keinen Fall, beide im Gepäck zu haben. Beim Thema Datenrettung und Sicherheit ist es sicher gut auf Nummer Sicher zu gehen … :)

Beide Systeme sind kostenlos verfügbar. Sie sind unglaublich praktische und wertvolle Tools nach dem Crash. Die Entwickler freuen sich bestimmt auch über eine Spende.

Ein ISO-Abbild gibt es im Download-Bereich der Projektseite: systemrescuecd-x86-2.5.0.iso (355 MByte). Wer die SystemRescueCd lieber auf einem USB-Stick mit sich umherträgt, findet auf der Projektseite eine Anleitung.


Jürgen (jdo) für bitblokes.de, 2012. | Permalink | Twitter

Canonical hat gestern erneut eine Bombe platzen lassen, indem Ubuntu for Android vorgestellt wurde. Allein die Meldung auf Facebook hatte innerhalb von 12 Minuten über 1000 likes!

Ubuntu for Android ist ein kleiner Geniestreich aus dem Millbank Tower in London. Auch wenn die Idee nicht ganz neu ist, ist es auf jeden Fall die Umsetzung. Ubuntu for Android ist im Prinzip der erste vollwertige Desktop für ein Smartphone.

Der Trick dabei ist, dass auf dem Smartphone zwei Systeme parallel laufen. Ein Android System für die mobile Nutzung, ein kompletter Unity Desktop für zu Hause. Das Smartphone wird einfach in eine Docking Station gesteckt und ein an die Docking Station angeschlossener Monitor zeigt einen normalen Unity Desktop, der wie gewohnt mit Maus und Tastatur bedient werden kann.

Damit aber nicht genug. Dockt man das Smartphone an einen Fernseher erscheint die Oberfläche von Ubuntu TV. Damit ist das Smartphone nicht nur ein mobiler Begleiter sondern auch gleichzeitig ein Desktop und ein Media Center.

Ein kurzzeitig freigegebenes Video zeigt ein Motorola Smartphone mit der bereits funktionierenden Software. Das Video wurde jedoch kurze Zeit später auf “privat” umgestellt. Es gibt aber natürlich Alternativen ;)

Was in dem Video noch fehlt, aber für den “Vorgänger”, das Motorola Atrix, schon existiert, ist ein Netbook Dock für das mobile Arbeiten auf dem Desktop. Einfach eine Tastatur, ein Display und eventuell ein Akku für die Laufzeitverlängerung würde reichen.

Damit bräuchte man nur noch ein Gerät für mobiles Telefonieren, die tägliche Desktop Arbeit im Büro oder unterwegs und den gemütlichen Videoabend.

Man könnte zum Beispiel tagsüber Filme mit dem Smartphone aufnehmen, am Desktop mit dem mitgelieferten Videoschnittprogramm bearbeiten und anschließend gemütlich vor dem Fernseher bewundern.

Oder man könnte zu Hause eine Präsentation für einen Vortrag vorbereiten, im Zug auf dem Weg zum Vortrag mit dem Netbook Dock nochmal alles überprüfen und bei der Konferenz das Smartphone an einen Beamer anschließen.

Alles auf einem Gerät und alles ohne Daten von einem Gerät auf das andere kopieren zu müssen. Man muss nur hoffen, dass die Steckverbinder hochwertig und gut verarbeitet sind ;) . Ein Traum wäre natürlich noch Wireless HDMI für den Monitor und Bluetooth bzw Wireless USB für die Peripherie.

Über die Einzelheiten und technischen Daten lassen sich inzwischen ausreichend Nachrichtenplattformen aus wie Pro-Linux, Heise oder Golem. Daher erspare ich mir eine weitere Kopie ;) .

Hauptsächlich für mich selbst, aber vielleicht hilft es ja auch jemand anderem, habe ich zusammengefasst, was ich in meiner Nagios-Installation wie überwache.
Dies sind Auszüge aus der command.cfg und aus meiner devices.cfg. Zuerst folgt die Beschreibung, dann auf Linie 1 das Kommando aus der command.cfg und auf Linie 2 der Befehl aus der devices.cfg:

Prüft eine Webseite URL mit dem Unterordner SUBFOLDER ob ein bestimmtes Wort KEYWORD vorhanden ist:

$USER1$/check_http -H $ARG1$ -u $ARG2$ -s $ARG3$ -w 10 -c 20 -t 30
check_website!URL!/SUBFOLDER/!KEYWORD

Prüft die Verbindung via RDP auf eine Windows Maschine:

$USER1$/check_x224 -H $HOSTADDRESS$ -p 3389 $ARG1$
check_rdp!-w 10 -c 50

Prüft den Health-Zustand eines ESX-Servers:

/usr/bin/python $USER1$/check_esx_wbem.py https:\/\/$HOSTADDRESS$:5989 $USER3$ $USER4$
check_esx

Prüft eine Sharepoint-Installation auf dessen Erreichbarkeit:

$USER1$/check_sharepoint $HOSTADDRESS$
check_sharepoint

Prüft, ob neue Updates für das System vorhanden sind:

$USER1$/check_nrpe -H $HOSTADDRESS$ -p 5666 -c $ARG1$ -t 30
check_nrpe!check_updates

Prüft, ob die Administrationskonsole von Kaspersky Fehler aufweist:

$USER1$/check_nrpe -H $HOSTADDRESS$ -p 5666 -c $ARG1$ -t 30
check_nrpe!check_kav

Dazu ist noch der folgende Eintrag in der NSC.ini nötig:

check_kav=perl scripts\check_kav_adminkit.pl

Prüft die korrekte Installation und Konfiguration von Filezilla:

$USER1$/check_nrpe -H $HOSTADDRESS$ -p 5666 -c $ARG1$ -t 30
check_nrpe!check_filezilla

Dazu ist noch der folgende Eintrag in der NSC.ini nötig:

check_filezilla=cscript.exe //T:30 //NoLogo scripts\filezilla_security.vbs

Die passenden Scripts dazu sind teils Eigenentwicklungen und teils von exchange.nagios.org. Das Komplettpaket gibt es hier.


Das könnte dich auch interessieren:

  1. host_name ändern in Nagios: Bug? In Nagios ist es nicht so einfach, wenn ein Server...
  2. Syslog Server für ESXi Nach dem ich entdeckt hatte, dass der ESX so intelligent...

Porteus Logo 150x150Die Linux-Distribution Porteus basiert auf Slackware und ist vor allen Dingen für den mobilen Einsatz gedacht. Als Desktop-Umgebungen stehen KDE 4.8.0, Trinity, LXDE oder nun auch Xfce mit sich. Interessant ist vor allen Dingen, dass die Entwickler zwischen der 32- und 64-Bit in Sachen Desktop-Umgebung unterscheiden.

KDE 4.8.0 und Kernel 3.2.6 gibt es in der 64-Bit-Version. Trinity (KDE 3-Fork) 3.5.13rc14 und Kernel 3.1.8 dienen in der 32-Bit Variante. Linux-Kernel 3.2.6 ist aber auch bei letzterer optional verfügbar. Für beide Architekturen stehe eine spezielle Xfce-Ausgabe zur Verfügung.

Porteus 1.2 LXDE Firefox

Firefox 10

Firefox wurde eine Aktualisierung auf Version 10 spendiert. /boot/syslinux/syslinux haben die Entwickler ausgemustert, da extlinux FAT-Dateisysteme ebenfalls unterstützt. Ebenfalls gibt es Unterstützung für encrypted.dat-Container.

Darüber hinaus dient der neue Cheatcode volume=, um die Lautstärke nach dem Anmelden an die grafische Oberfläche einzustellen. Mit von der Partie ist auch der avahi-Daemon und alle Desktop wurden mit zeroconf-Unterstützung neu kompiliert.

Der proprietary-watcher-Prozess im rc.4 hilft bei Problemen mit den Grafiktreibern. Er überwacht /var/log/Xorg.0.log un lotet Fehler aus. Sollte X nicht starten, werden NVIDIA- und AMD-/ATI-Treiber entladen. Bei einem Zweitversuch nimmt das System Open-Source-Treiber.

In der KDE-/LXDE-Version kannst Du im Startbildschirm wählen, welche Desktop-Umgebung geladen werden soll. Ebenso könnte man Porteus als PXE-Server laufen lassen und damit andere Rechner im selben Netzwerk befeuern.

Porteus 1.2 KDE Language-Tool

Spracheinstellungen

Die Tastatur lässt sich bequem über einen Mausklick in der Systemleiste zwischen us, de, ru und es umschalten. Das ist angenehm, weil man nicht lange suchen muss. Wer die Sprache komplett umstellen möchte, kann dies mittels Porteus Language Selection Tool (KDE) durchführen.

Mit an Bord der KDE-/LXDE-Ausgabe befinden sich auch GNOME MPlayer, qmmp und K3b. Zusätzliche Software lässt sich in Form von Modulen einbinden. Seit Porteus 1.0 kannst Du auch den Porteus Package Manager zu Hilfe nehmen. Nun kannst Du Dir Zusatzpakete aus Porteus, Slackware, Debian, Salix und Fidoslax holen. Das Angebot ist gar nciht mal klein. Das für den Passwort-Manager abgefragte root-Passwort ist übrigens toor.

Porteus 1.2

basiert auf Slackware ...

12 Fotos

Wer eine schnelle und tragbare Linux-Distribution sucht, die viel potential zur Erweiterung bietet, kann sich Porteus mal genauer ansehen. ISO-Abbilder kannst Du von der Projektseite herunterladen: Porteus-v1.2-rc1-i486.iso (251 MByte), Porteus-XFCE-v1.2-rc1-i486.iso (207 MByte), Porteus-v1.2-rc1-x86_64.iso (274 MByte), Porteus-XFCE-v1.2-rc1-x86_64.iso (202 MByte)


Jürgen (jdo) für bitblokes.de, 2012. | Permalink | Twitter

ReactOS Logo 150x150Die Entwickler der Betriebssysteme ReactOS und Haiku arbeiten laut eigener Aussage schon Jahre zusammen und helfen sich aus, wann immer sie können. Nun haben die RactOSler etwas Nachbarschaftshilfe in Sachen USB bekommen.

Der USB-Stack für ReactOS wurde von Michael Martin gestartet und Johannes Anderwald hat sich dem Projekt schnell angeschlossen. Nun konnten die Entwickler Danks des Haiku USB Stack große Fortschritte erzielen.

ReactOS USB

ReactOS bekommt USB-Stack (Quelle: reactos.org)

Viele der Definitionen und Datenstrukturen konnten die Entwickler direkt von Haiku übernehmen. Ebenso konnte Anderwald von Haikus Code lernen und hat ein besseres Verständnis für das Verhalten von USB-Geräten bekommen. In der USB-Spezifikation sei nicht immer alles klar. Nachdem er sich durch den Code gewurstelt hatte, gab es wiederum Feedback an Haiku. Schön, wenn kleine Projekte zusammenarbeiten und voneinander profitieren können.

ReactOS ist ein Open-Source-Betriebssystem. Es wird mit dem Ziel entwickelt, binärkompatibel zu Windows zu sein.

ReactOS 0.3.14

Open-Source und will binärkompatibel zu Windows werden ...

8 Fotos


Jürgen (jdo) für bitblokes.de, 2012. | Permalink | Twitter

Tux Logo 150x150Das Dateisystem Btrfs schafft es derzeit immer wieder in den Mittelpunkt von Diskussionen. Zum einen unterstützen es immer mehr Linux-Distributionen nativ, zum anderen wollen es die Fedora-Entwickler in einer der nächsten Versionen unbedingt zum Standard-Dateisystem machen. Die neuesten Meldungen sind, dass Btrfs LZ4-Kompression unterstützt und es nun doch eine fsck-Tool zum Reparieren des Dateisystems gibt.

Dies wurde bisher allerdings nicht herausposaunt und sehr prominent mitgeteilt. Ein Grund dafür ist wohl, dass die Entwickler von einem Einsatz derzeit abraten. Also das Tool ist da, aber noch unbrauchbar: btrfs-progs. Es sagt wohl schon viel, wenn ein Zweig “dangerdonteveruse” genannt wird. Nun hält dieser Zweig die theoretische Möglichkeit, ein Btrfs-Dateisystem zu reparieren oder im jetzigen Stadium wohl zu verschlimmbessern.

Auch bei Phoronix berichten Leute, dass sie das Reparier-Tool genau einmal einsetzen konnten und danach war das Dateisystem im Eimer. Aus diesem Grund würden die btrfs-progs nicht aktiv beworben, weil es für den Nutzer derzeit nichts tauge. Einen Zeitplan, wann die btrfs-progs fertig sei sollen, gibt es auch noch nicht. Lassen wir uns also überraschen.


Jürgen (jdo) für bitblokes.de, 2012. | Permalink | Twitter

21. Februar 2012

Es wird vorrausgesetzt, dass sie Grund-Kenntnisse der Shell besitzen. Das ~# Symbol steht für eine Root-Shell.

Schon seit langem setzen viele Webserverbetreiber auf den Webserver nginx der sich durch leichte Konfiguration, hohe Geschwindigkeit und hohe Standfestigkeit auszeichnet.

Diverse/Dubiose russische Seiten benutzen ihn,  darum muss er gut sein.

nginx kommt aus Russland. Das macht ihn deswegen auch weniger anfällig auf eine Flut von Clients (*nach oben schielen*).

Da sich ein ordentlicher Webserver mit Caching und co. nicht wirklich mit Django Development Webserver betreiben lässt, nehme man einen normalen. Hier habe ich mich für nginx entschieden.

Dazu muss man erstmal folgende Pakete installieren:


Debian:
~# aptitude install nginx python-fup
Ubuntu:
~# sudo apt-get install nginx python-fup
Archlinux:
~# sudo pacman -S nginx python-fup

Hat man das erledigt, kopiert man das komplette Django Projekt in das Web-Verzeichnis (hier der Standard: /usr/share/nginx/http/). Die einzelnen media-Ordner wie static/, media/ oder templates/ sollten dabei ganz oben in der Struktur sein, oder mindestens über dem Projektverzeichnis.

Jetzt noch einen neuen Nutzer nginx anlegen und diese Konfigurationsdatei laden: http://pastebin.com/283QyueE

Die Konfigurationsdatei wird unter /etc/nginx/conf/nginx.conf gespeichert.

Folgende Kommandozeile ausführen:


~# python2 manage.py runfcgi host=127.0.0.1 port=8080 --settings=settings

 Danach läuft ein FastCGI Server und der kann, wie in der Konfigurationsdatei beschrieben, angesteuert werden.

Danach sollte alles laufen. Jetzt gucken, ob das mit den Pfaden noch alles klappt, ansonsten ausprobieren.

Wenn man Hilfe braucht, kann man sich folgende Links anschauen, oder mich einfach fragen. Bei Fehlern bitte freundlich darauf hinweisen.

Links:

Nachdem der Suchmaschinen-Proxy Scroogle.org (Artikel zu Scroogle) über einen längeren Zeitraum keine Ergebnisse von Google mehr liefern konnte und mittlerweile offline zu sein scheint, habe ich mich auf die Suche nach einer Alternative gemacht.

Alternative Dienste wie www.duckduckgo.com und www.ixquick.com liefern leider keine (reinen?) Google Ergebnisse, auf deren (zumindest gefühlte) Qualität ich nicht verzichten möchte.

Jetzt habe ich Startpage.com entdeckt, hierbei handelt es sich um einen Dienst von Ixquick.com, welcher lediglich Google Ergenisse liefert. Die Ixquick Datenschutzerklärung klingt vernünftig, es ist (im Gegensatz zu Scroogle) möglich die Google Bildersuche zu nutzen und als weiteren Service kann Startpage, wie auch Ixquick, als Proxy  für den Webseitenbesuch genutzt werden.

Bei Interesse kann Startpage über einen Link unterhalb des Suchfeldes zu Firefox bzw. Chromium/Chrome hinzugefügt werden.

Update [22.02.2012] Jetzt ist es amtlich ‘Scroogle ist tot’. Sehr schade.


Apache Logo 150x150Kann sich eine Gruppe wie die Apache Software Foundation (ASF) zum 17. Geburtstag ein schöneres Geschenk machen als eine neue große Version des Flaggschiffs Apache HTTP Server auszugeben? Wohl kaum …

Mehr als 400 Millionen Webseite treibt der populärste Webserver unserer Zeit laut Netcraft an. Seit April 1996 ist Apache die unbestrittene Nummer 1 in Sachen HTTP-Server.

Laut eigener Aussage bringt Version 2.4 revolutionäre Verbesserungen. Nicht nur Anwender, sondern auch Entwickler und Systemadministratoren profitieren von der neuen Ausgabe. Viele neue Module sind hinzugekommen und bestehendes wurde verbessert.

Als Highlichts stellen die Entwickler folgendes heraus:

  • Verbesserte Geschwindigkeit und weinger Ressourcen-hungrig
  • Verminderter Speicherverbrauch
  • Asynchrone Unterstützung für I/O
  • Dynamische Revers-Proxy-Konfiguration
  • Verfeinerte Möglichkeiten in Sacehn Timeout und Ressourcen-Limitierung
  • Verbesserte Caching-Unterstützung speziell für Server mit hohem Datenverkehr

Weiterhin soll sich das Analysieren von Problemen vereinfacht haben und Administratoren können die Software flexibler konfigurieren. Die Dokumentation wurde auch gründlich überarbeitet und Authentifizierung und Autorisation sind leistungsfähiger geworden. Wer es ganz genau wissen möchte, findet hier eine Übersicht mit allen neuen Funktionen.

Da kann man eigentlich nur zum Geburtstag und gleichzeitig zur neuen Version gratulieren. Vielen Dank liebes Apache-Team, dass Du das Internet möglich machst … ;)


Jürgen (jdo) für bitblokes.de, 2012. | Permalink | Twitter

Catacomb Snatch Map Editor v0.1_001 Catacomb Snatch Map Editor v0.1_002 Catacomb Snatch Map Editor v0.1_003 Catacomb Snatch Map Editor v0.1_004

Das kleine Spiel Catacomb Snatch hat in den letzten Tagen viel von sich Reden gemacht: Die Spieleschmiede Mojang (u.a. Minecraft) hat es innerhalb von 60 Stunden während des “Humble Bundle Mojam” erstellt und die Entwicklung mit einem Livestream übertragen.

Zwar ist Catacomb Snatch alles andere als vollständig – es gibt nur ein Level, die Roboter verhalten sich noch außerordentlich dumm und verschiedene Platzhalter-Sprites lassen deutlich auf den Zeitdruck schließen – dennoch hat das Spiel eine gewisse Beliebtheit erlangt. Da Mojang den Sourcecode verfügbar gemacht hat, gibt es mittlerweile mindestens einen Fork, der die Entwicklung fortführt. Eine leicht veränderte Steuerung, die Behebung einiger Fehler und die neuen Sprites sind durchaus einen Blick wert. Ein weiterer Fork, der u.a. Maussteuerung implementiert, findet sich hier.

Weil auch der Fork noch immer nur das eine, alte Level bietet, habe ich einen kleinen Leveleditor geschrieben. Da Catacomb Snatch Tile-Maps verwendet, lassen sich die Level zwar auch mit jedem Grafikprogramm bearbeiten, allerdings soll der Leveleditor das Bearbeiten, Laden und Speichern der Level etwas erleichtern. Daher ist er auch in der Lage, die Level direkt in das Java-Archiv von Catacomb Snatch zu schreiben.

Natürlich ist der Editor noch nicht sonderlich ausgereift – so werden beispielsweise keine Backups erstellt und auch auf die gewohnten “Sind sie sicher…?” Nachfragen muss der Nutzer noch verzichten. Wer schnell ein paar neue Karten für Catacomb Snatch entwerfen und testen möchte, wird damit aber vermutlich durchaus leben können.

Die aktuelle Version lässt sich jeweils über GitHub beziehen. Dort besteht auch die Möglichkeit, Probleme zu melden.

KDE 4 LogoAlte Hardware bis in alle Ewigkeiten zu unterstützen, bringt einen gewissen Aufwand mit sich. Genau darüber macht sich Martin Gräßlin in seinem Blog Gedanken – im bezug auf KWin.

Auslöser dafür war Apples Ankündigung, dass sie in der nächsten Ausgabe von Mac OS X die Unterstützung für diverse GPUs einstellen. Somit hat er sich gefragt, wie viel Aufwand man in KWin betreibe, um alte Grafik-Hardware weiterhin zu unterstützen.

Man solle aber im Hinterkopf behalten, dass “Altlasten” und “langsamere Hardware” zwei paar unterschiedliche Stiefel sind.OpenGL ES 2.0 Hardware ist eine Verbesserung, weil der meiste Code mit dem Backend von OpenGL 2 geteilt würde. OpenGL 1.0 habe hingegen einen komplett anderen Code-Pfad. Ein Optimieren für langsamere Hardware kommt dem gesamten System zu Gute, während ein Optimieren für Altlasten dem System schaden könnte.

Bis vor kurzer Zeit hat Mesa OpenGL 2 nicht unterstützt. Dieser Umstand gehört allerdings der Geschichte an. Hardware, die OpenGL 2 also nicht unterstützt, fehlt es schon von Grund auf an gewissen Funktionen. ATI / AMD unterstützt OpenGL 2 seit der R300. Diese wurde im Jahre 2002 veröffentlicht. Auf NVIDIA-Seite ist die OpenGL-2-Unterstützung seit dem Jahre 2004 vorhanden und Intel bringt dies seit 2006 mit sich. Diese Informationen hat Gräßlin aus dem KWin-Code.

Seit also mindestens 6 Jahren bringen die drei großen Grafikchip-Hersteller Unterstützung für OpenGL 2 mit sich. Daraus ergibt sich auch ein weiteres Problem – Testhardware an sich. Weiterhin gruselt sich Gräßlin davor, Code auf einem Uralt-System nur wegen Testzwecken zu kompilieren.

Lange Rede, kurzer Sinn: Unterstützung für Altlasten erhöht die Komplexität und den Wartungs-Aufwand für OpenGL-1-Hardware, die man nicht mal testen kann. Auch mache weder Wayland noch Qt5 auf der alten Hardware Sinn.

Die logische Konsequenz ist nun Mal, OpenGL 1.x in die Tonne zu treten. Damit beschwöre er aber gleichzeitig einen Konflikt mit einigen Benutzergruppen herauf, die weiterhin gerne Unterstützung für diese Altlasten hätten.

Ein größeres Problem stelle allerdings der proprietäre ATI-Treiber (Catalyst oder fglrx) dar. Ein entfernen der OpenGL-1.x-Unterstützung würde auch das Ende der Unterstützung aller fglrx-betriebenen Systeme bedeuten. Grund ist, dass das indirekte Rendering der verfügbaren API auf OpenGL 1.x begrenzt ist, auch wenn die GPU OpenGL 4 unterstützt. Allerdings habe der radeon-Treiber überhaupt keine Probleme mit OpenGL 2 auf der selben Hardware. Somit würde es Gräßling die Unterstützung für den proprietären Treiber ohne mit der Wimper zu zucken entfernen.

Eine möglich und gute Lösung sind die llvmpipe-Treiber in Mesa. Zumindest Fedora wolle die llvmpipe-Treiber für GNOME Shell einsetzen. Sobald Mesa 8.0 auf seinem Debian-Testsystem eintrifft, wird er die Möglichkeiten von llvmpipe für KWin evaluieren. Wenn er mit den Ergebnissen zufrieden ist, könnte dies das Ende von OpenGL 1.x in KWin besiegeln.

Irgendwie hat er auch Recht. Es gibt genug Fenster-Manager, die kein Compositing brauchen und auch weniger stressig für ältere Hardware sind. Xfce und LXDE sind sehr gute Alternativen. Somit sollte man den Fortschritt von KWin nicht durch Altlasten behindern und den Wartungs-Aufwand lieber in die Weiterentwicklung und Verbesserung stecken, oder?


Jürgen (jdo) für bitblokes.de, 2012. | Permalink | Twitter

Das Spiel Catacomb Snatch gefällt mir ja richtig gut (wenn auch etwas schwer?!). Noch besser gefällt mir, dass der Code zugänglich gemacht wurde. Und dass dieser recht wenige externe Libraries verwendet, so dass man viel davon lernen kann.
An der Steuerung im Spiel finde ich nur etwas ungewohnt, dass die Schussrichtung immer beibehalten wird, wenn man dauerfeuert. Da es sowieso viel leicher ist, den Spieler mit den Tasten zu steuern und mit der Maus zu schießen, habe ich mal eine kleine Änderung im Code vorgenommen…

Ladet euch die Änderung hier als ZIP herunter. Darin sind zwei Klassen im Original und jeweils die gepatchte Klasse dazu. Übernehmt euch die Änderungen in euren Quellcode und probiert es aus.

Vermutlich wird die Änderung im Multiplayer-Modus noch nicht ganz passen.

Allgemein würde ich mich über Feedback freuen. Funktioniert die Änderung wie erwartet? Habt ihr Verbesserungsvorschläge dazu?

Wie der Quellcode zu verwenden ist, hat Mojang kürzlich kurz und bündig erklärt. Habt ihr erst einmal das Eclipse-Projekt eingerichtet, könnt ihr natürlich eigene Änderungen vornehmen und das Spiel als JAR-Paket exportieren.

Ach: übrigens habe ich auch noch einen Patch bzw. eine Korrektur zum einem Fehler, der auftritt, wenn ein Harvester (der “Staubsauger”, der 300 Punkte kostet) zerstört wird (und vorher schon etwas eingesammelt hat). Der Fehler sieht dann so aus:

Exception in thread "Thread-3" java.lang.NullPointerException
	at com.mojang.mojam.entity.building.Harvester.dropAllMoney(Harvester.java:165)
	at com.mojang.mojam.entity.building.Harvester.render(Harvester.java:142)
	at com.mojang.mojam.level.Level.render(Level.java:408)
	at com.mojang.mojam.MojamComponent.render(MojamComponent.java:268)
	at com.mojang.mojam.MojamComponent.run(MojamComponent.java:224)
	at java.lang.Thread.run(Unknown Source)

Ihr könnt die Anpassung hier herunterladen (funktioniert nach dem selben Schema, wie oben beschrieben).

Viel Spaß!

Parted Magic LogoAuch wenn der Name anders vermuten lässt, ist Parted Magic mittlerweile mehr als nur ein mobiler Partitionierer. Die Distribution hat sich schon lange zu einem guten Datenrettungs-Tool entwickelt. Version 2012_2_19 bringt in erster Linie Updates und Bugfixes mit sich.

Zu den wichtigsten Änderungen gehören die Aktualisierungen Clonezilla 1.2.12-10, TrueCrypt 7.1, Firefox 10.0.1 und Linux-Kernel 3.2.6.  Ebenso mit an Bord befinden sich ddrescue 1.15, e2fsprogs 1.42, hdparm 9.38 und ntfs-3g 2012.1.15. TestDisk fehlt ebenso wenige wie G4L (Ghost for Linux), SuperGrubDisk, Midnight Commander und Leafpad. Es sind jede Menge kleine und nützliche Tools an Bord.

Parted Magic 2012_2_19

Das mobile Datenrettungs- und Partitions-Kommando ...

8 Fotos

Parted Magic unterstützt die Dateisysteme btrfs, ext2, ext3, ext4, fat16, fat32, hfs, hfs+, jfs, linux-swap, ntfs, reiserfs und xfs. nativ. Als Minimal-Anforderungen geben die Entwickler einen i586-Prozessor und 312 MByte RAM im Live-Modus an.

Parted Magic 2012_2_19 Clonezilla und G4L (Ghost for Linux)

Clonezilla und G4L (Ghost for Linux)

Mit Parted Magic kannst Du externe und interne Festplatte formatieren, ändern, vergrößern, verkleinern und partitionieren. Durch die enthaltenen Tools ist auch ein komplettes Klonen von Massenspeichern möglich. Dies wiederum lässt sich auch für Backups (Datensicherungen) einsetzen.

Die Festplatten und der Arbeitsspeicher lassen sich auf Fehler untersuchen. Sogar kleine Benchmark-Tests sind mit Parted Magic möglich. Ein sicheres Löschen von Daten lässt sich mit der Linux-Distribution ebenfalls durchführen. Daten von Systemen, die einen Start verweigern, können sich mittels Parted Magic unter Umständen retten lassen. Ein System wie Parted Magic kann in der Sammlung eines IT-Spezialisten oder Systemadministrators auf keinen Fall schaden.

Das Betriebssystem läuft komplett von CD und es ist keine Installation notwendig. Parted Magic wird derzeit in drei Variationen ausgegeben. Neben der Standard-Ausgabe gibt es ein ISO-Abbild speziell für i486-Architekturen. Ebenfalls ist ein separates Image für x86_64 verfügbar. Du kannst die ISOs kostenlos im Download-Bereich der Prokektseite herunterladen: pmagic_2012_2_19.iso (187 MByte), pmagic_2012_2_19_i486.iso (187 MByte), pmagic_2012_2_19_x86_64.iso (188 MByte)

Wer Parted Magic auf einem USB-Stick mit sich herumtragen möchte, kann das Betriebssystem via UNetbootin auf den tragbaren Massenspeicher überspielen. UNetbootin befindet sich auch oft in den Repositories der Linux-Distribution Deiner Wahl. Es ist aber auch für Windows und Mac OS X verfügbar. In Parted Magic ist UNetbootin schon enthalten.


Jürgen (jdo) für bitblokes.de, 2012. | Permalink | Twitter

Die Gnome-Shell wirkt derzeit wie eine der futuristischsten und stylischsten Oberflächen in der Linuxwelt. Doch als ich mich das erste Mal eingehender mit der Gnome-Shell beschäftigte, hatte ich die ganze Zeit das Gefühl: „Das kennst du doch schon irgendwoher, das kommt dir so bekannt vor“. Inzwischen ist die Erkenntnis nach langer Reise eingetroffen: Na klar – von Fluxbox!

Unter den Designern der Gnome-Shell muss es den ein oder anderen Fluxbox-Fan gegeben haben, auf diesen Gedanken könnte man kommen, wenn man sich einmal anschaut, wie die Gnome-Shell und Fluxbox den Desktop verwalten.

Der kleine Fenstermanager Fluxbox ist im Gegensatz zur ausgewachsenen Desktop-Umgebung wie Gnome zwar eben nur ein Fenstermanager, der um ein paar nützliche Elemente erweitert wurde, doch Fluxbox stellt bisweilen frappierend ähnliche Konzepte zur Verwaltung des Desktops bereit – und das schon seit über einem Jahrzehnt, jahrelang vor der Gnome-Shell. Zugespitzt könnte man formulieren: Fluxbox war seiner Zeit voraus – oder die Gnome-Shell ist spät dran. So radikal neu, wie die Gnome-Shell von vielen derzeit wahrgenommen wird, ist sie damit also eigentlich gar nicht. Die Gnome-Shell hat sogar mehr mit Fluxbox gemeinsam als mit seinem eigenen Vorgänger Gnome 2.

Auffallende Konzeptähnlichkeit

Die größte Gemeinsamkeit von Fluxbox und Gnome-Shell ist die Etablierung einer zusätzlichen Ebene zur Bedienung des Desktops. Um auf seine Programme und Dateien zugreifen zu können, muss man sowohl bei der Gnome-Shell als auch bei Fluxbox in eine Art zweiten Modus wechseln. Bei Gnome mit der Super-Taste oder einem Klick bzw. Berühren der oberen linken Ecke, bei Fluxbox ebenfalls mit der Super-Taste oder einem Klick auf den Desktop.


Die Standard-Ansicht der Gnome-Shell


Die Standard-Ansicht von Fluxbox

Lediglich die graphische Umsetzung dieser Idee ist unterschiedlich: während Gnome mit eleganten Animationen den gesamten Bildschirm für einen aufwändig gestalteten Alternativmodus nutzt, ist es bei Fluxbox ein simples Menü, das sich über den normalen Desktop legt – ein Menü, das bei Bedarf jedoch ebenfalls den gesamten Monitor einnehmen kann. Auf graphische Schmankerl verzichtet aber auch Fluxbox nicht. Animationen sucht man vergeblich, aber Menüs und Leisten verfügen je nach verfügbarer Graphikleistung des Rechners über echte oder falsche (simulierte) Transparenz.

Ebenfalls auffällig ist der beiderseitige Verzicht auf das klassische Panel oder ein Dock – beide haben im Normalmodus zwar eine schmale Leiste, dort lassen sich aber keine Programmstarter ablegen. Bei Fluxbox dient die Leiste zur Anzeige, auf welchem Desktop man sich gerade befindet, dazu kommen noch eine klassische Fensterliste und ein Traybereich. Nicht mal einen „Start-Button“ gibt es. Den gibt es dafür noch bei der Gnome-Shell unter dem Namen „Aktivitäten“, dazu ebenfalls die Anzeige des aktiven Programms und noch ein paar Statusinfos zusätzlich. Die Uhrzeit zeigen beide ebenfalls an.

Will man ein Programm direkt aufrufen, tippt man in der Gnome-Shell nach Aktivierung des Übersichtsmodus einfach drauflos; bei Fluxbox zaubert die klassische Tastenkombination Alt+F2 ein Eingabefeld herbei.


Der „Übersichtsmodus“ bei Fluxbox: ein variables Menü

Ansonsten folgen beide dem Prinzip der Reduzierung aufs Wesentliche, der Maximierung der Übersichtlichkeit. Fluxbox wirkt dabei sogar noch spartanischer als die Gnome-Shell, da nur die wirklich allernötigsten Elemente vorhanden sind. Einen Gnome-Luxus wie etwa die Anzeige des eingeloggten Benutzers oder eben eine Aktivitäten-Schaltfläche leistet man sich bei Fluxbox nicht. Dafür gibt es bei „der Box“ noch eine Taskliste im Normalmodus, während Gnome nur das jeweils aktuelle Programm anzeigt.

Fensterverwaltung

Während auch die Gnome-Shell das von Mac OS und neuerdings auch Windows oder Unity bekannte Zusammenfassen von Programmfenstern hinter nur einem Programm-Icon im Panel eingeführt hat, kann Fluxbox die Fenster tatsächlich zusammenfassen: Mehrere Fenster desselben Programmes teilen sich dann nicht nur einen Eintrag in der Taskleiste bzw. dem Panel, sondern haben auch eine gemeinsame Fensterleiste – mitsamt Bedienknöpfen. Die Bedienelemente gelten dann nur für das aktive Fenster innerhalb der Programmgruppe, der Schließen-Button schließt dann z.B. nur das aktuell ausgewählte Fenster, nicht die gesamte Programminstanz.


Aus 2 mach 1: Gruppierte Fenster unter Fluxbox

Beim Fensterwechsel ist Fluxbox mal wieder noch spartanischer als Gnome: auch hier kommt man zwar mit Alt+Tab durch die Programme bzw. Fenster, allerdings ohne das vorherige Einblenden der Programmnamen. Fluxbox springt einfach direkt durch die einzelnen Fenster. Da kann sich Gnome sogar noch eine Scheibe Usability abschneiden, denn anstatt einer Vorschau sieht man dadurch bei Fluxbox gleich das komplette Fenster samt Inhalt in voller Größe. Alternativ hat Flubox statt einem Übersichtsmodus für alle geöffneten Fenster ein nach Arbeitsflächen gegliedertes Fensterlistenmenü.

Virtuelle Desktops

Bei der Verwaltung mehrerer Arbeitsflächen setzen sowohl Fluxbox als auch die Gnome-Shell voll auf Automatismen: Gnome ist jedoch recht starr dabei, denn es legt bei Bedarf einfach stets einen neuen Arbeitsbereich an, ohne dass der Nutzer dies großartig beeinflussen kann. Wo Gnome automatisch, aber willkürlich die Arbeitsflächen neu anlegt, kann Fluxbox von vornherein automatisch und gezielt zugleich Fenster von Programmen auf bestimmte Desktops schicken und sogar zusammenfassen („starte Pidgin und seine Unterfenster immer auf Desktop 3“, „starte alle Office-Dokumente immer in nur einem Tab auf Desktop 2“). Dies legt man ein einziges Mal fest und findet seine Programme und Dokumente dann ordentlich sortiert immer auf den gewohnten Desktops.

Fluxbox kann mehr als die Gnome-Shell

Es klingt paradox, aber der kleine und zu Anfang kompliziert wirkende Fenstermanager Fluxbox kann stellenweise deutlich mehr als die Gnome-Shell und gibt sich benutzerfreundlicher. Neben dem schon genannten Teilen der Titelleisten sind es vor allem die Details, mit denen Fluxbox punkten kann.

Auffallend ist, dass Fluxbox grundlegende Konfigurationsoptionen vor dem Benutzer nicht versteckt: auch bei Fluxbox gibt es nicht viele sichtbare Einstellungen, die wichtigsten Einstellungen, die dem Nutzer Auswahlmöglichkeiten geben, sind aber bequem einfach über das normale Menü mit der Maus zu erreichen, erst für umfassendere Optionen muss man in Textdateien editieren. Dies erfordert allerdings eine etwas höhere Einarbeitungszeit, Fluxbox nimmt einem die Konfiguration nicht ab. Im Gegensatz dazu trifft Gnome eine Vorauswahl für den Nutzer, versteckt den Rest – und man muss dann hier die Zeit aufwenden, um die versteckten Optionen herauszufinden oder ein Zusatztool zu installieren und seine Gnome-Shell zu „tweaken“. Unterm Strich kommt dabei dasselbe heraus.


Die Einstellungen bei Fluxbox werden in einem Menü vorgenommen

Auch lässt Fluxbox sich etwa so konfigurieren, dass man für einen Klick zum Aktivieren des Übersichtsmodus/Menüs alle vier Ecken nutzen kann, nicht bloß die linke obere. Auch bei den Schaltflächen der Fenster ist man völlig frei; standardmäßig kommt Fluxbox mit der von Windows bekannten Reihenfolge (Minimieren, Maximieren und Schließen auf der rechten Seite), aber man kann auch nur das Schließen-Kreuz haben, die Buttons auf der linken Seite – oder auch alles durcheinander. Die Standardleiste/Taskleiste kann automatisch ausgeblendet werden.

Anders als Gnome braucht Fluxbox auch keinen Fallback-Modus, wenn die Graphikkarte nicht ausreicht, denn Fluxbox geht den umgekehrten Weg: Die Effekte (also Transparenz) sind standardmäßig deaktiviert und können nach Belieben eingeschaltet werden: Unterstützt der Rechner kein Compositing, stellt Fluxbox seine Menüs mit simulierter (unechter) Transparenz dar, ist jedoch entsprechende Graphikleistung vorhanden und ein Compositing-Manager aktiv, schaltet Fluxbox automatisch auf echte Transparenz um und stellt Menüs und wahlweise auch Programm-Fenster in Echtzeit durchsichtig dar.


Das Hauptmenü von Fluxbox mit echter Transparenz

Bei der Optik ist Fluxbox unschlagbar: Während Gnome standardmäßig im nichtänderbaren Einheitsdesign daherkommt, darf der Fluxbox-Nutzer von Beginn an zwischen knapp 20 Themes wählen. Zusätzlich stehen Hunderte von von Nutzern geschaffenen Stilen bereit (auch hier nebenan), die sich auch problemlos den eigenen Wünschen anpassen lassen.

Erweiterungen

Gnome lässt sich inzwischen gut durch passende Erweiterungen modifizieren, allerdings müssen diese auf die jeweilige Gnome-Shell abgestimmt sein. Auch Fluxbox lässt sich erweitern, nicht mit speziellen Erweiterungen, aber mit für Fluxbox entworfenen Ergänzungen, z.B. einem Pager (fbpager) oder einem alternativen Panel, das auch Programmicons unterstützt (fbpanel). Prinzipiell (der Eigenschaft als Fenstermanager geschuldet) stehen jedoch alle möglichen Programme bereit, mit denen man Fluxbox ausbauen kann, z.B. lassen sich die Desktops (die eigentlichen Arbeitsflächen) von XFCE oder LXDE wunderbar mit Fluxbox kombinieren – selbst KDEs Plasma-Desktop lässt sich unter Fluxbox nutzen. Außerdem hat Fluxbox noch einen Tray-Bereich und unterstützt auch Dock-Apps. Dock-Apps und traybasierende Programme lassen sich daher ebenfalls für das Aufmotzen von Fluxbox verwenden. Nicht zuletzt – und das ist auch einer der Gründe, weshalb Fluxbox bei seinen Fans beliebt ist – lässt sich das Fluxbox-Menü völlig frei bestücken, es wird nichts „vorserviert“.

Ein kühnes Fazit

Bei all den Parallelen könnte man entweder die Gnome-Shell als das bessere Fluxbox oder aber Fluxbox als die bessere Gnome-Shell bezeichnen – je nach Standpunkt. Doch täte man beiden damit Unrecht, denn Fluxbox ist flotter und bietet mehr Möglichkeiten als die Gnome-Shell, andersherum ist die Gnome-Shell komfortabler, sieht moderner aus und bringt ein ganzes Arsenal an Software mit, statt nur ein aufgebohrter Fenstermanager zu sein.

Natürlich kann man nicht ernsthaft eine Desktopumgebung wie Gnome mit einem Fenstermanager wie Fluxbox vergleichen – reduziert man aber einmal den Blick allein auf die Gnome-Shell, dann ist diese von Fluxbox gar nicht so weit entfernt – oder umgekehrt. Die Ähnlichkeiten in der Bedienphilosophie sind überraschend. Und Gnome-Programme lassen sich natürlich auch unter Fluxbox betreiben.

Als Essenz lässt sich sagen, dass die Gnome-Shell über mehr Automation und Vorauswahlen verfügt, während der Nutzer bei Fluxbox die volle Kontrolle behält – zum Preis einer manuell nötigen Konfiguration. Das Editieren von Textdateien ist zum Zwecke der umfassenden Kontrolle zwar kaum zu überbieten, aber natürlich nicht mehr zeitgemäß. Das Nachinstallieren von Programmen, um Einstellungen überhaupt erst vornehmen zu können, aber auch nicht.

Gnome-Shell und Fluxbox sind schlicht, Fluxbox kann besser an persönliche Bedürfnisse angepasst werden, die Gnome-Shell nimmt dem Nutzer dafür diese Arbeit fast ganz ab. Fluxbox verbindet das nun auch in der Gnome-Shell vorhandene Bedienprinzip mit Elementen der klassischen Desktops (Taskleiste, klassisches Menü, Traybereich). Wer die Idee hinter der Gnome-Shell interessant findet, auf manch typisches Element eines klassischen Desktops aber nicht verzichten und größtmögliche Flexibilität möchte, für den kann ein Blick auf Fluxbox daher durchaus lohnen.

PCLinuxOS Phoenix Edition Logo 150x150Die Entwickler der Distributon PCLinuxOS haben eine Wartungs-Ausgabe der “Phoenix Edition” zur Verfügung gestellt. Version 2012-02 bringt Xfce 4.8.3 als Desktop-Umgebung mit sich und setzt auf Kernel 2.6.38.8. Weitere Kernel-Varianten gibt es im Repository. Der PAE-Kernel ist für Rechner mit mehr als 4 GByte Arbeitsspeicher gedacht. Ebenso gibt es einen BFS-Kernel für maximale Desktop-Performance und einen Standard-Kernel mit aktiviertem Group Scheduling.

Darüber hinaus haben die Entwickler dem X.Org-Server ein Update auf Ausgabe 1.10.4 spendiert. Mesa ist als Version 7.11.2 und libdrm als 2.4.26 verfügbar. Das Update verspricht bessere Geschwindigkeit und 3D-Unterstützung für die meisten Intel-, NVIDIA- und AMD-/ATI-Grafikkarten. Die aktuellen AMD-/ATI- und NVIDIA-Treiber befinden sich auf der Live-CD und werden automatisch vom System konfiguriert. Die schlechten Neuigkeiten sind laut eigener Aussage, dass viele alte Rechner mit ebenso angestaubten Grafikkarten möglicherweise nicht mehr richtig funktionieren. Das liegt an den ausgemusterten X.Org-Grafiktreibern.

PCLinuxOS Phoenix Edition 2012-02

Mit Xfce 4.8 ...

16 Fotos

GCC und glibc sind als 4.5.2 und 2.13.4 vorhanden. RPM wurde ebenfalls ein Update spendiert und ist nun als Ausgabe 4.8.1 vorhanden. Der Paket-Manager Synaptic und apt-get wurden auf einen neuen Stand gebracht, um mit den neuen RPM-Paketen zu funktionieren. yum und yumex sollen in den kommenden Wochen als alternative Paket-Manager zur Verfügung stehen.

PCLinuxOS Phoenix Edition 2012-02 Desktop

Theme: gebürstetes Metall

PCLinuxOS “Phoenix Edition” 2012-02 hat einen komplett neuen Anstrich bekommen. Es gibt ein neues “gebürstetes Metall”-Theme, das man auch auf GRUB, Plymouth, GDM, gfxboot und die Applikations-Splash-Screens übertragen hat. Ältere Themes stehen optional zur Verfügung.

Recht angenehm ist, dass gleich während des Startens der Live-CD die Einstellung des Tastatur-Layouts möglich ist. Das erspart wildes Suchen im Adlerkreissystem der entsprechenden Zeichen. Das root-Passwort zum anmelden ist root. Wenn Du allerdings eine gewisse Zeit wartest, meldet sich das System im Live-Modus selbständig als Gast an.

PCLinuxOS Phoenix Edition 2012-02 LibreOffice-Manager

LibreOffice-Manager

Die enthaltene Software ist gut gewählt. Es befinden sich zum Beispiel Firefox 10.0.0.2, Thunderbird 10.0.0.2, Dropbox, Transmission und Pidgin an Bord. BleachBit hilft beim Aufräumen von Dateileichen oder beim Löschen von Cookies und des Browser-Cache. Sobald das System installiert ist, kannst Du mittels LibreOffice Manager die beliebte Bürosoftware-Sammlung in Version 3.5 sehr bequem nachinstallieren.

Ebenso mit an Bord befinden sich ISO Master, DeVeDe und Xfburn. Zum Abspielen von Musik dient Listen Music Player. Die Video-Player der Entwickler-Wahl sind Gxine und Xfmedia. Mein Favorit, VLC, ist in den Repositories vorhanden. Mit dem Emerald Theme Manager und dem CompizConfig Settings Manager lassen sich 3D-Effekte auf den Desktop zaubern.

Das System lässt sich ganz im PCLinuxOS-Stil bequem über das Controll Center administrieren. Zugriff auf tausende weitere Pakete ermöglicht der Paket-Manager Synaptic.

PCLinuxOS Phoenix Edition 2012-02 Installation

Installations-Wizard

Eine Installation lässt sich zwar nur in Englisch durchführen, was aber bei dem wirklich einfach zu benutzendem Wizard kein Problem ist. Nach dem Einspielen erfolgt ein Neustart. Dann darfst Du vor Erstgebrauch eine Zeitzone wählen und bestimmen, ob sich der Rechner automatisch via NTP die aktuelle Zeit aus dem Internet holen soll. Im Anschluss erfolgt die Vergabe des root-Passworts und das Anlegen eines Benutzer-Kontos.

Das klingt ja alles super, aber wo ist der Haken? Es gibt immer einen Haken, richtig? Ja, leider ist das auch hier so. Es gibt keine einfach Möglichkeit, das System auf Deutsch einzustellen. LibreOffice lässt sich zwar Deutsch installieren und es befinden sich auch die Pakete firefox-de und mozilla-thunderbird-de im Repository, aber das System an sich möchte nicht Deutsch sprechen. Zumindest habe ich es nicht gefunden. Mich persönlich stört das weniger, ich wollte es aber erwähnt haben.

PCLinuxOS Phoenix Edition 2012-02 ist eine schöne und schnelle Linux-Distribution, mit der auch ein Anfäger zurecht kommt. Ein ISO-Abbild für die Architektur x86 kannst Du im Download-Bereich der Projektseite herunterladen: pclinuxos-phoenix-2012-02.iso (675 MByte)


Jürgen (jdo) für bitblokes.de, 2012. | Permalink | Twitter