It seems that there is great overlap between different projects. The purpose of this page is to identify common parts and divide them properly between the various projects and also establish interfaces and conventions where appropriate (e.g. XML format, GUI). The goal should be a coherent WinLibre suite.
The Python rewrites, the MacLibre and the Updater have a lot in common. I’m not sure if both Python rewrites are different or if they simply two variants of the same project. The ControlCenter should launch the Updater when necessary. Here is a first cut of division of work:
This component is similar to the current WinLibre. The user has to download and install it on its own accord. The initial installer should contain only the control center and the updater. Once the control center + updater are installed the control center will launch the updater and the user will be able to download and install the latest and greatest. This way there is no need to manage different versions of the initial installer. There should be minimal GUI (basically just a progress bar) and no user interaction.
This component will check for updates and allow the user to download and install/upgrade new packages and also uninstall old packages. I think this component should not have a separate GUI and it should provide API that will be utilized by the Control Center. It should also runs constantly in the background and periodically check for updates and notify the control center. The updater should be a module of the control center and not stand alone component (although during development and testing it may have a stand alone front end)
This component should be the GUI front end of the entire WinLibre suite. The updater should be one of its modules. It should be always resident (although hidden most of the time) to be ready to receive update notifications from the updater. Of course the user may shut it down, but then it will lose auto update capability.
May be added relatively independently and laubched bt the control center.
This is an important characteristic of WinLibre. The packages are not under WinLibre’s control. This means that conflicts may arise. For example, consider the following scenario - Package A-1.0 and B-1.0 depend on package D-1.0. Package B releases a new version B-1.1 that depend on package D-2.0 (incompatible with D-1.0). Unfortunately, D-1.0 and D-2.0 can’t reside side by side on the user’s machine. We have an unresolvable conflict. Pierre-Jean mentioned to me in private email that he wants to cooperate with all the specific package creators. This is a good idea, and it can definitely solve many problems, but we should be ready or at least aware of unresovable conflicts (e.g. there is currently a dependency on Java).
By foreign OS I mean that at there is already an an existing mechanism for installation/uninstallation of software that we piggyback. Users may [inadvertantly] install/uninstall software on their machine through the standard mechanism and disrupt the normal operation of WinLibre. For example a user may try to make some room on his machine and uninstall the Java Runtime, which some WinLibre packages depend on. I think we should be able to detect and hopefully recover from things like missing dependencies or wrong versions. I am not sure if we should even try to manage a separate inventory of installed WinLibre software or rely on the OS directly.
This is an important feature to maintain. Basic internationalization of european locales can be handled pretty easilly by externalizing the text on the GUI. Higher levels such as different layout for different cultures, eastern locales etc are more complicated
Everybody talks about XML, but we can also go with some other format. The current format of Winlibre is the INI file-like format. I don’t think we should stick with it. The data is definitely hierarchical. But we there are other alternatives. For example Yaml is exteremely Python-like and less verbose than XML. There are good Python bindings and libraries for reading/writing Yaml.
XML has good tool and library support and also allow some level of auto-verification via XML schema (or DTD etc).
My take on it is that while Yaml is technically superior it doesn’t worth the mental effort of switching from the familiar and cozy XML.
I don’t think we need to define a schema. In my experience a schema can’t really help in validating the correctness of the XML (e.g. well-formed URLs for download) and it just divides the validation logic into two places. I prefer to validate the entire XML in the code by parsing it, noting missing elements/attributes and verfying the contents (ranges, types etc)
This is really a question if we should manage a local database of WinLibre installed software or rely on the OS. We definitly need a file (with interntiopnalized versions) for the update info. I lean towards having a single file and relying on the OS, since as I mentioned earlier we must monitor the OS installed software anyway.
This is an “XMLization” of the WinLibre_en.ini file + download information. Interesting things about it:
<?xml version="1.0" ?> <UpdateInfo> <Shared> <!-- JRE 1.4.2 --> <Package name="Java" version="1.4.2" web="www.winlibre.com" > <RTFLines> <RTFLine>Java 1.4.2 Runtime Environment</RTFLine> </RTFLines> <Files> <File displayName="Java RunTime Env. 1.4.2" destName="jre-1_4_2_08-windows-i586-p.exe" size="15793888" > <Download Url="http://voxel.dl.sourceforge.net/sourceforge/winlibre/j2re-1_4_2_08.exe" /> <Download Url="http://belnet.dl.sourceforge.net/sourceforge/winlibre/j2re-1_4_2_08.exe" /> <Download Url="http://winlibre.peewi.org/j2re-1_4_2_08-windows-i586-p.exe" /> <Download Url="http://www.winlibre.com/files/j2re-1_4_2_08-windows-i586-p.exe" /> </File> </Files> <Install command="jre-1_4_2_08-windows-i586-p.exe" flags="/L1033 /s /v /qn ADDLOCAL=ALL IEXPLORER=1 NETSCAPE6=1 MOZILLA=1 REBOOT=Suppress JAVAUPDATE=1 WEBSTARTICON=1" /> </Package> <!-- GTK 2.6.2 --> <Package name="GTK" version="2.6.2" web="www.winlibre.com" > <RTFLines> <RTFLine>GTK Library for windows</RTFLine> </RTFLines> <Files> <File displayName="GTK for Windows 2.6.2 rev a" destName="gtk+-2.6.2-setup.exe" size="3470642" > <Download Url="http://voxel.dl.sourceforge.net/sourceforge/gaim/gtk-runtime-2.6.2-rev-a.exe" /> <Download Url="http://belnet.dl.sourceforge.net/sourceforge/gaim/gtk-runtime-2.6.2-rev-a.exe" /> <Download Url="http://heatnet.dl.sourceforge.net/sourceforge/gaim/gtk-runtime-2.6.2-rev-a.exe" /> <Download Url="http://umn.dl.sourceforge.net/sourceforge/gaim/gtk-runtime-2.6.2-rev-a.exe" /> </File> </Files> <Install command="gtk+-2.6.2-setup.exe" flags="/L=1033 /S" /> </Package> </Shared> <Categories> <Category name="Office"> <!-- OpenOffice --> <Package name="OpenOffice" version="1.4.1" web="www.winlibre.com/en/Articles/Office/OpenOffice.Org.php" > <RTFLines> <RTFLine>Complete, Microsoft Office compatible, sofware suite.</RTFLine> <RTFLine>Writer, Calc, Impress, Draw</RTFLine> </RTFLines> <Dependencies> <Dependency name="Java" version="1.4.2" /> </Dependencies> <Files> <File displayName="OpenOffice.org 1.1.4" destName="Ooo_En_1.1.4.exe" size="67385924" > <Download Url="http://ftp.belnet.be/pub/mirror/ftp.openoffice.org/stable/1.1.4/OOo_1.1.4_Win32Intel_install.exe" /> <Download Url="http://ftp.heanet.ie/mirrors/openoffice.org/stable/1.1.4/OOo_1.1.4_Win32Intel_install.exe" /> <Download Url="http://mirrors.sunsite.dk/openoffice/stable/1.1.4/OOo_1.1.4_Win32Intel_install.exe" /> <Download Url="ftp://ftp.tu-chemnitz.de/pub/openoffice/stable/1.1.4/OOo_1.1.4_Win32Intel_install.exe" /> </File> <File displayName="DicoooPack FR 1.0.1" destName="Dicooo_Fr_1.0.1.zip" size="1327008" > <Download Url="http://ftp.services.openoffice.org/pub/OpenOffice.org/contrib/dictionaries/fr_FR-pack.zip" /> </File> </Files> <Install command="setup.py" flags="" /> </Package> </Category> <Category name="Internet"> </Category> </Categories> </UpdateInfo>
The initial installer should check to see if the user has Python installed, and if not it should download and install it, otherwise the Control Center and updater (assuming it will be written in Python) will not work.
No there is no need to install Python. There exist a program called py2exe which allow you to build an executable from your python source code. I think it is a better way to work. I don’t think end user will be very happy to install python an unknown program for him in order to install WinLibre distribution with which he wants to install other softwares.
[Gil] I think you are both right: py2exe sounds good for the initial installer. But as Joey said the initial installer should still install Python (if not installed already) so the control center, updater and future Python-based modules can be pure Python. py2exe puts the entire python runtime + win32 extensions in the executable and it’s around 1MB if I’m not mistaken.
If I understand what you have written, the WinLibre Python Prototype (which is the installer) just install the updater and the control center. Next everything is going to be done by the updater called by the control center when needed. So I have nearly finished my project :) I think you are right to handle the install/update process with the “updater” project. But that means that my installer is going to only handle the installation of the control center and updater: what do you think about that Mr Coudert ? Does it correpond to your needs ?
I wrote a small Python script to parse the distribution .ini file and spit out my XML format. It’s huge so you probably don’t want to do it manually. You can probably use XSLT to convert my XML format to your XML format. Note that many download links are broken. I also had to escape the ampersand character in some of the URLs (firefox). If PJ will publish a fixed one I’ll rerun my script and update this page.
<?xml version="1.0" encoding="UTF-8"?> <UpdateInfo> <Shared> <Package name="Java" version="1.4.2" web="www.winlibre.com" > <RTFLines> <RTFLine>Java 1.4.2 Environnement</RTFLine> </RTFLines> <Files> <File displayName="Java RunTime Env. 1.4.2" destName="jre-1_4_2_08-windows-i586-p.exe" size="15793888" installFlags="/L1033 /s /v “/qn ADDLOCAL=ALL IEXPLORER=1 NETSCAPE6=1 MOZILLA=1 REBOOT=Suppress JAVAUPDATE=1 WEBSTARTICON=1”" > <Download Url="http://voxel.dl.sourceforge.net/sourceforge/winlibre/j2re-1_4_2_08.exe" /> <Download Url="http://belnet.dl.sourceforge.net/sourceforge/winlibre/j2re-1_4_2_08.exe" /> <Download Url="http://winlibre.peewi.org/j2re-1_4_2_08-windows-i586-p.exe" /> <Download Url="http://www.winlibre.com/files/j2re-1_4_2_08-windows-i586-p.exe" /> </File> </Files> </Package> <Package name="GTK" version="2.6.2" web="www.winlibre.com" > <RTFLines> <RTFLine>GTK Library for windows.</RTFLine> </RTFLines> <Files> <File displayName="GTK for Windows 2.6.2 rev a" destName="gtk+-2.6.2-setup.exe" size="3470642" installFlags="/L=1033 /S" > <Download Url="http://voxel.dl.sourceforge.net/sourceforge/gaim/gtk-runtime-2.6.2-rev-a.exe" /> <Download Url="http://belnet.dl.sourceforge.net/sourceforge/gaim/gtk-runtime-2.6.2-rev-a.exe" /> <Download Url="http://heatnet.dl.sourceforge.net/sourceforge/gaim/gtk-runtime-2.6.2-rev-a.exe" /> <Download Url="http://umn.dl.sourceforge.net/sourceforge/gaim/gtk-runtime-2.6.2-rev-a.exe" /> </File> </Files> </Package> </Shared> <Categories> <Category name="Office"> <Package name="OpenOffice.org" version="1.1.4" web="www.winlibre.com/en/Articles/Office/OpenOffice.Org.php" > <RTFLines> <RTFLine>Complete, Microsoft Office compatible, sofware suite.</RTFLine> <RTFLine>Writer, Calc, Impress, Draw</RTFLine> </RTFLines> <Files> <File displayName="OpenOffice.org 1.1.4" destName="Ooo_En_1.1.4.exe" size="67385924" installFlags="" > <Download Url="http://ftp.belnet.be/pub/mirror/ftp.openoffice.org/stable/1.1.4/OOo_1.1.4_Win32Intel_install.exe" /> <Download Url="http://ftp.heanet.ie/mirrors/openoffice.org/stable/1.1.4/OOo_1.1.4_Win32Intel_install.exe" /> <Download Url="http://mirrors.sunsite.dk/openoffice/stable/1.1.4/OOo_1.1.4_Win32Intel_install.exe" /> <Download Url="ftp://ftp.tu-chemnitz.de/pub/openoffice/stable/1.1.4/OOo_1.1.4_Win32Intel_install.exe" /> </File> <File displayName="DicoooPack FR 1.0.1" destName="Dicooo_Fr_1.0.1.zip" size="1327008" installFlags="" > <Download Url="http://ftp.services.openoffice.org/pub/OpenOffice.org/contrib/dictionaries/fr_FR-pack.zip" /> </File> </Files> </Package> <Package name="PDFCreator" version="0.8.0" web="www.winlibre.com/en/Articles/Office/PDFCreator.php" > <RTFLines> <RTFLine>Virtual Printer to create PDF files.</RTFLine> <RTFLine>Is an Adobe Acrobat Writer alternative.</RTFLine> </RTFLines> <Files> <File displayName="PDFCreator-0_8_0_AFPLGhostscript" destName="PDFCreatorGnu_Int_0.8.0.exe" size="7561382" installFlags="SP- /SILENT" > <Download Url="http://belnet.dl.sourceforge.net/sourceforge/pdfcreator/PDFCreator-0_8_0_GNUGhostscript.exe" /> <Download Url="http://voxel.dl.sourceforge.net/sourceforge/pdfcreator/PDFCreator-0_8_0_GNUGhostscript.exe" /> <Download Url="http://umn.dl.sourceforge.net/sourceforge/pdfcreator/PDFCreator-0_8_0_GNUGhostscript.exe" /> <Download Url="http://heanet.dl.sourceforge.net/sourceforge/pdfcreator/PDFCreator-0_8_0_GNUGhostscript.exe" /> </File> <File displayName="PDFCreator-0_8_0_french.ini" destName="pdf_french_0.8.0.ini" size="12729" installFlags="" > <Download Url="http://belnet.dl.sourceforge.net/sourceforge/pdfcreator/french.ini" /> <Download Url="http://voxel.dl.sourceforge.net/sourceforge/pdfcreator/french.ini" /> <Download Url="http://umn.dl.sourceforge.net/sourceforge/pdfcreator/french.ini" /> <Download Url="http://heanet.dl.sourceforge.net/sourceforge/pdfcreator/french.ini" /> </File> </Files> </Package> <Package name="FreeMind" version="0.7.1" web="www.winlibre.com/en/Articles/Office/FreeMind.php" > <RTFLines> <RTFLine>Mind mapping software.</RTFLine> <RTFLine>Write down, organize, communicate your ideas.</RTFLine> </RTFLines> <Files> <File displayName="FreeMind 0.7.1" destName="FreeMind_Int_0.7.1.exe" size="767245" installFlags="/VERYSILENT" > <Download Url="http://belnet.dl.sourceforge.net/sourceforge/freemind/FreeMind-Windows-Installer-0_7_1.exe" /> <Download Url="http://voxel.dl.sourceforge.net/sourceforge/freemind/FreeMind-Windows-Installer-0_7_1.exe" /> <Download Url="http://umn.dl.sourceforge.net/sourceforge/freemind/FreeMind-Windows-Installer-0_7_1.exe" /> <Download Url="http://heanet.dl.sourceforge.net/sourceforge/freemind/FreeMind-Windows-Installer-0_7_1.exe" /> </File> </Files> </Package> <Package name="GanttProject" version="1.10.3" web="www.winlibre.com/en/Articles/Office/GanttProject.php" > <RTFLines> <RTFLine>Ganttproject lets you plan projects </RTFLine> <RTFLine>using a Gantt chart.</RTFLine> </RTFLines> <Files> <File displayName="GanttProject 1.10.3" destName="GanttProject_Int_1.10.3.exe" size="5589308" installFlags="/SILENT" > <Download Url="http://www.winlibre.com/files/GanttProject/setup_GanttProject_1.10.3.exe" /> </File> </Files> </Package> </Category> <Category name="Internet"> <Package name="FireFox" version="1.0.2" web="www.winlibre.com/en/Articles/Internet/Firefox.php" > <RTFLines> <RTFLine>Mozilla project's web browser</RTFLine> </RTFLines> <Files> <File displayName="FireFox 1.0.2" destName="FireFox_En_1.0.2.exe" size="4826536" installFlags="-ms" > <Download Url="http://download.mozilla.org/?product=firefox-1.0.2&os=win&lang=en-US" /> </File> </Files> </Package> <Package name="ThunderBird" version="1.0.2" web="www.winlibre.com/en/Articles/Internet/ThunderBird.php" > <RTFLines> <RTFLine>Mozilla project's email client</RTFLine> </RTFLines> <Files> <File displayName="ThunderBird 1.0.2" destName="Thunderbird_En_1.0.2.exe" size="6033720" installFlags="-ms" > <Download Url="http://download.mozilla.org/?product=thunderbird-1.0.2&os=win&lang=en-US" /> </File> </Files> </Package> <Package name="Nvu" version="0.90" web="www.winlibre.com/en/Articles/Internet/Nvu.php" > <RTFLines> <RTFLine>Wysiwyg Web site editor.</RTFLine> <RTFLine>FrontPage and DreamWeaver alternative</RTFLine> </RTFLines> <Files> <File displayName="Nvu 0.90" destName="Nvu_En_0.90.exe" size="6785657" installFlags="/silent /norestart" > <Download Url="http://cvs.nvu.com/download/nvu-0.90-win32-installer-full.exe" /> <Download Url="http://www.winlibre.com/files/Nvu_En_0.90.exe" /> </File> </Files> </Package> <Package name="FileZilla" version="2.2.12c" web="www.winlibre.com/en/Articles/Internet/FileZilla.php" > <RTFLines> <RTFLine>A quality FTP client</RTFLine> </RTFLines> <Files> <File displayName="FileZilla 2.2.12c" destName="FileZilla_Int_2.2.12c.exe" size="3366565" installFlags="/S" > <Download Url="http://voxel.dl.sourceforge.net/sourceforge/filezilla/FileZilla_2_2_12c_setup.exe" /> <Download Url="http://belnet.dl.sourceforge.net/sourceforge/filezilla/FileZilla_2_2_12c_setup.exe" /> <Download Url="http://heanet.dl.sourceforge.net/sourceforge/filezilla/FileZilla_2_2_12c_setup.exe" /> <Download Url="http://umn.dl.sourceforge.net/sourceforge/filezilla/FileZilla_2_2_12c_setup.exe" /> </File> </Files> </Package> <Package name="Gaim" version="1.2.0" web="www.winlibre.com/en/Articles/Internet/Gaim.php" > <RTFLines> <RTFLine>An instant messaging application</RTFLine> <RTFLine>AOL, ICQ, Yahoo, MSN compatible</RTFLine> </RTFLines> <Files> <File displayName="Gaim 1.2.0" destName="Gaim_Int_1.2.0.exe" size="3146452" installFlags="/L=1033 /S" > <Download Url="http://voxel.dl.sourceforge.net/sourceforge/gaim/gaim-1.2.0-no-gtk.exe" /> <Download Url="http://belnet.dl.sourceforge.net/sourceforge/gaim/gaim-1.2.0-no-gtk.exe" /> <Download Url="http://heanet.dl.sourceforge.net/sourceforge/gaim/gaim-1.2.0-no-gtk.exe" /> <Download Url="http://umn.dl.sourceforge.net/sourceforge/gaim/gaim-1.2.0-no-gtk.exe" /> </File> </Files> </Package> </Category> <Category name="Create"> <Package name="Audacity" version="1.2.3" web="www.winlibre.com/en/Articles/Creation/Audacity.php" > <RTFLines> <RTFLine>Audio editing software</RTFLine> </RTFLines> <Files> <File displayName="Audacity setup 1.2.3" destName="Audacity_Int_1.2.3.exe" size="2459378" installFlags="/silent" > <Download Url="http://voxel.dl.sourceforge.net/sourceforge/audacity/audacity-win-1.2.3.exe" /> <Download Url="http://belnet.dl.sourceforge.net/sourceforge/audacity/audacity-win-1.2.3.exe" /> <Download Url="http://heanet.dl.sourceforge.net/sourceforge/audacity/audacity-win-1.2.3.exe" /> <Download Url="http://umn.dl.sourceforge.net/sourceforge/audacity/audacity-win-1.2.3.exe" /> </File> <File displayName="Audacity Manual 1.2" destName="Audacity_Manual_En_1.2.zip" size="455664" installFlags="" > <Download Url="http://audacity.sourceforge.net/audacity-manual-1.2.zip" /> </File> <File displayName="Lame3.96_VSTEnabler0.1.3" destName="Lame3.96 VST-Enabler-0.1.3.zip" size="206151" installFlags="" > <Download Url="http://www.winlibre.com/files/Lame3.96 VST-Enabler-0.1.3.zip" /> </File> </Files> </Package> <Package name="InkScape" version="0.41" web="www.winlibre.com/en/Articles/Creation/Inkscape.php" > <RTFLines> <RTFLine>Vector drawing application</RTFLine> <RTFLine>native SVG format support.</RTFLine> </RTFLines> <Files> <File displayName="InkScape 0.41" destName="Inkscape_Int_0.41.exe" size="10808151" installFlags="" > <Download Url="http://belnet.dl.sourceforge.net/sourceforge/inkscape/Inkscape-0.41-1.win32.exe" /> <Download Url="http://heanet.dl.sourceforge.net/sourceforge/inkscape/Inkscape-0.41-1.win32.exe" /> <Download Url="http://voxel.dl.sourceforge.net/sourceforge/inkscape/Inkscape-0.41-1.win32.exe" /> <Download Url="http://umn.dl.sourceforge.net/sourceforge/inkscape/Inkscape-0.41-1.win32.exe" /> </File> </Files> </Package> <Package name="Blender" version="2.36" web="www.winlibre.com/en/Articles/Creation/Blender.php" > <RTFLines> <RTFLine>3D modeler and renderer.</RTFLine> </RTFLines> <Files> <File displayName="YafRay 0.0.7" destName="YafRay_En_0.0.7.exe" size="1609068" installFlags="/silent" > <Download Url="http://www.winlibre.com/files/YafRay-0.0.7.exe" /> </File> <File displayName="Blender 2.36" destName="Blender_En_2.36.exe" size="4724644" installFlags="/S" > <Download Url="http://download.blender.org/release/Blender2.36/blender-2.36-windows.exe" /> <Download Url="ftp://ftp.cs.umn.edu/pub/blender.org/release/Blender2.36/blender-2.36-windows.exe" /> <Download Url="http://planetmirror.com/pub/blender/release/Blender2.36/blender-2.36-windows.exe" /> </File> </Files> </Package> <Package name="Gimp" version="2.2.4" web="www.winlibre.com/en/Articles/Creation/Gimp.php" > <RTFLines> <RTFLine>2D drawing software</RTFLine> <RTFLine>The Photoshop alternative!</RTFLine> </RTFLines> <Files> <File displayName="Gimp 2.2.4" destName="Gimp_Int_2.2.4.zip" size="7340837" installFlags="SP- /SILENT /NORESTART" > <Download Url="http://heanet.dl.sourceforge.net/sourceforge/gimp-win/gimp-2.2.4-setup.zip" /> <Download Url="http://belnet.dl.sourceforge.net/sourceforge/gimp-win/gimp-2.2.4-setup.zip" /> <Download Url="http://voxel.dl.sourceforge.net/sourceforge/gimp-win/gimp-2.2.4-setup.zip" /> <Download Url="http://umn.dl.sourceforge.net/sourceforge/gimp-win/gimp-2.2.4-setup.zip" /> </File> <File displayName="Gimp Help2-0.7" destName="Gimp2_Help_Int_0.7.zip" size="10512687" installFlags="SP- /SILENT /NORESTART" > <Download Url="http://heanet.dl.sourceforge.net/sourceforge/gimp-win/gimp-help-2-0.7-setup.zip" /> <Download Url="http://belnet.dl.sourceforge.net/sourceforge/gimp-win/gimp-help-2-0.7-setup.zip" /> <Download Url="http://voxel.dl.sourceforge.net/sourceforge/gimp-win/gimp-help-2-0.7-setup.zip" /> <Download Url="http://umn.dl.sourceforge.net/sourceforge/gimp-win/gimp-help-2-0.7-setup.zip" /> </File> </Files> </Package> <Package name="Open Clip Art Library" version="0.12" web="www.winlibre.com/en/Articles/Creation/Open_Clip_Art_Library.php" > <RTFLines> <RTFLine>An archive of clip art that can be used </RTFLine> <RTFLine>for free for any use.</RTFLine> <RTFLine>Formats : SVG (vector) and PNG (bitmap).</RTFLine> </RTFLines> <Files> <File displayName="Open ClipArt Library 0.12" destName="Open_Clip_Art_Library_0.12.zip" size="46653511" installFlags="" > <Download Url="http://www.openclipart.org/downloads/0.12/openclipart-0.12.zip" /> </File> </Files> </Package> </Category> <Category name="Multimedia"> <Package name="VideoLanClient" version="0.8.1" web="www.winlibre.com/en/Articles/Multimedia/VideoLanClient.php" > <RTFLines> <RTFLine>A complete multimedia player</RTFLine> <RTFLine>DivX,Mpeg2, ...</RTFLine> </RTFLines> <Files> <File displayName="VideoLanClient 0.8.1" destName="Vlc_Int_0.8.1.exe" size="7071334" installFlags="/S" > <Download Url="http://download.videolan.org/pub/videolan/vlc/0.8.1/win32/vlc-0.8.1-win32.exe" /> <Download Url="http://ftp.snt.utwente.nl/pub/software/videolan/vlc/0.8.1/win32/vlc-0.8.1-win32.exe" /> <Download Url="ftp://ftp.crans.org/pub/videolan/vlc/0.8.1/win32/vlc-0.8.1-win32.exe" /> <Download Url="ftp://videolan.cs.pu.edu.tw/Windows/VideoLAN/vlc/0.8.1/win32/vlc-0.8.1-win32.exe" /> </File> </Files> </Package> <Package name="Zinf" version="2.2.1" web="www.winlibre.com/en/Articles/Multimedia/Zinf.php" > <RTFLines> <RTFLine>MP3/Ogg music player</RTFLine> </RTFLines> <Files> <File displayName="Zinf 2.2.1" destName="Zinf_En_2.2.1.exe" size="1795618" installFlags="/s /NORESTART" > <Download Url="http://belnet.dl.sourceforge.net/sourceforge/zinf/zinf-setup-2.2.1.exe" /> <Download Url="http://voxel.dl.sourceforge.net/sourceforge/zinf/zinf-setup-2.2.1.exe" /> <Download Url="http://heanet.dl.sourceforge.net/sourceforge/zinf/zinf-setup-2.2.1.exe" /> <Download Url="http://umn.dl.sourceforge.net/sourceforge/zinf/zinf-setup-2.2.1.exe" /> </File> </Files> </Package> <Package name="WinLame" version="rc3" web="http://www.winlibre.com/en/Articles/Multimedia/WinLame.php" > <RTFLines> <RTFLine>MP3/Ogg audio encoder.</RTFLine> </RTFLines> <Files> <File displayName="winLame rc3" destName="WinLAME_En_rc3.exe" size="615403" installFlags="" > <Download Url="http://belnet.dl.sourceforge.net/sourceforge/winlame/winLAME-rc3-full.exe" /> <Download Url="http://voxel.dl.sourceforge.net/sourceforge/winlame/winLAME-rc3-full.exe" /> <Download Url="http://heanet.dl.sourceforge.net/sourceforge/winlame/winLAME-rc3-full.exe" /> <Download Url="http://umn.dl.sourceforge.net/sourceforge/winlame/winLAME-rc3-full.exe" /> </File> </Files> </Package> <Package name="CDex" version="1.51" web="www.winlibre.com/en/Articles/Multimedia/CDex.php" > <RTFLines> <RTFLine>Audio CD ripper.</RTFLine> </RTFLines> <Files> <File displayName="CDex 1.51" destName="Cdex_En_151.exe" size="2000324" installFlags="/S" > <Download Url="http://belnet.dl.sourceforge.net/sourceforge/cdexos/cdex_151.exe" /> <Download Url="http://voxel.dl.sourceforge.net/sourceforge/cdexos/cdex_151.exe" /> <Download Url="http://heanet.dl.sourceforge.net/sourceforge/cdexos/cdex_151.exe" /> <Download Url="http://umn.dl.sourceforge.net/sourceforge/cdexos/cdex_151.exe" /> </File> </Files> </Package> <Package name="MP3Gain" version="1.2.5" web="www.winlibre.com/en/Articles/Multimedia/MP3Gain.php" > <RTFLines> <RTFLine>MP3Gain automatically adjusts mp3s</RTFLine> <RTFLine>so that they all have the same volume.</RTFLine> </RTFLines> <Files> <File displayName="MP3Gain 1.2.5" destName="MP3Gain_Int_1.2.5.exe" size="1978007" installFlags="/S" > <Download Url="http://belnet.dl.sourceforge.net/sourceforge/mp3gain/mp3gain-win-full-1_2_5.exe" /> <Download Url="http://voxel.dl.sourceforge.net/sourceforge/mp3gain/mp3gain-win-full-1_2_5.exe" /> <Download Url="http://heanet.dl.sourceforge.net/sourceforge/mp3gain/mp3gain-win-full-1_2_5.exe" /> <Download Url="http://umn..dl.sourceforge.net/sourceforge/mp3gain/mp3gain-win-full-1_2_5.exe" /> </File> </Files> </Package> </Category> <Category name="Tools"> <Package name="NetTime" version="2b7" web="www.winlibre.com/en/Articles/Utilitaires/NetTime.php" > <RTFLines> <RTFLine>Internet time synchronisation.</RTFLine> </RTFLines> <Files> <File displayName="NetTime 2b7" destName="NetTime_En_2b7.exe" size="2196241" installFlags="/verysilent" > <Download Url="http://belnet.dl.sourceforge.net/sourceforge/nettime/NetTime-2b7.exe" /> <Download Url="http://voxel.dl.sourceforge.net/sourceforge/nettime/NetTime-2b7.exe" /> <Download Url="http://heanet.dl.sourceforge.net/sourceforge/nettime/NetTime-2b7.exe" /> <Download Url="http://umn.dl.sourceforge.net/sourceforge/nettime/NetTime-2b7.exe" /> </File> </Files> </Package> <Package name="UltraVNC" version="1.0.0RC20.3" web="www.winlibre.com/en/Articles/Utilitaires/UltraVNC.php" > <RTFLines> <RTFLine>Computer Remote control.</RTFLine> </RTFLines> <Files> <File displayName="UltraVNC 1.0.0RC20.3" destName="UltraVNC_En_1.0.0.RC20.3.zip" size="2576207" installFlags="/SP /VERYSILENT /NORESTART" > <Download Url="http://belnet.dl.sourceforge.net/sourceforge/ultravnc/UltraVNC-100-RC203-Setup.exe" /> <Download Url="http://voxel.dl.sourceforge.net/sourceforge/ultravnc/UltraVNC-100-RC203-Setup.exe" /> <Download Url="http://heanet.dl.sourceforge.net/sourceforge/ultravnc/UltraVNC-100-RC203-Setup.exe" /> <Download Url="http://umn.dl.sourceforge.net/sourceforge/ultravnc/UltraVNC-100-RC203-Setup.exe" /> </File> </Files> </Package> <Package name="7-Zip" version="3.13" web="www.winlibre.com/en/Articles/Utilitaires/7-Zip.php" > <RTFLines> <RTFLine>Zip / Unzip software (ZIP, RAR, ...)</RTFLine> <RTFLine>The WinZip, WinRar alternative</RTFLine> </RTFLines> <Files> <File displayName="7-Zip 3.13" destName="7z_En_3.13.exe" size="942512" installFlags="/S" > <Download Url="http://belnet.dl.sourceforge.net/sourceforge/sevenzip/7z313.exe" /> <Download Url="http://voxel.dl.sourceforge.net/sourceforge/sevenzip/7z313.exe" /> <Download Url="http://heanet.dl.sourceforge.net/sourceforge/sevenzip/7z313.exe" /> <Download Url="http://umn.dl.sourceforge.net/sourceforge/sevenzip/7z313.exe" /> </File> </Files> </Package> <Package name="ClamWin" version="0.83" web="www.winlibre.com/en/Articles/Utilitaires/ClamWin.php" > <RTFLines> <RTFLine>Antivirus software.</RTFLine> </RTFLines> <Files> <File displayName="ClamWin 0.83" destName="clamwin_En_0.83.exe" size="5082294" installFlags="SP- /SILENT /NORESTART" > <Download Url="http://belnet.dl.sourceforge.net/sourceforge/clamwin/clamwin-0.83-setup.exe" /> <Download Url="http://voxel.dl.sourceforge.net/sourceforge/clamwin/clamwin-0.83-setup.exe" /> <Download Url="http://heanet.dl.sourceforge.net/sourceforge/clamwin/clamwin-0.83-setup.exe" /> <Download Url="http://umn.dl.sourceforge.net/sourceforge/clamwin/clamwin-0.83-setup.exe" /> </File> </Files> </Package> <Package name="Notepad2" version="1.0.12" web="www.winlibre.com/en/Articles/Utilitaires/Notepad2.php" > <RTFLines> <RTFLine>Tiny text editor</RTFLine> <RTFLine>A great Windows Notepad replacement.</RTFLine> </RTFLines> <Files> <File displayName="Notepad2 1.0.12" destName="Notepad2_En_1.0.12.zip" size="246869" installFlags="" > <Download Url="http://www.flos-freeware.ch/zip/notepad2.zip" /> </File> </Files> </Package> </Category> </Categories> </UpdateInfo>