Menu

WBStartup thingy

kas1e
2013-09-25
2013-09-26
  • kas1e

    kas1e - 2013-09-25

    @All

    So in commit 646 rigo do some code changes in terms of handling wbstartup, as "os4 does not have a WBStartup drawer, so the WBSTARTUP parameter did nothing. Now uses DOpus5:WBStartup if SYS:WBStartup is not found. This allows users to start programs when the WBStartup drawer has been removed".

    Remarks from other topic from xenic is:

    That means if you start DirectoryOpus in WB replacement mode it is going to attempt to restart another copy of DirectoryOpus.
    

    Simons one:

    Perhaps only use the DOpus5:WBStartup on OS4 then, otherwise it's completely useless on OS4 as a WB replacement. There is no WBStartup. I do, however, have a standalone binary wich launches the WB startup modules just like Workbench does, but uses the dopus.library to run them rather than WB. I've added this to DOpus5:WBStartup and I get all my configured programs when running in WB replacement mode.
    

    And last xenic's:

    O.K. It'll work the way it is. We just need to move the DirectoryOpus WBStartup project file and icon to another directory like Dopus5:Storage in the user distribution. 
    

    Now questions is:

    1). Will it all works as before, without any single problem for another oses ?
    2). How i should i redesign user-archive ? Because as it now, its imho no go as will runs twice or something. If move it to dopus5:storage/wbstartup/ , then , it mean code which rigo add will not work out of box, and users will need manually copy it to root, but then, problem with 2 times running will be again there, right ?

    So, how to deal with all of this normally ?

     
  • Simon archer

    Simon archer - 2013-09-25

    Well, I have left that project in the WBStartup drawer, and when running in WB replacement mode, it seems to do nothing. It certainly doesn't start a new instance. I don't even know why it's there, can it not just be discarded?

    Simon

     
  • xenic

    xenic - 2013-09-25

    @Simon
    That WBStartup project is still of use for OS3 and on OS4 for people who don't run Dopus5 as WBReplacement (I don't). It (and the Dopus5 WBStartup drawer) are described in "trunk/documents/DOpus5.5.pdf" page 27. The Dopus5:WBStartup drawer is just the place where Dopus5 WorkBench startup file is stored. AROS, OS3 & MOS users will still use it in the same way as always; the drawer containing a file to be dragged to the SYS:WBStartup drawer for starting Dopus5 when their Amiga is booted.

    Since OS4 users will need to drag programs to a Dopus5 drawer for WBReplacement mode; that difference will need to be documented in a readme file (and eventually in new documentation). The name of the DOpus5 drawer doesn't need to be "WBStartup". We can add a drawer to the Dopus user distribution named something like "Dopus5Startup" or "DBStartup". For AROS, OS3 & MOS it would be a new feature; a drawer for starting programs users only want started if they are running Dopus5 in Worbench replacement mode. For OS4 it would be the required drawer for Dopus5 startup program launching.

    I say leave the old WBStartup drawer as it has always been and add a new drawer for starting programs from Dopus5 at boot time.

     
  • Simon archer

    Simon archer - 2013-09-25

    Well, I guess it doesn't really matter what the name of the drawer is, but calling it anything else other than WBStartup might be confusing for the user. On AmigaOS4.x, as you know, the WBStartup modules are handled completely differently. I have a program here that can start the configured modules separately from Workbench, so it can be added to the DOpus startup drawer. Unfortunately, the source of this program cannot be released (and integrated into DOps because it uses Workbench internals which should not be made public), so it will have to stay as an external program. It does, however, present the same user feedback as the WBStartup, window and all.

    How that get's encapsulated, I'll leave that up to those that are making the decisions.

    Simon

     
  • xenic

    xenic - 2013-09-25

    @Simon

    Well, I guess it doesn't really matter what the name of the drawer is, but calling it anything else other than WBStartup might be confusing for the user.

    On the other hand, most Dopus5 users have been using it since the mid 90's and are well aware of what the Dopus5 WBStartup drawer is for and be confused by changes in it's purpose. I usually leave decisions like this up to kas1e since he is the one talking to the users in the Amiga forums.

    My personal opinion is that setting Dopus5 to run in WBReplacement mode is questionable at this point. How will programs that use workbench.library functions perform if there is no "real" workbench running. Take a look at the OS4 workbench autodocs (especially "WorkBenchControlA" options) and see if you think programs that use some of those functions (especially the v50 functions) will work correctly and not crash. Will programs & scripts that use WorkBench ARexx commands work? Personally, I think the Dopus5 WB replacement mode might need a serious update before it's "system safe".

    I also envision problems with users (and maybe beta testers) reporting system bugs (in the system prefs, programs, utilities on the SYS: partition) if Worbench isn't even running and system libraries are patched. How are the OS4 developers going to debug the system if half the users are using a WorkBench replacement like Dopus5? If users report bugs or crashes in your programs when they are running Dopus5 WorkBench replacement mode, how will you react? Will you want to fix them to work with Dopus5 or tell users to use "real" WorkBench?

    I personally think we should focus on getting rid of DOpus5 bugs/crashes and save the OS4 WBreplacement mode and new features for the final step in Dopus5 development. That's just my personal opinion and I usually let kas1e decide how we should proceed.

     
  • kas1e

    kas1e - 2013-09-25

    @all
    imho we for sure need to ifdef amigsos4 that new change at first , while we discuss thing. imho all arguments have +and -. also that thingy about close source parts not so good too, as it again create that usuall os4 mess which most users hate (close src,etc) and when something is not in repo, no one can fix or mantain it.

    @simon
    maybe it possible somehow to relese src of tjat binary which you have ? sure it can have internals, but no one care imho or will worry about ..

    anyway, imho lets ifdef it now and discuss thing mor. but for sure clising of any related part suck. dunno what to do really..

     
  • Simon archer

    Simon archer - 2013-09-25

    Sorry, but it contains code from workbench.library, so there's no way it can be opened.

    I would suggest to put the binary on OS4Depot once the enabled DOpus version goes out, and let people download it itself. That way it cannot be construed as part of Opus, simply something to use with it.

    Simon

     
  • xenic

    xenic - 2013-09-25

    @kas1e
    If you can't decide what to do then ask the users if they want to use Simon's external program, place WBStartup programs in a new Dopus5: directory or place WBStartup programs in the Dopus5:WBStartup directory. If Simon is right about Dopus5 being smart enough not to restart itself from the Opus5_Startup file/icon in DOpus5:WBStartup directory, it won't hurt to put the WBStartup programs in that directory if that's what the users want.

     
  • kas1e

    kas1e - 2013-09-26

    @Xenic
    I do some tests, and that what i found if we mean current changed code:

    In replacement mode (i.e. no WB running):

    1). in wb-replacement mode dopus5 check, if there is sys:wbstartup. If there is, then dopus5 use that one. If there is none , then dopus5 use dopus5:wbstartup one. Ie if we have both sys:wbstartup and dopus5:wbstartup, then first one to check will be sys:wbstartup, and only if there is none, dopus5:wbstartup will be used. If there is sys:wbstartup, then dopus5:wbstartup is not used at all.

    2). if we remove sys:wbstartup (so, dopus5:wbstartup will be in use), and it have there anything together with Dopus5_startup script/icon, then no second copy of dopus5 runs, but another files which are in dopus5:wbstartup files starts fine (what mean, that directory handles correctly, and dopus5 smart enough to not run second time it). I also tried to change tooltype WBSTARTUP to YES in the icon of Dopus5_Startup, and it still didn't runs second time after reboot. But if i just dbl-click on it, it of course says me "Directory Opus appears to be already running ! blablab cancle/runagain". So it also all ok, dopus5 smart enough there.

    In wb mode (i.e. workbench running, and i dbl-click on diropus to run it).

    1). If we have no sys:wbstartup drawer, then dbl-click on dopus5 icon, it loads, and nothing loads from dopus5:wbstartup at all.

    2). If we have sys:wbstartup, and then dbl-click on dopus5 icon, it loads, and nothing loads not from sys:wbstartup, not from dopus5:wbstartup.

    I.e. seems code to check WBStartup thing only works when we in WB-replacement mode, and not affect use of dopus5 on wb.

    So, by all of this what we have:

    1). All the ppls from os3,mos,aros will have no differences with current code. They as before can drag stuff to Sys:WBStartup. If they didn't have it by any of reassons, then dopus5:wbstartup directory will be used, and Dopus5_startup there just make nothing.

    2). In non-wb-replacement mode everything works as before. I.e. not sys:wbstartup, not dopus5:wbstartup handles at all.

    In other words, my idea is: keep everything as it now. Anyone who prefer "old way" can just create on their os4 system parition wbstartup driver and use everything as before. The same for all the other users on all other oses. Thoses ones who by some reasons will want to use WBStartup in the dopus5 directory, can use just it.

    In other words, while on os4 there is no sys:wbstartup driver, you of course still can create it , and everything will work as before. Just those ones who do not want, can use dopus5:wbstartup one (like those ones who prefer to not have it at all in system).

    Imho that way as it now only expand what we have before. I.e. everything works as before for everyone, just we add one more thing: in wb-replacement mode dopus5 can load things from dopus5:wbstartup too.

    We can document it as well in some new "readme_5.90.pdf", just so users will know about +one more feature.

    Of course we can change it all back, and say to os4 ppls : create sys:wbstartup driver, it will be used by dopus5 as before. But i assume Simon just do not work to mess "system" and get rid of it , just to make everything works from one place. Still, ppls who prefer it, can just do what they do before even on os4 (and of course on all others oses).

    What you think ? In end of all, we can just do os4 ifdef for it. So to be 100% sure no one will scream, but then it will be os4 only specific difference, which somehow bring differences again.

     

    Last edit: kas1e 2013-09-26
  • xenic

    xenic - 2013-09-26

    @kas1e
    If using the Dopus5:WBStartup works, then leave it. Apparently, my concerns were unfounded.

     

Log in to post a comment.