Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. Dismiss Notice

Question "caFile" must be an absolute file path

Discussion in 'Package Manager' started by abovenyquist, Jun 15, 2023.

  1. abovenyquist

    abovenyquist

    Joined:
    Feb 13, 2014
    Posts:
    14
    Upon trying to start Unity on a Mac running Monterey, there's this error message:

    Unity Package Manager Error
    Failed to update project manifest: Upm configuration is invalid: "caFile" must be an absolute file path.

    My understanding is that this caFile relates to proxies, but no proxies are in use (and the firewall is off). My understanding is that caFile, if it is assigned, is assigned in file called upmconfig.toml that could be in a couple of locations, but no upmconfig.toml exists, so I can't really go look at see what it thinks caFile is.

    Any advice?
     
  2. nashparsons951

    nashparsons951

    Joined:
    Jun 15, 2023
    Posts:
    1
    You may need to configure a custom certificate authority in a file called upmconfig.toml. For Mac, it should be in ~/.upmconfig.toml (eg /Users/myusername/.upmconfig.toml). If the file doesn't exist, you can create it and add a certificate for a custom certificate authority in PEM format.

     
    Last edited: Jun 16, 2023
  3. maximeb_unity

    maximeb_unity

    Unity Technologies

    Joined:
    Mar 20, 2018
    Posts:
    481
    Hi @abovenyquist,

    If the Package Manager is complaining about an invalid "caFile", then it means that the global configuration file (whose path should be
    /etc/upmconfig.toml
    on Mac) contains an invalid value for it. If you don't need to configure custom certificate authorities, make sure to remove the "caFile" configuration from that file.

    This is not entirely accurate. To clarify, a custom CA file is useful not just for proxies, but to access a registry over HTTPS if that registry is configured with a certificate that's been issued by a custom certificate authority. That is, if the Unity Package Manager needs to connect to a server over HTTPS, and the server it is connecting to does not use a certificate issued by a well-known certificate authority, then UPM will refuse to connect to it unless you provide it with a caFile listing additional certificates that can be trusted (such as the public certificate of your custom certificate authority, which can be a self-signed certificate).