Misschien ben ik hier niet duidelijk in, maar ik wil geen vervanging voor dpkg! (waarom staat dpkg hier in't rood? en mijn vlaams ook? of is dat omdat ik in konqueror zit?) Ik wil gewoon een .app applicatie op Linux hebben die gewoon libraries kan installeren via dpkg. Dus in plaats van via dpkg een beetje in /usr/bin, een beetje in /usr/share en een beetje in /usr/lib te zetten, wordt gewoonweg het programma zelf in een .app map gezet (die vrij kan verplaatst worden over het hele systeem) en de lib's in /Library (/lib, /usr/lib, /usr/local/lib, ... worden hiernaar gesymlinkt en onzichtbaar gemaakt in de Find... ik bedoel Dolphin, uiteraard -- kwas vanochtend beter niet naar die Mac beurs geweest...). Nu wil ik dat als je in Dolphin, konqueror, of zelfs je zelfgemaakte filebrowser (zo lang ie maar qt/kde gebaseerd is) als je dubbelklikt op zo'n .app bestand, hij de parser (als je't echt wilt weten: /System/SubCore/bin/seoapp) uitvoert met als enige parameter het absolute pad naar de .app map, ipv de inhoud van die map weer te geven. Uiteraard kan je, mbv een rechts-klik optie, de inhoud van de map zien (gewoon: "openen met: dolphin -- maar dan heet het "Pakketinhoud weergeven", I <3 Mac). De parser zal dan een info-bestand (nu ja, zou ik het info.plist noemen of niet???) lezen, en de juiste binary uitvoeren. Een voorbeeld: Gebruiker wilt myapp gebruiken en installeert dit via Synaptic, en krijgt de library mylib, waarvan myapp gebruik maakt, erbij en deze wordt geinstalleerd in /Library. Gebruiker klikt dubbel op /Applications/MyApp.app. Parser wordt gelanceerd: seoapp /Applications/MyApp.app. Parser leest /Applications/MyApp.app/.directory. Daar staat een flag "Exec=bin/myapp" (samen met een flag Type=Seoapp, en Icon=path/to/icon.png). Programma /Applications/MyApp.app/bin/myapp wordt uitgevoerd, slechts als dit executable is aangevinkt (dit kan gedaan worden via eigenschappen, of chmod, uiteraard). Nu is de vraag: gaat dit zonder in de broncode te prullen (behalve dingen zoals het eigenschappen-venster aanpassen en andere minimale dingen)?
- SeySayux
EDIT: nu heb ik de juiste reply