Jump to content

The Comprehensive Kerbal Archive Network (CKAN) Package Manager; v1.18.0 [19 June 2016]


pjf

Recommended Posts

Okay, it turns out my assumption was wrong. The KSP Version in the netkan is ported straight across to the CKAN meta data.

What tripped me up in my last post is that someone else updated AGX NetKAN from KSP Version 0.25 to Version 0.90

Are there procedures for updating the meta data? Because I've been using the KSP Version 'any' tag, there are some wrong tags on my mods.

TWR1 for instance, verison 1.15 is ksp 0.25, version 1.16 is ksp 0.90, but the meta data for both have a ksp version of 'any'

D.

Hey Diazo, just a normal PR will do, or I can edit them for you if you tell me what files you need me to fix :)

We make a point to try not to force authors to change their packaging: however, if I may suggest you to add a .version file in your releases, then ckan can pick up version information from that. It's most useful for github releases, like yours :)

Link to comment
Share on other sites

Alright, so looking at how FAR did it, if I was going to do this for AGExt, I would need to add a file to my release .zip at GameData\Diazo\AGExt\AGExt.version that matched the AVC spec, and then remove the KSP Version field from the netkan file?

D.

Link to comment
Share on other sites

Sorry if this has been asked before, but I couldn't find an answer. I have a couple of mods that I installed manually since they did not show up in the ckan repository list, however they now show with "AD" marked in the "installed" column. Do i have to uninstall these mods and reinstall via ckan to get access to mod updates via ckan?

Link to comment
Share on other sites

Tried the IRC channel, but no-one seems on ATM. I have a few questions as I'd like to sort out my mods CKAN integration:

  • If I want to update any of the netkan files that have been submitted by others I just submit a pull request against the netkan project yes?
  • One of the Mods - Alternate Resource Panel seems to have not picked up the latest version from KerbalStuff. So I log an issue for that on which project?
  • I was going to add AVC version files to my mods zip file as well as I believe it adds to the metadata you can use. Which parts of the version file are useful for CKAN?
  • And wanted to confirm that there isnt any point putting netkan files in the mod zips, its better to just update the netkan ones?

Thanks

Link to comment
Share on other sites

Can you install an incompatible mod? I know an officially incompatible mod that works well in KSP 0.90, but I can't install it even with "Incompatible" listed.

Maybe you should add an option to override that?

Edited by GigaG
Link to comment
Share on other sites

I'm awake, and so it's time for another round of me trying to answer as many things as I can.

Specifically, my AGX mod must install version 1.24c to run on KSP 0.25 and the latest version (1.25d currently) to run on KSP 0.90. Is CKAN capable of handling this? If so, how? If not, should it?

This has mostly been covered, but I want to mention that if your zipfile contains a valid KSP-AVC file, we can inspect that to determine the target KSP version. This is much nicer than updating the netkan file itself, as it means that we're not relying upon a human flipping the version number on a new release. If you pop "$vref" : "#/ckan/ksp-avc" as a field in the netkan file, our bot will automatically go searching for a .version file for version information.

Can you install an incompatible mod?

Nope. The CKAN goal can be summarised as "consistency and correctness", and if something is marked as incompatible then it would certainly not be correct to install it. If the mod is compatible, but the metadata just hasn't been updated, then we'd encourage you send us a pull-request with the update.

Having said that, you could download the .ckan file for the mod itself, edit the version information inside it, and then install it from the command line with `ckan.exe -c YourHackedFile.ckan`. If your install breaks, then you get to keep both pieces.

If I want to update any of the netkan files that have been submitted by others I just submit a pull request against the netkan project yes?

Yes please.

One of the Mods - Alternate Resource Panel seems to have not picked up the latest version from KerbalStuff. So I log an issue for that on which project?

Ah! Our gotcha here is that the path inside the zip file changes each release. That's not something we support yet, but there are plans. In this case, a PR against the file in the NetKAN directory would be grand. Although traversing version-dependent zipfiles is actually implemented internally in ckan.dll, it's just not hooked into the metadata spec yet. If my clients don't find any bugs in the system we've been testing today, then I'll try and take a stab at coding this in.

I was going to add AVC version files to my mods zip file as well as I believe it adds to the metadata you can use. Which parts of the version file are useful for CKAN?

You're awesome. Right now we only use the KSP version information in the AVC files; although we'd happily use more given a PR that implements it.

And wanted to confirm that there isnt any point putting netkan files in the mod zips, its better to just update the netkan ones?

Technically you *can* put a fully inflated .ckan file inside the zip files themselves. This was part of the original plan, but it was found to be very error-prone, and having to release a new version of a mod just to fix a spelling mistake or other minor issue is a right pain. So yes, updating the netkan files is recommended, and our bot automatically reindexes when it spots a file has been updated (because nlight is amazing).

I have a couple of mods that I installed manually since they did not show up in the ckan repository list, however they now show with "AD" marked in the "installed" column. Do i have to uninstall these mods and reinstall via ckan to get access to mod updates via ckan?

You do; except for dependency and conflict resolution, we don't touch pre-installed mods at all. There have been numerous discussions on ways that the CKAN client might take over a pre-installed mod, but they're all fraught with peril of one sort or another, and none of them are trivial.

Alright, so looking at how FAR did it, if I was going to do this for AGExt, I would need to add a file to my release .zip at GameData\Diazo\AGExt\AGExt.version that matched the AVC spec, and then remove the KSP Version field from the netkan file?

That sounds perfect. Thank you so much.

~ Paul

Link to comment
Share on other sites

Two questions:

1) I have added the same KSP location several times - can I somebow remove the duplicates?

2) CKAN can be used to modify and maintain the mods across several different copies of Kerbal, right? I could copy the KSP folder off somewhere and use one copy for stock a one for, say, RSS, by adding the new KSP location. That's great if it is true!

Link to comment
Share on other sites

Hey, I managed to 'solve' the issue. As I believed it was TIMED based, I figured if I redo it over and over again eventually all the files will be cached and it'll carry on straight to the installing process, which it did! After 4 or so tries I had finally installed all the required mods. :) Despite the fact that I solved it. IT is just a temporary solution and should be looked into regardless.

Link to comment
Share on other sites

Two questions:

1) I have added the same KSP location several times - can I somebow remove the duplicates?

2) CKAN can be used to modify and maintain the mods across several different copies of Kerbal, right? I could copy the KSP folder off somewhere and use one copy for stock a one for, say, RSS, by adding the new KSP location. That's great if it is true!

Hi!

1) You can from the command line: use

ckan ksp forget <name>

where <name> is the name of the install you want ckan to forget about. You can find out the names using "ckan ksp list".

2) Yes, it totally can :) In fact, I routinely use it to manage both my playing install and my dev install.

Hey, I managed to 'solve' the issue. As I believed it was TIMED based, I figured if I redo it over and over again eventually all the files will be cached and it'll carry on straight to the installing process, which it did! After 4 or so tries I had finally installed all the required mods. :) Despite the fact that I solved it. IT is just a temporary solution and should be looked into regardless.

Glad to hear that :) Apparently, the awesome pjf has already got it covered, we'll solve this asap :)

Link to comment
Share on other sites

Guys, I kinda screwed up and added a duplicate mod the other day. I tried deleting the duplicate and editing the original to point to KerbalStuff instead of GitHub (because of automatic version updating), but my branch says: "This branch has failed checks, but can be merged. Only those with write access to this repository can merge pull requests."

I'm... fairly dumb when it comes to GitHub. What happens now?

Link to comment
Share on other sites

Guys, I kinda screwed up and added a duplicate mod the other day. I tried deleting the duplicate and editing the original to point to KerbalStuff instead of GitHub (because of automatic version updating), but my branch says: "This branch has failed checks, but can be merged. Only those with write access to this repository can merge pull requests."

I'm... fairly dumb when it comes to GitHub. What happens now?

Hey monstah, don't worry, git makes it so we can revert any mistake with a couple of clicks :)

Could you link the original PR?

Link to comment
Share on other sites

Every time I start CKAN I have to set and select the game folder again. Is that supposed to happen?

No. However v1.3.8 (aka Stanford Torus) is being compiled by our magical team of space elves right now, and includes fixes to how the GUI selects which instance to use. Can you give it a whirl and see if that helps? (It may take a few minutes before the space elves attach the relevant .exe files, they like to perform extensive pre-flight checks first.)

~ Paul

Link to comment
Share on other sites

v1.5.0 aka O'Neill cylinder has been released. The new client can read an extended spec which allows the find keyword in the install metadata. This means we can now do things like this:


"install" : [
{
"find" : "KerbalAlarmClock",
"install_to" : "GameData/TriggerTech"
}
]

For everyone who's found a mod that installed to the wrong location, or found the zipfile had a different top-level directory for each release, these problems are now solved. For those of you crafting metadata, you'll need to set your spec_version to v1.4 to enable this feature.

Note that older clients will simply ignore mods which use the new metadata format. This means if you want to make sure you're able to get the most complete and up-to-date list of mods, you'll want to be grabbing the v1.5.0 upgrade now. :)

All the best,

~ Paul

Link to comment
Share on other sites

Problem updating amodule with versoin1.3.70-0g2132b46:

See the end of this message for details on invoking

just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************

CKAN.FileExistsKraken: Trying to write D:/KerbalInstalls/Beta Than Ever 0.90/ckan modded/KSP_win/GameData/Nereid/FinalFrontier/Ribbons/XM2014A.png but it already exists.

at CKAN.ModuleInstaller.CopyZipEntry(ZipFile zipfile, ZipEntry entry, String fullPath, Boolean makeDirs)

at CKAN.ModuleInstaller.InstallModule(CkanModule module, String zip_filename)

at CKAN.ModuleInstaller.Install(CkanModule module, String filename)

at CKAN.ModuleInstaller.AddRemove(IEnumerable`1 add, IEnumerable`1 remove)

at CKAN.ModuleInstaller.Upgrade(IEnumerable`1 modules, NetAsyncDownloader netAsyncDownloader)

at CKAN.ModuleInstaller.Upgrade(IEnumerable`1 identifiers, NetAsyncDownloader netAsyncDownloader)

at CKAN.Main.InstallMods(Object sender, DoWorkEventArgs e)

at System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)

************** Loaded Assemblies **************

mscorlib

Assembly Version: 4.0.0.0

Win32 Version: 4.0.30319.18444 built by: FX451RTMGDR

CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll

----------------------------------------

ckan

Assembly Version: 0.0.0.0

Win32 Version: 0.0.0.0

CodeBase: file:///D:/KerbalInstalls/Beta%20Than%20Ever%200.90/ckan.exe

----------------------------------------

System.Windows.Forms

Assembly Version: 4.0.0.0

Win32 Version: 4.0.30319.18408 built by: FX451RTMGREL

CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll

----------------------------------------

System.Drawing

Assembly Version: 4.0.0.0

Win32 Version: 4.0.30319.18408 built by: FX451RTMGREL

CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll

----------------------------------------

System

Assembly Version: 4.0.0.0

Win32 Version: 4.0.30319.34238 built by: FX452RTMGDR

CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll

----------------------------------------

System.Configuration

Assembly Version: 4.0.0.0

Win32 Version: 4.0.30319.18408 built by: FX451RTMGREL

CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll

----------------------------------------

System.Xml

Assembly Version: 4.0.0.0

Win32 Version: 4.0.30319.34234 built by: FX452RTMGDR

CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll

----------------------------------------

System.Core

Assembly Version: 4.0.0.0

Win32 Version: 4.0.30319.18408 built by: FX451RTMGREL

CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll

----------------------------------------

Microsoft.GeneratedCode

Assembly Version: 1.0.0.0

Win32 Version: 4.0.30319.34234 built by: FX452RTMGDR

CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll

----------------------------------------

System.Transactions

Assembly Version: 4.0.0.0

Win32 Version: 4.0.30319.18408 built by: FX451RTMGREL

CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_64/System.Transactions/v4.0_4.0.0.0__b77a5c561934e089/System.Transactions.dll

----------------------------------------

System.Numerics

Assembly Version: 4.0.0.0

Win32 Version: 4.0.30319.18408 built by: FX451RTMGREL

CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Numerics/v4.0_4.0.0.0__b77a5c561934e089/System.Numerics.dll

----------------------------------------

System.ComponentModel.DataAnnotations

Assembly Version: 4.0.0.0

Win32 Version: 4.0.30319.18408

CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.ComponentModel.DataAnnotations/v4.0_4.0.0.0__31bf3856ad364e35/System.ComponentModel.DataAnnotations.dll

----------------------------------------

System.Runtime.Serialization

Assembly Version: 4.0.0.0

Win32 Version: 4.0.30319.34234 built by: FX452RTMGDR

CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Runtime.Serialization/v4.0_4.0.0.0__b77a5c561934e089/System.Runtime.Serialization.dll

----------------------------------------

System.Xml.Linq

Assembly Version: 4.0.0.0

Win32 Version: 4.0.30319.18408 built by: FX451RTMGREL

CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml.Linq/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.Linq.dll

----------------------------------------

System.Data

Assembly Version: 4.0.0.0

Win32 Version: 4.0.30319.18408 built by: FX451RTMGREL

CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_64/System.Data/v4.0_4.0.0.0__b77a5c561934e089/System.Data.dll

----------------------------------------

Accessibility

Assembly Version: 4.0.0.0

Win32 Version: 4.0.30319.18408 built by: FX451RTMGREL

CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/Accessibility/v4.0_4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll

----------------------------------------

System.EnterpriseServices

Assembly Version: 4.0.0.0

Win32 Version: 4.0.30319.18408 built by: FX451RTMGREL

CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_64/System.EnterpriseServices/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.EnterpriseServices.dll

----------------------------------------

************** JIT Debugging **************

To enable just-in-time (JIT) debugging, the .config file for this

application or computer (machine.config) must have the

jitDebugging value set in the system.windows.forms section.

The application must also be compiled with debugging

enabled.

For example:

<configuration>

<system.windows.forms jitDebugging="true" />

</configuration>

When JIT debugging is enabled, any unhandled exception

will be sent to the JIT debugger registered on the computer

rather than be handled by this dialog box.

Link to comment
Share on other sites

I'm unable to use the new 1.5.0 ckan.exe. Running it just pops up a dialog saying "This application could not be started. Do you want to view information about this issue?" Clicking yes takes me to a Microsoft knowledgebase article: http://support.microsoft.com/kb/2715633

The app is not configured in a way that makes it possible to determine the appropriate version of the .NET Framework runtime. The corresponding shim code is SHIM_NOVERSION_FOUND.

Resolution

You can't fix the configuration problem yourself. Contact the app vendor to resolve the issue.

Edit: Hmm, weird, something must've gone wrong in my download. Downloading it again worked.

Edited by Wisq
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...