Jump to content

CKAN (The Comprehensive Kerbal Archive Network) - v1.33.2 Laplace - KSP 2 support!


DasSkelett

Recommended Posts

Hello there,

First keep pup the great work on CKAN

Second happy new year ! (in France we can say it until the 1/02 excluded)

Then the concerning the way Steam works, I was surprise at fist when playing A game started directly throught the exe was not reporting the play time.

Steam is creating icons with a URL "steam://"  and I think what is the ID of the game may be adding an option to start the game that way is the solution to this particular problem...

Well it seems it's already existing : "the game command line option" for me the KSP2 icon execute this :

steam://rungameid/954850

if I change the command line steam is launched then the Intercept Laucher like if I start the game througt steam ;)

So if any steam user can provide there game ID or confirm that it is the same adding an option to start throught Steam whould not be to complicated ;)

Finaly my CKAN does not want to update to the latest update I'm blocked at 1.33.2
should I just download the latest release and install it or should I look for a particular option or start CKAN with a parameter...

And by the way is there a way to have 2 shortcut for CKAN one for KSP and one for KSP2 instead of selecting the game at launch ?

[EDIT]
Went on the CKAN Settings and used the Check for update option (it seems the auto check at launch was broken somehow)
But this option worked ! Niven installed correctly and solved another Issue I had.. with a few mods...
I was searching the check for update in the "about" help section (like on browsers some other app I have seen)

Edited by BrettDah
Link to comment
Share on other sites

On 1/20/2024 at 1:39 AM, pbristow said:

A first-time user intro window explaining that CKAN is able to manage multiple KSP installations, and recommending that users *not* use it directly with their live Steam-based installation (i.e. copy that to separate location first and use that copy for modding), might be a good idea. 

I am currently using CKAN on my Steam install right now.  But, as KSP2 matures, I will stop doing that.  When playing KSP 1, I would copy the Steam install to another folder and play from there.  The big reason for this is to control when things actually update as KSP updates will break mods until they support the new version.  Made updating to new versions much easier with all my favorite mods.

Link to comment
Share on other sites

On 1/19/2024 at 10:06 AM, HebaruSan said:

I guess since you're saying this in front of a wider audience now, I can ask everyone else:

Does anyone else actually feel this way?

My initial reaction to the idea of a pop-up announcing some implementation details about how some third-party software (Steam) works was that it was something most users would neither care about nor understand, and they'd be annoyed that this irrelevance was being put in their face. And that how Steam works is not really CKAN's business or problem.

I will admit that when I first started using CKAN, I was surprised that Steam stopped counting how many hours I had in KSP. But, I also didn't care enough to launch through Steam instead. And it is convenient to be able to have multiple KSP installs in different locations.

Some people definitely do care to know how many hours they've played, but presumably they can just launch it through Steam? Assuming that still works properly.

I was going to say that it couldn't hurt to have a one-time popup to inform that hours wouldn't be tracked if launched through CKAN, but it occurs to me that it actually could hurt, since it could lead some people to conclude that they can't use CKAN at all if they want their hours tracked, which to my understanding is not the case.

Link to comment
Share on other sites

  • 4 weeks later...

I am currently trying to set up CKAN support for the optional Rescale mods included in JNSQ that scale JNSQ to stock size (JNSQ_Rescale_1x) or to real size (JNSQ_Rescale_10x). While testing the .netkan files for those, I encountered something strange that I think is a bug in the .netkan file of JNSQ itself.

My .netkan file for JNSQ_Rescale_1x is pretty straightforward (and mostly stolen from GrannusExpansionPack-Rescale.netkan which is already in NETKAN and does pretty much the same for GEP):

spec_version: v1.4
identifier: JNSQ-Rescale-1x
name: JNSQ Rescale 1x
abstract: JNSQ rescaled to approximately stock size
$kref: '#/ckan/netkan/https://raw.githubusercontent.com/Galileo88/JNSQ/master/CKAN/JNSQ.netkan'
tags:
  - config
  - planet-pack
depends:
  - name: ModuleManager
  - name: JNSQ
conflicts:
  - name: JNSQ-Rescale-10x
suggests: []
install:
  - find: JNSQ_Rescale/Rescale_1X/GameData/JNSQ_Rescale
    install_to: GameData

netkan.exe processes this fine, and builds a .ckan file that looks OK (at least to me):

{
    "spec_version": "v1.4",
    "identifier": "JNSQ-Rescale-1x",
    "name": "JNSQ Rescale 1x",
    "abstract": "JNSQ rescaled to approximately stock size",
    "author": "Team Galileo",
    "version": "0.10.2",
    "ksp_version_min": "1.12.0",
    "ksp_version_max": "1.12.99",
    "license": "CC-BY-NC-ND-3.0",
    "release_status": "stable",
    "resources": {
        "homepage": "https://forum.kerbalspaceprogram.com/index.php?/topic/184880-*",
        "repository": "https://github.com/Galileo88/JNSQ",
        "bugtracker": "https://github.com/Galileo88/JNSQ/issues",
        "metanetkan": "https://raw.githubusercontent.com/Galileo88/JNSQ/master/CKAN/JNSQ.netkan",
        "remote-avc": "https://raw.githubusercontent.com/Galileo88/JNSQ/master/GameData/JNSQ/Version/JNSQ.version"
    },
    "tags": [
        "config",
        "planet-pack"
    ],
    "provides": [
        "EnvironmentalVisualEnhancements-Config"
    ],
    "depends": [
        {
            "name": "ModuleManager"
        },
        {
            "name": "JNSQ"
        }
    ],
    "suggests": [],
    "conflicts": [
        {
            "name": "JNSQ-Rescale-10x"
        }
    ],
    "install": [
        {
            "find": "JNSQ_Rescale/Rescale_1X/GameData/JNSQ_Rescale",
            "install_to": "GameData"
        }
    ],
    "download": "https://github.com/Galileo88/JNSQ/releases/download/0.10.2/JNSQ.0.10.2.zip",
    "download_size": 2046110130,
    "download_hash": {
        "sha1": "174A112588399590A22E1AA4EC2FED04E2691871",
        "sha256": "7384D08FAB73F4952E37085090039340A31E3481BBB9EFC5E0AE5C737B5E5BE2"
    },
    "download_content_type": "application/zip",
    "install_size": 68624,
    "release_date": "2021-11-25T17:42:45Z",
    "x_generated_by": "netkan"
}

However, if I try to install this in CKAN, CKAN tells me that "JNSQ-Rescale-1x 0.10.2 conflicts with JNSQ 0.10.2", which is strange.

I tried to narrow this down, and I think the problem in in JNSQs .netkan file: JNSQ includes support for EVE, and declares this with a "provides" section:

    "provides": [
        "EnvironmentalVisualEnhancements-Config"
    ],

However, later on, it has the same name in its "conflicts" section:

"conflicts": [
        {
            "name": "EnvironmentalVisualEnhancements-Config"
        },
        // ... snip ...
]

So, as far is I can tell, JNSQ is basically telling CKAN that it is incompatible with itself. Which - strangely enough - does not prevent CKAN from installing it, but seems to prevent CKAN from installing a mod that depends on JNSQ.

I am willing to fix this (I think this should be as simple as changing the "conflicts" , part to conflict with "EnvironmentalVisualEnhancements-Config-stock") but as that part of the .ckan is provided by JNSQs online .netkan file, I am not quite sure how:

  • Do I open a ticket in JNSQ github and hope they fix it?
  • or is there a way to fix that kind of stuff directly via CKAN/NETKAN?

I hope someone here can help me with this...

PS: If and when this issue gets resolved, I'll create a NETKAN PR for including those optional mods, and most probably an additional one for the GrannusExpansionPack 10x rescale as well.  

 

Edited by RKunze
fixed typo
Link to comment
Share on other sites

34 minutes ago, RKunze said:

I am willing to fix this (I think this should be as simple as changing the "conflicts" , part to conflict with "EnvironmentalVisualEnhancements-Config-stock")

Just tested this by

Installing the fixed .ckan no longer shows a conflict from JNSQ with itself, and allows installation of the optional "Rescale" mods.

@HebaruSan should I send a NETKAN PR for this fix? I'll open up a ticket/PR for JNSQ as well, but I'm not sure how fast they will fix the .netkan in their github repo...

Link to comment
Share on other sites

Hi, @RKunze, it's cool that you're working on this!

$kref: '#/ckan/netkan/https://raw.githubusercontent.com/Galileo88/JNSQ/master/CKAN/JNSQ.netkan'

That line is wrong. It's causing all of JNSQ's custom definitions to be imported into your mod (except for the ones you're explicitly overriding), including the "provides" property you've quoted, which causes the conflict to be applied to your mod:

{
    "spec_version": "v1.4",
    "identifier": "JNSQ-Rescale-1x",
    ...
    "provides": [
        "EnvironmentalVisualEnhancements-Config"
    ],
    ...
}

You most likely want this instead, which will give you a clean slate without all the other JNSQ cruft:

$kref: '#/ckan/github/Galileo88/JNSQ/asset_match/JNSQ\\..*.zip'

(So no, you probably don't need to submit fix PRs to JNSQ or the main NetKAN repo.)

Edited by HebaruSan
Link to comment
Share on other sites

25 minutes ago, HebaruSan said:

That line is wrong. It's causing all of JNSQ's custom definitions to be imported into your mod (except for the ones you're explicitly overriding), including the "provides" property you've quoted, which causes the conflict to be applied to your mod:

Now that you mention it - should have probably seen that myself...

25 minutes ago, HebaruSan said:

You most likely want this instead, which will give you a clean slate without all the other JNSQ cruft:

$kref: '#/ckan/github/Galileo88/JNSQ/asset_match/JNSQ\\..*.zip'

Thanks, will try that!

26 minutes ago, HebaruSan said:

So no, you probably don't need to submit fix PRs to JNSQ or the main NetKAN repo.

OK. Might do it on the main JNSQ repo anyway later on, because declaring incompatibility with their own "provides" is obviously broken and from the context it's pretty clear that the conflict should be with the EVE config for stock instead. But if I get the optional mods to work without it, there's no need to hack around it in NetKAN itself...

Link to comment
Share on other sites

46 minutes ago, HebaruSan said:

No, it's fine, this is handled by CKAN and common practice for making providing mods mutually exclusive with one another.

Ah, I see - thanks for explaining.

1 hour ago, HebaruSan said:

You most likely want this instead, which will give you a clean slate without all the other JNSQ cruft:

$kref: '#/ckan/github/Galileo88/JNSQ/asset_match/JNSQ\\..*.zip'

Just tried it out, and the "clean slate" now forces me to explicitly enter all the other necessary fields (author, license, download and so on). And since all those optional mods are actually part of JNSQ and included in the JNSQ zip, they share all of these fields with JNSQ and I'd need to duplicate all of it.

So, I think I'll go back to the "crufty" version for $kref to automatically fill in the whole JNSQ info and just manually overwrite the parts that not applicable to the optional mods (should mainly boil down to including an empty "provides")...

Edit: Seems to work fine with editing just the relations. Will open a NetKAN PR for the optional JNSQ rescale mods now.

Edited by RKunze
Link to comment
Share on other sites

  • 2 weeks later...
  • 4 weeks later...

Can someone help me understand why CKAN thinks I have upgrades available for Cryo Tanks and Near Future Solar? See circled mods in attached image.

My install dates are newer than the release dates, and the installed version number equals latest version. When I checked CKAN for upgrades around one month ago I don't think those mods were listed. I didn't notice this being discussed in the Near Future thread so I'm checking here first.

I'm curious whether I have an installation issue or if this is just an artifact. Perhaps someone did something minor like fixing typos in metadata, which is then triggering a reinstall of the mods.

gGXxfbQ.png

Link to comment
Share on other sites

2 minutes ago, DeadJohn said:

I'm curious whether I have an installation issue or if this is just an artifact. Perhaps someone did something minor like fixing typos in metadata, which is then triggering a reinstall of the mods.

This is a pretty close guess. CryoTanks was missing a dependency on B9PartSwitch, so we had to add that. And both it and NearFutureSolar had a "Core" module split off with just the plugin, but this was done in a way that could break other mods, so we added a dependency to prevent that as well. Adding dependencies triggers a reinstall.

Link to comment
Share on other sites

Hi there! I have a question regarding my planet mod (Kcalbeloh System) on CKAN. Previously all files were packed in one zip file, but now I want to separate the configs and textures into two different zip files. The texture zip has two options and only one of them needs to be installed, just like the pre-release. When I post updates in the future, sometimes only the config files are updated. Could you tell me whether it's possible to be handled by CKAN and what I need to do to make these changes? Thank you!

Edited by Jason Kerman
Link to comment
Share on other sites

Hi,

I'm trying to diagnose an installation problem on a Fellow Kerbonaut rig, and asked for a CKAN export from their rig.

So far, so good. But then I realized that the CKAN Export doesn't mention the exact release numbers from the installed Add'ons, only the names. Worst, while installing the add'ons, CKAN asked me about alternatives to be installed, and the user don't remember what they had chosen some time ago when installed them.

There's a way, option or whatever, in which CKAN would export exactly what the user had installed (including versions and specific alternatives), and then import it on my test bed and getting exactly the same installment as the user have, disregarding compatibilities or what else - I need an exact replica of the user's installment, and asking them for a übberzip with the whole GameData is not only cumbersome, but potentially troublesome on legal grounds...

Edited by Lisias
tyops!
Link to comment
Share on other sites

16 hours ago, Jason Kerman said:

Hi there! I have a question regarding my planet mod (Kcalbeloh System) on CKAN. Previously all files were packed in one zip file, but now I want to separate the configs and textures into two different zip files. The texture zip has two options and only one of them needs to be installed, just like the pre-release. When I post updates in the future, sometimes only the config files are updated. Could you tell me whether it's possible to be handled by CKAN and what I need to do to make these changes? Thank you!

The exact details depends on the details.  CKAN is pretty flexible so if you lay out exactly what the different packages are and how they should (or shouldn't) be installed together we can help figure that out.  CKAN can handle multiple packages in a single zip file, but I don't think I know of any examples of one module spanning multiple zip files if that's what you're thinking of.  I would suggest considering how often you expect things to change and the download sizes when deciding how to split stuff up between zip files.  For example if you have two different texture options you might want to put them in different zip files so that only one of them needs to be downloaded.  And I would suggest avoiding putting files that change often inside a large zip file with files that don’t change often (e.g. textures).

Edited by JonnyOThan
Link to comment
Share on other sites

On 4/7/2024 at 1:14 PM, Krazy1 said:

CKAN is indicating TweakScale has an update available but the installed and new versions are the same.  HAyUID1.png

On 4/7/2024 at 7:27 PM, JonnyOThan said:

Interesting..it did have a metadata update today, so that might be why.

Yes. When an installed mod's metadata changes, the Update box becomes available, and checking it adds a re-install action to the changeset to apply the new metadata.

Edited by HebaruSan
Link to comment
Share on other sites

  • 1 month later...

Is there a way to add a GitHub token to CKAN? I notice a place for authorization tokens in the settings, but I'm not certain what to provide for the "Host".

Also, does adding a GitHub token here do anything?

Link to comment
Share on other sites

Posted (edited)
1 hour ago, MinchinWeb said:

Is there a way to add a GitHub token to CKAN? I notice a place for authorization tokens in the settings,

Yes; that's it.

1 hour ago, MinchinWeb said:

but I'm not certain what to provide for the "Host".

It would be:    api.github.com

1 hour ago, MinchinWeb said:

Also, does adding a GitHub token here do anything?

No*. We were planning to use it to address a problem with GitHub's download throttling, but we ended up solving that problem a different way.

 

* Technically it would be used anytime CKAN accesses a URL from api.github.com, but since we never converted the download URLs to that format**, the only time such a URL is used is when it checks whether there's a new CKAN release available, and you're never going to request that enough times to hit the throttling limit.

** On closer inspection, a small number of old mods do use api.github.com URLs, so if you decided to install one of these, your token would be used to download it:

Spoiler

IXSWarpship-Blueshift-1-v.1.0.6
IXSWarpship-Blueshift-1-v.1.0.7.1
kOS-AddOns-Ferram-v1.2.1
kOS-AddOns-Ferram-v1.2
kOS-AddOns-Ferram-v1.3
EmbeddedKOSKirkuits-v1.0.0
MK2KSPIIntegration-1-8.9.1.T
LudicrousPropulsionSystems-v.0.2.4.3
LudicrousPropulsionSystems-v.0.2.5.2
LudicrousPropulsionSystems-1-v0.2.6
KRnD-1.10
KRnD-1.12
KRnD-1.8
KRnD-1.9
KRnD-1.14
KRnD-1.13
KRnD-1.15
KRnD-1.11
TestLite-0.2.2
TestLite-0.3.4
TestLite-0.3.1
TestLite-0.3.5
TestLite-0.3.2
TestLite-0.3.0
KSTS-1.4
KSTS-1.8
KSTS-1.3
KSTS-1.0
KSTS-1.7
KSTS-1.6
KSTS-1.9
KSTS-1.10
KSTS-1.2
KSTS-1.1
KSTS-1.11
KSTS-1.12
KSTS-1.5
CustomAsteroids-Pops-OPM-Reconfig-v1.2.0
CustomAsteroids-Pops-OPM-Reconfig-v1.1.0
CustomAsteroids-Pops-OPM-Outer-v1.0.0
CustomAsteroids-Pops-OPM-Outer-v1.1.0
CustomAsteroids-Pops-OPM-Outer-v1.2.0
ExtendedAntennaProgression-v0.1.1
ExtendedAntennaProgression-v0.1.2
CLLS-1.1
CLLS-1.2
CLLS-1.3
CLLS-1.0

 

Edited by HebaruSan
Link to comment
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.

×
×
  • Create New...