KSP-CKAN / CKAN

The Comprehensive Kerbal Archive Network

Home Page:https://forum.kerbalspaceprogram.com/index.php?/topic/197082-*

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[Bug]: `-c` considers the pack itself as a module to install

philpax opened this issue · comments

Is there an existing issue for this?

  • I have searched the existing issues

Operating System

macOS Sonoma, Apple Silicon

CKAN Version

1.34.4 / Niven

Games

KSP 1

Game Version

KSP 1.12.5

Did you make any manual changes to your game folder (i.e., not via CKAN)?

No response

Describe the bug

I wanted to install the Community Lifeboat Project on my vanilla KSP install on macOS. I installed CKAN from the releases and noted that ConsoleUI had no option for installing ckan files (#4084, which has been fixed in the development branch).

I downloaded the mod list from GitHub and used the command mentioned in that issue to install it (manually navigating to /Applications/CKAN.app/Contents/MacOS to use ckan.exe):

mono ckan.exe install -c ~/Downloads/Community\ Lifeboat\ Modpack2.ckan

but it appears that the modpack itself is being interpreted as a module, resulting in installation failing immediately:

Module installed-Auto-KSP 2024.05.15.01.03.25 required but it is not listed in the index, or not available for your version of KSP
If you're lucky, you can do a `ckan update` and try again.
Try `ckan install --no-recommends` to skip installation of recommended modules.
Or `ckan install --allow-incompatible` to ignore module compatibility.

This name is the identifier of the modlist:

{
    "spec_version": "v1.18",
    "identifier": "installed-Auto-KSP",
    "name": "installed-Auto KSP",
    "abstract": "A list of modules installed on the Auto KSP KSP instance",
    "author": "Myst",
    "version": "2024.05.15.01.03.25",
    "ksp_version_min": "1.12.5",
    "ksp_version_max": "1.12.5",
    "license": "unknown",
    "...": "..."
}

-c is reading the file, as the behaviour is different without the switch:

# mono ckan.exe install ~/Downloads/Community\ Lifeboat\ Modpack2.ckan   
Module [home]/Downloads/Community Lifeboat Modpack2.ckan required but it is not listed in the index, or not available for your version of KSP

This happens with both versions of the modpack .ckan in that thread, and with both local and remote installations (i.e. mono ckan.exe install -c https://raw.githubusercontent.com/mystwalkerKSP/Kerbal-Space-Program-Community-Lifeboat-Project/main/Community%20Lifeboat%20Modpack2.ckan also fails.)

I'm unsure if this is specific to macOS / Rosetta 2; please feel free to narrow the issue if it is. Just to confirm, my game version appears to be correct:

# mono ckan.exe compat list
Version      Actual
-----------  ------
1.12.5.3190  True  

Steps to reproduce

  • Install the latest version of KSP from Steam on macOS on an Apple Silicon with Rosetta 2.
  • Start the game at least once and confirm it starts up.
  • Install CKAN 1.34.4 into the Applications directory.
  • cd /Applications/CKAN.app/Contents/MacOS
  • mono ckan.exe install -c https://raw.githubusercontent.com/mystwalkerKSP/Kerbal-Space-Program-Community-Lifeboat-Project/main/Community%20Lifeboat%20Modpack2.ckan or mono ckan.exe install -c https://share.snowlab.tech/-ruvvmPQwgn (different exports of the ~same modlist):
    • Module installed-Auto-KSP 2024.05.15.01.03.25 required but it is not listed in the index, or not available for your version of KSP
    • Module lifeboat-modpack 2024.05.07.03.05.44 required but it is not listed in the index, or not available for your version of KSP

Relevant log output

No response

# mono ckan.exe install $(jq -r '.depends | map(.name) | join(" ")' ~/Downloads/Community\ Lifeboat\ Modpack2.ckan) (i.e. direct CLI installation by injecting the deps into the commandline) fails on AT-Utils, as reported in #4084. Adding --allow-incompatible fixes this.

Is it possible that the failure with AT-Utils is being propagated upwards and being reported as a failure of the modpack?