web-dev-qa-db-fra.com

Utiliser Ubuntu One sur Debian est-il «possible»?

J'ai lu quelque part qu'Ubuntu One ne fonctionne que sur Ubuntu, ce qui était une surprise (et je suppose que c'est juste une position officielle). Que faut-il pour que je l'exécute sur Debian?

28
Tshepang

Pour mémoire, vous pouvez utiliser Ubuntu One n’importe où, mais nous n’avons pas les ressources nécessaires pour le tester et le faire fonctionner partout.

Cela dit, Ubuntu One est composé de plusieurs parties; le problème le plus problématique dans Debian est le syncdaemon, et je suppose que c'est ce que vous voulez dire; Les plugins tomboy, desktopcouch et funambol ne devraient pas être un problème (du moins aucun problème spécifique à Debian :-)).

@ajmitch travaille sur l’obtention de paquets de syncdaemon ("Ubuntuone-client") dans Debian.

En attendant, vous pouvez le faire fonctionner. Les versions de certaines bibliothèques étant légèrement inactives, il est nécessaire de procéder à des correctifs pour l'instant. Voici ce que vous pouvez faire pour la version la plus rudimentaire de "running", en mode squeeze (à partir d'une installation de base avec la tâche "desktop" installée):

Sudo apt-get install bzr python-lazr.restfulclient python-oauth python-pyinotify python-protobuf gnome-common gobject-introspection xutils-dev libnautilus-extension-dev libgconf2-dev libebook1.2-dev gnome-settings-daemon-dev python-twisted-names python-libproxy python-distutils-extra python-setuptools
mkdir ~/u1; cd ~/u1
bzr branch lp:ubuntuone-client/stable-1-4 client
bzr branch lp:ubuntuone-storage-protocol/stable-1-4 protocol
bzr branch lp:ubuntu-sso-client/stable-1-0 sso
bzr branch lp:configglue
sed -i~ -e 's/Spinner()/Label("...")/; /spinner.start/D' sso/ubuntu_sso/gui.py
(cd protocol; python setup.py build)
(cd client; ./autogen.sh --with-protocol=../protocol --with-sso=../sso --prefix=/usr; make)
PYTHONPATH=sso sso/bin/ubuntu-sso-login &
PYTHONPATH=configglue:sso:client:protocol client/bin/ubuntuone-syncdaemon client/data/syncdaemon.conf --debug
PYTHONPATH=sso:client client/bin/u1sdtool -c

syncdaemon est en ligne et synchronisé (en supposant que vous utilisiez Network Manager), mais il n'inclut pas l'activation de dbus ni l'intégration de Nautilus, ce qui aide. Si vous les voulez, vous pouvez essayer

(cd sso && Sudo python setup.py install --prefix=/usr)
(cd configglue && Sudo python setup.py install --prefix=/usr)
(cd protocol && Sudo python setup.py install --prefix=/usr)
(cd client && Sudo make install)
Sudo mkdir /etc/xdg/ubuntuone; Sudo cp client/data/syncdaemon.conf /etc/xdg/ubuntuone

cela devrait faire fonctionner toute la pile. Si vous rencontrez des erreurs d'importation, vérifiez que des éléments ont été installés dans dist-packages et non pas site-packages (s'ils sont dans ce dernier, déplacez-les :-))

Voir? Installation en un clic.

21
Chipaca

Vous auriez besoin de ubuntuone-client et ubuntu-sso-client (connexion unique) et de leurs diverses dépendances. Il s’agit principalement de python; il ne devrait donc pas y avoir de problème de compatibilité binaire en faisant simplement glisser les packages.

Mais vous pouvez commencer à localiser les dépendances ici: http://packages.ubuntu.com/maverick/ubuntuone-client

Q. Pourquoi ne pas donner des instructions pour ajouter des référentiels Ubuntu à Debian à cette fin?

A. Sauf si vous avez trouvé un PPA qui ne contient que le matériel requis, vous pouvez le remplacer par (lire: mettre à jour) tout un paquet de paquets à un point où les choses sont devenues très instables. Il est beaucoup plus sûr de ne prendre que ce dont vous avez besoin.

Quelque chose comme apt-get install --no-install-recommends ubuntuone-client ne fonctionnerait pas, car dès que vous ajoutez le référentiel Ubuntu à une installation Debian, il essaiera de mettre à jour tous les paquets vers la dernière version. Si l'un des packages du référentiel Maverick était plus récent que ceux du ou des référentiels Debian utilisés sur ce système, il souhaiterait que vous les mettiez à niveau. Si ces paquets contenaient (comme probablement) des correctifs incompatibles avec Debian, cela nuancerait le système Debian. Il est infiniment plus sûr de simplement télécharger les debs requises via packages.ubuntu.com (ou même simplement la source) et de les installer manuellement.

Le problème de la mise à jour automatique des paquets indésirables pourrait être réduit ou éventuellement évité en utilisant apt pinning , mais cela dépasse le cadre de ma réponse.

11
Oli

C'est certainement possible, mais il n'y a pas encore de paquet dans Debian. Il existe cependant un bug ITP , ce qui signifie que la personne qui enregistre ce bogue travaille ou va travailler sur son conditionnement ( ITP = Intent To Package ).

4
JanC

Il existe un moyen beaucoup plus simple: récupérez les DEB sur le site du paquet (pour Debian Wheezy, obtenez les DEB sur UBuntu 12.04), installez-les un par un en utilisant gdebi (ou similaire). Essai et erreur pour obtenir le bon ordre. Une fois tous les DEB supprimés, exécutez ubuntuone-install à partir de la ligne de commande et suivez les instructions.

Astuce: vous devez activer Network-Manager et gérer votre connexion.

Dans ce site, je liste les paquets nécessaires:

http://conalambre.wordpress.com/2012/10/15/ubuntu-one-en-debian-wheezy/

C'est en espagnol mais les noms des paquets sont les mêmes :-D

1
mEscobal

Eh bien, c’est Ubuntu One et non Debian One. :)

Vous devriez bien sûr pouvoir reconstruire les paquets à partir de la dernière Ubuntu pour les éléments d’Ubuntu One dont vous avez besoin, sur une distribution basée sur Debian qui dispose des dépendances requises pour le faire. Si les dépendances ne sont pas disponibles, vous devrez peut-être également les transférer.

Ces distributions ne sont pas prises en charge. Toutefois, si vous rencontrez des problèmes pour reconstruire les packages, vous pouvez demander de l’aide dans #ubuntuone IRC sur le réseau Freenode.

1
dobey

J'ai récemment migré d'Ubuntu vers Debian et j'ai eu le même problème. Je l'ai en cours d'exécution et j'ai écrit une entrée de blog détaillée sur la façon de faire fonctionner Ubuntu One sur Debian.

Le lien est ici: http://blog.pinguinplanet.de/2012/05/ubuntu-one-on-debian-wheezy.html

0
Michael

J'ai pu faire fonctionner la synchronisation en utilisant les informations du lien ci-dessus et quelques essais et erreurs. Les références sont ce fil, https://wiki.ubuntu.com/UbuntuOne/Headless et http://blog.pinguinplanet.de/2012/05/ubuntu-one-on -debian-wheezy.html .

Ce sont les étapes nécessaires:

  1. Passez à la version 'testing' en remplaçant 'wheezy' par 'testing' dans le fichier de configuration /etc/apt/sources.list suivi de:

    Sudo apt-get update
    Sudo apt-get upgrade
    
  2. Installez les conditions préalables:

    Sudo apt-get install python-twisted pyqt4-dev-tools bzr python-lazr.restfulclient python-oauth python-pyinotify python-protobuf gnome-common gobject-introspection xutils-dev libnautilus-extension-dev libgconf2-dev libebook1.2-dev gnome-settings-daemon-dev python-twisted-names python-libproxy python-distutils-extra python-setuptools python-configglue python-oauthlib protobuf-compiler
    
  3. Construisez et installez le client UbuntuOne:

    mkdir u1
    cd u1
    bzr branch lp:ubuntuone-storage-protocol
    (cd ubuntuone-storage-protocol/ ; Sudo python setup.py install )
    bzr branch lp:configglue
    (cd configglue/ ; Sudo python setup.py install) 
    bzr branch lp:dirspec
    (cd dirspec/ ; Sudo python setup.py install) 
    bzr branch lp:ubuntu-sso-client
    (cd ubuntu-sso-client/ ; Sudo python setup.py install) 
    bzr branch lp:ubuntuone-client
    (cd ubuntuone-client/ ; Sudo python setup.py install)
    
  4. récupérez et enregistrez le jeton de connexion Ubuntu One:

    wget http://people.canonical.com/~roman.yepishev/us/ubuntuone-sso-login.py
    python ubuntuone-sso-login.py
    Ubuntu SSO Login: **your Ubuntu SSO Login**
    Password: **your Ubuntu SSO Password**
    oauth=hPQWPsH:rhOokmNiRuuoiHe... 
    
    mkdir ~/.config/ubuntuone
    cd ../.config/ubuntuone
    cp ../../u1/ubuntuone-client/data/syncdaemon.conf .
    

    éditez syncdaemon.conf:

    [__main__]
    oauth=hPQWPsH:rhOokmNiRuuoiHe... 
    

u1sdtool --start peut maintenant être utilisé pour démarrer le démon de synchronisation. u1sdtool -s donne:

ERROR:root:Could not find any typelib for Unity
State: QUEUE_MANAGER
connection: With User With Network
description: processing the commands pool
is_connected: True
is_error: False
is_online: True
queues: IDLE

Il semble correct d'ignorer l'erreur. Je n'ai pas installé Unity.

0
user61026