-
Notifications
You must be signed in to change notification settings - Fork 903
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Some Suggest Edition Changes #1857
Comments
Hi @Ryonez! Let's start by working on terminology so we are using the same wording and it has similar meanings. The first is the word "package". I think for the sake of argument we need to talk about Chocolatey's terminology of "packages" versus Programs and Features and software/installers. Chocolatey is a package manager that manages Chocolatey packages (nupkg files) - this puts it in line with true package management and has all of the features you would expect there. That is you put the runtime binaries into the package itself, maybe even zipping them up first, and dependencies and conflict resolution. Now, folks on Windows have been working with Programs and Features and installers for years and you see that Chocolatey ALSO can manage that ecosystem. In fact, arguably that is one of its best features. That it manages all aspects of the Windows software ecosystem. Chocolatey itself does not manage Programs and Features directly, Chocolatey manages packages and installer packages manage installers (managing software in Programs and Features). This distinction and understanding that relationship is quite important. Programs and Features is not package management, and it doesn't cover all aspects of Windows software. Thus the things that are there are not packages, they are software, they are installers, etc.
Chocolatey installs the package to a place, and the software based on the chocolatelyInstall.ps1 instructions, but typically that is the default location. It does depend on the underlying installer allowing for that to happen. As every piece of software can be a unique snowflake when it comes to Windows, can you identify the package and we can troubleshoot the issue?
Spending time / DIY is in the spirit of FLOSS. When you get a free service or tool, it is expected that you would spend more time with it. We can disagree on this aspect and that's okay.
All the aspects of package synchronizer allow Chocolatey to step up from strict package management and to do some system and software state management.
The package is not out of sync with itself, it is out of sync with this outside competing concern that is the underlying software that the package has in Programs and Features. This concept doesn't even exist on other platforms. Having something that can resolve that isn't package management, it's a step above that.
I wanted to cover this as I think this feature may be misunderstood. This is something that allows you to call choco install setup.exe and it will generate the Chocolatey package on the fly and install that. It uses Package Builder, thus it won't be in open source or Pro. You get the benefit of not having to build the Chocolatey package around the installer first, and that's really it.
This tone is a bit wrong. This community is one that is welcoming and respectful. I'd be careful with tone and how it comes across with any responses you may provide here. All the rest of the itemsSo I think it's probably a good place to point out that we've set the features in the way we think is best and we spend a LONG time thinking about where features go and have talked to thousands of users and hundreds of organizations - where the features are and when/if they roll down to open source is not up for discussion. Plus our pricing is fair and the Pro edition supports the community - the cost is about one meal per month. But it's not free - sometimes there is an expectation that free should do everything a person needs but it's totally fine to charge for the things they don't necessarily need. I'm unsure of what you will choose based on my response, but just know should you continue to use Chocolatey, where the features go and how that supports having a viable business is in the purview of Chocolatey Software. Thank you, I appreciate you taking the time to read and understand this. It did turn out to be quite a longer reply. |
Hey there! Fist off, let me say thank you for taking the time to go through my post and answer it critically. I really appreciate it. So I do understand I'm on the standpoint of someone seeking some more features, for free basically. Defiantly no dispute on that, but I still try to keep in mind that there is work being done here. Hence I was looking more at features that I didn't see much benefit at actually being behind a paywall/subscription. But at the same time, please don't take me as someone who just wants everything for free. I'm just keenly aware how much money I have and the number of overall services that prefer subscription models can get taxing if I'm not careful. That does drive my interest in free and one payment solutions. Let me have a look at your response. The explanation off the difference between Chocolatey and Windows Programs and Features was very useful. I had a decent idea of what Windows does, but my understanding of Chocolatey was lacking.
Sure, for this case it was the hydrus software. The GitHub has a msi available for it, so I was giving it that switch to set the location.
The side I disagree on is that there is a feature to help cut that time down, but it requires a subscription. I suspect if it wasn't there there'd probably be a pr from the community to add it, but with it actually there, it doesn't need to be added. I'm not sure if this also counts as fully FLOSS software. I am ignorant with the terminologies a bit, but this software has different levels. The things you have to pay for aren't FLOSS are they? And if it isn't, but your free offering is separated and offered under a FLOSS license, would you accept a pr adding this normally paid for feature into the FLOSS version? I don't disagree though that users should spend time with the software they use. The problem is, why use Chocolatey if finding the needed switch can potentially take hours of messing around just to have something install to the correct place, when a user could take 5 mins to just install it manually. Sure, they'd have to manually check for updates if the software doesn't, but at that point the convenience of the package manager is almost rendered useless because it takes that much longer to use. Chocolatey is different I think with it needing to handle different types of installers, but having the user needing to play with it until it works is a disadvantage.
I don't fully understand, but your explanation of the difference between what chocolatey does and what the Windows Programs and Features does help me see there is a difference there. Thank you.
Ahh gotcha, That makes more sense.
I feel the tone there is fair based on the understanding of the feature. Is it different from what I said? Also bear in mind it's not directed at a person. I find the idea itself really stupid. It's made worse by the fact it's a business feature. Out of all the features I'd peg this one as the one that makes the least amount of sense to me. The description even "Install and upgrade directly from exe/msi files!", like, that's just downloading the files and you running it as far as I can tell.
I'm a little sad that you aren't interested in continuing those discussions. The world is dynamic and things change. That's not to say you should do everything that your community demands, but it does seem like you're 100% closed of from further discussions on it.
Completely agree. Nothing has to be free, and I am thankful for what you guys have made available.
Fair enough. Atm, I'm thinking I probably won't use it much. Part of that is the current way charges are made. It's Annual. While it could be worked to the cost of a meal a month, the charge is made for those 12 meals straight away. I'm unable to make such a large sum payment. I'm also unsure if pro is what would make me really come into using the software a lot. My preferred next step would be to try it for a month, however I can't just buy a month's time. That's going to just straight up stop me from trying pro out.
You're all good, I'm just extremely pleased you didn't toss this under the rug. |
Take a look at Hydrus - https://chocolatey.org/packages/hydrus-network#files. It doesn't use an MSI, it uses an EXE that looks like InnoSetup:
The package passes a location to the installer, so you'll need to completely override the arguments being passed through and provide your own:
|
Turn on useRememberedArgumentsForUpgrades - https://chocolatey.org/docs/chocolatey-configuration#general-1 |
It is open source, the technical term for a model that has open source and then commercial bits that are not open sourced is "open core."
Being open source at any rate doesn't mean that one is required to accept every PR. Given that those commercial features have some significant work behind them and that they are offered on the commercial side I can honestly say it's unlikely we'd have open source compete with the commercial features. |
The correct place should be the default option for the package. If you see ruby packages, they go to the root because that is where they are supposed to be installed, not into program files. If this package is incorrect on where it installs, then that is a package issue. The idea of needing to override that is when folks want to go to a custom location, thus the need to configure things (e.g. "I install everything to my D drive") |
We've made some progress investigating a monthly aspect. Something we could offer in the future if we get some things in order.
We don't always have the right answers on things, and we do turn to folks for help on certain aspects. However, and this is again being transparent, we are likely to engage with folks who are invested in seeing the platform stick around long term. Folks that are newer have perspective and that perspective can be good, but it can be context dependent. |
Damn, thank you very much for the help there. I'll give it another go and enable the I'll save the url as well, that would negate the having to test things because I don't know what the installer is being used.
I shall keep an eye out in case you end up making such an offering.
Yup, I'm becoming more aware on just how deep my lack of understanding with Chocolatey runs. I thank you for your patience, and would like to ask if you have any good guides that you would recommend me looking at? I'd like to give this an honest go, and not just walk away because I missed something that should have been obvious to me. |
We are also working on improving the documentation over the next few months. |
Cheers for that. I'll let you go and spend some time going through them all. I'm sure you have more important things you'd like to get back to. Once again, thank you! |
@Ryonez one other resource that you might find useful for asking questions is the chat room here: https://gitter.im/chocolatey/choco There is normally always someone in there that can answer any usage questions that you might have. |
Okay, I believe chocolatey needs some work to bring it in line with actual package managers.
I have a package, I need it installed in a certain place. This package by default is installing to Program Files, but store user files under it's root dir. This is not ideal, even chocolatey doesn't install there for this reason.
Now, just wanting to install it, I followed the instructions here. It's an msi installer, no... wait, it installed to the default place again.
I don't have time to screw around with this, I check again, same result. Meanwhile, on that page:
Ugh.
I'm not going to spend hours trying to do something a package manager should be managing. That is like a basic part of being a package manager. Even the person who made the initial request for the switch pointed this out (#258).
The fact this ended up in the pro/business thing is frankly a little disgusting and comes across as money gouging. It really does for something so basic.
Now don't get me wrong either. I'm not saying money shouldn't be earned. Here's some changes I'd make:
Open Source
Direct Installer (aka Package-less Install)
Wait, that's really a business feature??? Like, what? So I'm paying for you to download it then for me to run through the installer? It's current placement is frankly... well stupid in my opinion. Maybe there's a reason that makes sense?
Package Synchronizer - Automatic Sync
This feels pretty basic. Some apps auto update, sometime people forget and just update things. A package manager shouldn't be allowed to intentionally be out of sync. If it can correct it, it should.
Package Throttle
Again, this is pretty basic and shouldn't be behind a paywall. Some apps are large are could mess with a users network. But I wouldn't go as far as to say it's a standard. This is a preference to see this feature here.
Install Directory Override
As mentioned above, this is a basic thing for a package manager. We should be able to say where we want something installed, without throwing random commands until it works.
Package Downloader
Now the creation of packages makes sense that you charge for. However one variation I'd like to see is the ability to save the downloaded installers somewhere if we want to.
Kinda on the fence with that one. Would like to see the ability to save downloaded files somewhere, but the actual feature in place would be nice as well.
Pro (Personal)
Download CDN Cache
This is a perfect example of something to charge for. It's not necessary, but has the potential to speed up downloads or act as a fallback if the software's site is down. Great idea to make this a pro feature.
Runtime Malware/Virus Protection Another good one. While I'm not 100% why your one that you're meant to do on your end isn't enough, this is still a decent feature for those who want it.
I'm starting to realize how long this list is, so I'll stop here. The changes to the open source part is the import part, as the directly affects basic functionality.
Maybe look at the following options as well?
Open Source: Your basic package manager, with everything a package manager should be.
Pro: For advanced features that don't cost you anything to maintain them. This should be a single cost per user.
CDN+Support: A subscription for access to the cdn network and support. Makes sense this is a sub as it's an ongoing cost for you.
Architect: I'm not entirely sure what the target audience is, I'm defiantly not them >.<
Business (C4B): I think what you have here is perfectly fine.
I'm interest to see your response, maybe you can show how you came to the current layout.
The text was updated successfully, but these errors were encountered: