Metalab OS: Unterschied zwischen den Versionen

aus Metalab, dem offenen Zentrum für meta-disziplinäre Magier und technisch-kreative Enthusiasten.
Wechseln zu: Navigation, Suche
K (REST-Webservices)
(Features: Featureliste von MOS-neu übertragen.)
(18 dazwischenliegende Versionen von 11 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
Das Metalab-Betriebssystem ünterstützt Verwaltung und Betrieb des Metalabs sowohl physisch als auch in Software.
+
== About ==
  
Die Softwareseite besteht as of Oktober '06 aus zwei Teilen
+
Das Metalab-Betriebssystem (Metalab OS) unterstützt Verwaltung und Betrieb des Metalabs<!-- sowohl physisch als auch in Software -->.
* Server, Netzwerk, Directory usw: [[Metacore]]
+
* Webapps für Profile, Calendaring, Inventar usw in [[wen:Django_web_framework|Django]] (Python) -- läuft dzt. noch nirgends öffentlich, um reinzuschauen siehe "Entwicklungsumgebung" weiter unten
+
  
==Plan==
+
Implementiert mit dem Python Web-Framework [http://www.djangoproject.com/ Django]. Der Source Code wird auf [https://github.com/Metalab/mos/ Github] veröffentlicht.
Der [[MOS Masterplan]] ist mittlerweile outdated
+
  
==Aufgabengebiete==
+
Derzeit arbeiten wir daran, den bestehenden Code aufzuräumen, um zukünftige Verbesserungen einfacher implementieren zu können. Rege Mithilfe ist erbeten!
* Mitgliederverwaltung (Erfassung, Mitgliedsbeiträge, usw.)
+
* Zugangskontrolle (Kartenleser udgl.)
+
* Shutdown-Plan (was machen wenn man der letzte ist der das Lab verlässt)
+
* Verwaltung der Jabber Mitgliederlisten und Gruppen. (wer Mitglied wird hat sofort alle Members in seiner Kontaktliste)
+
* Single-Sign-On für alle Metalab Services (geteilte userdatenbank zwischen den applikationen)
+
* Anträge an die GV sollen vorbereitet, diskutiert und ev. auch abgestimmt werden können
+
* Inventar-Datenbank, Reservierung/Ausleihung von Gegenständen usw
+
* Eventplanung (Raumreservierung usw)
+
* Lokale Infofeeds: Nächste U-Bahn/Nachtbus, verfügbare Citybikes, Wetter, usw
+
* Umgebungs-Google Maps Mashup
+
* Irgendwas um die kommunale Pizzabestellung zu vereinfachen :)
+
====Medienserver====
+
* Playlistverwaltung, Last.fm-Logging
+
* Medienrepository (''natürlich'' nur CC-lizensiertes!)
+
  
==Implementation==
+
Die einfachste Möglichkeit - auch für Nichtprogrammierer -, dabei zu helfen ist, bestehende Probleme im Issue-Tracker einzutragen. Tickets, die das Metalab OS betreffen, werden mit dem Tag 'mos' gekennzeichnet und in einem eigenen [https://metalab.at/issues/report/11 Report] gesammelt.
* Grundstock im Python MVC-Framework [[wen:Django_web_framework|Django]]
+
* Offen und interoperabel. Das Metalab OS definiert sich über seine Auswirkungen auf den physischen Raum, nicht durch die spezielle Softwareimplementation
+
* Lose Kuppelung durch externe Dienste auf die durch mehrere Applikationen in verschiedenen Sprachen zugegriffen werden kann ([[LDAP]], Datenbank, ...). Es soll ein Core system geben das die Userverwaltung übernimmt und einige andere Applikationen die teilweise direkt auf die Datenbank zugreifen (und vielleicht auch Django-Applikationen sind), teilweise looser über REST interfaces etc. mit dem Rest des MOS interagieren.
+
* [[wen:Representational State Transfer|REST]] Web-App Schnittstelle, ev. auch XMLRPC/SOAP.
+
  
==Coding Standard==
 
* Projektsprache: Englisch
 
* Indentation: 4 Spaces
 
  
==Entwicklungsumgebung==
 
Es existiert ein Subversion repository (https://ma.metalab.at/svn/mos) und ein Trac Wiki/Issue management system (https://ma.metalab.at/trac/mos/wiki). Das Trac ist ein guter Anfangspunkt weil dort beschrieben ist wie man den source downloaded und lokal einrichtet. Wer mitmachen will (und daher einen Account braucht) wendet sich bitte an [[Benutzer:Metaz|Meta]].
 
  
Falls Ihr euch nicht mit dem Einrichten von Python, Django und deren Dependencies spielen wollt, verwendet bitte space.in.metalab.at. Hier ist alles schon installiert und es muss lediglich ein SVN checkout gemacht werden und settings.py mit ein paar Einstellungen wie einem anderen Port für den integrierten Entwicklungsserver versorgt werden. Zugang auf space.in.metalab.at per SSH hat jeder, der einen [[Metacore]] Benutzer hat.
+
== Features ==
  
==REST-Webservices==
+
* [http://metalab.at Metalab-Hauptseite]
* Ressourcen haben jeweils eigene, unveränderliche URLs:
+
** Eventverwaltung ([http://metalab.at/calendar/ Kalender])
http://api.metalab.at/things/mate
+
** Projektverwaltung ([http://metalab.at/project/ Projektliste])
http://api.metalab.at/people/c3o
+
** Mitgliederverwaltung
http://api.metalab.at/spaces/novitaeten
+
*** [http://metalab.at/member/ Mitgliederliste]
* Auf GET-Requests hin werden die Daten je nach Accept-Header (ev zus. je nach "Dateiendung" od. Parameter) in verschiedenen Formaten ausgegeben: HTML+Microformats, XML/RDF [zb [[wen:FOAF (software)|FOAF]] für Personen], RSS/ATOM? etc.
+
*** Welcher Permissions gibts im MOS? (Admin / Member (indirekt) / Key (indirekt))
* Mit passenden HTTP-Authentication Headern darf man auch DELETEn und PUTen.
+
*** Mailinglisten-Mitgliedschaft?
 +
*** Kontodaten, Kontomanagement, gebouncte Einzieher vermerken...
 +
* [http://metalab.at/member/login/ Login-Bereich für Mitglieder]
 +
* [http://metalab.at/cellardoor/ Event-Liste an der Eingangstür]
  
==Wiki-Software==
+
== Feedback ==
 +
 
 +
* '''FIXME:''' Broken Link: [http://metalab.getsatisfaction.com Kommentare?] (bei [http://getsatisfaction.com/metalab/] scheint es sich nicht um "unser" Metalab zu handeln...)
 +
* [[Metalab_OS/Internal_Services|Wunschliste für interne Services]] ('''FIXME:''' gehört das wirklich zum Metalab OS? Ist in der Wiki-Struktur halt eine Unterseite...)
 +
* Ansprechperson Hackerspace OS: [[Benutzer:hop|hop]]
 +
 
 +
== Source Code (Hackerspace OS) ==
 +
 
 +
Der source des Metalab OS ward im Juli 2008 mit Hilfe von Ausserhalb generalisiert und als [http://code.google.com/p/hackerspace-os/ hackerspace os] veröffentlicht.
 +
 
 +
Per 2012-03-21 ist das offizielle Repository auf [https://github.com/Metalab/mos/ Github] zu finden. Das ist ein neuer Anlauf, den Code aufzuräumen und neue Features zu implementieren. Der Code wird sich auf die lokalen Ansprüche des Metalab konzentrieren - für eine "generalisierte" Version siehe obige Version von Florian Hahn!
  
[[Wiki-Software|Links zu Wiki-Infosites]]
 
  
 
[[Kategorie:Metalab OS]]
 
[[Kategorie:Metalab OS]]

Version vom 30. März 2012, 23:15 Uhr

About

Das Metalab-Betriebssystem (Metalab OS) unterstützt Verwaltung und Betrieb des Metalabs.

Implementiert mit dem Python Web-Framework Django. Der Source Code wird auf Github veröffentlicht.

Derzeit arbeiten wir daran, den bestehenden Code aufzuräumen, um zukünftige Verbesserungen einfacher implementieren zu können. Rege Mithilfe ist erbeten!

Die einfachste Möglichkeit - auch für Nichtprogrammierer -, dabei zu helfen ist, bestehende Probleme im Issue-Tracker einzutragen. Tickets, die das Metalab OS betreffen, werden mit dem Tag 'mos' gekennzeichnet und in einem eigenen Report gesammelt.


Features

Feedback

  • FIXME: Broken Link: Kommentare? (bei [1] scheint es sich nicht um "unser" Metalab zu handeln...)
  • Wunschliste für interne Services (FIXME: gehört das wirklich zum Metalab OS? Ist in der Wiki-Struktur halt eine Unterseite...)
  • Ansprechperson Hackerspace OS: hop

Source Code (Hackerspace OS)

Der source des Metalab OS ward im Juli 2008 mit Hilfe von Ausserhalb generalisiert und als hackerspace os veröffentlicht.

Per 2012-03-21 ist das offizielle Repository auf Github zu finden. Das ist ein neuer Anlauf, den Code aufzuräumen und neue Features zu implementieren. Der Code wird sich auf die lokalen Ansprüche des Metalab konzentrieren - für eine "generalisierte" Version siehe obige Version von Florian Hahn!