Giter VIP home page Giter VIP logo

Comments (12)

genotrance avatar genotrance commented on August 19, 2024

I just updated the original issue - I don't think this is a shimgen issue as noted in the other thread.

I will appreciate it if you had any comments on the following:-

  • How to create a shim with wait for exit always set during installation
  • Can a GUI shim with wait for exit run as a GUI app (without a console popup)

Thanks in advance.

from home.

ferventcoder avatar ferventcoder commented on August 19, 2024

CLI shims always wait for exit, GUI shims always exit immediately. However if you need it to do something else, you could call --shimgen-help to learn of your options.

from home.

ferventcoder avatar ferventcoder commented on August 19, 2024

As in putty --shimgen-help

from home.

ferventcoder avatar ferventcoder commented on August 19, 2024

A full list of arguments you can call are at https://github.com/chocolatey/shimgen#shim-arguments as well

from home.

genotrance avatar genotrance commented on August 19, 2024

Thank you for your input.

from home.

ferventcoder avatar ferventcoder commented on August 19, 2024

We should probably leave this open as an enhancement until there is a way to create the shim in this way instead of a runtime call.

from home.

genotrance avatar genotrance commented on August 19, 2024

The only sensible way to implement this would be to run a GUI app with wait for exit automatically set if it was run from a console. That way, even though both the app and the shim both run in the background, there's still a process hierarchy for apps like Px to look for a parent console and attach to it if desired.

from home.

ferventcoder avatar ferventcoder commented on August 19, 2024

The only sensible way to implement this would be to run a GUI app with wait for exit automatically set if it was run from a console.

@genotrance for your particular case that might be true. However for most folks they don't want to have a console that is blocked. If they are using it to open something like gitk or something they might have open for a long time, if it blocks on the console, then they are unable to use the console until close the GUI app.

And for your particular use case, we should support a way of specifying options for the shim that is generated when the defaults are not what you want.

from home.

ferventcoder avatar ferventcoder commented on August 19, 2024

The defaults for shims have about 5+ years behind them and quite a bit of software. There are only a handful of edge cases that we've run into.

from home.

genotrance avatar genotrance commented on August 19, 2024

I agree you need to be careful on how you proceed but I'm not saying that the shim should hold onto the console - that would make it into a console app.

Assuming you make a GUI shim for a GUI app, what I'm asking for is the GUI shim to wait for the GUI app to exit if the GUI shim was invoked from a console. That way, the process hierarchy is maintained and the GUI app is free to attach to the parent console if required. The GUI shim would still run in the background and not hold onto the console, or block it.

I also agree that this is an edge case and you don't need to do it for every app but make it configurable.

from home.

gep13 avatar gep13 commented on August 19, 2024

Based on some changes happening to the Chocolatey repositories, this issue has been moved from the chocolatey/shimgen repository to the chocolatey/home repository.

from home.

brogers5 avatar brogers5 commented on August 19, 2024

+1, running into a similar issue with Twinkle Tray.

When launched as a first instance, this starts the GUI and prints debug messages to the parent console if it's available. A second instance supports a command-line interface. Because shimgen creates a GUI shim, this requires users to pass --shimgen-waitforexit for any console output to be shown.

It would be nice to have an option to configure default wait-for-exit behavior when a parent console is available, or at least have a way to opt out of GUI shim creation if undesired.

from home.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.