lynx Posted June 21, 2019 Share Posted June 21, 2019 On 6/21/2019 at 4:32 AM, Mike1072 said: I think Alien's tool is currently written in PowerShell, not C#. On 6/21/2019 at 5:07 AM, AL|EN said: Yep, mostly Powershell which is also cross-platform and open source. The cross-platform GUI part will be done when all major features will be implemented and tested (we can see what's work and what's not), the one which left are EET suport and conflicts + dependencies. "conflicts + dependencies" is no minor feat, that's why I keep bringing up existing package managers that have had this solved for ages. In that sense python would be a better choice than powershell, but maybe there are some written in csharp too (eg. the windows contenders like chocolatey, nuget?). Quote Link to comment
AL|EN Posted June 23, 2019 Share Posted June 23, 2019 On 6/21/2019 at 3:14 PM, lynx said: "conflicts + dependencies" is no minor feat, that's why I keep bringing up existing package managers that have had this solved for ages. In that sense python would be a better choice than powershell, but maybe there are some written in csharp too (eg. the windows contenders like chocolatey, nuget?). That's way off-topic, if you want discussion about this, please create new thread and explain the idea and how you see it being implemented. Quote Link to comment
lynx Posted June 24, 2019 Author Share Posted June 24, 2019 The whole point is that it doesn't need to be implemented, since it has already been done and done well. It's just about reuse, however it can affect the packaging format, since every solution comes with its own and it may be a waste of time to change it. Quote Link to comment
AL|EN Posted June 24, 2019 Share Posted June 24, 2019 (edited) There are two types of dependencies and conflicts, which I aim to support: Quote Internal type conflicts and dependence between internal components of single mod Example: Argent77's "Disable Enhanced Edition NPCs" mod Component "Make NPC-specific items available for everyone" can only be installed if you installed "Disable all NPCs" or disabled each NPC individually. External type conflicts and dependence between multiple mods from various authors Example: Argent77's "Disable Enhanced Edition NPCs" can't be used together with Pecca's EE content tweaks. Players have to choose one of them. LongerRoadEE require Ascension. If the player select the first, the second will be also added into existing installation. Please tell me which package manager can provide such capabilities and how it should be implemented. Edited June 24, 2019 by AL|EN Quote Link to comment
lynx Posted June 24, 2019 Author Share Posted June 24, 2019 The first part is usually handled in the package itself, for which they include script snippets (I don't think it can be solved in a declarative way, at least in the general case). Whatever BWS had may be sufficient, but you'll know better. Since mods are not to be touched, but the package files have yet to be written, all the info and/or logic needs to be in there. The external stuff is the usual bread and butter of package managers (conflicts, providers, subdependencies). Quote Link to comment
AL|EN Posted June 25, 2019 Share Posted June 25, 2019 So you solution relays on filing lot of metadata, like BWS. Sure, that's one way to do it but who's gonna fill it an keep up to date? I don't want to go that road. Quote Link to comment
lynx Posted June 25, 2019 Author Share Posted June 25, 2019 Or code, but it's essentially the same thing and I don't see how you could solve it any other way. IMO this should be done on the weidu level, but that of course requires changing mods. Quote Link to comment
Recommended Posts
Join the conversation
You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.