Blog (45)
Komentarze (703)
Recenzje (0)
@DraqunCo można zrobić podczas deszczowych wakacji - czyli ILC v0.05

Co można zrobić podczas deszczowych wakacji - czyli ILC v0.05

25.08.2011 23:42

Już od jakichś 18 miesięcy pracuję sobie nad pewnym małym projektem. Install List Creator to pomysł jeszcze z czasów, gdy najlepszym programem jaki potrafiłem zrobić było Hello World a w Linuksie polecenie "cd ~" było magicznym poleceniem. Program ten miał za zadanie instalować programy, których nazwy byłyby na liście.

Pierwsza wersja programu ukazała się gdzieś około 18 miesięcy temu. Po dwóch tygodniach pisania programu w C otrzymałem program, który spełniał po części moje wymagania. Oczywiście nie był to jakiś wybitny program. Wykorzystywał narzędzia takie jak aptitude, emerge, equo i z ich pomocą instalował pakiety, których nazwy były umieszczone w pliku tekstowym. Ogólnie nie ma się czym chwalić, ale dzięki takiej zabawie nauczyłem się lepiej języka C, poznałem bibliotekę ncurses a także dużo lepiej samego Linuksa.

Dziś 18 miesięcy później dalej od czasu do czasu grzebię w kodzie tego programu. Właściwie to 3 dni temu zacząłem naukę bash'a. Wczoraj przypomniało mi się, że widziałem gdzieś użycie jakiejś fajnej biblioteki, która zezwala na pisanie w bashu aplikacji okienkowych. Google oczywiście najczęściej odsyłało pod narzędzie dialog ale tak się składa, że uparta ze mnie bestia i znalazłem zenity.

Kiedy już miałem wszystko co trzeba wywołałem zenity -‑help i byłem w niebie. Było tu wszystko i więcej niż potrzebowałem do tego aby mój program, stał się pełnoprawnym programem okienkowym napisanym tak aby zwykły user mógł z niego korzystać bez problemu.

Tutaj można pobrać aktualną wersję programu. Testowałem go na Ubuntu 11.04 i działa ok. Na Sabayon 5 w wersji Live działało dobrze z narzędziem emerge. Narzędzie equo stawiało twardy opór, ale znając życie bez problemu będzie działać.

Domyślnie program za pomocą narzędzie lsb_release wykrywa dystrybucję, dobiera do niej menedżer pakietów i wykonuje instalację. Gdy nie znajdzie narzędzie lsb_release pyta o nazwę dystrybucji. Jak na porządny program przystało, można podać również komendę do innego menedżera pakietów i program również wykona swoje zadanie.

Wszelkich zainteresowanych prosiłbym o pobranie i zostawienie w komentarzach zdania na ten temat.

PS. Dla bardziej zainteresowanych można pobrać jeszcze starą wersję napisaną w C i zobaczyć, jak wielka jest różnica w ilości kodu.

Pozdrawiam.

Wybrane dla Ciebie
Komentarze (0)