Ta distribution est sans doute trop vieille. Pas grave, ça se contourne. C'est quoi comme distri ?
cat /etc/lsb-release

Bonjour à tous,

J'ai pris le temps ce matin de jeter un oeil et j'ai (un peu) avancé :

@Aerya -> La commande ne me renvoi aucun retour. Mais de mémoire c'est un débian 9

J'ai de toute façon pu, en suivant les conseils de @SkillFr installer la dernière version de Python. Elle tourne en parallèle d'une 2.7. La première partie des commandes est donc OK.

En revanche, je ne sais pas si c'est dû au script de Ratxabox (Xavier de mémoire) ou si c'est normal, mais mon install s'appelle toujours Sickrage et non SickChill. J'ai tenté de regarder un peu de mon côté pour adapter mais je n'avais pas de service Sickrage donc aucune possibilité de faire les modifs demandées.

Je me suis donc dis "Le but initial était de faire une migration, je vais suivre la doc" (présente ici : https://forums.sickrage.ca/t/how-to-migrate-sickrage-to-python-3/1365 ).

Jusqu'à l'étape 6, on est OK, en revanche

Run from SiCKRAGE install folder python3 -m pip install --no-deps -r requirements.txt

A partir de là, je me fais envoyer balader, il cherche une dépendance apparemment, apispec 4.0.0 or pas moyen de l'installer :

root@***:/opt/sickrage# python3 -m pip install --no-deps -r requirements.txt
Collecting aenum==2.2.4 (from -r requirements.txt (line 1))
  Using cached https://files.pythonhosted.org/packages/5b/58/1007ed4a287c6dd3dc953ae478145bab28e8abc529627b2ee797f84b201e/aenum-2.2.4-py3-none-any.whl
Collecting alembic==1.4.2 (from -r requirements.txt (line 2))
  Using cached https://files.pythonhosted.org/packages/60/1e/cabc75a189de0fbb2841d0975243e59bde8b7822bacbb95008ac6fe9ad47/alembic-1.4.2.tar.gz
Collecting apispec==4.0.0 (from -r requirements.txt (line 3))
  Could not find a version that satisfies the requirement apispec==4.0.0 (from -r requirements.txt (line 3)) (from versions: 0.3.0, 0.4.0, 0.4.1, 0.4.2, 0.5.0, 0.6.0, 0.7.0, 0.8.0, 0.9.0, 0.9.1, 0.10.1, 0.11.0, 0.11.1, 0.12.0, 0.13.0, 0.14.0, 0.15.0, 0.16.0, 0.17.0, 0.17.1, 0.17.2, 0.17.3, 0.17.4, 0.18.0, 0.19.0, 0.20.0, 0.20.1, 0.21.0, 0.22.0, 0.22.1, 0.22.2, 0.22.3, 0.23.0, 0.23.1, 0.24.0, 0.25.0, 0.25.1, 0.25.2, 0.25.3, 0.25.4, 0.26.0, 0.27.0, 0.27.1, 0.28.0, 0.29.0, 0.30.0, 0.31.0, 0.32.0, 0.33.0, 0.34.0, 0.35.0, 0.36.0, 0.37.0, 0.37.1, 0.38.0, 0.39.0, 1.0.0b1, 1.0.0b2, 1.0.0b3, 1.0.0b4, 1.0.0b5, 1.0.0b6, 1.0.0rc1, 1.0.0, 1.1.0, 1.1.1, 1.1.2, 1.2.0, 1.2.1, 1.3.0, 1.3.1, 1.3.2, 1.3.3, 2.0.0, 2.0.1, 2.0.2, 3.0.0, 3.1.0, 3.1.1, 3.2.0, 3.3.0, 3.3.1, 3.3.2)
No matching distribution found for apispec==4.0.0 (from -r requirements.txt (line 3))
root@***:/opt/sickrage# apt-get install apispec
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package apispec

Pour l'instant, j'en suis donc rendu là

Merci déjà en tout cas pour votre aide, en espérant que vous puissiez m'aider à finir de me dépatouiller de cette migration :x

Un excellent dimanche à tous !

    Oppenheimer

    Attention Sickrage existe toujours, les développeurs sont partis chacun de leurs côtés

    Il faut partir sur une installation propre:

    cd /opt/
    wget https://github.com/SickChill/SickChill/archive/refs/heads/master.zip
    unzip master.zip 
    mv SickChill-master/ SickChill
    cp /opt/SickChill/contrib/runscripts/init.systemd /lib/systemd/system/sickchill.service
    nano /lib/systemd/system/sickchill.service

    Fin du tuto sur mon 1er post

    Réimportation la config de sickrage sur sickchill:
    Récupère les fichiers : config.ini et sickchill.db ou sickbear.db dépose-les dans /opt/SickChill

      Bonjour @SkillFr 🙂

      Tout est OK jusqu'au :

      systemctl start sickchill

      J'ai un :

      root@***:~# systemctl start sickchill
      Job for sickchill.service failed because the control process exited with error code.
      See "systemctl status sickchill.service" and "journalctl -xe" for details.

      Ci dessous, le fichier sickchill.service modifié comme demandé :

      [Unit]
      Description=SickChill Daemon
      Wants=network-online.target
      After=network-online.target
      
      [Service]
      User=sickchill
      Group=sickchill
      
      Type=forking
      GuessMainPID=no
      ExecStart=/usr/local/bin/python3.9 /opt/SickChill/SickChill.py -q --daemon --nolaunch --datadir=/opt/SickChill

      Comme indiqué avec l'erreur, pour voir le détail il faut taper au choix l'une des commandes.

      systemctl status sickchill.service  #la mieux
      journalctl -xe

      Peux-tu démarré sickrage directement (afin de ciblé le problème)

      /usr/local/bin/python3.9 /opt/SickChill/SickChill.py -q --daemon --nolaunch --datadir=/opt/SickChill

      Il démarre ?

      Ton fichier /lib/systemd/system/sickchill .service ressemble bien a :

      [Unit]
      Description=SickChill Daemon
      Wants=network-online.target
      After=network-online.target
      
      [Service]
      User=sickchill
      Group=sickchill
      
      Type=forking
      GuessMainPID=no
      ExecStart=/usr/bin/python3 /opt/sickchill/SickChill.py -q --daemon --nolaunch --datadir=/opt/sickchill
      
      [Install]
      WantedBy=multi-user.target

      @Aerya j'ai bien tapé ces deux commandes mais je n'y ai rien vu de probant, ou du moins compréhensible pour quelqu'un qui n'a pas votre niveau 🙂

      @SkillFr il semble se lancer oui; aucun retour d'erreur au lancement de la commande et oui, le fichier ressemble à ça, je pense que de toute façon, si ce n'était pas bon, il ne se lancerait pas non ?

      Il tourne sur un port par défaut par la suite ? Je n'ai renseigné nulle part un ID/MDP d'accès.

      Je vois sur la doc officielle (https://whatbox.ca/wiki/SickChill) qu'il faut les spécifier dans un config.ini mais je ne sais pas où il se trrouve :/

      Edit : Autant pour moi, ce n'est pas la doc officielle, oubliez donc ma dernière phrase

        Oppenheimer

        il semble se lancer oui

        A tu testé l'interface web ? tu voir ton port : cat /opt/SickChill/config.ini |grep web_port

        Peux-tu regarder les logs : cat /opt/SickChill/Logs/sickchill.log

        root@***:~# cat /opt/SickChill/config.ini |grep web_port
        cat: /opt/SickChill/config.ini: No such file or directory
        root@***:~# cat /opt/SickChill/Logs/sickchill.log
        cat: /opt/SickChill/Logs/sickchill.log: No such file or directory
        root@***:~# cd /opt/SickChill/
        root@***:/opt/SickChill# ls
        bower.json       COPYING.txt          Gruntfile.js  poetry.lock     README.md    SickChill.py
        contrib          docker-compose.yaml  LICENSE.md    poetry.toml     SECURITY.md  tests
        CONTRIBUTORS.md  Dockerfile           package.json  pyproject.toml  sickchill    yarn.lock
        root@***:/opt/SickChill#

          SkillFr Réimportation la config de sickrage sur sickchill:
          Récupère les fichiers : config.ini et sickchill.db ou sickbear.db dépose-les dans /opt/SickChill

          Oppenheimer

          Les fichiers se créent automatiquement après un démarrage, cela veut dire que tu n’as pas lancé Sick Chill

          Copie les fichiers de l'ancien sickrage

          cp -R /opt/sickrage/config.ini /opt/SickChill/
          cp -R /opt/sickrage/sickrage.db /opt/SickChill
          mv /opt/SickChill/sickrage.db /opt/SickChill/sickchill.db 

          /usr/local/bin/python3.9 /opt/SickChill/SickChill.py -q --daemon --nolaunch --datadir=/opt/SickChill

          Check après les log: cat /opt/SickChill/Logs/sickchill.log

          Encore une fois, j'ai l'impression qu'étant donné que l'install de Sickrage était une "all-in-one" inclue dans le script de Xavier, les fichiers ne sont pas là où on les attends. En effet, quand je passe tes commandes :

          Last login: Sun Aug  8 14:18:35 2021 from 82.65.16.61
          root@***:~# cp -R /opt/sickrage/config.ini /opt/SickChill/
          cp: cannot stat '/opt/sickrage/config.ini': No such file or directory
          root@***:~# cp -R /opt/sickrage/sickrage.db /opt/SickChill
          cp: cannot stat '/opt/sickrage/sickrage.db': No such file or directory
          root@***:~# mv /opt/SickChill/sickrage.db /opt/SickChill/sickchill.db
          mv: cannot stat '/opt/SickChill/sickrage.db': No such file or directory
          root@***:~# cd /opt/sickrage/
          root@***:/opt/sickrage# ls
          CHANGELOG.md           Dockerfile                    readme.md             SiCKRAGE.py
          changelog-template.md  histo.log                     README.txt            src
          checksum-generator.py  Jackett                       requirements-dev.txt  tests
          checksum-validator.py  Jackett.Binaries.Mono.tar.gz  requirements.txt      webpack.config.js
          COPYING.txt            MANIFEST.in                   runscripts            yarn.lock
          crowdin.yaml           manifests                     setup.cfg
          data                   package.json                  setup.py
          docker-compose.yml     protos                        sickrage
          root@***:/opt/sickrage#

          Je suis tellement désolé, c'est en train de vous user et moi aussi parce que j'ai fais la bêtise de plus mettre les mains dedans depuis des années, mais ça marchait tellement bien :/

            Oppenheimer

            Ok, pas de souci, si c'est du all in one malheureusement je peux rien faire !

            Je vois qu'il y a docker dans les fichiers, j'y connais absolument rien 😅 et Bizarre le Jackett dans Sick.

            Mais cela ne t'empêche pas de repartir avec un SickChill vierge !

            Quand tu démarre SickChill

            /usr/local/bin/python3.9 /opt/SickChill/SickChill.py -q --daemon --nolaunch --datadir=/opt/SickChill

            Il doit y avoir obligatoirement des traces dans le log: cat /opt/SickChill/Logs/sickchill.log

            Last login: Sun Aug  8 17:57:04 2021 from ***
            root@***:~# /usr/local/bin/python3.9 /opt/SickChill/SickChill.py -q --daemon --nolaunch --datadir=/opt/SickChill
            root@***:~# cat /opt/SickChill/Logs/sickchill.log
            cat: /opt/SickChill/Logs/sickchill.log: No such file or directory
            root@***:~#

              Oppenheimer

              Vraiment Bizarre ton installation

              Dernier essai :

              cd /opt/SickChill
              /usr/local/bin/python3.9 SickChill.py

              Normalement SickChill démarre dans la console sans daemon.

              CTRL + C pour éteindre SickChill

              Last login: Sun Aug  8 18:33:18 2021 from ***
              root@sd-***:~# cd /opt/SickChill
              root@sd-***:/opt/SickChill# /usr/local/bin/python3.9 SickChill.py
              Checking poetry
              sickchill found: False
              Can write to /usr/local/lib/python3.9/site-packages: True
              Can write to /root/.local/lib/python3.9/site-packages: False
              We always run from virtualenv when running from source
              Restarting SickChill with ['/opt/SickChill/.venv/bin/python3.9', 'SickChill.py']
              Checking poetry
              sickchill found: False
              Can write to /opt/SickChill/.venv/lib/python3.9/site-packages: True
              Can write to /root/.local/lib/python3.9/site-packages: False
              pip found: True
              pip args: /opt/SickChill/.venv/bin/python3.9 -m pip install --no-input --disable-pip-version-check --no-python-version-warning --no-color -qU setuptools poetry poetry-date-version-plugin wheel --pre
              poetry found: True
              pip args: /opt/SickChill/.venv/bin/python3.9 -m pip install --no-input --disable-pip-version-check --no-python-version-warning --no-color -qU Warning: The lock file is not up to date with the latest changes in pyproject.toml. You may be getting outdated dependencies. Run update to update them. appdirs==1.4.4 babelfish==0.6.0b1; python_version >= "3.6" and python_version < "4.0" beautifulsoup4==4.9.3 beekeeper-alt==2021.7.16; python_full_version >= "3.6.2" and python_version < "4" bencode.py==4.0.0 cachecontrol==0.12.6; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.4.0") certifi==2021.5.30; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" cffi==1.14.6; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6" or python_full_version >= "3.5.0" and python_version >= "3.6" chardet==4.0.0; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.5.0") charset-normalizer==2.0.3; python_full_version >= "3.6.0" and python_version >= "3" click==8.0.1; python_version >= "3.6" cloudscraper==1.2.58 colorama==0.4.4; python_version >= "3.6" and python_full_version < "3.0.0" and platform_system == "Windows" or platform_system == "Windows" and python_version >= "3.6" and python_full_version >= "3.5.0" configobj==5.0.6 cryptography==3.4.7; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6" decorator==5.0.9; python_version >= "3.5" deluge-client==1.9.0 deprecated==1.2.12; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6" dogpile.cache==1.1.3; python_version >= "3.6" enzyme==0.4.1 feedparser==6.0.8; python_version >= "3.6" future==0.18.2; python_version >= "2.6" and python_full_version < "3.0.0" or python_full_version >= "3.3.0" gntp==1.0.3 greenlet==1.1.0; python_version >= "3" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3" guessit==3.3.1 html5lib==1.1; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.5.0") httplib2==0.19.1 idna==3.2; python_version >= "3.5" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3.5" ifaddr==0.1.7 imagesize==1.2.0; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.4.0") imdbpy==2021.4.18 importlib-metadata==1.7.0; python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "3.8" or python_version < "3.8" and python_version >= "3.6" and python_full_version >= "3.5.0" or python_version >= "2.7" and python_full_version < "3.0.0" and python_version < "3.8" or python_full_version >= "3.6.0" and python_version < "3.8" ipaddress==1.0.23 js2py==0.71 jsonrpclib-pelix==0.4.2 kodipydent-alt==2021.7.16; python_full_version >= "3.6.2" and python_version < "4" lxml==4.6.3; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" mako==1.1.4; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.4.0") markdown2==2.4.0; python_version >= "3.5" and python_version < "4" markupsafe==2.0.1; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6" msgpack==1.0.2; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" new-rtorrent-python==1.0.1a0 oauthlib==3.1.1; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6" packaging==20.9; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.4.0") pbr==5.6.0; python_version >= "3.6" profilehooks==1.12.0 putio.py==8.7.0 pyaes==1.6.1 pycparser==2.20; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6" pygithub==1.55; python_version >= "3.6" pyjsparser==2.7.1 pyjwt==2.1.0; python_version >= "3.6" pymediainfo==5.1.0; python_version >= "3.6" pynacl==1.4.0; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6" pynma==1.0 pyopenssl==20.0.1; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.5.0") pyparsing==2.4.7; python_version >= "2.6" and python_full_version < "3.0.0" or python_full_version >= "3.3.0" or python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" pysocks==1.7.1; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.4.0") pysrt==1.1.2 python-dateutil==2.8.2; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.3.0") python-slugify==5.0.2; python_version >= "3.6" python-twitter==3.5 python3-fanart==2.0.0 pytz==2021.1 qbittorrent-api==2021.5.22 rarfile==4.0 rebulk==3.0.1 requests-oauthlib==1.3.0; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" requests-toolbelt==0.9.1 requests==2.26.0; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.6.0") send2trash==1.7.1 sgmllib3k==1.0.0; python_version >= "3.6" six==1.16.0; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.3.0" or python_full_version >= "3.5.0" or python_version >= "3.4" and python_full_version < "3.0.0" or python_full_version >= "3.3.0" and python_version >= "3.4" or python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6" soupsieve==2.2.1; python_version >= "3.6" sqlalchemy==1.4.22; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.6.0") stevedore==3.3.0; python_version >= "3.6" subliminal==2.1.0 text-unidecode==1.3; python_version >= "3.6" timeago==1.0.15 tmdbsimple==2.8.0 tornado==6.1; python_version >= "3.5" tus.py==1.3.4 tvdbsimple==1.0.6 tzlocal==2.1 unidecode==1.2.0; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.4.0") urllib3==1.26.6; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version < "4" or python_full_version >= "3.6.0" and python_version < "4" validators==0.18.2; python_version >= "3.4" webencodings==0.5.1; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" win-inet-pton==1.1.0 wrapt==1.12.1; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6" xmltodict==0.12.0; python_full_version >= "3.6.2" and python_version < "4" zipp==3.5.0; python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "3.8" or python_version < "3.8" and python_version >= "3.6" and python_full_version >= "3.5.0"
              Command result: ERROR: Invalid requirement: 'Warning: The lock file is not up to date with the latest changes in pyproject.toml. You may be getting outdated dependencies. Run update to update them.'
              
              Trying user site-packages
              Command result: ERROR: Can not perform a '--user' install. User site-packages are not visible in this virtualenv.
              
              Traceback (most recent call last):
                File "/opt/SickChill/SickChill.py", line 14, in <module>
                  import sickchill.start
                File "/opt/SickChill/sickchill/__init__.py", line 6, in <module>
                  from .show.indexers import indexer, ShowIndexer
                File "/opt/SickChill/sickchill/show/indexers/__init__.py", line 1, in <module>
                  from .handler import ShowIndexer
                File "/opt/SickChill/sickchill/show/indexers/handler.py", line 3, in <module>
                  from sickchill import logger, settings
                File "/opt/SickChill/sickchill/logger.py", line 12, in <module>
                  from github import InputFileContent
              ModuleNotFoundError: No module named 'github'

                Oppenheimer
                cd /opt/SickChill/
                poetry run python --version te retourne quoi ?

                root@***:~# cd /opt/SickChill/
                root@***:/opt/SickChill# poetry run python --version
                -bash: poetry: command not found

                Si je repasse tes commandes du premier post :

                root@***:/opt/SickChill# python3.9 --version
                Python 3.9.6
                root@***:/opt/SickChill# which python3.9
                /usr/local/bin/python3.9
                root@***:/opt/SickChill#

                  Oppenheimer

                  Il faut l'installer :

                  cd /tmp
                  curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python3.9
                  Traceback (most recent call last):
                    File "/root/.poetry/lib/poetry/_vendor/py3.5/clikit/api/config/application_config.py", line 8, in <module>
                      from typing import ContextManager
                  ImportError: cannot import name 'ContextManager'
                  
                  During handling of the above exception, another exception occurred:
                  
                  Traceback (most recent call last):
                    File "/root/.poetry/bin/poetry", line 17, in <module>
                      from poetry.console import main
                    File "/root/.poetry/lib/poetry/console/__init__.py", line 1, in <module>
                      from .application import Application
                    File "/root/.poetry/lib/poetry/console/application.py", line 3, in <module>
                      from cleo import Application as BaseApplication
                    File "/root/.poetry/lib/poetry/_vendor/py3.5/cleo/__init__.py", line 3, in <module>
                      from .application import Application
                    File "/root/.poetry/lib/poetry/_vendor/py3.5/cleo/application.py", line 4, in <module>
                      from clikit.console_application import ConsoleApplication
                    File "/root/.poetry/lib/poetry/_vendor/py3.5/clikit/__init__.py", line 1, in <module>
                      from .api.config.application_config import ApplicationConfig
                    File "/root/.poetry/lib/poetry/_vendor/py3.5/clikit/api/config/__init__.py", line 1, in <module>
                      from .application_config import ApplicationConfig
                    File "/root/.poetry/lib/poetry/_vendor/py3.5/clikit/api/config/application_config.py", line 10, in <module>
                      from typing_extensions import ContextManager
                  ImportError: No module named 'typing_extensions'

                    Oppenheimer

                    Il doit y avoir un problème avec l'ancienne installation

                    tu est sur quel système OS/Version

                    cat /etc/*-release

                    ou

                    lsb_release -a