Portál AbcLinuxu, 8. května 2025 13:53
Interview o Wine 1.0: Alexandre Julliard. Popularita Wine. Vývoj po verzi 1.0. Změny v databázi aplikací: Změny od správců programů.
Konečně vyšlo Wine 1.0 - cesta k tomuto vydání byla dlouhá 15 let. Toto vydání vyvolalo takový nápor na webové stránky winehq.org, že zapříčinilo výpadek na jednu až dvě hodiny. Pokud chcete vidět křivku návštěvnosti, podívejte se na grafy. Od vydání verze 1.0 uběhl jediný den a Alexandre Julliard už zase začal zasílat patche v typickém množství.
1. K verzi 1.0 vedla dost dlouhá cesta. Myslíš si, že za ty roky mělo mít Wine nějaké vydání založené na některé ze starších verzí? Pokud ano, kdy se tak podle tebe mělo stát? Proč? Myslíš si, že aktuální vydání 1.0 přichází ve vhodný čas?
Z počátku Wine podporovalo pouze Win16, protože projekt začal v dobách Windows 3.1, a pravděpodobně jsme mohli udělat vydání s dost dobrou podporou Win16 někdy v roce 1998. Ale jak se dalo očekávat, v té době všichni chtěli spouštět Win32 aplikace, takže soustředění na podporu Win16 takové, aby to došlo až k vydání, by pravděpodobně způsobilo, že by mnoho vývojářů ztratilo zájem. Místo toho jsme začali měnit architekturu, abychom podporovali Win32, což byla z dlouhodobého hlediska dobrá volba, ale znamenalo to, že jsme po dlouhou dobu nemohli vydat nic rozumného.
2. Jaké stěžejní věci bys vyzdvihl ve verzi 1.0? Říkám si, že teď, když jsme se dostali až k verzi 1.0, tak bychom možná měli stát na střeše a vykřikovat: „Umíme [to]!“. Co je [to]? Pokud by chtěl někdo Wine prubnout, víš o nějakých programech pro Windows, které bys k vyzkoušení doporučil? Pořád existuje tuna programů pro Windows bez srovnatelné alternativy pod Linuxem - jsou nějaké takové programy, které ti připadají obzvlášť užitečné, abys je někomu navrhl vyzkoušet?
Photoshop CS2 jednoznačně představuje něco jako vlajkovou loď, ale myslím si, že bychom měli vyzývat k tomu, aby vyzkoušeli vše, co mohou, neboť to je důvod, proč vkládáme tolik úsilí do rozcházení instalátorů. V současnosti je dobrá šance, že skoro jakákoliv aplikace se nainstaluje a alespoň udělá něco zajímavého.
3a. Podíváme-li se do budoucna, jaké technické změny Wine potřebuje? Existují nějaké velké sady patchů, které se někde povalují a nebyly zařazeny kvůli zmrazení kódu?
Velkou chybějící funkcí je DIB Engine, který doufám, že se dostane do verze 1.2. Některé další zajímavé patche, které vyčkávají, jsou podpora iPodu (a více všeobecná podpora USB zařízení) a animované kurzory.
Z dlouhodobého hlediska je tu podpora 64bit, která bude jednoznačně vyžadovat hluboké technické změny; naštěstí to není tak zlé jako přechod 16->32, ale stále je to hodně práce.
3b. Je tady pár různých skupin, které pohánějí kupředu vývoj Wine, konkrétně Google a CodeWeavers. Na co se chcete zaměřit? Za ty roky jsme viděli docela dost velkých změn, které posunuly Wine v různých směrech - například vývoj D3D8 skutečně zahájil éru podpory her ve Wine, port na OS X otevřel dveře přenositelnosti - je na obzoru něco takového? Myslíš si, že někdo udělá ntoskrnl načítající ovladače Windows nebo připojující je do jádra nebo tak něco?
Nemyslím si, že jsou ovladače pro Windows pro Wine tak zajímavé, vyjma několika specializovaných oblastí jako USB zařízení nebo tiskárny. Všeobecná podpora ovladačů by skutečně musela jít do linuxového jádra, aby byla užitečná, a i když je to rozhodně proveditelné, byl by to oddělený projekt.
Pokud jde o Mac OS, rozhodně potřebujeme grafický ovladač quartz, uživatelům by se to více líbilo. Udělat takovou věc správně je ovšem docela těžký úkol, takže nevím, kdy na to dojde.
4. Co nechceme dělat? S jakými technickými věcmi bychom si neměli zatěžovat hlavu? Existují nějaké části Windows, které nemá ani cenu se snažit podporovat? Například podpora Win31 teď visí na vlásku - dojdeme někdy do stavu, že nebude mít cenu to podporovat? Nebo snad Wine má důležitou roli tím, že umožňuje používání archaických aplikací?
Myslím si, že se dostaneme do fáze, kdy bude nutné vyřadit současnou podporu Win16; mohla by být nahrazena čistější architekturou, která by byla skutečně nezávislá na 32bit kódu namísto toho, aby s ním byla provázaná, takže by v 32bit změnách nepřekážela a v jednom kuse by se nerozbíjela. Tady bude těžké najít někoho, kdo tu práci udělá, dělat na nových funkcích je podstatně zajímavější...
5. Je Wine příliš ambiciózní? Nesnažíme se o něco až příliš velkého? Dostaneme se někdy do stavu, že komplexita projektu v kombinaci s množstvím regresí nebude zvladatelná naší vývojářskou komunitou? V jednu dobu asi před deseti lety to vypadalo, jako kdyby Microsoft vydával nové technologie a API každý týden. Věci se, zdá se, dost zpomalily, ale myslíš si, že ten trend bude pokračovat? Myslíš si, že budeme stíhat reagovat na budoucí API Visty, Windows 7 atd.?
Doposud se nám dařilo stíhat a nepředpokládám, že se to změní. Vždycky máme samozřejmě trochu zpoždění, ale na druhou stranu nevidím, že by se zpoždění zvětšovalo. Kromě toho je celá ta složitost problémem i pro Microsoft, je pro ně čím dál složitější dělat zásadnější změny.
6a. Pokud bys mohl mávnout čarovnou hůlkou a změnit jednu věc ve Wine, co by to bylo?
Více testů na regrese...
6b. Pokud bys mohl mávnout čarovnou hůlkou a změnit jednu věc na Linuxu [nebo OS X], co by to bylo?
Byl bych rád, aby byly řádné desktopové standardy, korektně implementované různými desktopovými prostředími. Postupně se k tomu dostáváme, ale trvá to déle, než by mělo.
6c. Pokud bys mohl mávnout čarovnou hůlkou a změnit jednu věc na Windows, co by to bylo?
Nevěděl bych, kde začít, je tolik věcí, které by se musely opravit...
7. Teď, když se Wine dostalo k verzi 1.0, myslíš si, že ho velké distribuce zařadí? Pokud ne, proč? Bojí se právních sporů? Pokud ano, měly by?
Pochybuji, že budou přibalovat Wine, neboť se všichni obávají Microsoftu. Je to všechno FUD, neexistuje žádný racionální důvod k obavám, ale i když je pravděpodobnost vzniku soudních pří malá, nekonečná velikost prostředků, které by do toho mohl Microsoft vložit, postačuje k odrazení.
8. Na to bychom se měli ptát jen proto, že není lepší způsob vyvolání násilí než rozjetím flamewaru kvůli licencím, ale vidíš potřebu přejít na LGPL3? Většině vývojářů docela stačí verze 2. Jenže zase si musíme vzít, že většině lidí vyhovovala licence X11, než jsme rychle změnili názor. Je na LGPL3 něco obzvlášť problémového pro Wine?
Myslím si, že Wine nemá problém s LGPL2, ani s LGPL3, takže ani není moc motivace ke změnám. Dovedu si představit, že k přechodu nakonec dojde, jakmile se vynoří potřeba sdílení kódu s LGPL3 projekty.
9. Když vychází verze 1.0, vidíš potřebu pro nějaké změny ve vnitřních procesech? Půjdou patche do stromu stále tím samým způsobem jako doposud? Myslíš si, že se něco ohledně vývojového cyklu po verzi 1.0 změní?
Doufám, že budeme moci dělat stabilní vydání častěji než jednou za 15 let...
Také snad budeme moci rozjet systém pro sledování příspěvků, na kterém jsme pracovali se SFLC, ale tady jde hlavně o papírování, nijak zásadně to způsob naší práce nezmění.
10. Pokud bychom mohli zázrakem zajistit, aby všichni vývojáři na světě dělali pro Wine a Wine 2.0 by vyšlo touto dobou příští rok, co bys tam rád viděl?
Mezi velké funkce by zjevně patřily DIB engine, Win64, podpora .NETu, ovladač quartz atd. Ale co skutečně zabírá čas, to je vystopování a opravování škaredých drobných nekompatibilit, které rozbíjejí aplikace, jež by si jinak celkem vystačily s naší existující sestavou funkcí. To je to místo, kde by zázračné zapojení všech vývojářů mohlo pomoci.
Scott Ritchie udělal analýzu používanosti Wine na základě balíčku popcon z Ubuntu:
Balíček "popcon" je nainstalován, pokud uživatel během instalace (nebo ve správci balíčků Synaptic) povolí anonymní sdílení dat o používání aplikací. Zanalyzováním dat můžeme o Wine zjistit následující:
Wine, nainstalováno 215262×, 14731 uživatelů jej používá pravidelně, 156710 jej nepoužívá.
Pokud to srovnáme s dpkg, které má každý systém s Ubuntu:
dpkg, nainstalováno 576989×, 151098 uživatelů jej používá pravidelně, 411213 jej nepoužívá.
Po troše dělení to znamená, že docela vysokých 37 % uživatelů Ubuntu má nainstalované Wine a 10 % uživatelů Ubuntu jej skutečně používá. 7 % používá Wine "často", ať už to u popconu znamená cokoliv. Pokud to zkombinujeme s odhady velikosti uživatelské základy Ubuntu (okolo 8 milionů, co jsem slyšel), máme přibližně 800 000 uživatelů Wine.
Tyto údaje jsou trochu zkreslené - nezahrnuje to většinu uživatelů Wubi, kteří si nainstalovali Ubuntu z Windows, protože jim nejsou pokládány žádné instalační otázky. Ačkoliv to nemohu dokázat, tak věřím, že to znamená, že nyní podceňujeme množství uživatelů Wine, neboť se zdá rozumné, aby se ve Wubi instalacích více používaly aplikace pro Windows, a tudíž i Wine.
Scott se také podíval na celková čísla o používanosti:
Jistě. Pokud Ubuntu stále představuje ~30 % uživatelů, jak to bylo v roce 2007, když proběhl průzkum DesktopLinux.com, a pokud je pravděpodobnost používání Wine mezi uživateli ostatních distribucí stejná, tak získáváme odhad, že Wine má nějakých 2,6 milionu uživatelů.
Alexandre Julliard, který má na starosti údržbu Wine, rozeslal stručné shrnutí toho, jak bude vývoj Wine fungovat v budoucnu.
Zdarec, znovu bych chtěl pogratulovat k vydání verze 1.0!
Teď, když už se zotavuji z toho šoku, že se nám podařilo vydat verzi 1.0, mám pár poznámek k budoucímu vývoji:
Pro vydání 1.0.1 navrhuji následující proces:
To mi umožní pravidelné hledání chyb v 1.0.1, které jsou opraveny v master, a budu moci natáhnout odpovídající commity do větve stable.
Program | Původní stav/verze | Nový stav/verze | Změna |
Spore Creature Creator Trial Edition | Garbage (0.9.61) | Bronze (1.0.0) | +1 |
ClassPad Manager for Class Pad 300 01.24 | Bronze (0.9.44) | Gold (1.0.0) | +2 |
Call of Duty United Offensive: 1.5 | Gold (0.9.54) | Platinum (1.0.0) | +1 |
Jagged Alliance 2 Wildfire: 6.04 | Platinum (0.9.44) | Gold (1.0-rc4) | -1 |
The Ship 2007.02.26 | Bronze (0.9.53) | Gold (1.0.0) | +2 |
SimCity 4 SimCity 4 Deluxe | Garbage (1.0-rc5) | Gold (1.0.0) | +3 |
Mobile Forces 2.0 NOCD | Gold (0.9.44) | Platinum (1.0-rc4) | +1 |
AutoCAD 2005 | Garbage (1.0-rc4) | Silver (1.0.0) | +2 |
Desperados 2: Cooper's Revenge 1.01 (build 1.48) | Gold (0.9.44) | Platinum (1.0-rc4) | +1 |
Mankind 1.8 client for the "international universe... | Garbage (1.0-rc2) | Bronze (1.0-rc4) | +1 |
House of the Dead 2 1.0? | Garbage (0.9.59) | Bronze (1.0-rc5) | +1 |
Broken Cross Disk Manager x86 4.03 | Garbage (0.9.49) | Bronze (1.1.0) | +1 |
The Lord of the Rings: The Battle for Middle-Earth... | Garbage (1.0-rc4) | Bronze (1.0-rc5) | +1 |
Black Moon Chronicles: Winds of War v1.30 | Silver (0.9.56) | Platinum (1.1.0) | +2 |
Winbox 2.2.13 | Platinum (0.9.55) | Gold (1.0.0) | -1 |
Atomic Bomberman 1.0 | Gold (0.9.31) | Platinum (1.0-rc2) | +1 |
Brother in Arms: Earned in Blood EIBPCRC1.00 | Silver (0.9.35) | Gold (1.0-rc4) | +1 |
The Movies 1.1 | Silver (0.9.55) | Gold (1.0.0) | +1 |
Dungeon Keeper 2 1.x | Garbage (1.0-rc1) | Bronze (1.1.0) | +1 |
Entropia Universe 9.x | Bronze (0.9.53) | Garbage (1.0.0) | -1 |
CorelDRAW X3 (13) | Gold (0.9.59) | Garbage (1.1.0) | -3 |
Acrobat Reader 4.x | Gold (0.9.57) | Silver (1.0.0) | -1 |
Silkroad Online 1.x | Gold (1.0-rc2) | Platinum (1.0-rc4) | +1 |
Anno 1602: Creation of a New World ANNO1602 König... | Gold (0.9.54) | Silver (1.0-rc4) | -1 |
EVE Online 5.10.x Empyrean Age Premium | Bronze (1.0-rc3) | Gold (1.0-rc4) | +2 |
Pokemon NetBattle 0.9.6 | Bronze (0.9.60) | Platinum (1.1.0) | +3 |
Zork: Grand Inquisitor 1.0 | Garbage (1.0-rc2) | Silver (1.0-rc4) | +2 |
Little Big Adventure Twinsen's Odyssey | Platinum (0.9.54) | Gold (1.0.0) | -1 |
Renegade 64 1.x | Gold (0.9.50) | Silver (1.0.0) | -1 |
Mount&Blade 0.x | Garbage (0.9.34) | Silver (1.0-rc5) | +2 |
Knight Rider 1.0 | Silver (0.9.33) | Gold (1.0-rc4) | +1 |
Battlezone 2 1.3 Public Beta | Bronze (0.9.54) | Silver (1.1.0) | +1 |
Extreme Warfare Revenge 4.2 | Garbage (0.9.52) | Bronze (1.0-rc3) | +1 |
Pirates of the burning sea Current | Gold (1.0.0) | Silver (1.1.0) | -1 |
Industry Giant II V2.1 | Bronze (0.9.45) | Platinum (1.0-rc4) | +3 |
Acrobat Pro 7.0 | Bronze (0.9.58) | Garbage (1.0.0) | -1 |
Photoshop CS2 | Gold (1.0.0) | Platinum (1.1.0) | +1 |
Sid Meier's Civilization IV 1.74 | Garbage (1.0-rc3) | Gold (1.0.0) | +3 |
Word 2003 | Garbage (1.0-rc1) | Silver (1.0.0) | +2 |
Baldur's Gate II Baldur's Gate Tutu | Gold (1.0.0) | Platinum (1.1.0) | +1 |
Star Wars: Jedi Knight - Dark Forces II Demo | Silver (0.9.59) | Gold (1.0-rc4) | +1 |
AutoCAD 2008 | Garbage (1.0-rc3) | Bronze (1.0-rc4) | +1 |
Fireworks 8 | Gold (1.0-rc4) | Platinum (1.0.0) | +1 |
Terminator 3 - War of the Machines 1.16 | Silver (0.9.60) | Garbage (1.1.0) | -2 |
Robot Wars: Arenas of Destruction 1.2 | Silver (1.0-rc1) | Platinum (1.0.0) | +2 |
Faktury 4.1 | Gold (0.9.61) | Platinum (1.1.0) | +1 |
Acrobat Pro 6.0 | Silver (0.9.58) | Garbage (1.0.0) | -2 |
3DMark 2001 SE 330 | Garbage (1.0-rc1) | Gold (1.0-rc4) | +3 |
Call of Duty 1.3 | Gold (0.9.54) | Platinum (1.0-rc3) | +1 |
Condor: The Competition Soaring Simulator 1.1.2 | Garbage (0.9.58) | Bronze (1.0-rc3) | +1 |
WebIS FlexWallet 2006 2006 rev 4 build 529 | Bronze (0.9.47) | Platinum (1.0-rc2) | +3 |
Gothic 3 1.x | Garbage (0.9.59) | Bronze (1.0-rc5) | +1 |
Rosetta Stone 2.08.1A | Platinum (1.0-rc3) | Gold (1.1.0) | -1 |
Ford Racing 2 Demo | Silver (1.0-rc3) | Garbage (1.0.0) | -2 |
StarCraft Demo 1.01 | Silver (1.0-rc2) | Gold (1.0.0) | +1 |
Supreme Commander FA 1.x.3xxx | Silver (1.0.0) | Gold (1.1.0) | +1 |
PRONOTE Client 2007 | Gold (1.0-rc2) | Platinum (1.0.0) | +1 |
Tron 2.0 1.0 | Bronze (0.9.57) | Gold (1.0-rc5) | +2 |
Silent Hill 2 1.0 | Gold (1.0-rc1) | Garbage (1.0.0) | -3 |
Baldur's Gate II Throne of Bhaal | Platinum (1.0-rc2) | Gold (1.0.0) | -1 |
Axis & Allies (1998) 2.x | Garbage (0.9.52) | Platinum (1.0-rc4) | +4 |
Sling Player 1.5 UK | Bronze (1.0-rc4) | Gold (1.0.0) | +2 |
Celková změna | +49 |
Scott Ritchie udělal analýzu používanosti Wine na základě balíčku popcorn z Ubuntu:
Balíček "popcorn" je nainstalován
popcon, ne popcorn :)
Scott Ritchie udělal analýzu používanosti Wine na základě balíčku popcorn z Ubuntu:
Balíček "popcorn" je nainstalován
je asi jako s těmi perlami ...
..pred peti lety ve Wine provozoval..
To je zajímavé. Já vůbec nečekal, že by to mohlo jet, neb LangMaster využívá nějaké funkce MSIE a to Wine nepodporuje a nechává to na IEs4Linux. Osobně mi to přijde docela škoda, neb asi povícero výukovek je děláno podobně..... Gecko, a ty funkce by měly být podporovány prostřednictvím něj.No, měly. A v praxi i jsou, jenže asi ne všechny. Mimoto si LangMaster (epaexplorer.exe) testuje mj. verzi InternetExploreru, a Gecko mu zjevně nedá uspokojující odpověd...
Found 'Z:/home/vasek/autorungui.dll', but required function ''dllmessagebox'' is missing ...prosim pomocte mi stim jak to mam nainstalovat ...napiste prosím na můj email -> Homer123@seznam.cz.....diky
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.