Ruby auf Ubuntu installieren - so funktioniert es mit der Programmiersprache unter Linux

Um Ruby auf Ubuntu zu installieren gibt es mehrere Möglichkeiten. Drei davon möchte ich heute zeigen. Referenzsystem für die unten gezeigten Beispiele ist Ubuntu 14.04 LTS.

Ruby

Ruby über Ubuntu 14.04 direkt installieren

Ruby wird mit Ubuntu ausgeliefert und es kann mit einem Befehl installiert werden.

sudo apt-get update
sudo apt-get install ruby

Vorteil: Schnelle Installation
Nachteil: keine aktuelle Version (1.9.x)


Ruby über RVM installieren

Ruby hat eine eigene Versionsverwaltung, kurz RVM. Auch damit lässt Ruby installieren, praktischerweise auch eine aktuelle Version.

Zur Installation des Version Managers wird lediglich ein Curl Befehl benötigt.

sudo apt-get update
sudo apt-get install curl
\curl -sSL https://get.rvm.io | bash
    Downloading https://github.com/wayneeseguin/rvm/archive/master.tar.gz

Installing RVM to /home/x/.rvm/
    Adding rvm PATH line to /home/x/.profile /home/x/.mkshrc /home/x/.bashrc /home/x/.zshrc.
    Adding rvm loading line to /home/x/.profile /home/x/.bash_profile /home/x/.zlogin.
Installation of RVM in /home/x/.rvm/ is almost complete:

  * To start using RVM you need to run `source /home/x/.rvm/scripts/rvm`
    in all your open shell windows, in rare cases you need to reopen all shell windows.

    

Im nächsten Schritt müssen ein paar Abhängigkeiten nachinstalliert werden. Zunächst wird dem System mitgeteilt, dass RVM verwendet werden soll.

source /home/x/.rvm/scripts/rvm
rvm requirements
  Checking requirements for ubuntu.
    Installing requirements for ubuntu.
    Updating system
Installing required packages: gawk, libreadline6-dev, libyaml-dev, libgdbm-dev, libncurses5-dev, libtool, libffi-dev.........
Requirements installation successful.

Nun kann die eigentlich Ruby Version installiert werden. Im gleichen Zug werden RubyGems mit installiert. Dabei handelt es sich um eine eigenes Paketsystem, zur Verwaltung verschiedenener Versionen.

rvm install ruby
rvm rubygems current

Vorteil: aktuelle Version mit Versionsverwaltung, für Entwickler
Nachteil: umständlicher zu verwalten

Ruby über ein fremdes Repository installieren

Abschließend noch eine Variante, die für den Endanwender sicherlich am Besten geeignet ist. Als Alternative zum integrierten Ubuntu Repository kann das Repository von Brightbox eingebunden werden Dieses stellt Ruby in den Versionen 1.8, 1.9.3, 2.x und 2.2 zur Verfügung.

sudo apt-get install software-properties-common
sudo apt-add-repository ppa:brightbox/ruby-ng
sudo apt-get update
sudo apt-get install ruby2.2
    Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  libjs-jquery libruby2.2 rubygems-integration
Suggested packages:
  javascript-common bundler
The following NEW packages will be installed:
  libjs-jquery libruby2.2 ruby2.2 rubygems-integration
0 upgraded, 4 newly installed, 0 to remove and 2 not upgraded.
Need to get 3.545 kB of archives.
After this operation, 15,7 MB of additional disk space will be used.

Vorteil: Einfache Installation
Nachteil: Fremdes Repository, Optimierungen am Quellcode durch Brightbox

Fazit

Bei den gezeigten Varianten sollte jeder eine Möglichkeit finden, Ruby auf das lokale System zu bringen.


Quellen
rvm.io
ruby-lang.org
brightbox.com

Raspberry Pi 2 - OpenELEC und das Boot Problem

Seit einigen Tagen nenne ich einen Raspberry Pi 2 mein Eigen. Diesen mit einem Media Center zu bestücken und zu starten, stelle sich schwieriger heraus als gedacht.

Raspberry Pi 2 - OpenELEC 5.0.x installieren

OpenELEC auf einem Raspberry Pi2 zu installieren, stellt eigentlich keine große Herausforderung dar. Laut Anleitung ist ein System Image, eine SD Karte und ein ImageKonverter notwendig. Die einzelnen Schritte lassen sich auf einem Installations Wiki genau nachlesen. In meinem Fall habe ich die Windows Variante angewendet.

  1. OpenELEC Image herunterladen und entpacken
  2. Win32DiskImager herunterladen und öffnen
  3. SD Formatter herunterladen und SD Karte formatieren (Format Size Adjustment = On)
  4. Entpacktes Image auf die SD Karte schreiben
  5. Fertig

Vielleicht noch zur Info, bei der SD Karte handelte es sich um eine neue Intenso 16 GB Micro SDHC-Card Class 4.

openelec

Die Probleme

Schon beim ersten Bootversuch fingen die Probleme an. Der Bildschirm zeigte den Bootscreen und meldete "/dev/mmcblk0p2 not found", danach hing das System.

Die mehrfache Wiederholung des Installationsvorgangs, sowie die Kontrolle der Konfigurationsdateien auf der Karte brachten ebenfalls keine Erfolg.

Die genannte Partition wurde sogar teilweise beim Bootvorgang gefunden (Zur Erklärung: OpenElec legt ein zweite ext4 Partition an), dennoch blieb das System beim ersten Start aus unerfindlichen Gründen stehen.

Die Lösung

Anscheinend wollte die Kombination aus SD Karte, OpenELEC Image und Raspberry Pi 2 nicht so wie ich, also musste eine Alternative her. Ich dachte mir wenn OpenELEC nicht möchte, dann vielleicht Raspian.

noobs

Praktischerweise gibt es über Noobs (New Out Of The Box Software) für Raspberry Pi 2 eine idiotensichere und zeitschonende Variante Raspian und OpenElec zu installieren.

Also zurück auf Los.

  1. Download Noobs Lite
  2. SD Formatter herunterladen und SD Karte formatieren (Format Size Adjustment = On)
  3. Image entpacken und Dateien auf SD Karte kopieren
  4. Raspberry Pi2 starten
  5. Raspian und OpenELEC installieren (Netzwerkanschluss notwendig)
  6. Gewünschtes System starten

Siehe da, nach dieser Installationsvariante startet nicht nur Raspian sondern auch OpenElec. Es lässt sich zusätzlich ohne Probleme aktualisieren und läuft seit her auch nach dem 20sten Neustart ohne Probleme.

Fazit

Insgesamt eine etwas schwere Geburt... ich kann mir den Fehler zusätzlich nicht erklären, denn das System ist im Endeffekt das gleiche, vermutlich liegt es an einem defektem Installations Image oder dem Schreibvorgang über Windows, denn die SD Karte ist ja die gleiche. Vielleicht recherchiere ich noch einmal, fürs Erste funktioniert es.

Quelle

Datenblumen - Visualisierung von Webseiten, inklusive externes JavaScript

Seit diesem Jahr ist Wired Deutschland als monatliche Zeitschrift für den "gemeinen" Nerd verfügbar. In der aktuellen Printausgabe wurden sogenannte Datenblumen abgedruckt.

Dabei handelt es sich um Visualisierungen von Webseiten, welche verdeutlichen sollen, wie viel Teile einer Webseite aus Inhalten (Bilder, HTML) oder aus Skripten (JavaScript, CSS) bestehen. Letztere dienen meist zur Gestaltung der Webseite in Form von CSS, aber auch als Codeschnipsel für Social Media Buttons von Facebook und Co.

Datenblume

Wired hat in Zusammenarbeit mit OpenDataCity einen Dienst online gestellt, der es ermöglicht solche Datenblumen für jede Webseite zu erstellen. Das Ergebnis ist durchaus interessant, gerade in Betracht auf die Vielfältigkeit der Blüten, denn hier lässt sich gut erkennen, wie viele externe Skripte auf der jeweiligen Seite eingebunden sind.

Datenblumen_caschy

Der reine HTML Inhalt wird auf den Grafiken grün dargestellt, Skripte in rot und Styleinformationen in einem Orangeton. Die zwei Beispiele zeigen, dass meistens Bild- und Javascript Dateien für den Großteil eines Seitencontents verantwortlich sind. Reines HTML tritt nur sporadisch auf.

Eigene Datenblumen gestalten