Closed antdude closed 9 months ago
This is not a problem with Sopel, the problem is that your git
command is invalid. The command you want is:
git clone git@github.com:sopel-irc/sopel.git
Hmm, actually, this issue should stay open for now since the docs do list the incorrect command.
Woah, fast answer and thanks. Please update the outdated command in https://sopel.chat/usage/installing/ web page's instructions for "Latest source". However, I ran into another issue on both PCs and ISPs:
$ git clone git@github.com:sopel-irc/sopel.git Cloning into 'sopel'... Warning: Permanently added the ECDSA host key for IP address '192.30.255.113' to the list of known hosts. git@github.com: Permission denied (publickey). fatal: Could not read from remote repository.
Please make sure you have the correct access rights and the repository exists.
However, I ran into another issue on both PCs and ISPs:
$ git clone git@github.com:sopel-irc/sopel.git Cloning into 'sopel'... Warning: Permanently added the ECDSA host key for IP address '192.30.255.113' to the list of known hosts. git@github.com: Permission denied (publickey). fatal: Could not read from remote repository.
Please make sure you have the correct access rights and the repository exists.
Looks like something is wrong with your system's SSH configuration, perhaps you have github.com
listed in your ~/.ssh/config
. However, this issue tracker is for discussing issues with Sopel itself.
Two things on this:
/docs/
. Only that subfolder is currently built from sources in the main Sopel repository.
Rather than an issue, someone could easily just file a PR directly against the website, updating the installation instructions to match the project README file.*: "To use these URLs, you must generate an SSH keypair on your computer and add the public key to your account on GitHub.com." — https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-ssh-urls
Too much this-repo-specific stuff for my taste to transfer the issue. I opened a new one with the original problem statement: sopel-irc/sopel.chat#43
Since the installation instructions in this repo are correct, I'll close this.
Instructions on the site have been updated: https://sopel.chat/usage/installing/#latest-source
@antdude pointed out an error in the README docs, where what should be a source zip for master
points to the latest release instead.
Thanks again, dgw. In the past, I always just used basic git clone method without any fancy logins and setups. Now, it got really complicated and strict. "git clone https://github.com/sopel-irc/sopel.git" was the perfect answer. No errors in my Debian. I just need to get my friend to fix his Fedora's access since I'm just a regular SSH2 user (no root/sudo) due to: $ git clone https://github.com/sopel-irc/sopel.git Cloning into 'sopel'... fatal: unable to access 'https://github.com/sopel-irc/sopel.git/': error setting certificate file: /etc/pki/tls/certs/ca-bundle.crt $ cat /etc/pki/tls/certs/ca-bundle.crt cat: /etc/pki/tls/certs/ca-bundle.crt: Permission denied $ ls -all /etc/pki/tls/certs/ca-bundle.crt lrwxrwxrwx. 1 root root 49 Jan 20 2023 /etc/pki/tls/certs/ca-bundle.crt -> /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem
For now, I will just use https://github.com/sopel-irc/sopel/archive/refs/heads/master.zip in it and git clone method in my Debian PC (can't right now since its Python version is still at 2.7.18 and Sopel v8 wants Python v3.8+).
`And of course, I ran into more problems in my friend's Fedora with my downloaded master.zip file: $ wget2 https://github.com/sopel-irc/sopel/archive/refs/heads/master.zip master.zip 100% [==============================================================================>] 605.90K 3.87MB/s [Files: 1 Bytes: 605.90K [1001KB/s] Redirects: 1 Todo: 0 Errors: 0 ] $ unzip master.zip Archive: master.zip 116ce4a3f77698661ae9fe246f5383da7b5aaff3 creating: sopel-master/ inflating: sopel-master/.codeclimate.yml inflating: sopel-master/.coveragerc creating: sopel-master/.github/ creating: sopel-master/.github/ISSUE_TEMPLATE/ inflating: sopel-master/.github/ISSUE_TEMPLATE/bug_report.yml inflating: sopel-master/.github/ISSUE_TEMPLATE/config.yml inflating: sopel-master/.github/ISSUE_TEMPLATE/feature_request.yml inflating: sopel-master/.github/pull_request_template.md creating: sopel-master/.github/workflows/ inflating: sopel-master/.github/workflows/ci.yml inflating: sopel-master/.github/workflows/codeql.yml inflating: sopel-master/.github/workflows/pypi.yml inflating: sopel-master/.gitignore inflating: sopel-master/CONTRIBUTING.md inflating: sopel-master/COPYING inflating: sopel-master/CREDITS inflating: sopel-master/MANIFEST.in inflating: sopel-master/Makefile inflating: sopel-master/NEWS inflating: sopel-master/NEWS.spec.md inflating: sopel-master/README.rst inflating: sopel-master/conftest.py creating: sopel-master/contrib/ inflating: sopel-master/contrib/README.md creating: sopel-master/contrib/githooks/ inflating: sopel-master/contrib/githooks/install-hooks.sh inflating: sopel-master/contrib/githooks/main-hook.sh inflating: sopel-master/contrib/githooks/pre-commit inflating: sopel-master/contrib/githooks/pre-push inflating: sopel-master/contrib/githooks/uninstall-hooks.sh inflating: sopel-master/contrib/sopel.cfg inflating: sopel-master/contrib/sopel.conf inflating: sopel-master/contrib/sopel.service inflating: sopel-master/contrib/sopel@.service inflating: sopel-master/contrib/tox.ini inflating: sopel-master/contrib/toxfile.py inflating: sopel-master/dev-requirements.txt creating: sopel-master/docs/ inflating: sopel-master/docs/Makefile inflating: sopel-master/docs/make.bat creating: sopel-master/docs/source/ creating: sopel-master/docs/source/_static/ inflating: sopel-master/docs/source/_static/custom.css inflating: sopel-master/docs/source/_static/favicon.ico inflating: sopel-master/docs/source/_static/sopel-black.png inflating: sopel-master/docs/source/_static/sopel-white.png inflating: sopel-master/docs/source/cli.rst inflating: sopel-master/docs/source/conf.py inflating: sopel-master/docs/source/configuration.rst inflating: sopel-master/docs/source/index.rst inflating: sopel-master/docs/source/package.rst creating: sopel-master/docs/source/package/ inflating: sopel-master/docs/source/package/bot.rst inflating: sopel-master/docs/source/package/config.rst creating: sopel-master/docs/source/package/config/ inflating: sopel-master/docs/source/package/config/core_section.rst inflating: sopel-master/docs/source/package/config/types.rst inflating: sopel-master/docs/source/package/db.rst inflating: sopel-master/docs/source/package/formatting.rst inflating: sopel-master/docs/source/package/irc.rst creating: sopel-master/docs/source/package/irc/ inflating: sopel-master/docs/source/package/irc/backends.rst inflating: sopel-master/docs/source/package/irc/capabilities.rst inflating: sopel-master/docs/source/package/irc/isupport.rst inflating: sopel-master/docs/source/package/irc/modes.rst inflating: sopel-master/docs/source/package/irc/utils.rst inflating: sopel-master/docs/source/package/lifecycle.rst inflating: sopel-master/docs/source/package/loader.rst inflating: sopel-master/docs/source/package/logger.rst inflating: sopel-master/docs/source/package/plugins.rst creating: sopel-master/docs/source/package/plugins/ inflating: sopel-master/docs/source/package/plugins/capabilities.rst inflating: sopel-master/docs/source/package/plugins/exceptions.rst inflating: sopel-master/docs/source/package/plugins/handlers.rst inflating: sopel-master/docs/source/package/plugins/jobs.rst inflating: sopel-master/docs/source/package/plugins/plugins.rst inflating: sopel-master/docs/source/package/plugins/rules.rst inflating: sopel-master/docs/source/package/tools.rst creating: sopel-master/docs/source/package/tools/ inflating: sopel-master/docs/source/package/tools/calculation.rst inflating: sopel-master/docs/source/package/tools/events.rst inflating: sopel-master/docs/source/package/tools/identifiers.rst inflating: sopel-master/docs/source/package/tools/jobs.rst inflating: sopel-master/docs/source/package/tools/memories.rst inflating: sopel-master/docs/source/package/tools/target.rst inflating: sopel-master/docs/source/package/tools/time.rst inflating: sopel-master/docs/source/package/tools/web.rst inflating: sopel-master/docs/source/package/trigger.rst inflating: sopel-master/docs/source/plugin.rst creating: sopel-master/docs/source/plugin/ inflating: sopel-master/docs/source/plugin/advanced.rst inflating: sopel-master/docs/source/plugin/anatomy.rst inflating: sopel-master/docs/source/plugin/bot.rst creating: sopel-master/docs/source/plugin/bot/ inflating: sopel-master/docs/source/plugin/bot/channels.rst inflating: sopel-master/docs/source/plugin/bot/style.rst inflating: sopel-master/docs/source/plugin/bot/talk.rst inflating: sopel-master/docs/source/plugin/decorators.rst inflating: sopel-master/docs/source/plugin/privileges.rst inflating: sopel-master/docs/source/plugin/test.rst inflating: sopel-master/docs/source/plugin/time.rst inflating: sopel-master/docs/source/plugin/what.rst inflating: sopel-master/docs/source/run.rst inflating: sopel-master/docs/source/tests.rst creating: sopel-master/docs/source/tests/ inflating: sopel-master/docs/source/tests/factories.rst inflating: sopel-master/docs/source/tests/mocks.rst inflating: sopel-master/docs/source/tests/pytest.rst inflating: sopel-master/pyproject.toml extracting: sopel-master/runtime.txt inflating: sopel-master/setup.cfg creating: sopel-master/sopel/ inflating: sopel-master/sopel/init.py inflating: sopel-master/sopel/bot.py creating: sopel-master/sopel/cli/ inflating: sopel-master/sopel/cli/init.py inflating: sopel-master/sopel/cli/config.py inflating: sopel-master/sopel/cli/plugins.py inflating: sopel-master/sopel/cli/run.py inflating: sopel-master/sopel/cli/utils.py creating: sopel-master/sopel/config/ inflating: sopel-master/sopel/config/init.py inflating: sopel-master/sopel/config/core_section.py inflating: sopel-master/sopel/config/types.py inflating: sopel-master/sopel/coretasks.py inflating: sopel-master/sopel/db.py inflating: sopel-master/sopel/formatting.py creating: sopel-master/sopel/irc/ inflating: sopel-master/sopel/irc/init.py inflating: sopel-master/sopel/irc/abstract_backends.py inflating: sopel-master/sopel/irc/backends.py inflating: sopel-master/sopel/irc/capabilities.py inflating: sopel-master/sopel/irc/isupport.py inflating: sopel-master/sopel/irc/modes.py inflating: sopel-master/sopel/irc/utils.py inflating: sopel-master/sopel/lifecycle.py inflating: sopel-master/sopel/loader.py inflating: sopel-master/sopel/logger.py inflating: sopel-master/sopel/module.py creating: sopel-master/sopel/modules/ extracting: sopel-master/sopel/modules/init.py inflating: sopel-master/sopel/modules/admin.py inflating: sopel-master/sopel/modules/adminchannel.py inflating: sopel-master/sopel/modules/announce.py inflating: sopel-master/sopel/modules/calc.py inflating: sopel-master/sopel/modules/choose.py inflating: sopel-master/sopel/modules/clock.py inflating: sopel-master/sopel/modules/countdown.py inflating: sopel-master/sopel/modules/currency.py inflating: sopel-master/sopel/modules/dice.py inflating: sopel-master/sopel/modules/emoticons.py inflating: sopel-master/sopel/modules/find.py inflating: sopel-master/sopel/modules/find_updates.py inflating: sopel-master/sopel/modules/help.py inflating: sopel-master/sopel/modules/invite.py inflating: sopel-master/sopel/modules/ip.py inflating: sopel-master/sopel/modules/isup.py inflating: sopel-master/sopel/modules/lmgtfy.py inflating: sopel-master/sopel/modules/ping.py inflating: sopel-master/sopel/modules/pronouns.py inflating: sopel-master/sopel/modules/rand.py inflating: sopel-master/sopel/modules/reload.py inflating: sopel-master/sopel/modules/safety.py inflating: sopel-master/sopel/modules/search.py inflating: sopel-master/sopel/modules/seen.py inflating: sopel-master/sopel/modules/tell.py inflating: sopel-master/sopel/modules/tld.py inflating: sopel-master/sopel/modules/translate.py inflating: sopel-master/sopel/modules/unicode_info.py inflating: sopel-master/sopel/modules/units.py inflating: sopel-master/sopel/modules/uptime.py inflating: sopel-master/sopel/modules/url.py inflating: sopel-master/sopel/modules/version.py inflating: sopel-master/sopel/modules/wikipedia.py inflating: sopel-master/sopel/modules/wiktionary.py inflating: sopel-master/sopel/modules/xkcd.py inflating: sopel-master/sopel/plugin.py creating: sopel-master/sopel/plugins/ inflating: sopel-master/sopel/plugins/init.py inflating: sopel-master/sopel/plugins/capabilities.py inflating: sopel-master/sopel/plugins/exceptions.py inflating: sopel-master/sopel/plugins/handlers.py inflating: sopel-master/sopel/plugins/jobs.py inflating: sopel-master/sopel/plugins/rules.py inflating: sopel-master/sopel/privileges.py creating: sopel-master/sopel/tests/ inflating: sopel-master/sopel/tests/init.py inflating: sopel-master/sopel/tests/factories.py inflating: sopel-master/sopel/tests/mocks.py inflating: sopel-master/sopel/tests/pytest_plugin.py creating: sopel-master/sopel/tools/ inflating: sopel-master/sopel/tools/init.py inflating: sopel-master/sopel/tools/_events.py inflating: sopel-master/sopel/tools/calculation.py inflating: sopel-master/sopel/tools/identifiers.py inflating: sopel-master/sopel/tools/jobs.py inflating: sopel-master/sopel/tools/memories.py inflating: sopel-master/sopel/tools/target.py inflating: sopel-master/sopel/tools/time.py inflating: sopel-master/sopel/tools/web.py inflating: sopel-master/sopel/trigger.py creating: sopel-master/test/ creating: sopel-master/test/cli/ inflating: sopel-master/test/cli/test_cli_run.py inflating: sopel-master/test/cli/test_cli_utils.py creating: sopel-master/test/config/ inflating: sopel-master/test/config/test_config_types.py creating: sopel-master/test/coretasks/ inflating: sopel-master/test/coretasks/test_coretasks_cap.py inflating: sopel-master/test/coretasks/test_coretasks_sasl.py creating: sopel-master/test/irc/ inflating: sopel-master/test/irc/test_irc_abstract_backends.py inflating: sopel-master/test/irc/test_irc_capabilities.py inflating: sopel-master/test/irc/test_irc_isupport.py inflating: sopel-master/test/irc/test_irc_modes.py inflating: sopel-master/test/irc/test_irc_utils.py creating: sopel-master/test/modules/ inflating: sopel-master/test/modules/test_modules_adminchannel.py inflating: sopel-master/test/modules/test_modules_announce.py inflating: sopel-master/test/modules/test_modules_choose.py inflating: sopel-master/test/modules/test_modules_find_updates.py inflating: sopel-master/test/modules/test_modules_isup.py inflating: sopel-master/test/modules/test_modules_tell.py inflating: sopel-master/test/modules/test_modules_url.py creating: sopel-master/test/plugins/ inflating: sopel-master/test/plugins/test_plugins_capabilities.py inflating: sopel-master/test/plugins/test_plugins_handlers.py inflating: sopel-master/test/plugins/test_plugins_rules.py inflating: sopel-master/test/test_bot.py inflating: sopel-master/test/test_config.py inflating: sopel-master/test/test_coretasks.py inflating: sopel-master/test/test_db.py inflating: sopel-master/test/test_formatting.py inflating: sopel-master/test/test_irc.py inflating: sopel-master/test/test_loader.py inflating: sopel-master/test/test_module.py inflating: sopel-master/test/test_plugin.py inflating: sopel-master/test/test_plugins.py inflating: sopel-master/test/test_tools.py inflating: sopel-master/test/test_trigger.py creating: sopel-master/test/tests/ inflating: sopel-master/test/tests/test_tests_mocks.py creating: sopel-master/test/tools/ inflating: sopel-master/test/tools/test_tools_identifiers.py inflating: sopel-master/test/tools/test_tools_jobs.py inflating: sopel-master/test/tools/test_tools_memories.py inflating: sopel-master/test/tools/test_tools_target.py inflating: sopel-master/test/tools/test_tools_time.py inflating: sopel-master/test/tools/test_tools_web.py creating: sopel-master/test/vcr/ creating: sopel-master/test/vcr/modules/ creating: sopel-master/test/vcr/modules/currency/ inflating: sopel-master/test/vcr/modules/currency/test_example_exchange_cmd_0.yaml creating: sopel-master/test/vcr/modules/search/ inflating: sopel-master/test/vcr/modules/search/test_example_duck_0.yaml inflating: sopel-master/test/vcr/modules/search/test_example_duck_1.yaml inflating: sopel-master/test/vcr/modules/search/test_example_suggest_0.yaml inflating: sopel-master/test/vcr/modules/search/test_example_suggest_1.yaml inflating: sopel-master/test/vcr/modules/search/test_example_suggest_2.yaml creating: sopel-master/test/vcr/modules/translate/ inflating: sopel-master/test/vcr/modules/translate/test_example_tr2_0.yaml inflating: sopel-master/test/vcr/modules/translate/test_example_tr2_1.yaml inflating: sopel-master/test/vcr/modules/translate/test_example_tr2_2.yaml creating: sopel-master/test/vcr/modules/url/ inflating: sopel-master/test/vcr/modules/url/test_example_title_command_0.yaml
$ cd sopel-master/ $ pip install -e . Defaulting to user installation because normal site-packages is not writeable Obtaining file:///home/ant/Downloads/sopel-master Installing build dependencies ... error error: subprocess-exited-with-error
× pip subprocess to install build dependencies did not run successfully. │ exit code: 1 ╰─> [10 lines of output] WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(PermissionError(13, 'Permission denied'))': /simple/setuptools/ WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(PermissionError(13, 'Permission denied'))': /simple/setuptools/ WARNING: Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(PermissionError(13, 'Permission denied'))': /simple/setuptools/ WARNING: Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(PermissionError(13, 'Permission denied'))': /simple/setuptools/ WARNING: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(PermissionError(13, 'Permission denied'))': /simple/setuptools/ Could not fetch URL https://pypi.org/simple/setuptools/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host='pypi.org', port=443): Max retries exceeded with url: /simple/setuptools/ (Caused by SSLError(PermissionError(13, 'Permission denied'))) - skipping ERROR: Could not find a version that satisfies the requirement setuptools~=63.0 (from versions: none) ERROR: No matching distribution found for setuptools~=63.0 Could not fetch URL https://pypi.org/simple/pip/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host='pypi.org', port=443): Max retries exceeded with url: /simple/pip/ (Caused by SSLError(PermissionError(13, 'Permission denied'))) - skipping WARNING: There was an error checking the latest version of pip. [end of output]
note: This error originates from a subprocess, and is likely not a problem with pip. error: subprocess-exited-with-error
× pip subprocess to install build dependencies did not run successfully. │ exit code: 1 ╰─> See above for output.
note: This error originates from a subprocess, and is likely not a problem with pip. Could not fetch URL https://pypi.org/simple/pip/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host='pypi.org', port=443): Max retries exceeded with url: /simple/pip/ (Caused by SSLError(PermissionError(13, 'Permission denied'))) - skipping WARNING: There was an error checking the latest version of pip.
`
Augh!!!!!!!!!!!! Frustrating. :(
Description
$ git clone git://github.com/sopel-irc/sopel.git Cloning into 'sopel'... fatal: unable to connect to github.com: github.com[0: 192.30.255.112]: errno=Connection timed out
This happens in two different Linux boxes and two different ISPs. I am using "Latest source" instructions from https://sopel.chat/usage/installing/.
Thank you for reading and hopefully answering soon. :)
Reproduction steps
$ git clone git://github.com/sopel-irc/sopel.git Cloning into 'sopel'... fatal: unable to connect to github.com: github.com[0: 192.30.255.112]: errno=Connection timed out
Thank you for reading and hopefully answering soon. :)
Expected behavior
git clone should download Sopel's latest source. :(
Relevant logs
No response
Notes
No problems with https://github.com though.
Sopel version
8.0
Installation method
My distro's package manager (apt, etc)
Python version
No response
Operating system
Debian Bullseye v11 and Fedora 35
IRCd
No response
Relevant plugins
No response