# Pack\_list certificate verify failed

**URL:** <https://swi-prolog.discourse.group/t/pack-list-certificate-verify-failed/3401>\
**Category:** Pack\
**Created:** [December 21, 2020, 1:44am UTC](https://swi-prolog.discourse.group/t/pack-list-certificate-verify-failed/3401 "2020-12-21T01:44:33Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![careyphillips92](https://avatars.discourse-cdn.com/v4/letter/c/71c47a/32.png) [@careyphillips92](https://swi-prolog.discourse.group/u/careyphillips92)\
**Post date:** [December 21, 2020, 1:44am UTC](https://swi-prolog.discourse.group/t/pack-list-certificate-verify-failed/3401/1 "2020-12-21T01:44:33Z")

</div>

Trying SWIPL for the first time on a Pixelbook. I’ve got most things working, but pack installation isn’t co-operating. I can’t tell exactly where in the pipeline things are going wrong. At any rate, this is my output:

```
Welcome to SWI-Prolog (Multi-threaded, 64 bits, Version 7.2.3)
Copyright (c) 1990-2015 University of Amsterdam, VU Amsterdam
SWI-Prolog comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to redistribute it under certain conditions.
Please visit http://www.swi-prolog.org for details.

For help, use ?- help(Topic). or ?- apropos(Word).

?- pack_list( X ).
% Contacting server at http://www.swi-prolog.org/pack/query ...
ERROR: SSL(14090086) ssl3_get_server_certificate: certificate verify failed

```

I’ve tried the usual gubbins at the Linux prompt updating with apt-get, calling update-ca-certificates etc. No joy. I haven’t seen similar errors outside of this context (i.e. getting hold of packs for SWIPL).

I did manage to download the pack for which I was looking manually (function\_expansion) but I can’t work out how to use pack\_install/1 to work with it. What would the format of that call look like? (I was thinking it might want a string specifing the local dir but it wants an atom specifically.)

---

<div class="post-metadata">

**Author:** ![swi](https://avatars.discourse-cdn.com/v4/letter/s/51bf81/32.png) [@swi](https://swi-prolog.discourse.group/u/swi)\
**Post date:** [December 21, 2020, 2:49am UTC](https://swi-prolog.discourse.group/t/pack-list-certificate-verify-failed/3401/2 "2020-12-21T02:49:25Z")

</div>

You are using an old version, see:

> [@Package install errors - How to resolve after SWI-Prolog changed to using HTTPS](https://swi-prolog.discourse.group/t/package-install-errors-how-to-resolve-after-swi-prolog-changed-to-using-https/895):
>
> Posting this info here so that it can be indexed by search engines and more easily found. Recently SWI-Prolog switched to using [HTTPS](https://swi-prolog.discourse.group/t/www-swi-prolog-org-goes-https/811) which broke some things for older versions of SWI-Prolog (pre 8.0.3), namely the ability to install packages. Here are examples of the errors: Welcome to SWI-Prolog (threaded, 64 bits, version 8.0.0) SWI-Prolog comes with ABSOLUTELY NO WARRANTY. This is free software. Please run ?- license. for legal details. For online help and background, visit http://www.sw…

---

<div class="post-metadata">

**Author:** ![careyphillips92](https://avatars.discourse-cdn.com/v4/letter/c/71c47a/32.png) [@careyphillips92](https://swi-prolog.discourse.group/u/careyphillips92)\
**Post date:** [December 21, 2020, 6:46pm UTC](https://swi-prolog.discourse.group/t/pack-list-certificate-verify-failed/3401/3 "2020-12-21T18:46:54Z")

</div>

Hmm, so the stable version repository for Linux is essentially a now-broken out-of-date version?

EDIT: Hmm, maybe my Linux repositories are screwy.

---

<div class="post-metadata">

**Author:** ![peter.ludemann](https://yyz2.discourse-cdn.com/free1/user_avatar/swi-prolog.discourse.group/peter.ludemann/32/48_2.png) [@peter.ludemann](https://swi-prolog.discourse.group/u/peter.ludemann)\
**Post date:** [December 21, 2020, 7:38pm UTC](https://swi-prolog.discourse.group/t/pack-list-certificate-verify-failed/3401/4 "2020-12-21T19:38:56Z")

</div>

> [@careyphillips92](#):
>
> the stable version repository for Linux is essentially a now-broken out-of-date version?

Quite possibly.

I would suggest using the “development” version – in my experience, it’s very stable, and it has new features that I enjoy. It’s very easy to set up (assuming you’re using `apt`):  
[https://www.swi-prolog.org/build/PPA.html](https://www.swi-prolog.org/build/PPA.html)

```prolog
sudo apt install software-properties-common
sudo apt-add-repository ppa:swi-prolog/devel
sudo apt update
sudo apt install swi-prolog

```

and from time to time:

```prolog
sudo apt update
sudo apt upgrade

```

---

<div class="post-metadata">

**Author:** ![careyphillips92](https://avatars.discourse-cdn.com/v4/letter/c/71c47a/32.png) [@careyphillips92](https://swi-prolog.discourse.group/u/careyphillips92)\
**Post date:** [December 22, 2020, 1:08am UTC](https://swi-prolog.discourse.group/t/pack-list-certificate-verify-failed/3401/5 "2020-12-22T01:08:46Z")

</div>

I’m getting the feeling that Crostini doesn’t care about the presence (or indeed absence) of ppa packages when  
`sudo apt install swi-prolog`  
…is called. It goes ahead whether ppa repositories have been added or not, and seems to want to install 7.2.3 in all cases.

EDIT: I ended up just building from source.

---

<div class="post-metadata">

**Author:** ![jan](https://yyz2.discourse-cdn.com/free1/user_avatar/swi-prolog.discourse.group/jan/32/4_2.png) [@jan](https://swi-prolog.discourse.group/u/jan)\
**Post date:** [December 22, 2020, 8:50am UTC](https://swi-prolog.discourse.group/t/pack-list-certificate-verify-failed/3401/6 "2020-12-22T08:50:18Z")

</div>

Many Linux distros lack behind considerably. There is little that can be done about this. You can send a note to the distro manager. Others are pretty up to date (e.g., gentoo is at 8.3.11).

Alternatives:

- Build from source. If you get the prerequisites from [debian](https://eu.swi-prolog.org/build/Debian.txt) or [Fedora](https://eu.swi-prolog.org/build/Redhat.txt) (works typically fine on related distros), it is typically really easy. Use the git clone rather than the tar and you can upgrade and move forth and back in history in just a few seconds.
- On Ubuntu, use the [PPA](https://eu.swi-prolog.org/build/PPA.txt)
- Use a [snap image](https://eu.swi-prolog.org/build/snap.md)
