13 lutego, 2014

Posted In: I-Nex, Nowe wersje, Uncategorized

Tagi: , , , , , , , , , , ,

Od kilku dni pracuję nad łatwiejszym sposobem kompilacji I-Nex oraz nad wyodrębnieniem poszczególnych jego składników. Program od zawsze kompilowany był jako jeden program, bez wyodrębniania składników, w kolejnej wersji ma się to jednak zmienić. I-Nex zostanie tak jak dotychczas w jednym pakiecie deb, tylko sposób kompilacji przebiegać będzie w trzech etapach.

I-Nex od początków swego istnienia składał się z dwóch składników, program pisany w gambas oraz pastebinit pisany w python.

Pastebinit służy do wysyłania raportów na serwisy nopaste. I-Nex w ppa posiada zintegrowany w pakiecie, jednak już w repozytoriach suse, jest on jako zależność programu.

Trzecia część to moduły pisane w C, których zadaniem jest zwracanie danych w formacie JSON.

W każdym systemie budowania pakietów, czy to rpm, deb oraz tar.xz w przypadku ArchLinux-a. Każdy z tych systemów posiada swój własny szablon, na którego podstawie system budowania pakietów, wie co ma robić i w jakiej kolejności.

Pakietowanie deb jest to złożenie kilku plików w katalogu ./debian i z mojego punktu widzenia, jest to jeden z najtrudniejszych a za razem najłatwiejszych systemów pakietowania, w rpm jest to plik .spec a w ArchLinux PKGBUILD, są to pojedyncze pliki które odpowiadają za całość, nie tak jak w przypadku deb.

Moim zadaniem jest przygotować system który pozwala na wyodrębnienie składników, pozwolić na instalacje stron man, docs itp, bezpośrednio za pomocą Makefile.

Na tę chwilę, by skompilować I-Nex, potrzeba uruchomić w katalogu cd ./src

./configure, następnie przejść do katalogu nadrzędnego cd .. i wykonać make.

Końcowy etap wyodrębniania składników ma pozwolić na swobodne budowanie i-nex, i-nex-paste oraz i-nex-utils. Tylko na potrzeby pakietowania dla innych dystrybucji.

Tyle na temat standardów.

Kolejna wersja 0.6.4, prawdopodobnie przyniesie zmiany i nowości odnośnie benchmarków. I-Nex będzie w stanie pokazać cpu score względem innych procesorów z bazy, bazy którą trzeba najpierw utworzyć.

Mały zrzut na dziś:

02132014144427855

24 grudnia, 2013

Posted In: I-Nex, Nowe wersje, Uncategorized

Tagi: , , , , , , , ,

Po miesiącu prac, specjalnie na święta chciałem przygotować kolejną wersję. W pisaniu miałem ponad tydzień przerwy, ale przerwa jednak nie przeszkodziła mi w wprowadzeniu diametralnych zmian w programie.

Czasami zastanawiam się czy to wszystko co mogłem zrobić, jednak jak widać, okazuje się że nie wszystko. Zawsze znajdzie się coś co można dodać, poprawić, ulepszyć.

I-Nex został wydany dziś rano. Brakuje tylko jeszcze udostępnienia go na sourceforge, i wtedy mogę powiedzieć że idę jeść kolacje wigilijną.

Czas na informacje o zmianach w wersji, względem 0.5.6

Dodano zmienną ${python:Depends} do pliku debian/control
Fix: Ponowne użycie maksymalnej kompresji XZ na poziomie 9 dla pakietów deb.
Fix: Zastąpienie wykonywania poleceń rm w powłoce na rzecz funkcji Kill „katalog/plik”
Powoduje to szybsze wykonanie się programu.

Add: Dodano możliwość zapamiętywania położenia ostatnio zapisywanych zrzutów ekranu oraz katalogu w którym zapisywany był report.txt.

Fix: Naprawiono nie pojawienie się okna I-Nex po kliknięciu krzyżyka zamknij zamiast przycisku Close.

Add: Dodano grafiki „Powered by” do zakładki System.
Dla przykładu: W przypadku wykrycia dystrybucji Ubuntu i aktywnej sesji środowiska KDE, I-Nex przedstawi grafikę „Powered by” Kubuntu.
Analogicznie dla Mint oraz innych środowisk jak XFCE, Fluxbox…
Fix: Zmniejszono rozmiar obrazów przedstawiających logo dystrybucji „Powered by” aby zmniejszyć tym rozmiar pliku wykonywalnego jak i pakietów deb czy też samorozpakowującego się archiwum makeself.

Fix: Naprawiono wyświetlanie informacji w karcie System.
Tekst od lewej przesunięty o 3 miejsca.
Obramowanie: Wypukłe
Czcionka: pogrubiona o rozmiarze 8.

Add|Fix: Przebudowano od podstaw system generowania raportów.
Został wzbogacony o dodatkową ilość możliwych raportów.
Wyciąganie danych z programu jak i z plików systemowych znajdujących się w boot, etc i poleceń tj. lsusb, dmesg, lspci…
* /proc/modules, /proc/cmdline, /etc/default/grub
* lspci, lsusb. dmesg, partitions, scsi, dma, mtrr, devices, diskstats

Fix: Naprawiono build-deb do współpracy z repozytorium GIT.
Pobieranie informacji o aktualnej rewizji.
Fix: Zostały posortowane serwisy nopaste w oknie generowania raportów.
Add: Do makefile, funkcja self:
Dodano tworzenie pięciu samorozpakowujących się archiwów I-Nex.
Zależnie od kompresji tworzone są instalatory self extract:

3504kb i-nex.xz.run
4260kb i-nex.pbzip2.run
4372kb i-nex.bzip2.run
4720kb i-nex.gzip.run
7212kb i-nex.unixcompress.run

Update: Zaktualizowano skrypt makeself do wersji 2.2.0
Add: Dodano nowe pozycje do zakładki Mobo.
Fix: Naprawiono wysyłanie raportów na serwis fpaste.org
Add: Dodano wysyłanie raportów na serwis paste.opensuse.org
Fix: Zmieniono rozmiar pól tekstowych w zakładce Drives na potrzeby:
wyświetlania większej ilości informacji do zakładki Drives.
Fix: Naprawiono powielanie się mount width w zakładce Drives.
Fix: Naprawono szerokość ostatniej kolumny w UDisks GUI.
GridView1.Columns[5].Width = 250 to 400 If drive mount width UUID
Fix: Naprawiono powielanie się informacji o systemie plików w zakładce Drives.
Fix: Naprawiono wyświetlanie informacji o karcie graficznej, w przypadku gdy I-Nex został uruchomiony na maszynie VMware.
Add: Dodano i-nex.spec na potrzeby rpmbuild
Fix: Zmieniono format pakietowania z quilt do native.
Fix: Usunięcie możliwości tłumaczenia programu I-Nex na inne języki.
Fix: Usunięcie niepotrzebnych plików .po, .pot.
Add: Do okna raportów dodano przycisk który umożliwia bezpośrednie skopiowanie adresu URL do showka.
Fix: Usunięto z raport dla unity_support_test
Fix: Naprawiono położenie loga procesora oraz rozmiar wszystkich plików graficznych.
Add: Do debian/rules dodano
override_dh_installmenu:
dh_installmenu –noscripts
W celu użycia istniejących skryptów aktualuzujących bazę plików desktop.
Add: Do debian/control dodano zmienną ${shlibs:Depends} dla libc6
Add: Dodano pełny opis programu I-Nex do debian/control
Fix: W pliku debian/control zmieniono adres informujący o tym gdzie utrzymywany jest kod źródłowy I-Nex.
Fix: Drobne poprawki skryptu Pastebinit.

Wesołych świąt

6 grudnia, 2013

Posted In: Nowe wersje, Uncategorized

Tagi: , , , , , , , , , ,

Od wczoraj I-Nex dostępny jest w repozytorium Daily z naprawioną oraz przebudowaną od podstaw funkcjonalnością generowania raportów oraz wysyłaniem całości na serwisy nopaste.

Całość została oparta o moduły, za każdą zakładkę odpowiada osobny, co pozwala bez problemów w przyszłości budować nowe moduły, w przypadku gdyby kod głównego okna I-Nex znacząco się zmienił.

Główne okno generowania raportów

Jak widać na zrzucie ekranu po lewej stronie moduły zostały podzielone na dwie strony.

Po lewej stronie znajdziemy możliwość tworzenia raportów z zakładek które obecnie zawiera I-Nex.

Po prawej stronie zaś mamy możliwość dołączenia informacji ze zwracanych danych przez wykonanie poleceń systemowych czy wydobyciu informacji bezpośredo z plików konfiguracyjnych tj. /etc/default/grub czy logów. /var/log/dmesg. Dla przykładu lspci, lsusb, dmesg.

Pojawił się także button który pozwala na bezpośrednie skopiowanie adresu URL do naszego raportu, w przypadku gdy potrzebujemy komuś na szybko wysłać link.

copythislink

Nowy system reportów znajduje się już jak pisałem w repozytorium daily i za kilka tygodni, gdy kod zostanie sprawdzony pod kątem występowania błędów, wydana zostanie wersja stabilna, która prawdopodobnie będzie oznaczona numerem 0.5.8, a planowana data wydania to 25.12.2013.

 

28 listopada, 2013

Posted In: Nowe wersje, Uncategorized

Tagi: , , , , ,

inex058

 

I-Nex pomimo szybkiego rozwoju, posiada także wiele zaniedbanych funkcjonalności jak i funkcjonalności dublujących się w kodzie programu.

Jedną z nich jest, możliwość generowania raportów. Dlatego też w kolejnej wersji programu, która zostanie oznaczona numerem 0.5.8, postaram się wnieść możliwość generowania większej ilości raportów, a także zaprogramować interfejs dla chcących dodawać dodatkowe moduły.

Interfejs do dodawania dodatkowych modułów będzie związany wyłącznie z generowaniem raportów, moim zamiarem jest udostępnić szablon w formacie JSON, który będzie zrozumiały dla każdego, kto chce pomóc w rozwoju projektu, niezależnie od tego jakiej dystrybucji używa.

Obecnie mam kilka wizji tego, jak ta funkcja ma wyglądać. Na tę chwilę raporty są tworzone w dosyć problematyczny sposób, który uniemożliwia mi jego dalszy rozwój.

Jednakże nie do końca tak jest, nie chcę pisać czegoś, co za moment zastąpię innym mechanizmem.

I-Nex sam w sobie nie posiada kodu który odpowiada za wysyłanie raportów na serwisy nopaste. Korzysta on z projektu pastebinit, który jest odrębnym projektem, nie związanym w żaden sposób z I-Nex. Chcę przez to powiedzieć że, developerzy pastebinit nie wiedzą pewnie że jakaś aplikacja dołączyła kod ich programu do swojego. Oczywiście zamiast dołączenia kodu pastebinit, mogłem ustawić zależności tak, aby przy instalacji pastebinit był pobierany osobno, ale po co? Im mniej zależności, tym szybsza instalacja.

 

Wersja 0.5.8 zostanie wydana przed świętami a ja też zajmę się okresem świątecznym po jej wydaniu.

PS: Co sądzicie o tym by wprowadzić benchmarki do I-Nex?

 

 

 

Najnowsze komentarze

Reklama

OSSPlanet