OS2 World Community Forum
OS/2, eCS & ArcaOS - Technical => Setup & Installation => Topic started by: Alfredo Fernández Díaz on December 30, 2020, 01:33:11 pm
-
Hi everyone,
I have this old application that needs some files updated/replaced and a few more added after install. No biggie, except when you forget the fixes, and are reminded of them a few days later, the first time the program is started. So I thought, why not slipstream it?
You know, as in, unpack the installation media, replace / add files, repack it all, and have an installation that doesn't need upgrades and/or fixes afterwards.
This being directly based on IBM installers stuff, installation media was easy enough to unpack using, well, IBM's UNPACK or UNPACK2 (both work). However, I have no idea how to create compatible files that will be handled by the UNPACK routines later on. A quick search at Hobbes was not obviously helpful, so any ideas are welcome.
"PACK", anyone?
Thank you in advance,
AFD.
-
Hi Alfredo.
As an alternative, I can help you create a WarpIn installer for that application, or at least we can try :)
Regards
-
Pack.Exe is a part of the OS/2 Toolkit. (So is Pack2.Exe, but I don't know if that is also needed.)
9-25-01 18:26 58,400 124 pack.exe
-
Pack.Exe is a part of the OS/2 Toolkit. (So is Pack2.Exe, but I don't know if that is also needed.)
Yes, PACK2/UNPACK2 gives better compression. IIRC, PACK2/UNPACK2 supports also the old pack method but read here:
start view toolsref pack
start view cmdref unpack
IIRC, the OS/2 installation files are packed with PACK2.
-
Hi guys,
As an alternative, I can help you create a WarpIn installer for that application, or at least we can try :)
You don't remember my old "WPI distro" project, do you? :)
Thank you, Martín, but there is a reason why I will not use WarpIN for this.
Neil, thank you, you were right! Turns out I have had not one, but two pack(2) EXEs lying around for the last twenty years or so! I seemed to recall these were part of the system (I was wrong, obviously), so they didn't fire when I typed 'pack' at a command prompt: I keep all development tools out of the path, etc. and I some 'setenv' scripts for this that I last modified in 2005 -- no wonder I forgot pack/pack2 were even there.
OK, so for anyone out there who may need this, or a possible future self of mine in a couple of years' time:
1. Unpack your archive file with the commands:
"Unpack oldapp.@ /SHOW > oldapp.txt" -- this will let you know the target paths for uncompressed files
"Unpack oldapp.@ ." will expand all files in the current dir (".")
2. Edit oldapp.txt. This might look like this
----8<--------8<--------8<--------8<--------8<--------8<--------8<----
oldapp.@
[...]
->\os2\dll\OldApp.dll
->\os2\help\OldApp.hlp
[...]
----8<--------8<--------8<--------8<--------8<--------8<--------8<----
and we need to transform that into something like this
----8<--------8<--------8<--------8<--------8<--------8<--------8<----
[...]
FixedApp.dll /H:\os2\dll\OldApp.dll
FixedApp.hlp /H:\os2\help\OldApp.hlp
[...]
----8<--------8<--------8<--------8<--------8<--------8<--------8<----
to rebuild the archive using the new files instead of the old ones, while keeping their target paths. Save the list as FixedApp.lst, and type:
"Pack FixedApp.lst OldApp.@ /L"
to pack everything back. You should be good to go. Pack2 shares the same syntax, apparently.
Thank you again,
AFD.