# [OT] Monotheka

## mdk

W wolnych chwilach piszę aplikację do kompleksowego zarządzania kolekcją DivX'ów/DVD/etc. Piszę, bo nie znalazłem niczego, co by mnie w pełni satysfakcjonowało. Screenshoty z tego jak to wygląda możecie zobaczyć:

http://www.mdk.org.pl/linux/monotheka.png

http://www.mdk.org.pl/linux/mist.png

(Screenshoty są troche stare, w rzeczywistości filmy mają już więcej "pól"). 

Założenia programu są następujące:

* Maksymalne zintegrowanie z Gnome'em, kompatybilność z HIG. 

* Prostota w wykonywaniu najczęstszych czynności (wyszukiwanie filmu, wypożyczanie filmu, wyszukiwanie wszystkich filmów danego reżysera, etc.)

* Dodawanie/Edytowanie/Kasowanie filmów. 

* Konfigurowalne importowanie bazy filmów z plików tesktowych CVS 

* Eskportowanie kolekcji do HTML'a przez konfigurowalne szablony. 

* Eksportowanie do pliku tekstowego.

* Interfejs plug-inów do zautomatyzowanego wprowadzania filmów do bazy. Plug-iny pisane w C. Dwa plug-iny przewidziane na początek:

- Automatyczne pobieranie "danych" filmu na podstawie tytułu z IMDB (Internet Movie Database)

- Automatyczne pobieranie informacji o kodeku/jakości/dźwięku z pliku AVI (Gstremear).

* Filmy w bazie mogą być oznaczane flagami ("rzadki", "uszkodzona płytka", "zagubiony", "do skopiowania", "mój rip", etc.).

* Baza danych przechowywana w statycznym pliku (sqllite)

* Lokalizacje językowe całego programu. 

* Szybkość.

* Program napisany w mono + gtk-sharp + gnome-sharp.

Zastanawiam się, czego jeszcze byście oczekiwali od takiej aplikacji. Nie chcę pisać "totalnego kombajnu", ale program musi być maksymalnie używalny. Obecnie zastanawiam się nad możliwością dodawania do filmów okładek/plakatów filmów. Sam tego nigdy nie robię, ale może dla kogoś to jest ważne (?). 

Pierwszy "release" programu przewiduję w ciągu najbliższego miesiąca. Sporo jest już zrobione.

----------

## cielak

z checia potestuje   :Laughing:  a i szczerze mowiac, kto dodaje okladki i plakaty,(po co?sic!) wydaje mi sie to nie potrzebne, a w zamian moze dorzucic sortowanie filmow (alfabetycznie, data etc.) ?

----------

## Pepek

No miodny programik.  :Smile:  Sam zawsze spis, co kto mojego ma (a mam tego ponad 360 tytułów) trzymałem w pliku txt, potem w OOo. Teraz będzie do tego odpowiedni programik. Cool. Możesz na mnie liczyć jako na testerka.

Pozdrówki.  :Cool: 

----------

## Raku

z nieba mi spadłeś !!

tylko czemu maksymalna integracja z gnome?

nie chcę instalować połowy gnome, żeby to pod KDE uruchomić  :Sad: 

(tak btw - da się uruchomić to pod KDE?)

----------

## fallow

hm , mnie sie pododba  :Smile: 

przydaloby mi sie w koncu skatalogowac jakos to wszystko  :Smile: 

cheers.

----------

## mdk

 *Quote:*   

> 
> 
> Wydaje mi sie to nie potrzebne, a w zamian moze dorzucic sortowanie filmow (alfabetycznie, data etc.) ?
> 
> 

 

To jest oczywiście przewidziane/zrobione + możliwość wybierania kolumn do wyświetlania w głównym widoku. Przykład działania tutaj

 *Quote:*   

> 
> 
> tylko czemu maksymalna integracja z gnome? 
> 
> (tak btw - da się uruchomić to pod KDE?)
> ...

 

Hmm... obecnie się da, "dependencies" to gtk + sqllite (i mono oczywiście). Lada chwila jednak przestanie się dać, bo wejdzie gnome-sharp (czyli tak naprawdę biblioteka glib gnome'a). Dlaczego? 

* Glib dodaje wiele widgetów, których nie ma w standardowym GTK (roszerzone okienka "open file", parę widgetów typu drag&drop, stock-ikony Gnome'a, automatyczne okienka about, automatyczne łącza które odpalają systemową przeglądarkę Gnome...) 

* Glib ułatwia lokalizację programu. Można tworzyć np. struktury typowych menu (Plik , Ustawienia, Widok...), które od razu przejmują nazwy z ustawień systemowych/językowych.

* gconf-sharp (pochodna gnome-sharp) pozwala na korzystanie z rejestru Gnome'a (gconf) to przechowywania wszystkich ustawień aplikacji. Wygodne zarówno dla programisty, jak i użytkownika. 

Tyle w kwestii merytorycznej. W kwestii retorycznej (dlaczego akurat dla Gnome'a, a nie KDE) to oczywiście kwestia gustu. Ja akurat używam Gnome, więc piszę dla Gnome  :Wink: 

Oczywiście - da się taką aplikację napisać tak, żeby nie miała rozszerzonych dependencies Gnome'a (suche GTK, ustawienia w pliku tekstowym, etc.). Tylko nie wiem, czy warto... (w tym przypadku). Ja się łapię na tym, że powoli wymieniam aplikacje "uniwersalne" na typowo Gnome'owe (muine zamiast xmms, totem zamiast mplayera, ostatnio nawet epiphany zamiast firefoxa). Tzw. integracja + jednorodność desktopu jest chyba bardzo ważna.

Ogólnie jest to (i będzie jeszcze długo) spory problem dla każdego developera (a w szczególności - dla developerów komercyjnych). Pisać dla jednej platformy (Gnome/KDE) czy pisać uniwersalnie?

----------

## AdamW

 *mdk wrote:*   

> Pierwszy "release" programu przewiduję w ciągu najbliższego miesiąca. Sporo jest już zrobione.

 

Witam.

Bardzo chętnie przyłączę się jako beta tester  :Very Happy: 

Pozdrawiam.

----------

## smyqlek

z mila checia przetestuje program  :Smile: 

----------

## watex

No wspanale narzedzie sie szykuje.

Z wielka checia potestuje :]

----------

## piotrek_123

Ja też się z checią przyłącze, bo nie ukrywam, że to przydatna rzecz. 

A może udałoby się coś wykrzesać dla mp3/wma/ogg ?

Pozdroofki

----------

## yemu

 *piotrek_123 wrote:*   

> A może udałoby się coś wykrzesać dla mp3/wma/ogg ?

 

nie wiem dokladnie co bys chcial robic z tymi plikami, ale do zarzadzania kolekcja muzyki i sluchania to najlepszy jest moim zdaniem amarok.

pozdr

y

----------

## piotrek_123

yemu, dzięki zaraz zemerguje i sprawdzę co i jak  :Smile: 

Pozdroofki

<!--Edit//-->

Nie, jednak amarok nie jest tym czego poszukuje..

Potrzebuje prosta bazę danych z gui z mozliwoscia dodawania, modyfikacji i usuwania rekordow o albumach i utworach..

No nic, thx za pomoc.

Pozdro

----------

## Raku

piotrek_123:: spróbuj tego programu do katalogowania płyt CD z mp3

to CdCat - najlepsze co do tej pory znalazłem do katalogowania mp3. Jak macie coś lepszego, podajcie (jeśli nie będzie do tego ebuilda, to mogę dorobić)

----------

## piotrek_123

Thx, oryginalny gentoowy z potage nie dziala, a ten ebuild z Twojego linka wykrzacza się na paczy dla makefile..

Pozdroofki

----------

## Raku

SOA #1

próbujesz zainstalować wersję 0.99?

no i jeszcze jedna uwaga - ebuild jest przygotowany pod athlonaXP (druga łata poprawia flagi na uzywane przeze mnie). Możesz sobie wyedytować ebuilda i zahaszować drugą łatę (pierwszą generalnie też, bo zmienia domyślny katalog do instalacji z /usr/local na /usr)

----------

## psycepa

a nie dalo by sie walnac wersji w ncurses ??:>

ja akurat preferuje konsole  :Wink: 

oczywiscie nie nalegam ale gdybys mial ochote .... :]

----------

## mdk

Dzięki za zainteresowanie, postaram się wypuścić coś do beta-testów jak najszybciej.

Zrobiłem dobry intefrejs pluginów, i chcę wszystko zrobić maksymalnie zmodularyzowane. Tzn. będą osobne pluginy do:

- Masowego importu

- Masowego eksportu

- Automatycznego wypełniania pól bazy

Pisanie nowych pluginów będzie b.proste (C#) i łatwo będzie dodać nową funkcjonalność.

----------

## psycepa

piszesz program w C Sharp ?? x_X

----------

## mdk

 *Quote:*   

> 
> 
> piszesz program w C Sharp ?? x_X
> 
> 

 

Tak, mono dokładniej. Bardzo inspirująca platforma. Częśc będzie napisana w C (pluginy, managed -> native) bo niektórych rzeczy nie ma jeszcze mono np. (gstreamer-sharp).

----------

## mdk

Release 0.0.1 jest już za rogiem. Pozostało tylko zrobić skrypty instalacyjne + ebuilda. 

Na razie zrobiłem małe flashowe demo z działającego programu. "Pokaz możliwości". Można ściągnąć z:

http://monotheka.enove.pl/demos/monotheka_demo_1.zip (~6 minut, 11 MB)

W środku archiwum jest plik SWF + index.html. Należy uruchamiać przez index.html w przeglądarce z zainstalowanym flashem.

----------

## joker

kurcze, super programik, czekam z niecierpliwoscia!

i takie pytanko, czy opis filmu jest mozliwy do pobrania z internetu? z jakiejs bazy? czy tylko recznie go mozna wpisac? i fajnie by bylo jeszcze informacje odnoscie pliku video (rozdzielczosc, kodek itp) tez pobierac z netu o ile jest to wogole mozliwe

----------

## Raku

mdk pisał o pobieraniu inforamcji o filmie z imdb bodajże. Ale inforamcje o kodeku z internetu? Jak to sobie wyobrażasz? Skąd internet ma wiedzieć jaką wersję filmu akurat ty posiadasz?

----------

## joker

 *mdk wrote:*   

> - Automatyczne pobieranie "danych" filmu na podstawie tytułu z IMDB (Internet Movie Database)
> 
> - Automatyczne pobieranie informacji o kodeku/jakości/dźwięku z pliku AVI (Gstremear).
> 
> 

 

jak to mi umknelo? czyli wszystko bedzie co trzeba  :Smile: 

----------

## Raku

ale gstreamer ci chyba z internetu nie ściągnie danych o kodeku, rozdzielczości, itp. ?

----------

## joker

przeciez napisane jest ze bedzie pobieral z pliku avi

----------

## Raku

no mi chodziło o tą twoją wypowiedź:

 *joker wrote:*   

> ... i fajnie by bylo jeszcze informacje odnoscie pliku video (rozdzielczosc, kodek itp) tez pobierac z netu o ile jest to wogole mozliwe

 

----------

## mdk

Dla porządku - jest już pierwszy Release.

----------

## ryszardzonk

Witam

1) Czym program "Monotheka" roznil by się od programu "CDCollect" http://cdcollect.sourceforge.net/index.php ? W zalozeniach (projektowany pod Gnome przy uzyciu MONO) widze, ze sa identyczne, wiec moze autorzy by polaczyli wysilki zamiast doublowac swoja prace? Osobiscie nie mam nic przeciwko prowadzeniu osobnych projektow, lecz IMHO połaczenie wysilkow dało by przynajmniej w zalozeniu jakim jest praca grupowa lepsze rezultaty  :Very Happy: 

2) Odnosnie twojego pierwszego postu w ktorym przedstawiasz wizje programu i pytasz o dodatkowe funkcje jakie by uzytkownicy oczekiwali. Oczywiscie ze jak by chwile pomyslal jakies by sie znalazly, lecz twoja lista jest na tyle wycerpujaca " http://monotheka.enove.pl/index.php?page=features ", ze mam nadzieje ze uda sie je wszystkie dodac do wersji 1.0  :Cool:   w czym zycze powodzenia  :Wink: 

----------

## mdk

1) Chyba nie bardzo przyjrzałeś się temu CDCollect. To jest program do katalogowania zawartości płytek CD, a nie zarządzania bazą filmów. Jeżeli ktoś ma parę filmów, to może to mu wystarcza. Ale jeżeli zbierasz/wypożyczasz filmy, to w niczym ci nie pomoże. Chodzi mi o proste operacje typu:

- Wyświetlenie wszystkich filmów danego rezysera

- Sprawdzenie, czy do danego filmu mam polskie napisy

- Wyeksportowanie katalogu do jakiejś sensownej listy HTML/TXT by wysłać ją znajomym

etc.

CDCollect ma podejście per-płytka, a Monotheka ma podejście per-film (który może być np. na kilku płytkach).

2) Lista "features" które sobie wymyśliłem jest bardzo ogólna, i nie ma tu żadnej rewolucji. Oczekiwałem raczej jakiś prostych pomysłów związanych z codziennym użytkowniem. Na przykład dzisiaj wpadłem na to, że fajnie by było jakby w bazie było (automatycznie wypełniane) pole pt. "data wypożyczenia". A filmy wypożyczone (np) dłużej niż 30 dni były automatycznie podkreślane w głównym widoku.

----------

## Pepek

 *mdk wrote:*   

> 2) Lista "features" które sobie wymyśliłem jest bardzo ogólna, i nie ma tu żadnej rewolucji. Oczekiwałem raczej jakiś prostych pomysłów związanych z codziennym użytkowniem. Na przykład dzisiaj wpadłem na to, że fajnie by było jakby w bazie było (automatycznie wypełniane) pole pt. "data wypożyczenia". A filmy wypożyczone (np) dłużej niż 30 dni były automatycznie podkreślane w głównym widoku.

 

A ja z kolei wpadłem na pomysł, że może mogłoby się pojawić takie cuś :

Do każdej osoby, której wypożyczamy film można by było przypisać adres e-mail, a w ustawieniach programu można by było wybrać ilość dni, po której upłynięciu od wypożyczenia filmu film ten nie tylko byłby podkreślany w głównym widoku, ale także byłby generowany i/lub automatycznie wysyłany mail do osoby, której ten film pożyczyliśmy z przypomnieniem, że ma już go długo i/lub z prośbą o zwrot. Może trochę rozbudowane by to było, ale fajne.  :Very Happy: 

P.S. Jedno pytanko. Po kiego grzyba Monothece do działania jest potrzebne całe Mono ? Jak zobaczyłem ile u mnie trzeba by było dla monotheki instalować, to mi się odechciało. Nie można jakoś uprościć/ograniczyć zależności ?

Pozdrówki.  :Cool: 

----------

## Robert W.

 *mdk wrote:*   

> Dla porządku - jest już pierwszy Release.

 

Widze że nikt nie porusza tego tematu, więc jak poruszę. A może u mnie tylko to ma miejsce?

Otóż nie mogę dodać filmu. Klikam: Dodaj, następnie: Get From i nic sie nie dzieje. Powinno chyba w tym momencie pojawić sie jakieś okno z mozliwością wyboru ścieżki do filmu. Ale nic takiego się nie dzieje.

----------

## mdk

 *Quote:*   

> 
> 
> Klikam: Dodaj, następnie: Get From i nic sie nie dzieje.
> 
> 

 

Uhm. Po prostu nie ma jeszcze pluginu, który by to obsługiwał... trzeba ręcznie  :Wink:  W tym tygodniu będzie nowy release z wieloma zmianami, może już coś tu będzie.

 *Quote:*   

> 
> 
> A ja z kolei wpadłem na pomysł, że może mogłoby się pojawić takie cuś...
> 
> 

 

Pomysł wart grzechu. 

 *Quote:*   

> 
> 
> P.S. Jedno pytanko. Po kiego grzyba Monothece do działania jest potrzebne całe Mono ?
> 
> 

 

Hmm... Monotheka jest pisana docelowo dla GNOME'a i przez Mono korzysta z komponentów GNOME'a (gconf, glade, glib, etc...). Wychodzę z założenia, że jak ktoś korzysta z GNOME'a jako swojego głównego środowiska pracy, to ma/za chwilę będzie i tak miał mono (ze względu na inne b. dobre aplikacje napisane w Mono - fspot, beagle, muine, tomboy...). Dystrybucje oparte o GNOME instalują mono w standardzie (np. Ubuntu czy NLD). 

Jak ktoś nie korzysta z GNOME'a, to raczej nie ma sensu, żeby instalował Monothekę. Oczywiście - da się taki program napisać bez zależności GNOME'a, ale wcześniej pisałem dlaczego nie jestem tym zainteresowany.

----------

## ryszardzonk

 *mdk wrote:*   

> 1) Chyba nie bardzo przyjrzałeś się temu CDCollect. To jest program do katalogowania zawartości płytek CD, a nie zarządzania bazą filmów... CDCollect ma podejście per-płytka, a Monotheka ma podejście per-film (który może być np. na kilku płytkach). 

 

Najwyrazniej masz racje. Sa to fundamentalne roznice

 *mdk wrote:*   

> 2) Lista "features" które sobie wymyśliłem jest bardzo ogólna, i nie ma tu żadnej rewolucji. Oczekiwałem raczej jakiś prostych pomysłów związanych z codziennym użytkowniem. 

 

Ogolna moze i tak, ale za to dajaca duze pole do popisu. Domniemalem, wiec ze prosby o "ficzery" tak naprawde byly na planie dalszym, stad te zyczenia dokonczenia progromu zgodnie z podanym opisem  :Smile: 

P.S. Wlasnie zdecydowalem zainstalowac Mono i zaraz po nim Monotheke. Zobaczymy, moze cos sie da wymyslec ciekawego do programu  :Wink: 

----------

## mdk

 *Quote:*   

> 
> 
> Wlasnie zdecydowalem zainstalowac Mono i zaraz po nim Monotheke. Zobaczymy, moze cos sie da wymyslec ciekawego do programu Wink
> 
> 

 

Poczekaj sekunde  :Smile:  Dziś będzie release 0.0.2.

----------

## ryszardzonk

 *mdk wrote:*   

> Poczekaj sekunde  Dziś będzie release 0.0.2.

 

 :Cool: 

Nie wiedzac o tym zainstalowalem wersje 0.0.1. Moje uwagi to

1) ebuild monotheki zainstalowal mnie sqlite w wersji 

```
[ebuild   R   ] dev-db/sqlite-3.1.2  +nls -nothreadsafe 0 kB
```

 po czym sama monotheka oznajmila ze brakuje mnie sqlite

```
Checking for required components...

   Checking for pkg dependencies...

      * mono [OK]

      * gtk-sharp [OK]

      * glade-sharp [OK]

      * gnome-sharp [OK]

      * sqlite [NOT FOUND!]

   |--- ERROR ---

   | The required package could not be found in your

   | system! Make sure it's installed and pkg-config'ed

   |

   | This software was NOT configured! If you think

   | this is a script error please report it to

   | bugzilla (NovelForge, project Monotheka). You can

   | obatin some more information how monoBOIL works

   | by typing './configure --help'
```

Zainstalowanie reczne sqlite w wersji 2.8.16 zmienilo sytuacje na pomyslna. W zwiazku z tym ebuild musi byc jakos zmieniony by to wlasnie ten pakiet instalowal lub tez zmienic program do dzialania z nowszym  :Confused: 

2) klikniecie w zakladce "Dodaj" "search in IMDB" powoduje u mnie nastepujacy blad

```
Initializing database...

Loaded plugin CSVImport by Michael Dominic K. (mdk@mdk.org.pl)

Unhandled Exception: GLib.GException: Błąd przy uruchamianiu domyślnego polecenia powiązanego z bieżącym położeniem.

in <0x00064> Gnome.Url:Show (string)

in <0x00067> EditMovie_Window:On_IMDBSearch (object,System.EventArgs)

in <0x00069> (wrapper delegate-invoke) System.MulticastDelegate:invoke_void_object_EventArgs (object,System.EventArgs)

in <0x0012d> GtkSharp.voidObjectSignal:voidObjectCallback (intptr,int)

in <0x0005a> (wrapper native-to-managed) GtkSharp.voidObjectSignal:voidObjectCallback (intptr,int)

in (unmanaged) (wrapper managed-to-native) Gtk.Application:gtk_main ()

in <0x00004> (wrapper managed-to-native) Gtk.Application:gtk_main ()

in <0x00007> Gtk.Application:Run ()

in <0x00007> EditMovie_Window:Run ()

in <0x0004d> Window_Main:On_AddMovie (object,System.EventArgs)

in <0x00069> (wrapper delegate-invoke) System.MulticastDelegate:invoke_void_object_EventArgs (object,System.EventArgs)

in <0x0012d> GtkSharp.voidObjectSignal:voidObjectCallback (intptr,int)

in <0x0005a> (wrapper native-to-managed) GtkSharp.voidObjectSignal:voidObjectCallback (intptr,int)

in (unmanaged) (wrapper managed-to-native) Gtk.Application:gtk_main ()

in <0x00004> (wrapper managed-to-native) Gtk.Application:gtk_main ()

in <0x00007> Gtk.Application:Run ()

in <0x00a04> Window_Main:.ctor (string[])

in <0x00377> Global:Main (string[])
```

czy jest to wina programu, czy raczej mojej instalacji? Flagi mam raczej stabilne. Mono w wersji 1.0.6

3. Dodaj i usun pozatym dzialaj bez zarzutu, wiec z niecierpliwoscia czekamna kolejne wersje  :Cool: 

----------

## mdk

ad 1.

Hmm... musiałeś w jakiś sposób zainstalować z ebuildu 0.0.1 a nie nowszego (zawartego w tar.gz) 0.0.1-r1, w którym ten błąd jest poprawiony. Chodzi o to, że sqlite > 3 nie jest kompatybilny wstecz z sqlite2. Do pewnego stopnia są to dwie różne biblioteki. 

ad 2.

"Search IMDB" odpala domyślną przeglądarkę GNOME'a. Przypuszczam, że błąd wynika z niekompletnej (?) instalacji Gnome'a. W każdym razie w obecnej wersji jest tu małe zabezpieczenie, i program się nie wysypuje. 

ad 3.

Jest już 0.0.2.

----------

## ryszardzonk

 *mdk wrote:*   

> "Search IMDB" odpala domyślną przeglądarkę GNOME'a. Przypuszczam, że błąd wynika z niekompletnej (?) instalacji Gnome'a. W każdym razie w obecnej wersji jest tu małe zabezpieczenie, i program się nie wysypuje. 

 

Masz racje. W zyciu bym na to nie wpadl. Co prawda problem byl troche inny, gdyz ustawiony mialem w domyslnych aplikacjach "firebird/firefox" wiec powinno hulac, lecz okazalo sie ze odwoluje sie do nieistaniejacej komendy "mozilla-firefox". Reczne ustawienie na "firefox %s" pomoglo.

 *mdk wrote:*   

> Jest już 0.0.2.

 

Jest i dziala znakomicie  :Smile: 

----------

## joker

a da sie zmienic przegladarke w programie albo pliku konfiguracyjnym? bo nie mam gnome i miec nie chce. nie moge nic zlelezc, a przydalaby sie taka opcja

----------

## watex

Ja mam takie pytanie jak długi moze byc opis filmu ?

czy to ma jakies znaczenie bo mi przy dłuzszych opisach filmu 

wywala sie program

to jest wyjscie na konsoli

```
 watex@underground ~ $ monotheka 

Initializing database...

Loaded plugin Import from CSV by Michael Dominic K. <mdk@mdk.org.pl>

Loaded plugin Export to TXT by Michael Dominic K. <mdk@mdk.org.pl>

Unhandled Exception: System.NullReferenceException: A null value was found where an object instance was required.

in (unmanaged) (wrapper managed-to-native) Gtk.HTML:gtk_html_load_from_string (intptr,string,int)

in <0x00004> (wrapper managed-to-native) Gtk.HTML:gtk_html_load_from_string (intptr,string,int)

in <0x00029> Gtk.HTML:LoadFromString (string)

in <0x00ef7> MovieView:RenderData (MovieDatabase.Movie)

in <0x00031> Window_Main:On_MovieSelected (object,string)

in <0x00069> (wrapper delegate-invoke) System.MulticastDelegate:invoke_void_object_string (object,string)

in <0x000dd> DataView:OnCursorChanged ()

in <0x00049> Gtk.TreeView:cursorchanged_cb (intptr)

in <0x00040> (wrapper native-to-managed) Gtk.TreeView:cursorchanged_cb (intptr)

in (unmanaged) (wrapper managed-to-native) Gtk.Application:gtk_main ()

in <0x00004> (wrapper managed-to-native) Gtk.Application:gtk_main ()

in <0x00007> Gtk.Application:Run ()

in <0x00c36> Window_Main:.ctor (string[])

in <0x00374> Global:Main (string[])

```

pozdrawiam

----------

## mdk

 *Quote:*   

> 
> 
> a da sie zmienic przegladarke w programie albo pliku konfiguracyjnym? bo nie mam gnome i miec nie chce. nie moge nic zlelezc, a przydalaby sie taka opcja
> 
> 

 

Będzie się dało w kolejnej wersji (do wyboru: systemowa GNOME lub dowolna). Będzie to miało trochę inne znaczenie, bo w wersji 0.0.3 będzie już automatyczne pobieranie z IMDB (już jest) i pewnie z jakiegoś innego, polskiego serwisu (filmweb?). 

 *Quote:*   

> 
> 
> Ja mam takie pytanie jak długi moze byc opis filmu ? 
> 
> 

 

Hmm... dziwna sprawa. Teoretycznie opis może być dowolnie długi. Nie udało mi się samemu wywołać tego błędu, mimo wpisania paronasto-stronicowego opisu. Przypuszczam więc, że chodzi o co innego... :

1) Jakieś znaki w opisie coś krzaczą w bazie

2) Bug w mono

Możesz mi podesłać ten opis lub bazę danych w której go masz? (~/gnome2/monotheka/monotheka.db). Adres: mdk (at) mdk (dot) org (dot) pl . Z której wersji mono korzystasz?

----------

## tomek_22

mdk, jak rozwiazac nastepujacy problem:

```
 # emerge world -uDpv

These are the packages that I would merge, in order:

Calculating world dependencies -

emerge: there are no ebuilds to satisfy ">=dev-dotnet/mono-1.0.5-r3".

!!! Problem with ebuild app-misc/monotheka-0.0.2

!!! Possibly a DEPEND/*DEPEND problem.

!!! Depgraph creation failed.

```

 :Question:  przeniesiono mono z dev-dotnet do dev-lang, mozesz to poprawic?

----------

## nelchael

Teraz to jest dev-lang/mono

----------

## tomek_22

no, dokladnie  :Smile:  czyzbym sie zle wyrazil?  :Razz:  wczesniej bylo w dev-dotnet/mono a teraz jest w dev-lang/mono, co nietrudno sprawdzic wydajac komende 

```
emerge mono -pv
```

, poprawic ebuild tez nie jest problem, samemu zmienic tylko wpis w DEPEND, pozniej jeszcze ebuild montheka-0.0.2-r1.ebuild digest, ale niektorzy moga miec z tym problem  :Wink:  (sorry, ze zawlaszczylem sobie prawo do zmieniania numeracji, ale to tylko czasowa prowizorka  :Razz:  az do nastepnego wydania przez mdk)

----------

## mdk

Hej,

zupgradowałem ebuildy, można je ściągnąć ze strony (0.0.2). Nie zmieniałem nazewnictwa wersji, żeby (niepotrzebnie) nie trzeba było reemergować tej samej wersji. 

W ciągu paru najbliższych dni pojawi się 0.0.3. 

P.S Aż mnie dziwi, że nikt nie zgłosił bug'a pt. "Nowe filmy zaraz po dodaniu przez chwilę kolorowane są jakby były wypożyczone"  :Embarassed: 

----------

## watex

hmm mi to w sumie nieprzszkadzalo  :Smile: 

w sumie to by moglo je kolorowac na jakis kolor

i tak np przez tydzien kolorowac nowe  :Smile: 

pozdrawiam

----------

## Pepek

 *watex wrote:*   

> hmm mi to w sumie nieprzszkadzalo 
> 
> w sumie to by moglo je kolorowac na jakis kolor
> 
> i tak np przez tydzien kolorowac nowe 
> ...

 

No to by była fajna sprawa. Tylko najlepiej, żeby ten czas (np. tydzień) można było samemu sobie ustawić w programie. Ja np. mam kumpla, który wpada do mnie co jakiś czas i wtedy zawsze mamy problem, żeby stwierdzić co mam nowego czego ostatnio nie miałem. A tak to mógłbym sobie zajrzeć do programu i od razu bym wiedział po kolorkach.

Pozdrówki.  :Cool: 

----------

## mdk

 *Quote:*   

> 
> 
> a da sie zmienic przegladarke w programie albo pliku konfiguracyjnym? bo nie mam gnome i miec nie chce. nie moge nic zlelezc, a przydalaby sie taka opcja
> 
> 

 

Jest w wersji 0.0.3, łącznie z ustawieniami proxy (dla wewnętrznego HTTP browsera do pluginów)

 *Quote:*   

> 
> 
> Ja np. mam kumpla, który wpada do mnie co jakiś czas i wtedy zawsze mamy problem, żeby stwierdzić co mam nowego czego ostatnio nie miałem. A tak to mógłbym sobie zajrzeć do programu i od razu bym wiedział po kolorkach.
> 
> 

 

Taaa... to jest dobry pomysł. Kolorowanie "nowości" + kolorowanie filmów "przepożyczonych" (pożyczonych dłużej niż X dni, do zwrotu). Postaram się to wrzucić w 0.0.4. Trochę bez sensu zaprojektowałem parę rzeczy w programie, i ciężko to teraz zaimplementować.

----------

## ryszardzonk

a mnie w nowej wersji spotkał błąd 

```
Auto-generating non-recursive Makefile...

   Parsing all package 'boil' files...

      * all (collection) [OK]

      * Util (library) [OK]

      * Plugins (collection) [OK]

      * CSVImport (library) [OK]

      * TXTExport (library) [OK]

      * IMDBGet (library) [OK]

      * MovieDatabase (library) [OK]

      * PluginLib (library) [OK]

      * Monotheka (exe) [OK]

   Creating the clean object...

   Creating the install object...

9 packages processed.

Running custom post configure script...

   Patching for mono 1.0.x...

   (making symlinks)

Everything done! You should now type:

   $> make

   $> make install

... to compile & install it in your system. Happy hunting!

>>> Test phase [not enabled]: app-misc/monotheka-0.0.3

[color=darkred] 

>>> Install monotheka-0.0.3 into /var/tmp/portage/monotheka-0.0.3/image/ category app-misc

(MCS) ./Util/Util.dll

./Util/PleaseWaitWindow.cs(92) error CS1501: No overload for method `Add' takes `2' arguments

./Util/PleaseWaitWindow.cs(92) error CS8006: Could not find any applicable function for this argument list

Compilation failed: 2 error(s), 0 warnings

make: *** [Util/Util.dll] Error 1

[/color]

man:

prepallstrip:

strip: i686-pc-linux-gnu-strip --strip-unneeded

>>> Completed installing monotheka-0.0.3 into /var/tmp/portage/monotheka-0.0.3/image/

```

który w efekcie odinstalował mnie całkowicie monothekę

```
* Caching service dependencies ...                                                                                                      [ ok ]>>> app-misc/monotheka-0.0.3 merged.

 app-misc/monotheka

    selected: 0.0.2

   protected: 0.0.3

     omitted: none

>>> 'Selected' packages are slated for removal.

>>> 'Protected' and 'omitted' packages will not be removed.

>>> Waiting 5 seconds before starting...

>>> (Control-C to abort)...

>>> Unmerging in: 5 4 3 2 1

>>> Unmerging app-misc/monotheka-0.0.2...

No package files given... Grabbing a set.

<<<        obj /usr/share/pixmaps/monotheka.png

<<<        obj /usr/share/applications/monotheka.desktop

<<<        obj /usr/lib/Monotheka/Util.dll

<<<        obj /usr/lib/Monotheka/Plugins/TXTExport.dll

<<<        obj /usr/lib/Monotheka/Plugins/CSVImport.dll

<<<        obj /usr/lib/Monotheka/PluginLib.dll

<<<        obj /usr/lib/Monotheka/MovieDatabase.dll

<<<        obj /usr/lib/Monotheka/Monotheka.exe

<<<        obj /usr/bin/monotheka

<<<        dir /usr/lib/Monotheka/Plugins

<<<        dir /usr/lib/Monotheka

--- !empty dir /usr/share/pixmaps

--- !empty dir /usr/share/applications

--- !empty dir /usr/share

--- !empty dir /usr/lib

--- !empty dir /usr/bin

--- !empty dir /usr

>>> Updating Scrollkeeper

 * Updating desktop mime database ...

 * Updating shared mime info database ...
```

powrót do wersji 0.0.2 przywrócił monothekę. Używam wersji 1.0.6 mono, więc możliwe że to powoduje błąd, lecz z poisu widzę że program powinien działać z wersjami wcześniejszymi niż 1.1.1

Czekam na poprawki  :Wink: 

----------

## watex

u mnie to saamo co u przedmowcy  :Sad: 

----------

## mdk

Jest już update na stronach (0.0.3-r1). Bug związany był z mono 1.0.x (testowałem na mono 1.1.x). Poprawiłem błąd w kodzie, ale przy okazji wynikły inne błędy związane z mono 1.0.5. Stąd - nowy ebuild wymaga mono 1.0.6. 

Poprawiłem też błąd w buildzie, który powodował deinstalację (pakiety kompilowane były w sekcji "install" zamiast sekcji "compile")

----------

## ryszardzonk

Hej, dzieki za nową wersje, która działa już bez zarzutu. Mam jedynie dwie uwagi.

1) Czy nim pakiet oficjalnie dostanie się do portage czy nie można by mu było dodać w ebuildzie

RESTRICT="nomirror"? Wiadomo, że chodzi tu o pominięcie zbędnych prób sciągnięcia pakietu z oficjalnych mirrorów, gdzie niektórym którzy ich mają ustawioną wiekszą ilość może być bardzo na rękę

2) Jakiej wersji sqlite obecnie tak naprawdę wymaga monotheka. Zauważyłem że posiadając wersję 2 dostaje informację o konwertowaniu bazy do wersji 3. Po zainstalowaniu nowszej i deinstalacji wersji 2 monotheka działała nadal i informacja o konwersji już się nie pojawiała.

Być może należy zmienić obecne ">=dev-db/sqlite-2*" na ">=dev-db/sqlite".

thx

----------

## wojtek

A propos filmów.

Michal, strasznie spodobala mi sie Twoja strona http://www.mdk.org.pl, teksty, scenariusze, zdjecia. Przypomnialy mi się moje zainteresowania przedmaturalne - tez chcialem isc na rezyserie do lodzkiej filmowki, choc chyba sie troche wystraszylem i w koncu sie nie zdecydowalem. Mam jednak wielki sentyment do tamtego okresu, robilem duzo zdjec (jak na mnie oczywiscie), "kadrowalem" slowem zycie i swiat wokoł mnie, poznalem troche ludzi w Katowickiej Szkole Telewizyjnej i Filmowej (chyba jakos tak sie nazywala, mialem do niej najblizej)... Wciaz gdzies to we mnie jest i o sobie przypomina, gdy np. wpadam na taka strone jak Twoja  :Smile: . Może jeszcze sie na to zdecyduj... tak jak np. Zanussi, kiedys byl nawet wymog by ukonczyc inny kierunek zanim sie bedzie zdawac na rezyserie. Na razie koncze moja pierwsza i odwieczna pasje - informatyke  :Very Happy: .

Ale się rozmarzylem...  :Wink: .

----------

## mdk

 *Quote:*   

> 
> 
> 1) Czy nim pakiet oficjalnie dostanie się do portage czy nie można by mu było dodać w ebuildzie
> 
> RESTRICT="nomirror"?
> ...

 

Słusznie. 

 *Quote:*   

> 
> 
> 2)Jakiej wersji sqlite obecnie tak naprawdę wymaga monotheka. Zauważyłem że posiadając wersję 2 dostaje informację o konwertowaniu bazy do wersji 3.
> 
> 

 

 :Smile:  To chodzi o wewnętrzny format bazy Monotheki, nie sqlite. Wersja 3 - czyli wersja bazy z Monotheki 0.0.3. Za chwilę będzie wersja 4. Sqlite używane jest w wersji 2.8, i tak jeszcze pewnie długo zostanie. Sqlite > 3 nie jest kompatybilne wstecz z 2.8 (jest to tak naprawdę trochę inna biblioteka) , i nie ma do niego bindingów do mono. ">=dev-db/sqlite-2*" jest potrzebne, żeby określić potrzebę sqlite > 2, ale mniejszego niż 3. 

 *Quote:*   

> 
> 
> Ale się rozmarzylem...
> 
> 

 

 :Smile:  Ja się na co dzień zajmuję teatrem, a informatyką hobbistycznie... + zarabiam na życie. Ale wszystko się ze wszystkim bardzo łączy... ostatnio słuchałem Fug Bacha w wykonaniu Glenna Goulda (to co poleciało w kosmos na Voyagerach jako szczytowe osiągnięcie cywilizacji ludzkiej). Absolutne mistrzostwo. Muzyka absolutnie zmatematyzowana, ale gdy się słucha - wyobraźnia się otwiera na rzeczy całkowicie nie-matematyczne. 

Napisałem wczoraj plugin do wyciągania informacji o kodekach/rozdzielczości z plików AVI. Możecie pobrać z http://monotheka.enove.pl/files/AVIGet.tar.gz. Sorry za binarkę, ale na razie nie chcę robić nowego release'u z tylko jednym nowym pluginem (szczególnie, że jest eksperymentalny). 

Plugin trzeba wypakować do ~/.gnome2/monotheka/Plugins albo globalnie do /usr/lib/Monotheka/Plugins . Napisałem własny binarny parser, więc nie wymaga żadnych dodatkowych zależności.

----------

## tomek_22

```

tomek@tomek ~ $ monotheka

Initializing database...

Creating fresh database, version 3

Unhandled Exception: System.IndexOutOfRangeException: Array index is out of range.

in <0x000a7> MovieView:.ctor (Gtk.Style,Gtk.Image,Gtk.Image,Gtk.Image,Gtk.Image,Gtk.Label)

in <0x00a1e> Window_Main:.ctor (string[])

in <0x00379> Global:Main (string[])

tomek@tomek ~ $

```

mono 1.0.6, sqlite 2.8.16 i 3.1.6, poprzednie wersje tzn. 0.0.1-r1 i 0.0.2 chodzily bez problemow, obecna to 0.0.3-r1

----------

## mdk

Taaa... niedawno zrobiłeś upgrade do gtk-sharp-1.0.8? Znany bug (#902). Ebuild Monotheki 0.0.3-r3 to naprawia. Jako bonus - plugin do czytania z avików, już budowany z source.

----------

## _troll_

Takie moje 0.02 PLN....

Potrzebne mi takie narzedzie i z checia je wykorzystam. Ale - dlaczego zawsze znajdzie sie jakis *****, ktory ma 'ale'?? - brak mi jednej rzeczy.... zamiast sqlite, byloby milo gdyby dalo sie calosc sprzegnac w baza danych - jak np. postgresql. Pozwoliloby to na:

- uzywanie zewnetrznych baz (nie musza stac na tej samej maczynie)

- mozliwosc prezentacji danych z BD za pomoca innych interfejsow (na desktopie milej jest zaladowac plytke i nakzac monothece wszystko udpate'owac, ale potem mozna np. stworzyc interfejsy serveltow/php do prezentacji kolejkcji po www)

Daloby rade rozszerzyc monotheke o mozliwosc korzystania z BD? Jesli idzie o mnie - to najchetniej postgresql....

PS. Przejrzalem caly i przeczytalem wiekszosc watku, ale nie znalazlem takiej prozpoycji.... jesli byla to z gory sorry  :Wink: 

Pozdrawiam,

Przemek

----------

## joker

jest maly problemik z czasem filmu. jak pobiera sie dane z filmweb to w polu czasu wpisuje sie np cos takiego

```
115

                                                   dyst.:

                                             <a target="_blank" href="http://www.cinepix.com.pl/" class="n">Cinepix</a>
```

[edit] a moze jakis plugin co by sciagal okladki do filmow? czy to juz za duze szalenstwo?

----------

## remik

 *joker wrote:*   

> jest maly problemik z czasem filmu. jak pobiera sie dane z filmweb to w polu czasu wpisuje sie np cos takiego
> 
> ```
> 115
> 
> ...

 

Wersja z cvs ma poprawiony ten błąd.

----------

## melk0r

[OT]

czy znalazl sie juz ktos, kto bedzie wydawal ebuildy z nowymi wersjami?

 *monotheka.enove.pl wrote:*   

> 
> 
> In other news - I'm looking for someone to maintain the Gentoo ebuilds for monotheka in future. I recently moved to Archlinux distribution, and it'll be hard for me to keep the ebuilds tested & functional.

 

[/OT]

----------

## remik

 *melk0r wrote:*   

> [OT]
> 
> czy znalazl sie juz ktos, kto bedzie wydawal ebuildy z nowymi wersjami?
> 
> [/OT]

 

Ja będę sprawdzał czy wszystko działa tuż przed wydaniem nowej wersji. Chce też pokombinować z wersją sqlite żeby wymagało (depend) 2 a nie 3

----------

## mdk

@_troll_

 *Quote:*   

> 
> 
> brak mi jednej rzeczy.... zamiast sqlite, byloby milo gdyby dalo sie calosc sprzegnac w baza danych - jak np. postgresql. Pozwoliloby to na: 
> 
> 

 

Teoretycznie zrobienie czegoś takiego byłoby stosunkowo proste. Do Postgresa (i MySQL) są bindingi w mono. Monotheka używa wewnętrznie kwerend SQL, więc wystaczyłoby zmienić implementację backendu. Kiedyś w przyszłości napewno backend będzie wybieralny... ale na razie, nie ukrywam, nie mam tego w priorytetach... w sumie bardzo "specjalistyczna" funkcja. 

@joker

 *Quote:*   

> 
> 
> jest maly problemik z czasem filmu. jak pobiera sie dane z filmweb to w polu czasu wpisuje sie np cos takiego 
> 
> 

 

Poprawione w 0.0.5 + parę innych drobiazgów z Filmwebem i IMDB również. 

@remik

 *Quote:*   

> 
> 
> ja będę sprawdzał czy wszystko działa tuż przed wydaniem nowej wersji. Chce też pokombinować z wersją sqlite żeby wymagało (depend) 2 a nie 3
> 
> 

 

Podejrzane jest, że to nie działa! W ebuildzie jest:

```

...

>=dev-db/sqlite-2*

...

```

Co, wg. Ebuild HowTo powoduje:

 *Quote:*   

> 
> 
> ...
> 
> =sys-apps/foo-1.2* will select the newest member of the 1.2 series, but will ignore 1.3 and later/earlier series. That is, foo-1.2.3 and foo-1.2.0 are both valid, while foo-1.3.3, foo-1.3.0, and foo-1.1.0 are not.
> ...

 

Pamiętam, że kiedyś to testowałem i działało... tzn. nie pobierało sqlite3.

----------

## remik

HowTo ma rację był błąd, prawidłowo jest:

```
=dev-db/sqlite-2* 
```

literówka

nowy ebuild poszedł do Ciebie...

----------

## tomcio

no popatrzcie, ja to mam pecha bo tez pisaŁEM taką aplikację w C/GNOME   :Sad:   chyba się spóźniłem

Macie pomysł na inną aplkiację do katalogowania czegokolwiek  :Question: 

Co byście powiedzieli na program do katalogowania książek?

----------

## Raku

 *tomcio wrote:*   

> Macie pomysł na inną aplkiację do katalogowania czegokolwiek 
> 
> 

 

jasne: do katalogowania mp3. i nie pod gnome, tylko qt  :Cool: 

szukam od kilku dni czegoś lekkiego, funkcjonalnego i jednocześnie ze zgarbnym i ładnym interfejsem.

coś na kształt amaroka, ale żeby jeszcze katalogował płyty CD.

----------

## tomcio

Jasne, to da się zrobić :]

Ale pod gtk, bo nie znam qt:?

----------

## remik

To dobrze że pod gtk, bo nie chce powiększać ilość programów pod qt (mam tylko psi i openoffice 1.9.x)

Jak coś zgłaszam się na testy:)

----------

## Raku

a ugryźcie się wszyscy...  :Laughing: 

nie chcę instalować połowy gnome żeby miec jeden program  :Cool: 

zamiast monotheki, która mnie bardzo zainteresowała, zainstalowałem sobie Moviefly. Też bardzo ładne - klon Ant Movie Catalog.

polecam ten program wszystkim, których odstraszyły zależności monotheki

----------

## joker

no wlasnie fajnie by bylo gdyby monotheka miala tez plugin do obslugi okladek jak juz pisalem wczesniej. mdk - byloby to mozliwe?

----------

## ryszardzonk

Witam

Ostatnio zainstalowałem nową wersje mono wraz z gtk-sharp i pozostałymi bibliotekami w najnowszych wersjach (testowych) 

```
Calculating dependencies ...done!

[ebuild   R   ] dev-lang/mono-1.1.7  +X -debug -icu +nptl 0 kB

Calculating dependencies ...done!

[ebuild    R  ] dev-dotnet/gtk-sharp-1.9.3.1 -doc 0 kB
```

 i dostaję następujący błąd

```
...

Checking for required components...

   Checking for pkg dependencies...

      * mono-1.0.6 [OK] (1.1.7)

      * gtk-sharp-1.0.4 [NOT FOUND!] ()

   |--- ERROR ---

   | The required package could not be found in your

   | system! Make sure it's installed and pkg-config'ed

...
```

Wiem, ze sam program jest pisany pod Mono w wersji 1.1, i pytanie moje jest czy pozostale biblioteki powinienem zainstalowac w nizszych wersjach, czy tez przyszle wersje Monotheki bedą się z nimi instalować. Oczywiście czy ta zmiana by nastąpiła w blizej określonym terminie  :Wink: 

----------

## kacper

Mam mała popozycje, może dałoby rade napisać jakiś plugin dzięki któremy można by było katalogować książki? 

Jeśli nie, to może zna ktoś program który takie coś umożliwia?

----------

## Raku

 *kacper wrote:*   

> 
> 
> Jeśli nie, to może zna ktoś program który takie coś umożliwia?

 

tellico

----------

## kacper

 *raku wrote:*   

> 
> 
> tellico
> 
> 

 

Dzięki! O taki program właśnie mi chodziło.

----------

## tomekb

Tak podbije temat. Moze robie to za plecami mdk, ale fajnie by bylo jakby ktos tworzyl ebuildy dla nowych wersji, dla ostatniej nie ma. Ja sie do tego nie zamierzam brac, "masz cos robic, rob to dobrze"  :Wink:  A program jest swietny, dla mnie po prostu idealny. Koniec. Kropka.

----------

## remik

 *tomekb wrote:*   

> Tak podbije temat. Moze robie to za plecami mdk, ale fajnie by bylo jakby ktos tworzyl ebuildy dla nowych wersji, dla ostatniej nie ma. Ja sie do tego nie zamierzam brac, "masz cos robic, rob to dobrze"  A program jest swietny, dla mnie po prostu idealny. Koniec. Kropka.

 

Wystarczy zamienić wersje (opiekowałem się ebuildem, ale nie mam teraz gnome) i powinno działać. Nowa wersja nie ma zbyt wiele nowego. Autor skupił się na Diva'ie.

----------

## tomekb

Wlasnie, jak nie bylo za duzo zmian, to mozna tak zrobic. Dzieki  :Smile:  Ale to i tak rozwiazanie tymczasowe, no chyba, ze kolejne wersje to beda tylko bugfixy, bo mkd nie bedzie juz rozwijal monotheki. A zreszta, co sie bede martwil na przyszlosc  :Wink:  Dla mnie ten program ma juz wystarczajaca funkcjonalnosc, o cos takiego wlasnie mi chodzilo, tylko nie cierpie tego uczucia, ze jest nowa wersja a ja jej nie mam  :Twisted Evil: 

----------

