¿Es posible ejecutar Ubuntu One en Debian? [cerrado]

28

Leí en alguna parte que Ubuntu One solo se ejecuta en Ubuntu, lo cual fue una sorpresa (y supongo que es solo una postura oficial). ¿Qué me tomará ejecutarlo en Debian?

tshepang
fuente

Respuestas:

21

Solo para que conste, puedes ejecutar Ubuntu One donde quieras, pero no tenemos los recursos para probarlo y hacerlo funcionar sin problemas en todas partes.

Dicho esto, Ubuntu One se compone de varias partes; el más problemático para ejecutarse en Debian es el syncdaemon, y supongo que eso es lo que quiere decir; Los complementos tomboy, desktopcouch y funambol no deberían ser un problema en absoluto (al menos, ningún problema específico de Debian :-)).

@ajmitch está trabajando para obtener paquetes de syncdaemon ("ubuntuone-client") en Debian.

Mientras tanto, usted puede ponerlo en marcha. Las versiones de algunas de las bibliotecas están un poco apagadas, por lo que se necesitan algunos parches por ahora. Esto es lo que puede hacer para la versión más rudimentaria de "ejecución", en compresión (a partir de una instalación básica con la tarea 'escritorio' instalada):

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

Si bien lo anterior obtiene el syncdaemon en línea y la sincronización (suponiendo que esté usando Network Manager), no incluye la activación de dbus y la integración de nautilus, lo que ayuda. Si quieres esos, puedes intentar

(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

Esto debería hacer que toda la pila funcione. Si obtiene errores de importación, verifique que las cosas se hayan instalado dist-packagesy no site-packages(si están en la última, muévalas :-))

¿Ver? Instalación con un clic.

Chipaca
fuente
2
alguna mejora a esto desde su respuesta? Gracias.
FC
1
¿Hay alguna posibilidad de que actualice esta respuesta para reflejar 2013?
Redsandro
11

Necesitaría ubuntuone-clienty ubuntu-sso-client(inicio de sesión único) y todas sus diversas dependencias. Es principalmente python, por lo que no debería haber problemas de compatibilidad binaria simplemente arrastrando los paquetes.

Pero puede comenzar a rastrear las dependencias aquí: http://packages.ubuntu.com/maverick/ubuntuone-client

P. ¿Por qué no dar instrucciones para agregar repositorios de Ubuntu a Debian para esto?

R. A menos que haya encontrado un PPA que solo tenía las cosas requeridas, podría terminar reemplazando (lea: actualizando) una carga completa de paquetes hasta un punto donde las cosas se volvieron muy inestables. Es mucho más seguro usar solo lo que necesita.

Algo así apt-get install --no-install-recommends ubuntuone-clientno funcionaría, porque tan pronto como agregue el repositorio de Ubuntu a una instalación de Debian, intentaría actualizar todos los paquetes a la última versión. Si alguno de los paquetes en el repositorio Maverick fuera más nuevo que los de los repositorios Debian utilizados en ese sistema, le gustaría que los actualizara. Si esos paquetes contuvieran (como probablemente lo hacen) parches incompatibles con Debian, dañaría el sistema Debian. Es infinitamente más seguro descargar las debs requeridas a través de packages.ubuntu.com (o incluso solo la fuente) e instalarlas manualmente.

El problema de actualizar automáticamente los paquetes no deseados podría reducirse o posiblemente evitarse mediante el uso de la fijación adecuada , pero eso está fuera del alcance de mi respuesta.

Oli
fuente
4

Ciertamente es posible, pero todavía no hay paquetes en Debian. Sin embargo, hay un error de ITP , lo que significa que la persona que presenta el error está trabajando o va a trabajar en su empaquetado ( ITP = Intent To Package ).

JanC
fuente
1

Bueno, es Ubuntu One, y no Debian One. :)

Por supuesto, debería poder reconstruir los paquetes del último Ubuntu para las piezas de Ubuntu One que necesita, en una distribución basada en Debian que tenga las dependencias necesarias disponibles para hacerlo. Si las dependencias no están disponibles, es posible que también deba portarlas.

Esas distribuciones no son compatibles, aunque si tiene problemas para reconstruir los paquetes en ellos, puede solicitar ayuda en #ubuntuone IRC en la red Freenode.

dobey
fuente
1

Hay una manera mucho más fácil: obtener los DEB del sitio del paquete (para Debian Wheezy obtener DEB de UBuntu 12.04), instalar uno por uno usando gdebi (o similar). Prueba y error para obtener el orden correcto. Después de instalar todos los DEB, ejecute ubuntuone-install desde la línea de comandos y siga las instrucciones.

Sugerencia: debe tener Network-Manager habilitado y administrar su conexión.

En este sitio enumero los paquetes necesarios:

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

Está en español pero los nombres de los paquetes son los mismos :-D

mEscobal
fuente
0

Recientemente migré de Ubuntu a Debian y tuve el mismo problema. Lo tengo ejecutándose ahora y he escrito una entrada de blog detallada sobre cómo ejecutar Ubuntu One en Debian.

El enlace está aquí: http://blog.pinguinplanet.de/2012/05/ubuntu-one-on-debian-wheezy.html

Miguel
fuente
1
Bienvenido a Ask Ubuntu! Si bien esto puede responder teóricamente la pregunta, sería preferible incluir aquí las partes esenciales de la respuesta y proporcionar el enlace para referencia.
fossfreedom
0

Pude hacer que la sincronización funcionara utilizando la información del enlace anterior y algunas pruebas y errores. Las referencias son este hilo, https://wiki.ubuntu.com/UbuntuOne/Headless y http://blog.pinguinplanet.de/2012/05/ubuntu-one-on-debian-wheezy.html .

Estos son los pasos necesarios:

  1. Cambie a la versión 'testing' reemplazando 'wheezy' por 'testing' en el archivo de configuración /etc/apt/sources.list seguido de:

    sudo apt-get update
    sudo apt-get upgrade
    
  2. Instalar requisitos previos:

    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. Compile e instale el cliente 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. obtener y guardar el token de inicio de sesión de 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 .
    

    editar syncdaemon.conf:

    [__main__]
    oauth=hPQWPsH:rhOokmNiRuuoiHe... 
    

Ahora u1sdtool --startse puede usar para iniciar el demonio de sincronización y u1sdtool -sda:

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

Parece correcto ignorar el error. No tengo Unity instalado.

usuario61026
fuente