LuisThiamNye / ButteryTaskbar2

Hide the taskbar completely when the Start Menu is not open.
Eclipse Public License 2.0
148 stars 0 forks source link

Please add to scoop repository. #1

Closed yashamon closed 2 months ago

yashamon commented 1 year ago

Scoop forces symbolic links to be available. (To install scoop the user must give certain priveledges to powershell.) So for startup you can just add a post install hook to the manifest to add a symbolic link in user startup folder. `# An array of commands to be executed after an application is installed.

post_install: ["Write-Host 'Running postinstall command'"]`

I think that built-in autoupdates are awful. At least in my experience with something like VLC or Transmission. I want to use the app right away not wait for an update. With scoop you can run update all once a week at night before sleep or even just schedule it.

Another point is scoop gives reproducibility, you can get nearly identical work environment on a new windows install with a few commands. Whatever you have to install manually of the web of course breaks reproducibility.

LuisThiamNye commented 1 year ago

I'm not too familiar with scoop, so:

  1. Explain what is the real benefit of completing your request.
  2. Provide clear instructions for how to do what you want me to do. If the task can be reduced to something quick and easy enough for me (and it has a good reason), then I might do it.
yashamon commented 1 year ago

The most basic option is this: https://github.com/ScoopInstaller/Scoop/wiki/Creating-an-app-manifest This creates a shareable url which can be used by any Scoop user to install your app. If you update the app, just update the manifest. Scoop will automatically update then for all users. (Once update command is issued)

You can also add add the manifest to a bucket like "extras" by making a pull-request, extras contains things like neovim and other utilities.

The main benefit is automatically tracking any changes to your app.

LuisThiamNye commented 1 year ago

That seems to handle the auto-update part, but what about the auto-start on login?

My experience with package managers like these is that they put the executables in obscure directories, making it difficult to locate them. This is a problem for this program because the user is in charge of manually configuring the auto-start with something like Task Scheduler.

Ideally I would have a feature in the program to automatically add or remove a startup entry, but it's simpler to leave that out for now (and the less I have to deal with the terrible complexity of The Fantastic Microsoft Windows the happier I'll be).

In fact, the ultimate ideal would be for the program to have its own auto-update feature that isn't rubbish, making a package manager unnecessary.

midrare commented 11 months ago

Chocolatey would be a better fit. The install and uninstall powershell scripts can take care of creating and deleting the startup task.

Velgus commented 2 months ago

My experience with package managers like these is that they put the executables in obscure directories, making it difficult to locate them. This is a problem for this program because the user is in charge of manually configuring the auto-start with something like Task Scheduler.

You should look into Scoop before making claims like these - Scoop only uses portable apps, and all of them are in literally as predictable of a directory as is possible - by using the manifest name and storing in (by default) $USERPROFILE/scoop/apps/.

In fact, the ultimate ideal would be for the program to have its own auto-update feature that isn't rubbish, making a package manager unnecessary.

Disagree, I want a centralized place to update all my applications via a single command, at my chosen time - not have to open any given application to have it be out of date and auto-update itself after opening unless it has some background service that does it while closed.

Chocolatey would be a better fit. The install and uninstall powershell scripts can take care of creating and deleting the startup task.

I'd argue Scoop is a better fit, given this is a portable application.

Also, for OP - you'd be better off making a Package Request on the Scoop repo, as it doesn't have to be the original author who creates and provides the manifest.

LuisThiamNye commented 2 months ago

Upon giving this some thought, I have been persuaded that scoop is a good idea. I've created a bucket containing the manifest for buttery-taskbar:

scoop bucket add CrypticButter https://github.com/CrypticButter/ScoopBucket
scoop install CrypticButter/buttery-taskbar

Someone else can add it to the Extras bucket if they wish, as mentioned by @Velgus.

Also, I understand the sentiment around auto-update systems being poorly behaved, so if I were ever to implement such a feature I would aim to make it as seamless as possible. After all, this program in particular is expected to be running as soon as possible on startup, and I wouldn't want to introduce any delays there. For the time being, the program is sufficiently simple and important updates are rare, so I don't think it's worth the complexity nor effort of implementing an auto-update system.

I'll close the issue since I don't have any interest in adding a manifest to someone else's repository. If anyone has any issues with my provided manifest then you can tell me about it.