Page 2 of 3

Posted: Mon Sep 29, 2008 2:25 pm
by melee
beermatt wrote:I was just thinking how the Creator could be made useful for all users rather than just making things easier for those users that are already able to customise & rebuild.
I am not understanding what you are saying. UBCD Creator provides the ability to extract the files from the ISO image and recreate the ISO image from the extracted files. Once those files are extracted, you can either apply a patch, add a plugin, or update the files (antivirus, syslinux, etc). My goal is to enable all users the ability to do all of this, not just those users who can already customize and build.

One thing that might be good is for UBCD Creator to provide command line arguments to handle everything so the GUI is not required. This would cater mainly to those who can already extract and rebuild by allowing them to take advantage of UBCD Creator from their existing scripts to update the antivirus defs and syslinux or add plugins.
beermat wrote:A plugin for Spinrite should also be fairly simple (only needs to find/copy spinrite.exe).
Good suggestion. I am only vaguely familiar with SpinRite. It is installed in windows to a folder containing only the program 'spinrite.exe', correct? If not, please post to the UBCD Creator forums the contents of the installed directory so I can create a plugin for it.

Posted: Mon Sep 29, 2008 11:04 pm
by beermatt
melee wrote:
beermatt wrote:I was just thinking how the Creator could be made useful for all users rather than just making things easier for those users that are already able to customise & rebuild.
I am not understanding what you are saying. UBCD Creator provides the ability to extract the files from the ISO image and recreate the ISO image from the extracted files. Once those files are extracted, you can either apply a patch, add a plugin, or update the files (antivirus, syslinux, etc). My goal is to enable all users the ability to do all of this, not just those users who can already customize and build.
OK, I guess I was thinking of users who might find it useful to keep the UBCD up to date, but wouldn't want/need to create their own plugins (just want a very simple way to update).

Therefore it may be useful to include a a simple "one-click" option that would perform the following steps:-
  • Extract Files
  • Download and apply latest patch
  • Update Antivirus/Syslinux
  • Identify list of plugins available from UBCD Creator site (possibly plugins for additions/updates to 'free' software only by default)
  • Download plugins
  • Recreate ISO image
However the options should also be available individually (with a couple of others) to allow other users to step through & customise along the way:-
  • Extract Files
  • Download latest patch
  • Apply patch
  • Update Antivirus/Syslinux
  • Identify list of plugins available from UBCD Creator site
  • Review list of plugins (plugins for additions/updates to 'free' software only selected by default, commercial software plugins available but not selected)
  • Download plugins
  • Add local plugins
  • Recreate ISO image
melee wrote:One thing that might be good is for UBCD Creator to provide command line arguments to handle everything so the GUI is not required. This would cater mainly to those who can already extract and rebuild by allowing them to take advantage of UBCD Creator from their existing scripts to update the antivirus defs and syslinux or add plugins.
Agreed - though the number of users that take advantage of this is likely to be quite small..
melee wrote:
beermat wrote:A plugin for Spinrite should also be fairly simple (only needs to find/copy spinrite.exe).
Good suggestion. I am only vaguely familiar with SpinRite. It is installed in windows to a folder containing only the program 'spinrite.exe', correct? If not, please post to the UBCD Creator forums the contents of the installed directory so I can create a plugin for it.
Spinrite isn't 'installed' as such into windows - spinrite.exe is the downloaded file. When run within a Windows environment it just gives options to create a bootable floppy or disk image (IMG or ISO), however the same spinrite.exe file can also be run from a DOS environment (then executes).
Therefore the plugin would just need to find spinrite.exe & copy - but it may not be in a predictable location.

Posted: Tue Sep 30, 2008 10:05 am
by freeballer
there are so many possibilities, and opinions on a good one so I hope that while the software can be closed the method for creating a plugin is open and simplified for those not able to script but want to donate, like myself.

I have several commercial/non-commercial apps I use on my ubcds and can donate if I am able to write plugins for it. I think thou the worse part of ubcd is the definitions and choice of linux (again I use choice), the definition is awesome but the more people develop and help others... well this could be the best thing to come to ubcd.

I tend to go a little nuts on my cds, bloated them to around 400/700mb. But I wanna have everything on that one little cd/dvd (mini).


The ones I think definitely should be added as plugins:

R.I.P. Recovery is possible (With X enviroment)
Part Magic
System Rescue CD


I'd like to see:

D.S.L. damn small linux
Astrumi Linux
Finnix
Puppy Linux
Insert
GeexBox

Dell utilities cd, and/or other SMALL system recovery disks such as hp, asus or other.
I don't use these systems, I have a mac, but think it's a good idea for recovery.



I also maybe the only one who uses my ubcd cd for an "all purpose, multi-distro cd". What I normally add is msdos 6.22, windows 95-98se disks, acronis true image / disk director (commercial), geexbox, MenuetOS, DexOS and Kolibri. For linux, last time, I added astrumi/dsl/rip and geexbox. I've tried a minimal bsd live cd like "frenzy" but it has never worked for me. Think also we should work with, or use a simple/upgradeable linux distribution for ubcd. Either using the package system (simple one like deb, rpm, pacman, etc.) or something like dsl or slax that uses it's own additions in a directory on cd. Why an os? well, downloading files to turn into disks, flexability, os-replacement if needed, and all important looking stuff up and that's why I want firefox/irc or messenger installed

P.s. While I have not attempted a beta customized v5, I am likely to expand my cd to include xmbc i nstead of geexbox, http://xbmc.org/, I will post my success and steps if it works

Posted: Tue Sep 30, 2008 1:55 pm
by melee
beermatt wrote:OK, I guess I was thinking of users who might find it useful to keep the UBCD up to date, but wouldn't want/need to create their own plugins (just want a very simple way to update).
I anticipate very few people actually creating the plugins. Most would just want to use the plugins others create to add the software to UBCD.
beermatt wrote:Therefore it may be useful to include a a simple "one-click" option that would perform the following steps...
This is an excellent idea. I will implement it for the next release.

There might be an issue with the update (for antivirus/syslinux) and patches, however. The software would need a URL to immediately download the files. Most mirrors prohibit this and instead use redirects that require you to download the files from a web browser. UBCD Creator can work with this limitation by allowing the user to download the files separately (or even launch the browser to the download page) and then let the user select the file once it has been downloaded. White this might not be an issue with the antivirus defs or syslinux, it is likely to be an issue with the patches since they will probably be rather large.
beermatt wrote:Therefore the plugin would just need to find spinrite.exe & copy - but it may not be in a predictable location.
UBCD Creator will ask the user the locations of the software on the filesystem before executing the script since they will not necessarily be in the same location. This location will be one of the arguments to the script.

Posted: Tue Sep 30, 2008 2:24 pm
by Icecube
melee wrote:I anticipate very few people actually creating the plugins. Most would just want to use the plugins others create to add the software to UBCD.
I am willing to write some plugins.

Posted: Tue Sep 30, 2008 3:23 pm
by freeballer
if it's an easy enough or straight forward manner I will make some plugins for apps/distros/etc.. I don't already see, I am not a programer however so It's likely not to be as good or intuitive than some others.

I think though we need to allow whomever wants to to upload it, post it here or otherwise make available for others. As an example of what can be done, troubleshooting, possibly encouraging others to do same. Weither they do or not is their choice, but I think that given the subject matter we have fairly smart visitors already

Posted: Thu Oct 02, 2008 8:50 pm
by melee
Icecube wrote:I can provide a way to update the definition files for ClamAV and F-prot (linux versions)...Take also a look at the update Freedos image.
I looked at the Freedos page and it took me to a website where you had to click on the link. I also examined the other pages and they all indicate you have to log in to download the antivirus updates. I am afraid that I cannot incorporate this behavior into the auto-update capability of UBCD Creator.

In order for me to automatically download and apply the updates, the files must be able to be retrieved by a simple wget command.

If this is not possible, then the antivirus updates can be plugins. Plugins will allow launching a web browser to download the files, then selecting their locations. They will also allow automatically downloading the files without interaction if the website supports it.

Posted: Thu Oct 02, 2008 8:57 pm
by melee
freeballer wrote:there are so many possibilities, and opinions on a good one so I hope that while the software can be closed the method for creating a plugin is open and simplified for those not able to script but want to donate, like myself.
UBCD Creator is open. It is released under the GPL and is free to modify and change. This does, however, require Java programming knowledge.

I am designing the plugins to be very simple. They will be implemented as simple Borne shell scripts that have special meta-data at the top instructing UBCD Creator how to run the plugin. The shell script is provided to perform any unique or complicated tasks, but most plugins will only use simple copy commands.

I plan on maintaining the plugins on the UBCD Creator website (under GPL or BSD licenses) for all to use and download. When I finish the plugin capability, I will also provide a variety of different examples demonstrating how the plugins work. Any new plugins can simply modify one of these examples, so no programming knowledge is required.

Include additional utilities

Posted: Thu Oct 02, 2008 9:05 pm
by melee
In browsing around these forums, I have seen a lot of code examples of simple and complex scripts that people have written and posted for all to use. I think it would be a good idea to gather some of these utilities and put them into version control on the UBCD Creator website for maintenance. We can also bundle these tools together in a Zip file for easy downloads.

This way these tools are in a central location that can easily be maintained to ensure compatibility with the most recent version of UBCD.

Posted: Fri Oct 03, 2008 2:15 am
by Icecube
melee wrote:
Icecube wrote:I can provide a way to update the definition files for ClamAV and F-prot (linux versions)...Take also a look at the update Freedos image.
I looked at the Freedos page and it took me to a website where you had to click on the link. I also examined the other pages and they all indicate you have to log in to download the antivirus updates. I am afraid that I cannot incorporate this behavior into the auto-update capability of UBCD Creator.
For downloading the definition files of f-prot (for linux) and clamav (linux), you don't need to register.
See my post at: viewtopic.php?p=5930#5930
It isn't complete yet (it downloads the files only). The 7z compressing part will be for tomorow or so.
On which links you had to login to download the files?

For the freedos image I don't have a solution yet. You always can host the file (<3MB) on your site.

Maybe you can also make a dialog to make a bootable USB stick.

Posted: Fri Oct 03, 2008 1:05 pm
by melee
Icecube wrote:For downloading the definition files of f-prot (for linux) and clamav (linux), you don't need to register.
This is true only for clamav. F-PROT is only free for home users and you have to specifify your customer number (key). I am guessing you reverse engineered the URL from their fpupdate script. I think it unwise to auto-update using this method as it would rock the boat and possibly make F-PROT not release the antirivirus as free to home users. This is actually a valid concern if a large number of people start using the same key to download the virus definitions.

That being said, I can provide auto-updates for clamav through UBCD Creator. This will be a relatively easy task of downloading main.cvd and daily.cvd and 7zip'ing them into the pmodules directory.

I also examined syslinux. It is officially downloaded from kernel.org and seems to be quite large. I don't think using auto-update would be the best idea for syslinux either.

So the current status for the auto-update is yes to ClamAV and no to syslinux, F-PROTO, and freedos. Even with only a single item to update, I still think it is a good idea to have the update feature. This way users can update the CD before they burn it.

I think syslinux, freedos, and any other software that must be bundled a specific way for inclusion to UBCD should be released as patches. Patches are Zip files that are extracted to the root UBCD directory to update (replace) existing files. Patches must be created specifically for UBCD. Patches must be downloaded separately, but will be automatically installed by UBCD Creator. Patches are intended to include multiple individual program updates.

For example, we are currently on UBCD version 5.0 Beta 5. Instead of requiring the user to download the entire ISO image again, they can download a patch file that only includes the differences between UBCD 5.0 Beta 4 and UBCD 5.0 Beta 5. This method will allow the easy update of groups of software (such as syslinux) after it has been tested by UBCD maintainers. Patches can be either official or unofficial. Official patches are sanctioned by the UBCD maintainers and will have a posted md5sum to validate. Unofficial patches can be released by anyone.

Since F-PROTO requires a customer number, I think it is best to implement it as a plugin. This provides the additional interaction needed to download and install the virus definitions.
Icecube wrote:Maybe you can also make a dialog to make a bootable USB stick.
This is a very good idea. I will add this to the list of ToDo items.

Posted: Sat Oct 04, 2008 1:24 am
by Icecube
melee wrote: F-PROT is only free for home users and you have to specifify your customer number (key). I am guessing you reverse engineered the URL from their fpupdate script. I think it unwise to auto-update using this method as it would rock the boat and possibly make F-PROT not release the antirivirus as free to home users. This is actually a valid concern if a large number of people start using the same key to download the virus definitions.
Yes F-prot is only free for home users. But if you have bought a key, this key can be used to update the F-prot definitions. The key for the home user version is always the same. The file licence.key contains the following content:

Code: Select all

FPROT_LICENSE_KEY="AFPXJ5KN83983257LJHG64S7NSTA6CABA2"
I suspect that when you have your own key, that you have to replace this file. so the script can read the new key out of this file.
I got the URLs by looking at the output of the fpupdate program. I monitored the connections that fpupdate makes with wireshark.
Wireshark is a free packet sniffer computer application. It is used for network troubleshooting, analysis, software and communications protocol development, and education.
This is called black box hacking and this is allowed hacking method. I didn't disassemble the fpupdate executable . So this isn't a valid concern. BTW, if you download the linux F-prot version of the f-prot site, I get always the same key (see the contents of the licence.key file). Can you download it and check if this is true. I downloaded it several times over the last 2 months and it was always the same, so I think that we can conclude that they use 1 key for home users.

There are more programs on UBCD that only can be used for free in a home environment.

I mentioned syslinux and the links to the homepage so you could look at it. it wasn't meant that each user downloads the complete archive. A patch is good enough.

I added a feature request:
http://sourceforge.net/tracker/index.ph ... id=1113242
I replied also to the metadata topic:
http://sourceforge.net/forum/forum.php? ... _id=867228

Posted: Sat Oct 04, 2008 2:18 pm
by melee
Icecube wrote:Yes F-prot is only free for home users... The key for the home user version is always the same.
Since the key is always the same, than it shouldn't be an issue to include it into UBCD Creator.
Icecube wrote:I got the URLs by looking at the output of the fpupdate program. I monitored the connections that fpupdate makes with wireshark. This is called black box hacking and this is allowed hacking method. I didn't disassemble the fpupdate executable.
Wow. That is pretty heavy lifting just to get the url. I was thinking that fpupdate was a script instead of an executable. And legally, I don't believe there is much of a difference between decompiling the executable and sniffing the network traffic. Both are reverse engineering techniques prohibited by most software license agreements. Though one could claim, perhaps, that by sniffing someone else's traffic, one doesn't have to agree to the license... Similar to clean room design.

I believe that a plugin for obtaining new definitions is still the best idea. Most closed systems that require reverse engineering can change (sometimes frequently), so it would be better if it was a more modular plugin to allow more frequent updates. You, I, or someone else might have to sniff out the urls for every new version of F-PROT.

Posted: Sat Oct 04, 2008 2:53 pm
by melee
Icecube wrote:Put all metadate in a XML file and make a GUI dialog for creating plugins...You can add additional parameters in the xml file, so that you don't need the bash script anymore.
XML is more difficult to parse than text. It does add additional flexibility and a hierarchal structure, but I am not sure if it is necessary. SAX parsers come with Java and other tools like JiBX could be easily added, so it remains a viable option.
Icecube wrote:In most cases you need only to copy files.
I completely concur. However, I am also wanting to address the unusual cases in which it would be necessary. However, allowing the plugin author to include a script doesn't mean that the meta-data cannot be in XML format. We could easily provide a CDATA section in the XML to contain the script. This would also have the benefit of making the script non-executable outside of UBCD Creator.
Icecube wrote:Make a GUI dialog that makes it possible to just enter the necessary information and that creates the xml file by itself.
This is an excellent idea. Regardless if we use XML or simple text, the GUI could provide the ability generate the plugins. This would lower the bar for creating plugins so more users will be able to contribute. As you mentioned earlier, simply entering the basic meta-data would provide the ability to include 95% (my estimate) of all programs into UBCD.

I am thinking on taking a slightly different approach to designing the plugins. Instead of attempting to think of all the necessary meta-data to include now, I think it would be best to define a series of use-cases to design the plugins around. These use-cases would be a representative sample of all plugins that would be created. My current ideas for use cases:
  • Spinrite - Single file copy and menu creation
    Norton Ghost 2003 - Multiple files and multiple menus (ghost and ghost explorer)
    F-PROT - Update anti-virus definitions from web and rebuild (script)
Can others contribute to this list. In particular the first two items are both dosapps. It would be good to include bootable images and other possibilities.

Posted: Mon Oct 06, 2008 9:20 am
by Icecube
melee wrote:I am thinking on taking a slightly different approach to designing the plugins. Instead of attempting to think of all the necessary meta-data to include now, I think it would be best to define a series of use-cases to design the plugins around. These use-cases would be a representative sample of all plugins that would be created. My current ideas for use cases:
  • Spinrite - Single file copy and menu creation
    Norton Ghost 2003 - Multiple files and multiple menus (ghost and ghost explorer)
    F-PROT - Update anti-virus definitions from web and rebuild (script)
Can others contribute to this list. In particular the first two items are both dosapps. It would be good to include bootable images and other possibilities.
All programs in /ubcd/boot/ consists in general in a kernel image and a initrd file.

Bootable linux cd's can be included in most cases in the following way:
  • * Extract the iso.
    * Put the isolinux directory (if it exists) in another folder
    * Edit the isolinux.cfg of this distribution to make all the paths correct.
    * Use CONFIG /distibution/isolinux/isolinux.cfg in the isolinux config files of UBCD to load the linux distro with its original look (will have the same look compared with the original CD).

Posted: Sat Oct 11, 2008 9:36 pm
by Victor Chew
FYI, the latest ubcd2iso.cmd is as follows. This will be included in UBCD V5.0b6.

Code: Select all

@echo off

rem * Create a bootable UBCD ISO image
rem *
rem * Ultimate Boot CD (UBCD): http://www.ultimatebootcd.com/
rem * syslinux: http://syslinux.zytor.com/

@echo on
@if "%debug%"=="" echo off

SET VOLUME_ID=UBCD50B6

SET a1=%1
SET a1=###%a1%###
SET a1=%a1:"###=%
SET a1=%a1:###"=%
SET a1=%a1:###=%

SET a2=%2
SET a2=###%a2%###
SET a2=%a2:"###=%
SET a2=%a2:###"=%
SET a2=%a2:###=%

if "%a1%"==":" if not "%a2%"=="" goto %a2%
if "%a1%"=="" goto _help
if "%a2%"=="" goto _help

echo UBCD2ISO: Creating bootable UBCD ISO image ...

if not exist "%~p0\mkisofs.exe"            %0 : _error Missing file '%~p0\mkisofs.exe'
if not exist "%a1%\isolinux\isolinux.bin"  %0 : _error Missing file '%a1%\isolinux\isolinux.bin'

del "%a1%\isolinux\boot.catalog" 2> NUL

pushd "%a1%"
"%~p0\mkisofs.exe" -N -J -joliet-long -D -V %VOLUME_ID% -o "%a2%" -b "isolinux/isolinux.bin" -c "isolinux/boot.catalog" -hide "isolinux/boot.catalog" -no-emul-boot -boot-load-size 4 -boot-info-table .
popd
if errorlevel 0 goto _success
%0 : _error 'mkisofs.exe' failed

:_success
echo UBCD2ISO: Bootable UBCD ISO image has been created
goto _end

:_help
echo.
echo UBCD2ISO: Create bootable UBCD ISO image
echo.
echo Usage:    UBCD2ISO (UBCD-path) (output-image) [params]
echo.
echo Example:  UBCD2ISO "c:\ubcd" "c:\ubcd.iso"
echo           (UBCD extracted in dir 'c:\ubcd', ISO image written to 'c:\ubcd.iso')
echo.
echo Required: W2K/XP/W2K3/Vista and UBCD extracted to local storage
cmd.exe /k cd "%~p0"
goto _end

:_error
shift
shift
echo (ERROR) %1 %2 %3 %4 %5 %6 %7 %8
goto _end

:_end

New Version Released

Posted: Sat Nov 15, 2008 10:27 pm
by melee
Version 0.2 (Beta2) has been released. This version should fix all known bugs with extracting, patching, and creating UBCDs under Windows and Linux. A new feature for reporting bugs within the software has also been added.

http://ubcdcreator.sourceforge.net/

Posted: Wed Nov 19, 2008 1:00 pm
by Icecube
I have reported a lot of bugs and feature requests on sourceforge.net.

http://sourceforge.net/tracker/?group_id=239705

Personal Use Only

Posted: Thu Feb 12, 2009 2:28 pm
by melee
I am still working on the plugin capability; however, I was going to create the ability for UBCD Creator to also remove all personal use software from the UBCD. However, I am not familiar with all the programs on UBCD. Which programs are Personal Use Only? Are all labeled in the ini and cfg files?

Re: Personal Use Only

Posted: Mon Feb 16, 2009 5:53 pm
by univbee
melee wrote:I am still working on the plugin capability; however, I was going to create the ability for UBCD Creator to also remove all personal use software from the UBCD. However, I am not familiar with all the programs on UBCD. Which programs are Personal Use Only? Are all labeled in the ini and cfg files?
Unfortunately, they aren't. Since I do paid technical support, having these available is very important to me, so here's the list as far as I can tell (although I'm still checking so this might not be exhaustive, and I may have made mistakes):

UBCD for DOS

Avira NTFS4DOS Personal
HDAT2
F-Prot Anti-Virus for DOS
McAfee Anti-Virus Scanner

UBCD for Windows

NTFS4DOS (yes, it's in this CD AND the DOS one)
UBCD for DOS (the downloaded one has to be modified, removing the above programs. And yes, NTFS4DOS would show up twice)
Virtual PDF Printer (unsure, but since they sell licenses at $90 I'm going to assume it's the case)
Ad Aware SE
Spybot Search & Destroy
Super Anti-spyware
Avira Antivir Personal (note: when removed, an icon still shows up on the quick launch bar; anyone know how to remove it?)
Irfanview 398
Deepburner
xplorer^2
Karen's LAN Monitor