politas

CKAN (The Comprehensive Kerbal Archive Network); v1.26.4 - Orion

Recommended Posts

I am about to update KW Rocketry with a new version.  Problem is that I need to keep the old version on CKAN, the new version is getting a new name, but I am using the same Github repo for this.

How can I update the old KWRocketyRedux.netkan so it will only use and reference the release files on github up to 3.1.4, and use 3.2 for the new version of Kw Rocketry Rebalanced?

For now I'm only going to have the Rebalanced get pulled from Spacedock, but would like to have it continue to use the same github repo.

 

Share this post


Link to post
Share on other sites

Has anyone else run into problems running CKAN on a Mac lately?   I keep getting a fatal exception when I try and launch.  I'm pretty sure it's a Mono Framework issue at this point, but cant be certain.

For reference, here is my system information:  Late 2013 MacBook Pro (fully loaded) running OS X 10.12.6  |  Mono Framework v5.0.1.1  |  CKAN v1.22.3

A full copy of error log(s) can be found on the CKAN GitHub Issues list here:
https://github.com/KSP-CKAN/CKAN/issues/2106

Share this post


Link to post
Share on other sites
On 17/08/2017 at 2:28 AM, DMagic said:

This has probably been asked before, but does CKAN provide any method for preserving certain files during an upgrade?

I'm thinking in particular of settings or configuration files that users would want to keep. In my case these would always be in the PluginData folder, and would always be created after the mod is installed (the files aren't included in the download package).

There are a few issues related to this, including the oldest open issue, along with 653, and maybe 1610. But I'm not really sure about the status of the issue as a whole.

Ah #1610. That was my attempt to bring all pervious comments about keeping old config files into one issue report. I am not a CKAN developer but I did look deep into the problem. Short answer after looking at it from all angles. It is a very bad idea to keep any old files. If the mod author changed a mod to require new settings or configuration files. Most end users tend to keep the old ones if you let them. The result is a broken mod.

As a mod author you can tell people to do clean install. However they will not damn well listen becuase people never do. Also CKAN can't clean stuff that it did not create. It is not even loaded when the extra files are created after the mod is installed. The problem becomes worst if the folder structure is changed between mod versions. Users will copy the new mod on top of the old structure. Unless we make them remove it.

The best policy is to remove everything in the mod folder during an uninstall. Everything even if created by the end users themselves. That way whatever is downloaded again is the current version of a mod. Including any new configuration files. That are either there at install or created afterwards.

Even the folder has to go. MM can access an empty folder causing grief for another author. An example

 PART:NEEDS[RealFuels|ModularFuelSystem] 

That MM patch then gets executed regardless of what is in RealFuel. Even an empty folder will cause it to execute. If that mod was removed any other mod that reacts to it is now also broken. So everything must go including the folder.

PR #1873

So what about those of us that customise existing mods. People quite often alter published mods with their own configuation files. The diffrence is people that are smart enough to do that. Surely are smart enough to keep their own backups. CKAN does not stop these being added later. This not an ideal solution but it one that causes the least amount of grief for modders that demand new configuration files each install. Other choices where considered. However it is overkill to do it any other way when end users just need to learn to clean things up https://github.com/KSP-CKAN/CKAN/wiki/Clean-and-reinstall-process

Any file created at runtime is kept. CKAN will not touch it. However 1610 proved that CKAN cannot be trusted to remove mods that do this. If such files needed cleaned end users must do this manually.

 

Edited by nobodyhasthis2

Share this post


Link to post
Share on other sites

Is there any way to save CKAN override auto-detected mods? I tried to use migration tool (a plugin) but it didn't work and the fix's github repo doesn't exist anymore.

Share this post


Link to post
Share on other sites
1 hour ago, gunqqer said:

Is there any way to save CKAN override auto-detected mods? I tried to use migration tool (a plugin) but it didn't work and the fix's github repo doesn't exist anymore.

Welcome to the forums.

Do you mean mods that are auto-detected (marked as AD) by CKAN?  If so, since the mod was installed manually (i.e. not by CKAN) simply save the mod's original download file (probably a .zip file) or copy that mod's directory in [your KSP]\GameData\ folder.  The latter method only works if a mod is entirely contained within its own folder.  A mod's forum thread and download location are often listed on the right-hand side of the CKAN window when you select the mod in question.  If that info still says GitHub, then perhaps a Google search might find another place.

I would suggest, though, that if the repo doesn't exist anymore, you're potentially playing with fire.  If the mod is not being updated, it may cause problems under existing or future KSP releases.  Play at your own risk.

Share this post


Link to post
Share on other sites
7 hours ago, Brigadier said:

Welcome to the forums.

Do you mean mods that are auto-detected (marked as AD) by CKAN?  If so, since the mod was installed manually (i.e. not by CKAN) simply save the mod's original download file (probably a .zip file) or copy that mod's directory in [your KSP]\GameData\ folder.  The latter method only works if a mod is entirely contained within its own folder.  A mod's forum thread and download location are often listed on the right-hand side of the CKAN window when you select the mod in question.  If that info still says GitHub, then perhaps a Google search might find another place.

I would suggest, though, that if the repo doesn't exist anymore, you're potentially playing with fire.  If the mod is not being updated, it may cause problems under existing or future KSP releases.  Play at your own risk.

I don't think you got anything I was saying.

 

I have some Auto detected mods. I want CKAN to override said mods with the most recent version. I don't want to have to manualy uninstall those mods, write down all their names, and find them all again in CKAN. Is there a way I can just find them in CKAN and install them and force CKAN to install that version and overwride the ADed version? (The thing about github was a posible fix to this, but the one download to the fix that was avalible doesn't work when downloaded and installed (known issue) and someone took it over and fixed it but the github repo that it was fixed on doesn't exist anmore)

Share this post


Link to post
Share on other sites

That would be a handy feature of CKAN. It is something of a pain to have to delete directories of a mod now available on CKAN, then relaunch CKAN, find the mod and install it. Just the sort of things that CKAN is there to help avoid. 

Share this post


Link to post
Share on other sites
9 hours ago, Brigadier said:

Welcome to the forums.

Do you mean mods that are auto-detected (marked as AD) by CKAN?  If so, since the mod was installed manually (i.e. not by CKAN) simply save the mod's original download file (probably a .zip file) or copy that mod's directory in [your KSP]\GameData\ folder.  The latter method only works if a mod is entirely contained within its own folder.  A mod's forum thread and download location are often listed on the right-hand side of the CKAN window when you select the mod in question.  If that info still says GitHub, then perhaps a Google search might find another place.

I would suggest, though, that if the repo doesn't exist anymore, you're potentially playing with fire.  If the mod is not being updated, it may cause problems under existing or future KSP releases.  Play at your own risk.

I understand his issue and I think it's a legit gripe.

You have a manually-installed mod with a bunch of dependencies.  You want to make it CKAN-controlled for the updating.  If you uninstall it then CKAN will remove a whole bunch of stuff that you'll have to add back in.  While you certainly can do it it's annoying.

Share this post


Link to post
Share on other sites
3 hours ago, gunqqer said:

I don't think you got anything I was saying.

Ahh, now I understand.

4 hours ago, gunqqer said:

I have some Auto detected mods. I want CKAN to override said mods with the most recent version. I don't want to have to manualy uninstall those mods, write down all their names, and find them all again in CKAN. Is there a way I can just find them in CKAN and install them and force CKAN to install that version and overwride the ADed version?

I believe that, as painful as it might be, the answer is no.  There is no way in CKAN at the moment to do what you want.  Manual uninstall is the only way, unless and until the CKAN devs change it.

1 hour ago, Loren Pechtel said:

I understand his issue and I think it's a legit gripe.

You have a manually-installed mod with a bunch of dependencies.  You want to make it CKAN-controlled for the updating.  If you uninstall it then CKAN will remove a whole bunch of stuff that you'll have to add back in.

The way I understand it, if the manually installed mod has dependencies that you've also installed manually, then using CKAN to re-install the mod will install those dependencies automatically.

I believe it's a legit feature request but if you're using CKAN and manually installing mods with complex dependencies then you're going to have deal with the consequences, IMHO.  Isn't it just safer from a game stability perspective to remove the mod entirely and start from scratch anyway??

Share this post


Link to post
Share on other sites
47 minutes ago, Brigadier said:

The way I understand it, if the manually installed mod has dependencies that you've also installed manually, then using CKAN to re-install the mod will install those dependencies automatically.

I believe it's a legit feature request but if you're using CKAN and manually installing mods with complex dependencies then you're going to have deal with the consequences, IMHO.  Isn't it just safer from a game stability perspective to remove the mod entirely and start from scratch anyway??

No, you have it backwards.  The case I hit was early in my use of CKAN.  Module Manager was installed manually.  Everything and it's brother depends on that.

Share this post


Link to post
Share on other sites
Just now, Loren Pechtel said:

No, you have it backwards.  The case I hit was early in my use of CKAN.  Module Manager was installed manually.  Everything and it's brother depends on that.

But don't most mods that need MM make it part of their install, even through CKAN?  So if you delete MM and then install a mod with CKAN that depends on MM, won't MM be reinstalled??  Just askin'.  Clearly, I'm again not understanding :confused:

Share this post


Link to post
Share on other sites
1 hour ago, Brigadier said:

But don't most mods that need MM make it part of their install, even through CKAN?  So if you delete MM and then install a mod with CKAN that depends on MM, won't MM be reinstalled??  Just askin'.  Clearly, I'm again not understanding :confused:

You're still looking at it backwards.

Consider an install with a manual install of MM.

If you delete MM, CKAN will react by removing everything that depends upon it.

Share this post


Link to post
Share on other sites
3 hours ago, Loren Pechtel said:

You're still looking at it backwards.

Consider an install with a manual install of MM.

If you delete MM, CKAN will react by removing everything that depends upon it.

The question is, if you're using CKAN at all, why are you manually installing MM? :cool:

Share this post


Link to post
Share on other sites
13 minutes ago, Brigadier said:

The question is, if you're using CKAN at all, why are you manually installing MM? :cool:

Because you were doing things manually and then discovered CKAN.  It's not an important factor for the established user, it's a pain for the new user.

Edited by Loren Pechtel

Share this post


Link to post
Share on other sites
Just now, Loren Pechtel said:

Because you were doing things manually and then discovered CKAN.

Yeah, I get it.  It's better to start over with CKAN.  You'll be saner in the end.

Share this post


Link to post
Share on other sites
3 minutes ago, Brigadier said:

Yeah, I get it.  It's better to start over with CKAN.  You'll be saner in the end.

We could do that, but that is a huge waste of time that would make it easier for everyone if it was implamented. Using CKAN on OS X isn't the most stable experience. Typing in the search bar is funkey, the window pane sometimes doesn't show things and I have to refresh it by changing the window size. 

Share this post


Link to post
Share on other sites
On 18/08/2017 at 2:01 AM, linuxgurugamer said:

I am about to update KW Rocketry with a new version.  Problem is that I need to keep the old version on CKAN, the new version is getting a new name, but I am using the same Github repo for this.

How can I update the old KWRocketyRedux.netkan so it will only use and reference the release files on github up to 3.1.4, and use 3.2 for the new version of Kw Rocketry Rebalanced?

For now I'm only going to have the Rebalanced get pulled from Spacedock, but would like to have it continue to use the same github repo.

 

If there aren't going to be any new releases on the old name/identifier, just freeze it. (rename the .netkan file to .frozen)

On 22/08/2017 at 6:07 AM, DMagic said:

Is there any reason for the 3 week backlog of Space Dock submissions to NetKAN?

https://github.com/KSP-CKAN/NetKAN/pulls

No particular reason. They take some time to look over and process, and none of us have had the time or enthusiasm to do so.

On 23/08/2017 at 10:19 AM, Teilnehmer said:

Hi!

I had written a new mod and tried to make a pull request to the NetKAN repository 5 days ago. It passed the check, but hasn’t yet been merged.

https://github.com/KSP-CKAN/NetKAN/pull/5777

Did I do something wrong or should I just wait?

Merged with thanks!

Share this post


Link to post
Share on other sites
3 hours ago, gunqqer said:

We could do that, but that is a huge waste of time that would make it easier for everyone if it was implamented. Using CKAN on OS X isn't the most stable experience. Typing in the search bar is funkey, the window pane sometimes doesn't show things and I have to refresh it by changing the window size. 

There was an attempt to do it with a plugin, but it was extremely unreliable and has long since been abandoned. It goes against one of the core promises of the CKAN client, that CKAN will not touch any file it has not installed, which is why it isn't in the main client and likely never will be. If someone can get a working plugin to convert AD mods to CKAN control without requiring reinstallation, we'll promote the heck out of it, though!

Share this post


Link to post
Share on other sites

I cant figure out how to validate my netkan file to determine if it works or not.

I'm trying to teach myself how to write up my own Netkan files but its hard to tell if I'm doing it right. When attempting to launch the netcan.exe with --verbose <mymodidentifier>.netkan, it doesnt produce a ckan file for me to test. Not sure what I'm doing wrong, but I refuse to submit a netkan file that I can't test, and waste someones time.

Edited by Galileo

Share this post


Link to post
Share on other sites
29 minutes ago, Galileo said:

it doesnt produce a ckan file for me to test

In that case, it should output an error message. Are you able to view the output of netkan.exe?

Share this post


Link to post
Share on other sites
28 minutes ago, HebaruSan said:

In that case, it should output an error message. Are you able to view the output of netkan.exe?

this is what im seeing:

Spoiler

C:\Users\snip>Desktop\netkan.exe --verbose Desktop\AlmostFreeLaunchClamps.netkan
66 [1] INFO CKAN.NetKAN.Program (null) - Transforming Desktop\AlmostFreeLaunchClamps.netkan
146 [1] INFO CKAN.NetKAN.Program (null) - Using CKAN cache at c:/program files (x86)/steam/SteamApps/common/Kerbal Space Program/CKAN/downloads
192 [1] INFO CKAN.NetKAN.Program (null) - Finished reading input
193 [1] INFO CKAN.NetKAN.Validators.HasIdentifierValidator (null) - Validating that metadata contains an identifier
194 [1] INFO CKAN.NetKAN.Program (null) - Input successfully passed pre-validation
219 [1] INFO CKAN.NetKAN.Transformers.GithubTransformer (null) - Executing GitHub transformation with #/github/Galileo88/AlmostFreeLaunchClamps
1427 [1] INFO CKAN.NetKAN.Transformers.DownloadAttributeTransformer (null) - Executing Download Attribute transformation with #/github/Galileo88/AlmostFreeLaunchClamps
1433 [1] INFO CKAN.NetKAN.Transformers.GeneratedByTransformer (null) - Executing Generated By transformation with #/github/Galileo88/AlmostFreeLaunchClamps
1434 [1] INFO CKAN.NetKAN.Transformers.StripNetkanMetadataTransformer (null) - Executing Strip Netkan Metadata transformation with #/github/Galileo88/AlmostFreeLaunchClamps
1442 [1] INFO CKAN.NetKAN.Transformers.PropertySortTransformer (null) - Executing property sort transformation
1445 [1] INFO CKAN.NetKAN.Program (null) - Finished transformation
1555 [1] FATAL CKAN.NetKAN.Program (null) - Exception has been thrown by the target of an invocation.

and this is what my netkan looks like:

Spoiler

{
    "spec_version": "v1.4",
      "identifier"  : "AlmostFreeLaunchClamps",
    "$kref"        : "#/ckan/github/Galileo88/AlmostFreeLaunchClamps",
      "name"        : "Almost Free Launch Clamps",
      "abstract"      : "Low mass, free launch clamps",
    "version": "0.1.0",
    "ksp_version": "1.3.0",
      "license"      : "Public Domain",
    "depends": [
        {
            "name": "ModuleManager"
        }
    ],
    "install": [
        {
            "find": "AFLC",
            "install_to": "GameData"
        }
    ],
    "resources": {
        "homepage": "https://forum.kerbalspaceprogram.com/index.php?/topic/164733-13-almost-free-launch-clamps-010/"
    },
}

 

Edited by Galileo

Share this post


Link to post
Share on other sites
4 hours ago, Galileo said:

this is what im seeing:

  Hide contents

C:\Users\snip>Desktop\netkan.exe --verbose Desktop\AlmostFreeLaunchClamps.netkan
66 [1] INFO CKAN.NetKAN.Program (null) - Transforming Desktop\AlmostFreeLaunchClamps.netkan
146 [1] INFO CKAN.NetKAN.Program (null) - Using CKAN cache at c:/program files (x86)/steam/SteamApps/common/Kerbal Space Program/CKAN/downloads
192 [1] INFO CKAN.NetKAN.Program (null) - Finished reading input
193 [1] INFO CKAN.NetKAN.Validators.HasIdentifierValidator (null) - Validating that metadata contains an identifier
194 [1] INFO CKAN.NetKAN.Program (null) - Input successfully passed pre-validation
219 [1] INFO CKAN.NetKAN.Transformers.GithubTransformer (null) - Executing GitHub transformation with #/github/Galileo88/AlmostFreeLaunchClamps
1427 [1] INFO CKAN.NetKAN.Transformers.DownloadAttributeTransformer (null) - Executing Download Attribute transformation with #/github/Galileo88/AlmostFreeLaunchClamps
1433 [1] INFO CKAN.NetKAN.Transformers.GeneratedByTransformer (null) - Executing Generated By transformation with #/github/Galileo88/AlmostFreeLaunchClamps
1434 [1] INFO CKAN.NetKAN.Transformers.StripNetkanMetadataTransformer (null) - Executing Strip Netkan Metadata transformation with #/github/Galileo88/AlmostFreeLaunchClamps
1442 [1] INFO CKAN.NetKAN.Transformers.PropertySortTransformer (null) - Executing property sort transformation
1445 [1] INFO CKAN.NetKAN.Program (null) - Finished transformation
1555 [1] FATAL CKAN.NetKAN.Program (null) - Exception has been thrown by the target of an invocation.

and this is what my netkan looks like:

  Hide contents

{
    "spec_version": "v1.4",
      "identifier"  : "AlmostFreeLaunchClamps",
    "$kref"        : "#/ckan/github/Galileo88/AlmostFreeLaunchClamps",
      "name"        : "Almost Free Launch Clamps",
      "abstract"      : "Low mass, free launch clamps",
    "version": "0.1.0",
    "ksp_version": "1.3.0",
      "license"      : "Public Domain",
    "depends": [
        {
            "name": "ModuleManager"
        }
    ],
    "install": [
        {
            "find": "AFLC",
            "install_to": "GameData"
        }
    ],
    "resources": {
        "homepage": "https://forum.kerbalspaceprogram.com/index.php?/topic/164733-13-almost-free-launch-clamps-010/"
    },
}

 

Your licence string needs to be "public-domain". That's what's failing. The best way to get feedback on a new netkan is to submit a PR. The Jenkins checks will sometimes give you a better error message than the netkan client by itself.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. 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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.