Archiv der Kategorie: Apple Hacks

gEDA — Installation und erste Schritte auf Mac OS X 10.8.2

Vorbereitung und Installation, Update der Homebrew Installation

Eine Anleitung zur Installation findet sich unter Installation.
Die Installation erfolgt (wenn alle Abhängigkeiten erfüllt sind) mit dem Befehl:

ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"

Wenn schon eine Homebrew Installation vorhanden ist, so muss sie unter Umständen upgedatet werden,
dazu sind folgende Befehle nützlich:

brew update
brew doctor
brew missing

Je nach Ausgabe werden die entsprechenden Pakete oder Abhängigkeiten installiert.

Installation der Programme

Die Installation erfolgt mit Hilfe von brew:

brew install geda-gaf
brew install gerbv

Näheres zur Installation findet sich EDA Resources.

Installation von pcb (Probleme mit einer veralteten Library)

brew install pcb

Fehlermeldung nach dem öffnen

mac:~ macbook$ pcb
dyld: Library not loaded: /usr/local/lib/libpangox-1.0.0.dylib
Referenced from: /usr/local/lib/libgtkglext-x11-1.0.0.0.0.dylib
Reason: Incompatible library version: libgtkglext-x11-1.0.0.0.0.dylib requires version 3001.0.0 or later, but libpangox-1.0.0.dylib provides version 1.0.0
Trace/BPT trap: 5


Installation von xgsch2pcb (Probleme mit dem Python Module dbus)

brew create http://geda.seul.org/dist/geda-xgsch2pcb-0.1.3.tar.gz

geda apps for mac os x

Dateien herunterladen geda-osx-launcher-apps.zip


defaults write org.gpleda.gschem path /usr/local/Cellar/geda-gaf/1.6.2/bin/gschem
defaults write org.gpleda.gerbv path /usr/local/Cellar/gerbv/2.6.0/bin/gerbv
defaults write org.gpleda.pcb path /usr/local/Cellar/pcb/20110908/bin/pcb

DIY — Software für eine CNC-Maschine

Übersicht

Eventuell kann sie Software auf einem Nexus 7 mit Ubuntu 12.04 installiert werden.
Setting up your Nexus 7 with Ubuntu 12.04
Meine ersten Erfahrungen sind leider ernüchternd, ubuntu unity stürzt oft ab. Leider gibt es noch keine Treiber für OpenGL weshalb pycam nicht richtig funktioniert.

Installation von PyCAM auf Mac OS X 10.8

Es folgt eine kurze Anleitung, wie PyCAM auf Mac OS X 10.8 installiert wird.

  1. Download PyCAM und entpacken.
  2. /Applications/Utilities/Terminal.app ausführen
  3. Installation von Homebrew (eine ausführlichere Anleitung: Installing Homebrew on OS X Mountain Lion 10.8, Package Manager for Unix Tools )
  4. ruby <(curl -fsSkL raw.github.com/mxcl/homebrew/go)
    
  5. Compilieren und installieren von PyGTK
  6. /usr/local/bin/brew install pygtk
    
  7. Compilieren und installieren von PyOpenGL (Password ist notwendig)
  8.   sudo easy_install PyOpenGL
    
  9. Compilieren und installieren von PyGTKGLExt
  10.   /usr/local/bin/brew install pygtkglext
    
  11. PyCAM patchen
  12.   curl "http://goo.gl/U8hJ1" | patch -p0
    
  13. Eintrag in .bashrc erstellen
  14. echo "\nexport PYTHONPATH=/usr/local/lib/python2.7/site-packages" >> ~/.bashrc
    

Nun sollte es möglich sein pyCAM innerhalb des herunter geladenen und entpackten Verzeichnisses zu starten.

./pycam

Diese Anleitung geht davon aus, dass Mac OS X Mountain Lion im original Zustand nach der Installation ist. Wenn fink oder macport installiert sein sollte, ändern sich die Schritte entsprechen.

openSCAM

DIY — AppleTV 2 als Webserver

Auf der Suche nach einem PC der für einen für einen privaten Webserver geeignet ist (niedrige Energiekosten und geringer Kaufpreis) bin ich bei heise.de den Artikel Provider nutzt Apple TV 2 als Webserver gefunden. Da der AppleTV (2. Generation) nur 119Euro kostet, habe ich mir gleich mal einen gekauft.
Im heise.de-Artikle fidet sich folgende Anleitung „Wer das Ganze nachbauen will, findet hier weitere Infos.„.
Es müssen folgende Schritte vollzogen werden:

  1. AppleTV jailbreaken
  2. Konfiguration der LAN oder WLAN Verbindung
  3. Installation des Webservers und der zusätzlich benötigten Software (PHP, Datenbank)

AppleTV jailbreaken

Da ich noch nie ein IOS-Gerät gejailbreakt habe müsste ich mich zuerst über die Jailbreak Thematik informieren was leider gar nicht so einfach ist, da man sehr viele unterschiedliche Informationen dazu im Netz findet.
Eine Web-Recherche hat folgende Möglichkeiten ergeben:

Nach längerem Probieren hat bei mir hat die Methode mit Seas0nPass funktioniert. Das Tool Pwnage 4.3 wäre mir persönlich lieber gewesen, da ich gleich die benötigten Pakete anhand einer Auswahl installieren konnte, leider hat aber der Jailbreak nicht funktioniert. Ich verzichte hier auf eine Beschreibung, da zum einem in den beiden Links das Vorgehen genau erklärt wird und zum anderen, da sich das Vorgehen beim Jailbreaken mit jeder neuen IOS-Version ändern kann. Es bleibt einem nichts anderes übrig als ich selbst in das Web zu stürzen und eine Möglichkeit die bei einem funktioniert zu suchen.

Konfiguration des AppleTVs als Webserver

Von der Seite How To Turn an Apple® TV 2G into a 24/7 Web Server kann man sich ein Shellscript herunterladen, das den gesamten Webserver installiert. Ich möchte im Folgenden trotzdem die einzelnen Schritte beschreiben, da man ja eigentlich nicht viel lernt, wenn man ein fertiges Script ausführt. Folgt hier eine Anleitung es per Hand zu machen.

  1. Installation der benötigten Software: dazu muss man sich mittels der Terminal.app und des Befehls ssh auf die Shell des AppleTV schalten:
     ssh root@ipappletv 
    mit Passwort alpine und anschließend folgende Befehle eingeben:
  2. <br />
    apt-get -y install top<br />
    apt-get -y install vim<br />
    apt-get -y install php<br />
    apt-get -y install lighttpd<br />
    apt-get update<br />
    apt-get update<br />
    apt-get -f -y upgrade<br />
    

    Es werden folgende Softwarepakete installiert:

    • top ist ein Befehl. der in den meisten Unix-ähnlichen Betriebssystemen eine ständig aktualisierte Liste der aktuell laufenden Prozesse des Systems ausgibt. Dabei zeigt top auch die Auslastung der CPU, Speicherverbrauch, sowie etliche andere Informationen an.
    • vim ist eine Weiterentwicklung des Texteditors vi. Das freie Open-Source-Programm wurde 1991 von Bram Moolenaar veröffentlicht. Seitdem wird der Editor aktiv weiterentwickelt. Wie vi zeichnet sich Vim durch seine verschiedenen Betriebs-Modi aus, während viele andere gebräuchliche Editoren nur einen kombinierten Modus für Eingabe und Befehle kennen, in dem Befehle über Tastenkombinationen und grafische Oberflächen ausgeführt werden. Alternativ kann auch nano installiert werden.
    • php ist eine Skriptsprache, die hauptsächlich zur Erstellung dynamischer Webseiten oder Webanwendungen verwendet wird.
    • lighttpd (zumeist gesprochen als Lighty) ist ein von Jan Kneschke entwickelter freier Webserver. Er implementiert alle wichtigen Funktionen eines Webservers und kann, ähnlich wie Apache, durch Module erweitert werden.
  3. Jetzt müssen noch ein paar Verzeichnisse erstellt und die Zugriffsrechte gesetzt werden. Im Verzeichnis /private/var/www werden die Daten gespeichert, die der Webserver zur Verfügung stellen wird. Das Verzeichnis /var/log/lighttpd dient zum loggen von Fehlern und Zugangsdaten des Webservers.
  4. <br />
    mkdir /private/var/www<br />
    chown root:wheel /private/var/www<br />
    mkdir /var/log/lighttpd<br />
    chown root:wheel /var/log/lighttpd<br />
    

    • mkdir Unix-Befehl der ein Verzeichnis erstellt.
    • chown root:wheel Unix-Befehl der die Eigentumsrechte für den Benutzer root aus der Gruppe wheel setzt.
  5. Die Konfiguration von lighttpd ist in einer Datei lighttpd.conf zusammengefasst, die im Verzeichnis /private/etc/ gespeichert werden muss.
  6. [js_markieren]

    server.document-root = "/private/var/www/"
    
    server.port = 80
    # server.username = "lighttpd"
    # server.groupname = "lighttpd"
    # richtige IP des Webservers eintragen
    server.bind                = "192.168.0.150" 
    server.tag ="lighttpd"
    
    server.errorlog            = "/var/log/lighttpd/error.log"
    accesslog.filename         = "/var/log/lighttpd/access.log"
    
    server.modules              = (
                "mod_access",
                "mod_accesslog",
    	    "mod_fastcgi",
                "mod_rewrite",
    	    "mod_auth"
    )
    
    # mimetype mapping
    mimetype.assign             = (
      ".pdf"          =>      "application/pdf",
      ".sig"          =>      "application/pgp-signature",
      ".spl"          =>      "application/futuresplash",
      ".class"        =>      "application/octet-stream",
      ".ps"           =>      "application/postscript",
      ".torrent"      =>      "application/x-bittorrent",
      ".dvi"          =>      "application/x-dvi",
      ".gz"           =>      "application/x-gzip",
      ".pac"          =>      "application/x-ns-proxy-autoconfig",
      ".swf"          =>      "application/x-shockwave-flash",
      ".tar.gz"       =>      "application/x-tgz",
      ".tgz"          =>      "application/x-tgz",
      ".tar"          =>      "application/x-tar",
      ".zip"          =>      "application/zip",
      ".mp3"          =>      "audio/mpeg",
      ".m3u"          =>      "audio/x-mpegurl",
      ".wma"          =>      "audio/x-ms-wma",
      ".wax"          =>      "audio/x-ms-wax",
      ".ogg"          =>      "audio/x-wav",
      ".wav"          =>      "audio/x-wav",
      ".gif"          =>      "image/gif",
      ".jpg"          =>      "image/jpeg",
      ".jpeg"         =>      "image/jpeg",
      ".png"          =>      "image/png",
      ".xbm"          =>      "image/x-xbitmap",
      ".xpm"          =>      "image/x-xpixmap",
      ".xwd"          =>      "image/x-xwindowdump",
      ".css"          =>      "text/css",
      ".html"         =>      "text/html",
      ".htm"          =>      "text/html",
      ".js"           =>      "text/javascript",
      ".asc"          =>      "text/plain",
      ".c"            =>      "text/plain",
      ".conf"         =>      "text/plain",
      ".text"         =>      "text/plain",
      ".txt"          =>      "text/plain",
      ".dtd"          =>      "text/xml",
      ".xml"          =>      "text/xml",
      ".mpeg"         =>      "video/mpeg",
      ".mpg"          =>      "video/mpeg",
      ".mov"          =>      "video/quicktime",
      ".qt"           =>      "video/quicktime",
      ".avi"          =>      "video/x-msvideo",
      ".asf"          =>      "video/x-ms-asf",
      ".asx"          =>      "video/x-ms-asf",
      ".wmv"          =>      "video/x-ms-wmv",
      ".bz2"          =>      "application/x-bzip",
      ".tbz"          =>      "application/x-bzip-compressed-tar",
      ".tar.bz2"      =>      "application/x-bzip-compressed-tar" 
     )
    index-file.names = ( "index.html", "index.php" )
    
  7. Mit dem Befehl lighttpd-angel -f /etc/lighttpd.conf wird der Webserver gestartet.

Hintergrund Informationen

Auf den folgenden Seiten findet man zusätzliche Informationen:

Installing and configuring lighttpd webserver – HOWTO

LDAP + Lighttpd :: Easy setup

Apple TV Webserver | Mac Mini Vault

NwT — nccad auf dem Mac

Viele meine Schülerinnen und Schüler haben einen Apple-Computer. Wir haben für den NwT-Unterricht eine CNC-gesteuerte Fräsmaschine, die mit der Windows CAD-Software nccad bedient wird. Damit diese Schülerinnen und Schüler zuhause ihre Projekte entwickeln können sollten sie diese Software benutzen können.

Eine Möglichkeit ist mittels von Parallels oder VWware einen Virtuelle-PC zu starten und auf diesem Windows zu installieren. Diese hat zur Folge, dass natürlich Lizenzgebühren anfallen.

Das open-source Projekt wine verfolgt einen anderen Weg. Es stellt Windows-Anwendungen eine sogenannte Laufzeitumgebung zur Verfügung. Mit Hilfe des Programms Wineskin Winery kann ein Container erstellt werden in dem ein Windows-Programm aufgeführt wird.

Anleitung zur Installation der Demoversion von nccad Version 7 mit Hilfe Wineskin Winery und wine unter MAC OSX Lion

  • Zuerst muss das Programm Wineskin von sourceforge.net heruntergeladen
    und installiert werden.

Download von Wineskin

  • wineskin.app öffnen und mittels dem +-Bottom die aktuelle wine-Version installieren (WS8Wine1.4-rc1 Stand Jan.2012).

wineskin Hauptfenster

  • Mittels der Schaltfläche Create new Blank Wrapper kann man einen neunen Container für nccad erstellen.

Wineskin creating a new wrapper

  • Jetzt kann das Windows-Programm Demo nccad 7 heruntergeladen werden und anschließend mit Hilfe der Schaltfläche Install Windows Software installiert werden. Die Installation verläuft genauso wie wenn man ein normales Windows hätte.

Wineskin Software in den Wrapper installieren

  • Mit der Schaltfläche Advanced können noch zusätzliche Einstellung vorgenommen werden. Wichtig ist, dass das richtige EXE-File ausgeführt wird.

  • Wenn man alles richtig gemacht hat, sollte man nun eine ausführbare App haben.

Wineskin nccad7.app

Die Version 8 von nccad benötigt .net Version 2.0 und SP1, bisher habe ich es noch nicht geschafft einen ausführbaren Container mit Hilfe von mondo (der Open-Source Variante von .net) zu erzeugen. Ich arbeite aber an einer Lösung dieses Problems.

Bisher habe ich mit winetricks versucht die DLLs des Microsoft .NET Framework 3.0 (Full Package) im Container zu installieren, aber leider startet nccad 8.0 nicht oder die App friert beim Starten ein. Sobald ich damit erfolgt habe, werde ich es posten.

Alle Bilder als Galerie