Csomagkezelő helyett

A "Mit tud a Linux, amit a Windows nem?" topicban felmerült, hogy a windows jelenleg nem tartalmaz csomagkezelőt, legalábbis abban az értelemben biztosan nem, ami képes lenne a 3rd party alkalmazások frissítésére. Irc-n elkezdtünk beszélgetni a dologról, majd végül kialakítottunk egy végtelenül egyszerű, ugyanakkor szvsz remekül működő koncepciót a frissítés probléma megoldására.

Az egész kb. úgy nézne ki, hogy minden szoftvernek lenne egy rss feedje a fejlesztő weboldalán. Maga a feed pedig akkor frissülne, ha a szoftverből új verzió jelenik meg. Az rss törzse tartalmazhatná a bejelentést és a changelogot (ha az nem túl nagy), az rss linkje pedig a telepítőre, vagy a letöltési oldalra mutatna.

Miért is jó ez?
Először is, mert elosztott, nem kell központi repositoryt karbantartani.
Másrészt mert kikapcsolhatóvá teszi az update checkereket, amik mindig akkor ugranak a felhasználó képébe, amikor épp használni akarja az adott szoftvereket.
Harmadrészt mert egy helyen, egységes módon tájékozódhatna a felhasználó a frissítésekről azáltal, hogy az rss olvasó egységes felületet, és globális beállítási lehetőséget ad (a feedekre).
Negyedrészt mert a felhasználó eldöntheti, mikor és mely frissítéseket akarja telepíteni, ugyanakkor könnyedén hozzáférhet a telepítőkhöz.

Bár nyilván én ehhez egyedül kevés vagyok, és a világ összes szoftveréhez mérten a hup összes tagja is kevés hozzá, aki támogatja az ötletet, az kérem terjessze, hátha a szoftverfejlesztők is látnak ebben a megoldásban fantáziát.

A koncepció kidolgozásában segítőként ixc, kritikusként McHalls működött közre. :)

Hozzászólások

Jo otlet, mindossze egy specialis feed kene (nem hinnem pont RSS lenne az) illetve valami kliens program ami figyeli mondjuk valami C#-ban irodott stuff (gyorsan ossze lehet dobni, jol mukodik).

"Miért is jó ez?
Először is, mert elosztott, nem kell központi repositoryt karbantartani."

Ez miért jó? Ha nincs központi karbantartása, akkor a benne lévő programok kb. 95%-a lesz trójai. (Elnézést, ha alulbecsültem! :-) )

"Negyedrészt mert a felhasználó eldöntheti, mikor és mely frissítéseket akarja telepíteni, ugyanakkor könnyedén hozzáférhet a telepítőkhöz."

Tehát átlagfelhasználó sohasem fog frissíteni.

KisKresz

"Ez miért jó? Ha nincs központi karbantartása, akkor a benne lévő programok kb. 95%-a lesz trójai. (Elnézést, ha alulbecsültem! :-) )"

Az egésznek az a lényege, hogy a gyártó adja a feedet. Pl. lenne az adobe.com-on egy flashplayer.rss feed, amire te feliratkozhatsz, és ha frissül a flashplayer, az adobe szépen frissíti az rss feedet.

Ne úgy képzeld el, mint egy nagy rss feedet, amibe bárki beleírhatja, hogy frissült a programja.

--
Don't be an Ubuntard!

Pedig pofonegyszerű. Nézzünk egy nagyon konkrét példát.

Vegyük például a firefoxot. Mindössze annyit kellene tennie a firefox developer teamnek, hogy létrehoznak egy rss feedet, legyen mondjuk a címe: http://mozilla.com/firefox/releases/rss. Ebbe a feedbe akkor vesznek fel új bejegyzést, ha új kiadása jelenik meg a firefoxnak. Így a feedben mondjuk az alábbi címek szerepelnének most:
Mozilla Firefox 3.6.3
Mozilla Firefox 3.6.2
Mozilla Firefox 3.6.1
Mozilla Firefox 3.6
Mozilla Firefox 3.5.7

A bejegyzések törzsében az aktuális kiadáshoz tartozó changelog és release notes szerepelne, és mindegyik linkje az adott verzió letöltési oldalára mutatna, azaz a legújabb verziónál a tartalom a http://www.mozilla-europe.org/hu/firefox/3.6.3/releasenotes/ oldal tartalma lenne, és a hivatkozás a http://www.mozilla.com/en-US/firefox/all.html oldalra mutatna.

A felhasználó dolga pedig annyi lenne, hogyha telepíti a firefoxot, akkor felveszi ezt az rss feedet egy rss olvasóba, így ha update jön, a user tájékozódhatna róla. (Persze ez nem váltaná ki az auto updatet a legtöbb helyen, de el tudok képzelni olyan helyzetet amikor igen.)

Ha a felhasználó más szoftvereket is telepít, más rss feedekre is fel kellene iratkoznia. Azaz minden programnak saját feedje lenne. Lenne egy a flash playernek az adobe.com-ról, a virtualboxnak a virtualbox.org-ról, a skypenak a skype.com-ról, stb...

--
Don't be an Ubuntard!

szerintem meg pont úgy kellene megcsinálni, mint FreeBSD ports-ot :)

vagyis a microsoft auditálná a különböző verziókat a 3rd party szoft-okból, és az épp megfelelőnek rögzítik a hash-ét és frissítik a "ports"-ban a bejegyzést és letöltési linkeket. ez hasonló a ti elképzelésetekhez, de a hash-ek tárolása és digitális aláírása fontos lenne, meg jó lenne a tesztelés is ms részéről a frissítés felkínálása előtt - ha jobb minőségű szolgáltatást akarnak nyújtani.

a 3rd party semmit nem csinálna, hanem az ms írná alá a saját hash leírásukat. persze tesztelés után. és ez a text fájl csorogna le a felhasználó gépére. pl:

NAME=firefox
VERSION=3.6.x
MD5=567565667...
SHA1=788778..
SHA256=557576...
LINK=http://mozilla.org/...

NAME=thunderbird
...

vagy hasonló. sima text + ez aláírva

szerintem teljesen értelmetlen dolog win-re fejleszteni, mivel nincs jövője, de hogy a válaszban segítsek: miért rss? miért nem a dns txt rekordját használjátok az infók terjesztésére? legalább még redundáns is lenne [pár vírusirtó ezt a módot használja az adatbázisuk nyomonkövetésére a kliensek felől]

"teljesen értelmetlen dolog win-re fejleszteni, mivel nincs jövője"

Valóban, de csak ha fél évszázadokban gondolkozunk. Platformok jönnek mennek, de jelenleg úgy gondolom, hogy a Linuxnak és a Windowsnak (vagy az utódainak) még van néhány évtizede. Itt meg egy olyan fejlesztésről van szó, amit most akarnak megcsinálni. Ebből a szempontból, hogy mi lesz 50 év múlva, le van...

SKL - leírásgyűjtemény és informatikai portál

Sot! Ha Windowsra normalisan fejlesztes, betartva az API-kat, eloirasokat, sokkal nagyobb az eselye (100% koruli), hogy akar 20-25 ev mulva is futni fog modositas nelkul a progid, mint Linux eseten. Nem elhanyagolhato szempont egy szoftverfejleszto cegtol, hogy mekkora eroforrast kell biztositania a szoftver utoeletenek kezelesere.

A Microsoft onmagaban van akkora ceg, mintha harom-negy fejlesztoceg lenne. Toluk is elvaras lenne, hogy hasznaljak az API-t, de aki mar dolgozott eles projekten kis cegnel, tudja, hogy megy ez...van amikro a hatarido fontosabb. En ugy vettem eszre, hogy 2003-2004 korul fordult egy nagyot az MS, az azota kiadott szoftvereik (marmint amiket akkor kezdtek el fejleszteni) sokkal jobb minoseguek, mint az elozoek. Valami naluk is valtozott, elonyere.

ezt többször olvastam itt már, de szerintem ez leginkább csak a kernel-hez közeli szoftvereket fejlesztőket érinti csak leginkább. a többi oss proginál kit érdekel? az adott dizstrib-et összecsiszolják a választott kernel verzióval, libc-vel stb.

szerintem ha valami dinamikusabban változik, annál előbb sikerülhet jó írányt felvenni. a közösségnek rossz úgyis dobásra kerül (valószínűleg). ezzel szemben a bebetonozott fasza kis kompatibilis api-k meg hamar kiöregedésre vannak ítélve imho.

for-profit fejlesztők meg bírják már lekövetni a pár évente kiadásra kerülő verziókat. vagy nem? ja hogy sokan 98-as foxpro-s dolgokat akarnak futtatni, mert tesznek az átállásra? lol. xp óta eltelt lassan 10 év, 98 óta még több.

hiába, itt sincs minden egyszerre. vagy hosszú kompatibilitás és kényelem, vagy modernebb alapok és több energia ráfordítás a követésre. ez sem gond szerintem.

vagy egyre magasabb rétegek felé megyünk, és akkor legyen a rendszer közeli programozók problémája az egész. erre is hosszú ideje van lehetőség.

Ennek a hozzászólásnak akkor lett volna értelme, ha nincs igazam azzal kapcsolatban, amit mondtam. Természetesen megint sikerült előjönni a Linux-rendszerek egyik hiányosságával, amit soha senki nem tagadott, ellenben ezzel igazolva látják egyesek, Windows-on ez miért megengedhető. Ezexerint viszont ezt Te buktad be, mert most nem a Linux hiányosságai a téma.

-------------------------
Trust is a weakness...

Jó kis ötlet, de Windows-on ez nagyon veszélyes. Vírus jön > Módosít > Csomagkezelő vírusos verziókra frissít. Tovább nem is folytatom, mert mindenki tudja miről beszélek. Meglátásom szerint ez csak egy hatékonyabb módja lenne a vírusok terjedésének. Tehát előbb mérlegelni kellene, hogy mennyire lehet ártalmas ez a szoftver és mennyire lehet a problémákat kivédeni. Amúgy valóban jó ötletnek tartom, de nem egy olyan világban, ahol minden felhasználó rendszergazda és vaktában kattint és fogad el mindent. Szerintem...

SKL - leírásgyűjtemény és informatikai portál

Kevered a szezont a fazonnal. A csomagkezelő feladata az, hogy a gépedre letöltött telepítő készletet felrakja, igény szerint leszedje.
Amiről te beszélsz, az meg arról értesít, hogy van letöltendő telepítő készlet.

Fentiek alapján:
1. kell központi repó, mert nem várhatod el a programozótól, hogy n+1 helyre felrakja a telepítőt
2. a szoftverekben szokott lenni frissesség ellenőrzés, ami kikapcsolható
3. azt most is el lehet dönteni, hogy mit akarsz frissíteni

Az is probléma még, hogyha nem központi repót akarsz használni, akkor melyik repóhoz milyen rss feedet generálsz és melyik felhasználó melyik rss feedre iratkozik fel? Ha meg egy rss feed van, akkor mi értelme van annak, hogy nincs egy kiindulási repó?

szerintem ez egy felejtésre érdemes koncepció, amellett, hogy a csomagkezelőt keverni az értesítéssel meg téves.

Szerintem ez nem csomagkezelő lenne. Szimplán a feltelepített alkalmazások új kiadásait nézné, ami azért nem egyenlő egy csomagkezelővel. Ennél a szoftvernél elég lenne, ha Winampék, Firefoxék stb. hajlandóak lennének erre az egyedi RSS bejelentésre a weboldalukon. A frissítő tudná a feltelepített alkalmazás erre vonatkozó adataiból kiolvasva, hogy hol kell keresni az adott RSS-t. Így a csomagtároló sem kellene. Viszont ezt nem várhatjuk el, hogy egyetlen szoftver miatt elkezdjen minden szoftverfejlesztő ezzel foglalkozni. Ezért mégis csak kellene egy csomagtároló, vagy legalábbis verziókövető, amit valaki(k)nek karban kell tartania és mindig frissítenie. Ez nem kis meló.

SKL - leírásgyűjtemény és informatikai portál

Szerintem már van ilyen:

http://www.kcsoftwares.com/?sumo

Summary

SUMo, which stands for Software Update Monitor. Thanks to SUMo you'll be able to keep your PC up-to-date by using the most recent version of your favorite software ! Unlike build-in auto update features, SUMo tells you if updates are available before you need to use your software.

Features

* Automatic detection of installed software
* Detects required updates / patchs for your software
* Filter / authorize Beta versions (user setting)
* Ignore list : only tracks software YOU want to track
* More compatibility and less false positive than others Update Monitors (according to users feedback ;-)
* Internationalization support.

Ez központi adatbázist használ, mint a filehippos, vagy rakhatok bele saját cuccokat is?

Szerk: kipróbáltam, nem rossz, de azért ez se ismer fel mindent. Például nálam nem tudta hozzáadni a 7-zipet, Virtualboxot, TortoiseSVN-t, hogy csak az ismertebbeket említsem. Elsőre úgy tűnt, a 64 bit a bűnös, de rá kellett jönnöm, hogy pár kisebb, 32 bites cuccot se tudott felvenni a listára, mint pl. az OpenArena.

Itt a teljes lista, amit nem ismert fel, sárgával kiemelve, amit szerintem fel kellene ismernie.

--
Don't be an Ubuntard!