Wer's noch nicht von Adriens Blogpost #52 und anderen diversen Andeutungen seit BeGeistert 028 mitbekommen hat: das Haiku Projekt nimmt endlich die erste Beta-Release ernsthaft ins Visier!
Adrien ist der Release-Koordinator und ist fleißig dabei Bugtracker Tickets zu durchforsten, um sie zu schließen, die Probleme zu fixen, oder sie neu zu bewerten und ggf. die Priorität auf nach Beta-Release oder auch nach R1 zu verschieben. Die Aktivitäten lassen sich schön in der Trac Timeline und den Commits verfolgen.
Die Beta ist für das erste Quartal 2015 geplant. \o/
Dienstag, 18. November 2014
Endlich auf dem Weg zu R1/Beta1
Humdinger,
17:21
- Labels:
Haiku
0
Kommentare
Samstag, 11. Oktober 2014
Haiku beim ersten "Semester of Code"
Das Haiku Projekt nimmt teil am "Semester of Code" (SoC) des Europäischen VALS Projekts. Dabei werden Studenten europäischer Universitäten an diverse Open-Source-Projekte herangeführt. Im Gegensatz zu Googles "Summer of Code", gibt es hier keinerlei finanzielle Unterstützung. Vielmehr wird dieses Semester im Rahmen des Studiums gewertet.
Mitmachen können (zumindest bei diesem ersten Mal) auch Studenten nicht-gelisteter Unis. Für Haiku können sich Studenten für folgende Projekte bewerben:
- Untertitel-Unterstützung im Media Kit
- XFS Dateisystem Treiber
- USB Stack Erweiterung
- Suspend-to-RAM, und/oder Suspend-to-disk
- Compositing im app_server
- Stromsparfunktionen
- Streaming-Unterstützung für Media Kit und Anwendungen
- Dateisystem-Caches zusammenführen
- x86-64: Unterstützung für 32 bit Userland
- 17. September - 14. November: Student bewerben sich
- 28. November: Die ausgewählten Studenten und ihre Projekte werden vorgestellt
- 14. November - 1. Dezember: Gegenseitiges Kennenlernen
- 1. Dezember - 30. April: Programmierphase
Humdinger,
10:08
- Labels:
Haiku,
SoC,
VALS
0
Kommentare
Donnerstag, 21. August 2014
Jahrestage von Haiku und BeSly
Kürzlich gab es wiedermal Geburtstage zu feiern:
Das Haiku Projekt wurde vor 13 Jahren gegründet, damals noch mit Bezug auf den Ahnen "OpenBeOS". Das ist eine ganz schön lange Zeit, besonders wenn man bedenkt, dass es einige der jüngsten Haiku Entwickler fast genauso alt sind. Und ich werde langsam grau...
Der zweite Jubilar ist BeSly, die Wissensbasis für Haiku, BeOS und Zeta. Seit zehn Jahren werden dort Anleitungen und Tutorials gesammelt und Generationen von Usern aus den diversen BeOS-Epochen zur Verfügung gestellt. Auch durchsuchbar mit der YAB app BeSly Tutorial Finder.
Glückwünsche an alle Beteiligten, die so lange durchgehalten haben. Auf ein neues Jahr! :)
Humdinger,
17:42
- Labels:
BeSly,
Haiku
0
Kommentare
Dienstag, 19. August 2014
Haiku Updates leicht gemacht
Ein neues Nightly Image zu installieren war ja bisher immer etwas aufwendig. Ein Image konnte z.B. entweder per dd auf einen USB Stick geschrieben werden oder per diskimage register angemeldet und eingehängt werden. Dann konnte man per Installer die neue Haiku Version auf seine Partition schreiben.
Das ist jetzt alles viel einfacher geworden. Alexander von Gluck der Dritte hat es in seinem Blogpost Updating your system beschrieben:
pkgman add-repo http://download.haiku-os.org/haiku-repositories/master/x86_gcc2/current
zeigt auf die aktuellen (nightly) Pakete des Haiku "Basissystems".pkgman add-repo http://packages.haiku-os.org/haikuports/master/repo/x86_gcc2/current
zeigt auf die sonstigen aktuellen Pakete, die es auf HaikuPorts gibt.pkgman update
lädt alle benötigten Pakete runter und installiert sie. Wenn dabei einige Pakete überschrieben würden, wird man dafür um Zustimmung gebeten, d.h. diese Fragen sollte man mit "yes" beantworten.shutdown -r
führt einen Neustart durch.
Wer statt des offiziellen gcc2/gcc4 Haiku eine andere Version aktualisieren möchte, z. B. ARM, x86_64 oder PowerPC, muss einfach die entsprechenden Repository-URLs hinzufügen, die Alex' Blogpost aufgelistet hat.
Die obige Methode ist unheimlich praktisch, man sollte jedoch die ebenfalls in dem Blogpost gegebene Warnung beherzigen: So ein Update kann fehlschlagen, wenn sich die ABI ändert. Am besten, man macht so ein Update auf einer Testpartition, schaut ob noch alles funktioniert und macht dann das Update auf der "produktiven" Haiku Partition. Ein aktuelles Backup ist sowieso immer zu empfehlen...
Humdinger,
19:51
- Labels:
Haiku
0
Kommentare
Montag, 27. Januar 2014
Google Code-In 2013 abgeschlossen
Der GCI 2013 ist zuende gegangen, die 20 Gewinner stehen fest. Darunter sind auch die beiden vom Haiku Projekt gewählten Favoriten Freeman Lou und Puck Meerburg. Sie werden sich alle, zusammen mit einigen der Mentoren der diversen Projekte, in Googles Hauptquartier in Mountainview, Kalifornien treffen.
Haikus Studenten waren dieses Jahr besonders fleißig: 5 Studenten erledigten jeweils mehr als 20 Aufträge; insgesamt haben 42 Studenten 245 Aufgaben gelöst! Dabei wurden sie von 19 Mentoren unterstützt.
Etwa die Hälfte der Aufgaben drehten sich um das Schreiben von "Recipes" für Haikuporter, um Pakete für Haikus Package Management automatisiert zu erstellen. Der Rest war Lösen von Tickets im Bugtracker, Schreiben kleiner Anwendungen und Erstellen von Icons und Banner. Auch wurden einige der bei den regelmäßigen Coverity Scans ermittelten Bugs behoben.
Einige der Studenten haben bereits angekündigt weiter an Haiku arbeiten zu wollen und, wer weiß, vielleicht sieht man auch welche von Ihnen bei zukünftigen Google Summer of Codes.
Humdinger,
15:08
- Labels:
GCI,
Haiku
0
Kommentare
Freitag, 3. Januar 2014
Vorerst letzte Zugabe
Weil die verfügbaren Resourcen danach auf unter 1.500$ gefallen sein werden, wurden Adriens und Pawełs Vollzeitverträge nun wohl zum letzten Mal verlängert.
Adrien bekam nochmal einen ganzen Monat, um aus der nun verfügbaren Testsuite für das WebKit Kapital zu schlagen. Wie er in regelmäßigen Blogposts erläuterte, ermöglichen diese Tests Fehler im Rendern von Webseiten aufzuspüren, bzw. schnell nachzuvollziehen, wenn eine Änderung im WebKit positive oder negative Auswirkungen darauf hat.
Paweł hat nochmal zwei Wochen bekommen, um seine Arbeiten am Scheduler abzuschließen. Ein paar Kleinigkeiten wird er noch optimieren und dann dafür sorgen, dass sich der neue Scheduler ohne Probleme in den Haiku master trunk einfügen lässt. Ab dann wird er in jedem nightly image zu finden sein und jeder kann ihn testen. Der Scheduler wird voraussichtlich signifikant performanter sein: Er hat weniger und feineres Locking (blockiert also weniger/kürzer) und sorgt dafür, dass Threads möglichst lange auf dem gleichen Core laufen. Dadurch spart man sich Zeit, die dieser Core-switch verschlingt, nutzt die CPU-Caches besser und kann Strom sparen, indem man möglichst viele Core möglichst lange und tief schlafen lässt. Und, wie Paweł in seinem letzten Blogpost ebenfalls mitteilt, wurde das künstliche 8 CPU Limit überwunden. Während alte BeOS Programme immer noch dieses Limit aus Kompatibilitätsgründen vorfinden, können neu kompilierte Haiku Anwendungen bis zu 64 CPUs/Cores nutzen. Falls nötig lässt sich dieses Limit in Zukunft aber auch sehr viel einfacher erhöhen.
Wie im oben verlinkten Artikel ebenfalls zu lesen ist, verzeichnet Haiku Inc. etwa 500$ an monatlichen Spenden und, über die letzten 4 Monate der Vertragsarbeit gemittelt, etwa 1.600$ Einmalspenden im Monat.
Wer diese mithelfen möchte diese Statistik zu schönen: Spenden!
Kleine regelmäßige Spenden tun nicht weh, und sind in der Masse effektiv.
Humdinger,
20:34
- Labels:
Haiku,
Spenden,
Vertragsarbeit
0
Kommentare
Dienstag, 3. Dezember 2013
Vertragsverlängerung durch Google-Spende
Gute Nachrichten: die beiden Vollzeitverträge von Adrien und Paweł können um einen weiteren Monat verlängert werden. Neben den zahlreichen kleineren Spenden liegt das an $5.000, die von Google kommen. Das ist die zweite Spende von Google in dieser Höhe in diesem Jahr. Die erste erfolgte im Januar 2013.
Adrien und Paweł haben nun also noch einen weiteren Monat Vollbeschäftigung, um Webkit/WebPositive bzw. den Scheduler auf Vordermann zu bringen. Da Scheduler-Änderungen sehr tief ins System eingreifen, muss ausgiebig getestet werden bevor sie einfließen können. Vielleicht ist das für den Scheduler nicht so schnell machbar, aber zumindest der verbesserte Browser wird die drohende Beta-Release Anfang nächsten Jahres nochmals spürbar aufwerten.
Humdinger,
15:27
- Labels:
Google,
Haiku,
Spende,
Vertragsarbeit
0
Kommentare
Freitag, 8. November 2013
TRIM-Unterstützung für SSDs
Axel Dörfler werkelt schon länger an Haikus TRIM-Unterstützung. Per TRIM-Befehl teilt man einem SSD-Laufwerk mit, dass gelöschte oder nicht mehr genutzte Blöcke frei geworden sind. Der SSD-Controller würde sonst fröhlich weiter diese Blöcke bei Schreibvorgängen aktualisieren. Durch den TRIM-Befehl steht der frei gewordene Speicher auch tatsächlich wieder für neue Daten zur Verfügung und durch die wenigeren Schreibzugriffe nutzt sich die SSD weniger schnell ab und ist auch schneller. TRIM-Unterstützung ist also eine feine Sache.
Mit hrev46325 hat Axels Arbeit seinen Weg in den Master Trunk gefunden, d.h. Nightly Images besitzen nun den Befehl fstrim. Das Trimming wird allerdings noch nicht automatisch vorgenommen. Nicht zuletzt, weil das Feature noch ziemlich jung ist und daher relativ wenig getestet.
Wer ein SSD-Laufwerk hat - auf dem keine wichtigen Daten sind - kann beim Testen helfen. Wie das geht, hat Axel in einen kleinen Beitrag in die Developer Mailingliste gepostet.
Eine kleine Testpartition anlegen.
Die Partition mit zufälligen oder fixen Daten füllen, z.B: dd if=/dev/random of=/dev/disk/scsi/0/9/0 bs=1M (der Gerätepfad ist natürlich entsprechend anzupassen!)
In der Partition ein BFS Volume anlegen (per DriveSetup), und ein paar Dateien reinkopieren.
Per DiskProbe checken, ob der unbenutzte Teil der Partition auch wirklich mit den unter Schritt 2 festgelegten Daten gefüllt ist.
Trimmen der unbenutzten Daten: fstrim /MyTestPartition
Reboot.
Prüfen, ob das BFS Volume und die kopierten Dateien noch in Ordnung sind.
Per DiskProbe checken, ob die in Schritt 2 generierten Daten im unbenutzten Teil der Partition jetzt auch wirklich weg sind.
Bei Erfolg einen kurzen Kommentar hier hinterlassen. Bei Problemen ein Ticket auf dem Bugtracker öffnen.
Humdinger,
18:36
- Labels:
Haiku,
SSD
0
Kommentare
Mittwoch, 6. November 2013
Haiku beim Google Code-In (GCI) 2013
Ab 18. November 2013 werden Jugendliche zwischen 13 und 17 Jahren diverse kleinere und größere Aufgaben für 10 ausgewählte Opensource Projekte erledigen. Als Preise winken Urkunden, T-Shirts und pro Organisation 2 Hauptgewinne: Eine knappe Woche samt Begleitperson zum Google Hauptquartier nach Mountain View, Kalifornien.
Haiku ist wie jedesmal seit dem ersten GCI 2010 auch diesmal wieder mit dabei. Wer helfen möchte den Halbwüchsigen den Einstieg in die gemeinschaftliche Arbeit an freien Projekten zu erleichtern, kann sich als "Mentor" registrieren und sich bei den Themen die ihm liegen, eintragen.
Alle Infos sind auf der Google Code-In 2013 Seite zu finden. Wer einen ersten Eindruck der geplanten Aufgaben bekommen möchte bevor der GCI offiziell beginnt, kann ja mal einen Blick auf Haikus Ideenliste werfen.
Humdinger,
17:39
- Labels:
GCI,
Google,
Haiku
0
Kommentare
Freitag, 4. Oktober 2013
Packagemanagement schlägt im Master Trunk auf
Nach vielen Monaten Planung und Programmierung, zuletzt mit Vollzeitverträgen von Ingo und Oliver, fand der "Merge" vom Packagemanagement in Haikus Master Trunk statt. Das dürfte der letzte große Meilenstein zur Beta und damit R1 gewesen sein. Die Meldung ist nicht mehr ganz neu; golem.de und OsNews haben schon davon berichtet.
Haikus Packagemanagement bietet einige Vorteile, die für die R1 als unbedingt nötig eingestuft wurden. So sind damit zukünftig Updates des Systems möglich und theoretisch auch Downgrades auf vorige Versionen. Bisher konnte Haiku nur durch eine komplette Neuinstallation auf einen neuen Stand gebracht werden.
Pakete bieten eine benutzerfreundliche De-/Installation und Updatemöglichkeiten, siehe "HaikuDepot". Dabei wird sichergestellt, dass alle eventuell nötigen zusätzlichen Bibliotheken etc. mit de-/installiert werden.
Da die Pakete selbst schreibgeschützt sind und auch Haikus Systemdateien "verpackt" sind, wird nun effektiver verhindert, dass der Benutzer sich ungewollt das System zerschießt. Die Änderungen sind für langjährige Nutzer natürlich etwas gewöhnungsbedürftig. ~/config/boot ist eine Ebene tiefer nach ~/config/settings/boot gewandert und auch ~/config/be liegt nun dort als ~/config/settings/deskbar.
Die aktivierten Packete liegen in /boot/system/packages und ~/config/packages. De-aktiviert werden sie, indem sie einfach aus diesen Verzeichnissen verschoben werden.
"Nicht-paketierte" Anwendungen kann man wie gewoht irgendwo in der /boot/home-Hierarchie ablegen. Evtl. mit der Anwendung kommende Bibliotheken können entweder in einem Unterordner "libs" in dem Anwendungsordner liegen, da /boot/system und ~/config ja schreibgeschützt sind (in letzterem hat man nur auf die ~/config/settings Zugriff). Als Alternative existiert das Verzeichnis ~/config/non-packaged. Hier können ebenfalls Bibliotheken (unter "libs"), Add-Ons (unter "add-ons") oder Konsolenprogramme (unter "bin") abgelegt werden.
Die /boot/common-Hierarchie entfällt übrigens komplett. Es gibt also nur noch die Trennung System/User, was alles eigentlich nochmal etwas vereinfacht. Die genauen Hintergründe für den Verzicht auf "common" kann man im Thread [haiku-development] Removing /boot/common nachlesen.
Alle übrigen Details finden sich im Wiki.
Wie nicht anders zu erwarten nach so einer tiefgreifenden Veränderung im System, sind nach dem "Merge" diverse Fehler aufgetreten und auch schon einige behoben worden. Auch sind noch nicht alle Feinheiten des Packetmanagements ausgearbeitet und es rumort noch etwas im Trunk. Wer sich selbst vom derzeitigen Stand ein Bild machen will und ggf. bei der Bugsuche und -beseitigung mithelfen möchte, für den stehen wie üblich Nightly Images zur Verfügung. Kommt man von einem nicht-PM Haiku, sollte man das Anyboot Image auf einen USB-Stick dd'en, ihn booten und von dort installieren.
Humdinger,
14:56
- Labels:
Haiku,
Packagemanagement
0
Kommentare
Donnerstag, 3. Oktober 2013
Haiku bei StackExchange?
StackExchange ist ein großer Verbund von Q&A Seiten, auf denen User und Entwickler qualitativ hochwertige Fragen stellen und Antworten geben. Gerade der Ableger StackOverflow ist unter Programmierern sehr bekannt und geschätzt.
Momentan gibt es Bemühungen auch für Haiku so ein Q&A Netzwerk zu etablieren. Dazu müssen 40 gute Beispiel-Fragen ersonnen werden, die von anderen mindestens 10 positive Bewertungen erhalten haben. Ist dies geschehen, beginnt eine Beta-Phase, in der dann eine "echte" FAQ Liste mit guten Fragen und Antworten aufgebaut wird.
Doch erst mal muss die erste Phase in "Haikus Area51" bestanden werden. Das geht nur, wenn möglichst viele sich dort anmelden und Fragen bewerten und eigene einbringen. Wohlgemerkt, hier geht es nur um Fragen, Antworten muss man auf sie nicht schreiben.
StackExchange wäre für Haiku User und Entwickler eine wertvolle Resource und eine Möglichkeit für Haiku auch nach außen als lebendige Plattform zu präsentieren. Natürlich nur, wenn genügend von uns mitmachen...
Humdinger,
13:42
- Labels:
Haiku
0
Kommentare
Sonntag, 8. September 2013
Weitere zwei Vollzeit-Verträge
Ingos und Olivers Vollzeit-Verträge mit Haiku Inc. sind noch nicht ganz abgelaufen, da kündigen sich schon die nächsten beiden an. Bei denen geht es zur Abwechslung mal nicht um das Packagemanagement, dessen Grundlagen soweit gediehen sind, dass sie demnächst in den Master Trunk eingefügt werden. Die neuen Baustellen sind Verbesserungen im Kernel und im Browser.
Adrien (PulkoMandy) Destugues kümmert sich um WebPositive und den dahinter werkelnden WebKit Port. Sein erster Plan ist, das schonmal begonnene ServiceKit soweit aufzubohren, dass es als Backend in WebPositive genutzt werden kann. Die Verbesserungen im ServiceKit wären dabei natürlich auch für alle anderen (zukünftigen) Anwendungen interessant, die Daten über das Internet austauschen. Nach etwas Feedback anderer Entwickler, könnter dieser Plan aber noch leichte Änderungen erfahren. Seine Vertragsarbeit beginnt allerdings auch erst im Oktober; er hat also noch etwas Zeit zur Recherche.
Den zweiten Vertrag übernimmt Paweł (pdziepak) Dziepak. Seine Aufgaben liegen noch tiefer im System: er möchte den CPU Scheduler verbessern und Caches besser nutzen, HyperThreading performanter machen und Stromsparfunktionen umsetzen. Alles Themen, die schon länger im Gespräch sind. Bisher fand sich allerdings niemand, der die Zeit hatte sich so tief ins System reinzudenken. Einzelheiten finden sich in Pawełs ersten Blogpost.
Beide Verträge laufen erstmal einen Monat. Paweł würde gern noch einen weiteren anhängen, Adrien nach Möglichkeit mehrere. Beides hängt davon ab, ob sich genügend Spender finden, um es zu finanzieren. Wer mithelfen möchte Haiku in diese beiden essentiellen Komponenten zu verbessern, kann bei Haiku Inc. dafür spenden. Neben einmaligen Spenden gibt es auch die Möglichkeit einen kleinen Betrag automatisch (und jederzeit kündbar) zu überweisen.
Humdinger,
07:42
- Labels:
Haiku,
Spenden,
Vertragsarbeit
0
Kommentare
Montag, 19. August 2013
Package Management - Status Update
Nach längerer Zeit hat Ingo wieder einen Blogpost über den momentanen Status des Package Managements geschrieben.
Danach haben sich Oliver und er in der letzten Zeit vornehmlich um Haikus Buildsystem gekümmert. Es ist nun wieder möglich Hybrid-Images zu erstellen, also Haiku Versionen, die mit gcc2 und gcc4 generierten Anwendungen zurecht kommen. Das gelingt nun sauberer als vorher: Früher musste man für gcc2/4 jeweils getrennt das Buildsystem konfigurieren, welches sich dann diverse Dateien aus der jeweils anderen Konfiguration ausborgte. Auch die Optional Packages der jeweils anderen Konfiguration wurde mitbenutzt.
Jetzt wird klar in primäre und sekundäre Architektur getrennt; das Buildsystem weiß selbst was mit welchem Kompiler gebaut werden muss. Aus den Optional Packages können redundante Daten entfallen.
Mit dieser Trennung ist man dann auch gut vorbereitet, wenn andere Architekturen offiziell von Haiku unterstützt werden, wie z.B. x86-64.
Ebenfalls interessant für neue Architekturen ist die Unterstützung von "Bootstrapping". Dabei werden keine schon vorhandenen Pakete heruntergeladen, sondern mittels HaikuPorter per cross-compiling komplett neu erstellt.
Genau das muss jetzt für noch für x86 gcc4 und x86-64 gemacht werden, bevor der Package Management Branch in Haikus Main Branch integriert werden kann.
Wer das alles schon mal ausprobieren will und Probleme im BugTracker melden möchte, für den gibt es wieder PM-Test-Images zum Herunterladen und z.B. per dd auf einen USB-Stick zu schreiben.
Ingo hat eine Wiki Seite erstellt, in der er die Änderungen für das Package Management festhält. Insbesondere die in der Zukunft für die Paketerstellung interessanten Regeln für .bep Dateien des neuen HaikuPorter sind für Entwickler einen Blick wert.
Neben diesen großen Fortschritten im Backend von HaikuPorter und dem Buildsystem, gibt es auch Neuigkeiten beim für den Benutzer sichtbaren Teil. Stephan Aßmus arbeitet unter dem Arbeitstitel "HaikuDepot" an dem grafischen Tool zur Verwaltung von Paketen. Mit ihm sollen bald Pakete online gefunden, deren Beschreibungen und Bewertungen angesehen und dann installiert und de-installiert werden. Wann immer Stephan die Zeit dazu findet, bringt er die Anwendung ein Stückchen weiter voran. Den aktuellen Code findet man im Haikus Main Branch, da es aber noch keine Verbindung zu einem (noch nicht existierenden) Repository/Depot gibt, haben die meisten Funktionen noch keine Wirkung und so fehlt HaikuDepot noch in den Nightly Images.
Hier ein Screenshot mit drei Testpaketen (Stand: hrev45972), der schon erahnen lässt wie simpel und elegant das Packagemanagement dem Benutzer präsentiert werden soll:
Humdinger,
11:29
- Labels:
Haiku,
Packagemanagement
0
Kommentare
Donnerstag, 15. August 2013
Leszeks Haiku Challenge
Leszek Lesner war vor langer Zeit Nutzer von BeOS, danach Zeta und das inoffizielle BeOS Max Edition. Als großer BeOS Fan startete er sogar die kleine Linux Distro "ZevenOS", die sich optisch an BeOS anlehnte. Haiku war von Anfang an auf seinem Radar und so hat er ab und zu die aktuellen Alphas angetestet. In seinen Haiku Screencasts zeigt er immer wieder mal wie man diverse Aufgaben unter Haiku erledigt und auch sein Techview Podcast beinhaltet oft eine kleine Haiku Rubrik.
Haiku ist mittlerweile so stabil, dass er sich nun zu einem Experiment entschloss: Ist Haiku bereits so alltagstauglich, dass man es eine Woche lang als Haupt-Betriebssystem nutzen kann?
Seine Erkenntnisse hält er auf Leszeks Blog fest. Heute hat er die Erfahrungen seines zweiten Tags veröffentlicht.
Humdinger,
18:31
- Labels:
Haiku
0
Kommentare
Montag, 12. August 2013
Haiku Down Under 2013
Wer mitten in der Nacht aufwacht und ums Verrecken nicht mehr einschlafen kann, oder wer einfach eine Extrem-Nachteule ist, für den ist das Treffen Haiku Down Under genau das Richtige. Am Sonntag, 18. August 2013 sind Sikosis und BeMark zum sechsten Mal in der University of Queensland in Brisbane, Australien. Dort präsentieren Haiku den Interessierten vor Ort und per UStream und im IRC (irc://irc.freenode.net/#haiku-au) dem Rest der Welt.
Für Europäer liegt Brisbane in einer ziemlich ungünstigen Zeitzone, wenn es um morgendliche Veranstaltungen geht. Hier das Programm für Haiku Down Under 2013 mit den entsprechend unchristlichen Zeiten:
2:00 - 2:20 : Introduction / Session 1 - State of Haiku
2:20 - 2:30 : Haiku in Action VI
2:30 - 2:40 : Lazarus Demo with BeMark
2:40 - 2:50 : Haiku Visualized
2:50 - 3:10 : cURL Just Wanna Have Fun
3:10 - 3:30 : Open Forum
3:30 - 3:40 : End of Conference then Lunch
Humdinger,
09:05
- Labels:
Haiku,
Veranstaltung
0
Kommentare
Mittwoch, 31. Juli 2013
BeGeistert 027 am 14./15. September 2013
Das 27. BeGeistert Treffen findet am Wochenende 14./15. September 2013 statt. Wie üblich trifft sich die Haiku Gemeinschaft in der Düsseldorfer Jugendherberge und tauscht sich über die neuesten Entwicklungen aus. Anschließend findet wieder eine Woche lang ein Code Sprint statt, bei dem interessierte Coder die Köpfe zusammenstecken um Haiku gemeinsam voranzubringen.
Wer mit dabei sein möchte, kann sich jetzt dafür unter BeGeistert.org registrieren. Ein offizielles Programm gibt's noch nicht; wenn das noch auftaucht, findet man weitere Infos in Haikus Event-Kalender.
Humdinger,
21:27
- Labels:
BeGeistert,
Haiku
0
Kommentare
Freitag, 31. Mai 2013
Package Management zum Ausprobieren
Wer mal ein bisschen mit dem gerade in Arbeit befindlichen Package Management (PM) rumspielen will, für den gibt es ein Test-Image zum Runterladen.
Vorsicht ist allerdings angeraten! Es handelt sich wirklich nur um ein Testsystem, das den gegenwärtigen Entwicklungsstand des PM zeigt. Es ist für den produktiven Einsatz nicht geeignet!
Um kein spezielles "makebootable" benutzen zu müssen, hab ich das Anyboot Image einfach auf einen USB-Stick dd'ed und den dann gebootet. Wer will kann das Testsystem dann ja per Installer auf eine Testpartition seiner Festplatte legen. [Edit: Den Installer darf man eben nicht benutzen, wie ich von Ingo erfahren habe, weil der noch nicht angepasst ist, würde der auch den Inhalt der Pakete tatsächlich ins Dateisystem schreiben. Also erst mal nur den USB-Stick booten...]
Meine dd-Kommandozeile war:
dd if=haiku-alpha-anyboot.image of=/dev/disk/usb/0/0/raw bs=1M
Den geneuen Pfad muss man natürlich anpassen. Hier ist wieder etwas Vorsicht angesagt, um nicht auf das falsche Gerät zuschreiben. Am besten trennt man vorher etwaige andere USB-Speichermedien...
Was einen nach dem Booten erwartet, sieht erstmal ganz gewöhnlich aus. In der Deskbar befinden sich die üblichen Menüs und Verknüpfungen zu den verschiedenen Programmen. So soll es ja auch sein, das PM soll für den Anwender ja möglichst transparent sein. Dass es sich um ein noch unvollständiges Testsystem handelt, hab ich erst mal nur gesehen, als ich gemerkt habe dass mein WLAN nicht funktionierte. Für einen kurzen Test ist das aber ja egal.
Wie einfach mittels PM Programme installiert und deinstalliert werden, kann man sehr schön so sehen:
Man öffnet im Tracker das Verzeichnis /boot/common/apps, in dem die gebundelten Anwendungen liegen, die nicht integraler Bestandteil von Haiku sind. Dann öffnet man das Verzeichnis /boot/common/packages, in dem die entsprechenden installierten Pakete liegen.
Nimmt man jetzt z. B. das Paket pe-2.4.3_hg602-3-x86_gcc2.hpkg und verschiebt es aus dem "packages" Verzeichnis beispielsweise auf den Desktop, verschwindet gleichzeitig das Verzeichnis "Pe" im Fenster "apps". Genauso schnell lässt sich Pe wieder installieren, indem man das Paket zurück verschiebt.
Das Ganze wird natürlich um einiges interessanter, wenn es um umfangreichere, meist von Linux portierte Pakete geht. Die haben ja die Tendenz alle möglichen Bibliotheken und andere Datenfutzel in diversen Verzeichnissen über die Festplatte zu verteilen. Hier ist das De/Installieren durch einfaches Verschieben einer Paketdatei sehr willkommen.
Eventuelle Konflikte, z. B. durch Bibliotheken unterschiedlicher Versionen, soll dabei ein Daemon im Hintergrund lösen. Der Benutzer soll davon möglichst nichts mitbekommen und nur in Ausnahmefällen belästigt werden, um beispielsweise dem Download von zusätzlich benötigten Paketen zuzustimmen. Ich glaube aber, das ist noch nicht vollständig implementiert. Zumindest konnte ich's aus Ermangelung entsprechender Pakete noch nicht ausprobieren. Pakete wie SDL oder Qt und die dafür geschriebenen Programme könnten da schöne Stresstests werden, könnte ich mir vorstellen. :)
Dieses Verteilen des Paketinhalts in die von der portierten Software erwarteten Verzeichnisse findet übrigens nur virtuell statt: Das packagefs gauckelt das nur vor, es wird also natürlich nicht wirklich jedesmal das Paket dekomprimiert und Dateien auf der Festplatte hin- und herkopiert.
Später wird es natürlich auch ein kleines GUI Tool geben, um alle verfügbaren/installierten Pakete bequem zu verwalten und online Repositories zu durchsuchen und die entsprechenden Pakete herunterzuladen etc. Aber dazu muss das Fundament natürlich erst mal perfekt funktionieren. Und dazu dienen ja die gerade laufenden spendenfinanzierten Vollzeitverträge.</zaunpfahl>
Mehr Informationen zum Packagemanagement findet man in dem entsprechenden PM-Wiki. Ich hoffe ich hab das Prinzip im Groben richtig verstanden und schreibe hier nicht zu viel Unsinn...
Humdinger,
10:21
- Labels:
Haiku,
Packagemanagement
0
Kommentare
Donnerstag, 30. Mai 2013
Spendenaktion für Vollzeitverträge
Haiku Inc. hat dieses Jahr die Möglichkeit das durch Spenden gesammelte Geld sinnvoll für die Entwicklung von Haiku auszugeben. Durch Spenden der vergangenen Jahre ist zwar ganz schön was zusammengekommen, doch leider fehlten bisher erfahrene Haiku Entwickler, die über längere Zeit auf ihrem Können entsprechende Bezahlung verzichten konnten, um Vollzeitverträge mit Haiku Inc. abzuschließen.
Das ändert sich jetzt. Oliver Tappe und Ingo Weinhold, die bereits in den vergangenen zwei Monaten vollzeit an Haikus Package Manager gearbeitet haben, können ihre Verträge verlängern.
Oliver Tappe tritt dabei sozusagen eine Halbtagsstelle an: 80 Stunden pro Monat wird er für nur 1.000 EUR weiter an Haiku arbeiten. Das ganze für erst mal vier Monate, also 320 Stunden. Jeden Monat wird er dabei zwei Wochen an Haiku arbeiten und zwei Wochen für einen anderen, regulär zahlenden Kunden.
Ingo Weinhold hingegen wird echt vollzeit, 160 Stunden pro Monat, an Haiku arbeiten, bei 40 EUR pro Stunde. Hier sind erst mal drei Monate geplant, dann geht Haiku Inc. das Geld aus...
Das Beste aber ist: Ingo ist einverstanden noch weitere Monate anzuhängen. Es hängt also nur von den Spenden der Haiku Community ab!
Neben der kürzlich geschaffenen Möglichkeit der Minispenden durch Goodsearch gibt es auch Wege über Bitcoin und Flattr. Natürlich gibt es auch noch das alt-bekannte PayPal. Hier ist neben der einmaligen Spende auch eine automatische monatliche Abbuchung möglich. Wenn hier viele Leute mitmachen, die 5-10 EUR im Monat für Haiku ausgeben können, wären Vollzeitverträge über Jahre gesichert.
Die Verträge werden sich erst mal weiter auf das Packagemanagement konzentrieren. Um es nahtlos in Haikus Master Repository und Buildsystem integrieren zu können, gilt es diese Aufgaben zu lösen:
Vervollständigen des Cross-buildings (z.B. für x86_64)
Hybrid-Images wieder ermöglichen (gcc2/4)
haikuporter: Prüfung der Package-Konformität implementieren
Alle Packages für alle Plattformen bauen
Vervollständigen vom Package Management Daemon (Abhängigkeiten auflösen, Nach-Installations-Arbeiten) und (CLI) Package Manager (Upgrades von Haiku)
Erstellen von Tools/Infrastruktur zum Herstellen/Management von Package Repositories
Integration der Package Repositories ins Buildsystem
Bootloader Feature: "Safe Mode" und "Booten einer alten Version"
Anpassen einiger Anwendungen (z. B. Expander) an ein schreibgeschütztes Dateisystem
Humdinger,
07:20
- Labels:
Haiku,
Packagemanagement,
Spenden,
Vertragsarbeit
0
Kommentare
Mittwoch, 29. Mai 2013
Packagemanager Statusreport
Ingo und Oliver haben jetzt ihre 160 bezahlte Stunden am Packagemanagement abgearbeitet - Oliver noch nicht ganz, weil er noch etwas durch sein vorheriges Projekt aufgehalten wurde und so nicht wie Ingo von Anfang an wirklich vollzeit bei der Sache war. Nach dem Eröffnungs-Blogpost und dem Zwischenstands-Report ist nun sozusagen der Schlussbericht zu ihrer Zwei-Monatsarbeit erschienen.
Ingo führt darin folgende Fortschritte seit dem Zwischenbericht auf:
Ästhetische Verbesserungen, Refactoring, um den Code einfacher unterhalten zu können.
Komfortablere Benutzung und neue Optionen, die insbesondere Portierungen mit haikuporter vereinfachen. So wird nun der Originalcode eines Ports in ein neues git Repository geschoben und die Haiku-spezifischen Patche hinzugefügt. So lassen sich Änderungen später einfach erkennen und anpassen. Viel bequemer als das alles immer von Hand zu machen.
Strengere Auswertung von Abhängigkeiten
Neue Features, insobesondere die Möglichkeit unterschiedliche Pakete eines Ports zu schnüren, beispielsweise ein Entwicklungs-Paket, ein Doku-Paket, ein Debug-Info-Packet etc.
Relativ viel Zeit wurde darauf verwendet die "Build-Rezepte" der von Haiku benötigten Softwareports zu erstellen. Obwohl oft bereits eine .bep Datei vorhanden war, musste viel angepasst werden, da Haikus Packagemanager flexibler ist was Dateipfade angeht. Auch wurde die Verzeichnis-Struktur geändert.
Nachdem nun fast alle Packages, die für das Herstellen eines Haiku-Images benötigt werden, erstellt wurden, konnte der PackageManagement-Branch zum ersten mal seit zwei Jahren auf den momentanen Haiku Main-Branch gezogen werden.
Desweiteren wurde das Package-Format verändert, so dass nun selbst der Bootloader als unkomprimiertes Package vorliegt, das direkt vom Stage-1-Bootloader angesprungen werden kann. Außerdem können Pakete nun Metainformationen enthalten, was globale Einstellungen oder Benutzereinstellungen angeht, "Unix" User- und Gruppeninformationen oder ob ein Skript nach der Installation ausgeführt werden soll.
Neben diesen neuen Features wurde das Format auch noch auf seine Komprimierbarkeit optimiert. Die Daten werden in 64kB Blöcke aufgeteilt und komprimiert. Anhand einer Art Inhaltsverzeichnis, kann das Package-Filesystem aber immer noch schnell auf die Inhalte zugreifen, ohne z.B. das komplette Paket dekomprimieren zu müssen. Das Package-Filesystem cached diese dekomprimierten Blöcke jetzt, was die Performance weiter verbessert.
Die Komprimierung ist dabei um einiges besser als bei zip, eher in der Liga von tar.gz. Theoretisch ließen sich für den Download bestimmte Packages weiter verkleinern, indem das Packet ohne Kompression erstellt und anschließend per xz zusammengepackt wird.
Während ihrer Arbeit tat sich ein Problem auf, mit dem die beiden nicht gerechnet hatten: Cross-compiling Pakete. Ganz früher enthielt das Haiku Repository den kompletten Code aller benötigten Programme. Nach und nach wurden diese Portierungen jedoch ausgegliedert und erst während dem Build geladen und im Image installiert. Das spart Zeit beim Kompilieren, die Programme können extern "maintained" werden und sie müssen nicht in Haikus jam-basiertes Buildsystem integriert werden.
Der Nachteil ist natürlich, dass Portierungen auf andere Plattformen schwieriger geworden ist, da erstmal Pakete der Portierungen der benötigten Programme vorhanden sein müssen. Schlimmer noch, einige Pakete werden gebraucht, um Haiku selbst überhaup kompilieren zu können (z.B. der Kompiler...).
Um dieses Problem zu lösen, müssen diese essentiellen Pakete erstmal auf einer anderen Platform erstellt werden, also braucht man eine Cross-Compile-Umgebung.
Ingo gibt folgende Anleitung, wie man Haiku so von Null aufbaut:
Man konfiguriert den Haiku Build wie gewohnt, inkl. die Erstellung eines Cross-Compilers.
Man baut "haiku_cross_devel.hpkg", das die Haiku Header, libroot und den Glue-Code enthält, also alles um Software für die Zielplattform Haiku erstellen zu können.
Jetzt schaut man in das haikuports.cross Repository. Hier befinden sich alle "Build-Rezepte" die man benötigt, um die Programme zu erstellen um Haiku zu bauen. Mit diesen Rezepten baut man mittels haikuporter jetzt die nötige Software, inkl. der haiku_cross_devel package.
Jetzt baut man ein minimales Haiku, inkl. der cross-built packages.
Dann bootet man dieses Mini-Haiku und baut alle Packages.
Jetzt sind alle benötigten Packages vorhanden und man kann ein komplettes Haiku wie gewoht bauen.
Zur Zeit muss man diese Cross-Building-Packages noch unter Haiku bauen, wegen dem benötigten Package-Dateisystem und den Features zum Lösen von Abhängikeits durch haikuporter.
Diese ganze Cross-Kompiliererei wird in Kürze nötig, da es bisher nur x86 gcc2 Pakete gibt, bald aber auch gcc4 und x86-64 Pakete benötigt werden.
Es ist also noch viel zu tun... Da trifft es sich gut, dass Ingo und Oliver ihre Verträge verlängern konnten. \o/
Humdinger,
10:16
- Labels:
Haiku,
Packagemanagement,
Vertragsarbeit
0
Kommentare
Samstag, 11. Mai 2013
Mini-Spenden per GoodSearch
Haiku Inc. ist seit neuestem bei GoodSearch gelistet. GoodSearch ist eine Suchmaschine auf Yahoo-Basis, bei der für jede Suchanfrage US$0.01 an eine Organisation gespendet wird, die sich der Benutzer aussuchen kann. Ausgenommen von dieser Regelung sind Suchen in den Kategorien "Bilder" und "Videos", Suchen nach bestimmten URLs oder innerhalb einer Site, oder wenn man nach demselben Begriff innerhalb von 24 Stunden sucht. Alle Ausnahmen sind in den FAQ gelistet.
Mal sehen, ob das eine relevante Einnahmequelle für Haiku werden kann. Wenn da hundert Leute jeden Tag 5 oder 6 mal was Suchen, kommen im Jahr auch gute $2.000 zusammen. Ich werde es auf alle Fälle mal ausprobieren und habe GoodSearch zu meiner Startseite im WebPositive gemacht. Da GoodSearch natürlich werbefinanziert ist und man eingeloggt sein muss, um die 1-Cent-Spende zu bekommen, empfiehlt es sich wohl ein Profil unter Pseudonym mit Wegwerf-Mailadresse anzulegen...
Humdinger,
10:50
- Labels:
Haiku,
Spenden
0
Kommentare

