Jump to content

Extensions for WarpIN: Difference between revisions

From NikiWiki
Cla (talk | contribs)
add extension to (DE)EXECUTE
Cla (talk | contribs)
added -Q parameter
Line 20: Line 20:
* continue installation with no message on zero reason code
* continue installation with no message on zero reason code
* display a message for specific error code(s) and abort installation
* display a message for specific error code(s) and abort installation
Suggested Change:
* additional attribute PREEXECUTE for PKG tag like (DE)EXECUTE
Used Case:
Used Case:
* installation of device drivers: sniffer for hardware (e.g. check for a PCI device)
* installation of device drivers: sniffer for hardware (e.g. check for a PCI device)
Line 26: Line 28:
* can be done by REXX, extracting a hidden package to a temp directory. However, the WPI cannot be aborted by REXX code
* can be done by REXX, extracting a hidden package to a temp directory. However, the WPI cannot be aborted by REXX code
Suggested Change:
Suggested Change:
* additional attribute PREEXECUTE for PKG tag like (DE)EXECUTE
Problem:
Problem:
* no idea yet how to define the message(s) being displayed on error, possibly <ERRORMSG rc=n>as counterpart to MSG, where <ERRORMSG> with no rc would be the default error msg.
* no idea yet how to define the message(s) being displayed on error, possibly <ERRORMSG rc=n>as counterpart to MSG, where <ERRORMSG> with no rc would be the default error msg.
Line 55: Line 56:
* allow to execute a program in PM and FS mode without executing it via a visible OS/2 / eCS window.
* allow to execute a program in PM and FS mode without executing it via a visible OS/2 / eCS window.
* allow to execute a VIO program invisible
* allow to execute a VIO program invisible
Suggested Change: - extend (DE)EXECUTE (and PREEXECUTE) with
Suggested Change:
* extend (DE)EXECUTE (and PREEXECUTE) with
** a progtype flag: PM, VIO, FS
** a progtype flag: PM, VIO, FS
** a visible flag: VISIBLE, INVISIBLE
** a visible flag: VISIBLE, INVISIBLE
Line 75: Line 77:
=== deinstall a PACKAGE, supporting wildcards ===
=== deinstall a PACKAGE, supporting wildcards ===
allows WPS object to deinstall a program
allows WPS object to deinstall a program
== New parameters to WIC.EXE ==
=== check if a given package is installed ===
Requirement:
* allow to check via batch if a package is installed
Suggested Change:
* implement parameter -Q to query for a specified package ID. The version information in the specified ID is optional.
* wic returns zero if package is installed
** if version information is specified, the installed version must match exactly
** if version information is specified
*** with a plus sign appended, the installed version must match exactly or be greater
*** with a minus appended, the installed version must match exactly or be lesser
** if version information is not specified, any version matches
* wic returns non-zero, if package is not installed
Comment:
* WIC must return an appropriate error code, unlike -q (-q always returns zero!!!)

Revision as of 17:07, 13 January 2008

Suggested REXX APIs

Abort WPI

Deinstall packages

query if package is installed

query the files of a package

query WarpIN language

query Locale language

New attributes for PCK tag

execute program from package as sniffer

Requirement:

  • run a program, included in the WPI archive, to determine if a prerequisite for installation is met
  • continue installation with no message on zero reason code
  • display a message for specific error code(s) and abort installation

Suggested Change:

  • additional attribute PREEXECUTE for PKG tag like (DE)EXECUTE

Used Case:

  • installation of device drivers: sniffer for hardware (e.g. check for a PCI device)
  • installation of Wireless LAN Monitor: determnine active instance of xCenter

Current workaround:

  • can be done by REXX, extracting a hidden package to a temp directory. However, the WPI cannot be aborted by REXX code

Suggested Change: Problem:

  • no idea yet how to define the message(s) being displayed on error, possibly <ERRORMSG rc=n>as counterpart to MSG, where <ERRORMSG> with no rc would be the default error msg.

add a requirement matching an exact package

Requirement:

  • force to require an exact version of a dependent external package

Suggested Change:

  • invent REQUIRESEXACT to match an exact version

Comment:

  • this is for where the required packages are definitely not upwards compatible, but instead must exactly match the main package

hide a package

autodeinstall any older/other version of a PCK

execute a program/REXX code before/after executing any installation action

exit for rc!=0

force a kill of a program without prompt

force unlock of a executable without prompt

Extended attributes for PCK tag

extend (DE)EXECUTE

Requirement:

  • allow to execute a program in PM and FS mode without executing it via a visible OS/2 / eCS window.
  • allow to execute a VIO program invisible

Suggested Change:

  • extend (DE)EXECUTE (and PREEXECUTE) with
    • a progtype flag: PM, VIO, FS
    • a visible flag: VISIBLE, INVISIBLE

Comment:

  • If DosStartSession is used to launch the session, this would be a logical extension

New element for PAGE tag

element to display an INF

Requirement:

  • launch the INF file of an application without requiring to install the package

Suggested Change:

  • implement element INFBUTTON, requires atribute EXTRACTFROMPCK to use a INF ifle from the package

Comment:

  • this change would relief from one of the most obvious disadvantages of WarpIN packages. A readme is often not sufficient in order to evaluate if an application is worth to install. However, to view an included INF, an end user would have to install it anyway...

New parameters to WARPIN.EXE

deinstall a PACKAGE, supporting wildcards

allows WPS object to deinstall a program

New parameters to WIC.EXE

check if a given package is installed

Requirement:

  • allow to check via batch if a package is installed

Suggested Change:

  • implement parameter -Q to query for a specified package ID. The version information in the specified ID is optional.
  • wic returns zero if package is installed
    • if version information is specified, the installed version must match exactly
    • if version information is specified
      • with a plus sign appended, the installed version must match exactly or be greater
      • with a minus appended, the installed version must match exactly or be lesser
    • if version information is not specified, any version matches
  • wic returns non-zero, if package is not installed

Comment:

  • WIC must return an appropriate error code, unlike -q (-q always returns zero!!!)