Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Doug Clark

Pages: [1] 2 3 ... 16
1
Applications / Re: Creating some apps RPM packages
« on: June 22, 2021, 04:16:59 pm »
@Doug B and Dave:  Ah - extended selection in WarpIn when uninstalling.  It is so obvious and yet somehow never occurred to me.  Thanks for the tip.

@Doug B:  One of Walter Metcalf's big concerns (and just about everyone else's) was the continued existence of Hobbes.   To me a potential benefit of what Martin is doing (if I understand it correctly) would address a couple of those concerns: having another copy of (at least some of) those files, and at a location that is accessible.   I think it is beneficial, even if it is not possible or realistic to add a "select your own destination" feature. 

As for enhancing WarpIn with a new database: I don't think (famous last words)  it would be that difficult to switch the database from INI files to something else that will handle more levels.   Anyone know what database RPM uses?

2
Applications / Re: Creating some apps RPM packages
« on: June 22, 2021, 06:17:34 am »
@Doug B  sort of quoting "What's wrong with 2 levels in the WarpIn database?"

The problem with using a database that only has 2 levels to track installed products (like WarpIn) is if the product has lots of components the "application" is listed multiple times with different "keys" in order to list the different components or subsystems.  If you want to deinstall the product you have to deinstall each of the application-key pairs. To use an example: Doodle's Screen Saver is listed as an application 29 times (on my machine) in WarpIn's database. So to deinstall one has to right-click 29 times on the application and select deinstall.

To repeat: I like WarpIn.  I think it is a great product.  Installing applications can be surprisingly difficult and complex - especially when designing to allow for updating.  And WarpIn, on the whole, does an excellent job.

@Doug B. and @Dave   Yes I can move firefox after it is installed, and could probably move some other Unixy applications installed by RPM after they are installed.  It would not be the end of the world - although moving some of them would be very difficult (e.g. Odin.).  And yes I could make a boot partition larger than 2 gb and use 2gbfix to work around the issue for those old Dos/Windows apps.  But the issue is why should I have to?  When the better way is to simply give the user the choice on where to install a product when using APM/YUM/RPM. 

It just seems to me (my opinion, FWIW) that any/all decent installers should allow the user to select the destination of a application being installed, when that is possible.  Obviously some system components have to go in specific locations - but for those that don't, why not provide the choice?

@Doug B.  I think Martin IS intending to distribute old style OS/2 apps that way.  And I think it is an excellent idea if we can get some flexibility in the install process.

I spent quite a bit of time years ago on the WarpDoctor project in an attempt to build something like APM for OS/2 VOICE.  I even spent time modifying WarpIn so that it would retrieve packages across the internet and install them on a local machine in that effort - and gave up.  It was, and is, a very big project.  I am fully in and supportive of APM and what Martin and Ben are attempting to do, and I recognize how difficult and complex it is.  Thank you Martin, and Ben, and everyone else working on this, for your time and effort.

I am just trying to, politely, suggest that adding the ability to select a destination for a application when installing with APM/YUM/RPM would be a fantastic feature.

3
Applications / Re: Creating some apps RPM packages
« on: June 22, 2021, 01:31:28 am »
Dave:  Thanks for the info on updating AOS.  I will give the latest version a shot.  (Now if it were only that easy to update from eCS to AOS - oh well..)

Ivan:  I too love WarpIn - great product, although it needs a better database for storing installed app information;  the 2 levels that INI files provides is not enough.  But I can understand and agree with RPM for the unixy stuff.  That stuff is SO intertwined and complicated.  And I am actually OK with UNIXROOT being a drive letter instead of a path for the messy, snakey, interdependent unixy stuff.  That stuff is so complicated that I am kinda scared to even look down in the depths of UNIXROOT.

What Martin was talking about was RPM-izing legacy type OS/2 apps.   That has lots of benefits, and some downsides.  It is legacy apps (and SOME unix type apps like Firefox) that I want the ability to chose where stuff goes.  Here's  why:  I run a number of Win-OS/2 apps. That means I really need to keep my boot drive partitioned at 2 GB or less and I need to be careful about what I install on the boot drive so I don't run out of space.  I also am running SSD and rotating disks and I try and put the stuff that changes a lot (Swapper, firefox cache, etc.) on the rotating disk and keep the test on the SSD partitions.

So I think we absolutely need the ability, at least with legacy apps, to chose where they go.  And it would be nice to have the ability to choose even with some unix apps.

The downside of RPM verses WarpIn is it looks like RPM is much more complicated to setup.  I mean complicated for the app maker to setup an install to work with RPM.  But it is nice to be able to select a list of apps (like with APM) and install them all at once.. And for them to be available from one (virtual) locate.


4
Applications / Re: Creating some apps RPM packages
« on: June 21, 2021, 06:36:51 pm »
I think the idea of automating, as much as possible, installations is great. 

My biggest demotivation for upgrading AOS versions is the very long time it takes to get all the applications and tools reinstalled and configured after doing a fresh install of AOS  (or ECS or OS/2).

My I make the following observation and suggestion - without knowing how difficult they are to implement?

Prompt the user for where a package/app should be installed.  If using YUM perhaps either a command line parameter to YUM for the install location or a standard environmental variable (e.g. YUM_INSTALL_LOC= ) that YUM would check for the drive/directory to hold the app.  For APM a dialog prompting for location to install at the start of a new install.

Regarding LIBPATH length issues:   For GUI applications, on machines running DragText (which I assume is everyone,)  you can use the Environment page of the Properties notebook of the Program object for the GUI app to set BEGINLIBPATH, avoiding the need to modify LIBPATH.  Each GUI application really should have a Program object anyway.   We would have to persuade Rich Walsh to add a setup string to his DTProgram object for the Environment page/setting in order to use this scheme with automated installs.

5
Applications / Re: hard hangs
« on: June 21, 2021, 07:35:26 am »
Dave,

I have experienced problems in the past with PMView hanging up my system.   I think it is in conjunction with other stuff happening but it doesn't happen often enough for me to be able to pin down.

However I have another suggestion.  If these problems revolve around  a USB drive  it might possibly be your USB port.  I had been having issues with what appeared to be my keyboard: a single press of the key would generate 10 - 20 keys, one key would just spontaneously repeat  (appear to be stuck) until a reboot, etc.  The problems would come and go until a couple days ago the keyboard became unusable.  The problem turned out to be fixed by plugging the keyboard into a different USB port on the same machine.

As for the USB thumb drive:  my daughter had a USB thumb drive that stopped working on her Macbook.  She brought it over to my house and plugged it in to my wife's Macbook and it would not work.  But when I plugged it into my PC I could read the drive.

6
Networking / Re: Universal Naming Convention (UNC) on Samba?
« on: June 21, 2021, 02:53:42 am »
Looks like Dave's answer is, unfortunately correct.

For Darius:

UNC =  \\machineName\shareName

machineName originally was a netbios name.  ShareName was a shared resource on machineName, i..e a drive or a directory.

Microsoft "enhanced"  UNC later for networked windows machines to allow IP addressing for the machineName, and now other
addressing

I don't know where IBM file/print client resolves netbios names but
it looks like Samba on OS/2 (more specifically ArcaMap) uses the LMHosts file in
C:\MPTN\ETC\samba

for resolving netbios machine names to IP addresses

Mine looks like
-------------------------------------------------------------
dir \\req1\# Created by ARCAMAP Version 2.6.20180125 on 20 Jun 2021 at 17:18:03
# Syntax:
# IP-address             NetBIOS-name     [Role]
192.168.32.125           REQSRV1         
192.168.32.243           SERVERS1         
------------------------------------------------------------

It appears that when the redirector mechanism for remote file system requests was created for Samba on OS/2 it did not include UNC resolution, only drive letter resolution.

I am not complaining.  I was just wondering if there was some service I needed to start or some configuration I needed to do in Samba to make UNC work in Samba - and the answer apparently is no.



7
Networking / Universal Naming Convention (UNC) on Samba?
« on: June 19, 2021, 05:51:01 am »
Does universal naming convention (UNC) work on Samba for OS/2?  Or is it limited to Netbios (file/print services) on OS/2?

8
Hardware / Re: IBM Thinkpad with floppy drive
« on: May 30, 2021, 03:19:14 pm »
I know the question was for an internal floppy, but a possible alternative is a USB floppy.   IBM used to make them - mine came with a nice carrying bag.

9
Setup & Installation / Re: Win-OS/2 installed on non-boot drive
« on: May 29, 2021, 10:14:16 pm »
Thanks Fahrvenugen and Dave.   The line

SET WIN3DIR=X:\OS2\MDOS\WINOS2

in AUTOEXEC.BAT is what I was thinking of but could not remember.

I am not looking to move Win-OS2 myself. But I had a friend who told me he had installed Win-OS/2 on a different drive than where OS/2 was installed., so I know it is possible. Plus, as Fahrvenugen points out, with red spine and/or the ability to boot to a specific version of DOS (and probably windows) WIn-OS/2 might be located anywhere - at least in theory.

 I am updating WinZombe and there is one particular circumstance where it assumes Win-OS/2 is installed on the C: drive.   I wanted to update it for the one person left in the world who has installed or moved Win-OS/2 to somewhere other than boot:\os2\mdos\winos2.  I will just scan the autoexec.bat the session points to for the SETWIN3DIR= line in those circumstances.

Thanks again guys.


10
Setup & Installation / Win-OS/2 installed on non-boot drive
« on: May 29, 2021, 05:40:52 pm »
If I remember correctly you can install Win-OS/2 on a drive other than the boot drive.   I also seem to remember that when you do this some environment variable is set to indicate which drive holds the Win-OS/2 system.

So my questions are:

1) does this environment variable, or some other means, exist to determine which drive Win-OS/2 is installed on?

2) What is the directory structure when installed on a different drive?   (Normally it is C:\OS2\MDOS\WINOS2)

11
I think you might be able to make a modified program object which would copy the file name used when opening  a program to a central "recently opened" list.  The fully qualified file name should be sufficient since the file type would link it to the application. It would probably work with files dropped on the program object, specified as a argument on the Program page, or when double clicking on a file in a folder.  That wouldn't be that difficult to do.  The problem is it would only work when using the WPS to open an app - meaning it would not pick up files opened from the File menu inside the app.  It probably would also not pick up files dropped on an already open application window (as opposed to files dropped on the Program object).

I did a little of this as a way of making long file names work with Win-OS2 apps.  You can make it work when going through the WPS but not when going through the app itself unless you have a way of hooking into the File open feature of an application.  You MIGHT be able to do that if you provided a modified File Open dialog (such as FOC) that would copy the file(s) specified to the central list.

After thinking a minute more - instead of copying the file name to a "central list" what should happen is a shadow is created of the file in a ROD folder.  That way if the file is renamed or moved the "list" would still be accurate due to the magic of the WPS and shadows.

Listing the recently opened docs would then be simply opening the folder containing the shadows - and double clicking on the shadow would start the app.

I don't know if you can make shadows of file system objects stored on media that doesn't support EAs.  If the shadow is stored in OS2.INI then you probably can.

12
Okay - it appears my problem is the open class library is stripping off mp2 for command messages.  Mp2 is where the EPM "command" is stored when it sends an EPM_EDIT_COMMAND message to itself (rather to the E-MLE window)

I think this because 1) mp2 in a EPM_EDIT_COMMAND message is, essentially, blank by the time it arrives as the E-MLE window procedure.  And 2) because of what I read in the book "Power Gui Programming with VisualAge for C++"

Quoting from the book
"An Open Class LIbrary library application is a presentation system application. Open Class Library itself provides a single window procedure that operates for most window represented by IWindow objects.  Every time you create an object derived from IWindow [which you must do to integrate a non-OCL routine with the OCL application - my addition] the object registers this window procedure as a subclass window procedure.   As a result, Open Class Library's window procedure gets the first chance to process all messages that the presentation system sends to a window."

Quoting again later in the book
"Open Class Library treats the field that identifies the source of the command (the high word of IEventParameter1 in the Windows operating system or the low word of the IEventParameter2 value in the OS/2 operating system) as if it contains only that value instead of data that you choose."  It goes on to say that as it passes that event (window procedure message) it alters the value in mp2.

Has anybody written an open class library handler to capture application messages before they get routed through the open class library ICommandHandler?

My current solution is to pull off the value that should be in mp2, store it somewhere in memory, subclass the E-MLE window procedure and for each type of EPM_EDIT_COMMAND message translate into an EtkExecuteCommand() function call.  Which is crude and I will have to do that for each ETK message that needs to transfer something in mp2.

13
Could you post the  6.03b version of the ETK here please?

14
Has anyone successfully used the EPM Etoolkit  to create an EPM based MLE in a VisualAge C++ v 3.0 IOC application?

Sample 2 from the etoolkit shows an E-MLE inside of an EFrame inside of an application window.  The E-MLE is the actual editor guts; the EFrame adds scroll bars, message line, title bar etc.  I lightly modified sample 2 from the etoolkit SDK, compiled with VAC 3.0 and it works - attached as epm_sample2.zip

But when I convert that into a "custom control" as a C++ class, to integrate with the user interface part of the IOC library, part of the E-MLE stops working.  It appears to be the part that sends messages, or receives messages related to editor commands.  What I THINK is happening is the dispatcher that the IOC uses to intercept and route window messages is somehow not sending the messages to the E-MLE window procedure.  Or rather some of the messages, because other messages clearly are getting through.

So has anyone converted a customized PM window/control into a IOC user interface object that can be inserted into various other IOC UI objects?

epm_sample2.zip is the lightly modified Sample 2 from the eToolkit sdk.   
testmain.zip contains my class EpmMle (descended from IControl) which is my attempt to integrate an EFrame/E-MLE into a custom control that can be used in IOC.  Run testmain.exe from testmain.zip and try issuing a command from the menu;  Command - Command Dlg and then type some EPM command, such as SAYERROR 'Hello'   You will need the VAC 3.0 runtime libraries to run testmain.exe






15
That sounds like a pretty good compromise - considering the US is the land of the lawsuit.  It is almost like the right to sue is in the Bill of Rights.

Even if there was not one dedicated site for all these "additional" applications, just a list of apps and links of where to download (almost the same thing) would be great.  I saw a number of apps in this thread that I had never heard of before.

As for media players, I haven't used Mplayer or PMplayer but I do use VLC and it is VERY impressive.  Kudos and thanks to the VLC team and especially
KO Myung-Hun for porting to OS/2.

Pages: [1] 2 3 ... 16