Возможно ли запустить Ubuntu One на Debian? [закрыто]


28

Я где-то читал, что Ubuntu One работает только на Ubuntu, что было неожиданностью (и я полагаю, это просто официальная позиция). Что мне потребуется, чтобы запустить его на Debian?

Ответы:


21

Для справки: вы можете запустить Ubuntu One где угодно, но у нас нет ресурсов для его тестирования и бесперебойной работы везде.

Сказав это, Ubuntu One состоит из нескольких частей; наиболее проблематичным для запуска в Debian является syncdaemon, и я предполагаю, что вы это имеете в виду; Плагины tomboy, desktopcouch и funambol не должны быть проблемой вообще (по крайней мере, никакой проблемы, специфичной для Debian :-)).

@ajmitch работает над получением пакетов syncdaemon ("ubuntuone-client") в Debian.

Между тем, вы можете запустить его. Версии некоторых библиотек немного сдвинуты, поэтому на данный момент требуется некоторое исправление. Вот что вы можете сделать для самой простой версии «running» в squeeze (начиная с базовой установки с установленной задачей «desktop»):

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 (при условии, что вы используете Network Manager), он не включает активацию dbus и интеграцию nautilus, что помогает. Если вы хотите, вы можете попробовать

(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

это должно заставить весь стек работать. Если вы получаете ошибки импорта, убедитесь, что что-то установлено dist-packagesи не установлено site-packages (если оно есть в последнем, переместите их поверх :-))

Видеть? Установка в один клик.


2
какое-либо улучшение к этому после вашего ответа? Спасибо.
ФК

1
Есть ли шанс обновить этот ответ, чтобы отразить 2013 год?
Redsandro

11

Вам понадобится ubuntuone-clientи ubuntu-sso-client(единый вход) и все их различные зависимости. В основном это python, поэтому не должно быть никаких проблем с бинарной совместимостью от простого перетаскивания пакетов.

Но вы можете начать отслеживать зависимости здесь: http://packages.ubuntu.com/maverick/ubuntuone-client

В. Почему бы не дать инструкции по добавлению репозиториев Ubuntu в Debian для этого?

О. Если вы не нашли PPA, у которого только что был требуемый материал, вы могли бы в конечном итоге заменить его (читай: обновление) целой загрузкой пакетов до такой степени, что все стало очень нестабильным. Гораздо безопаснее брать только то, что вам нужно.

Нечто подобное apt-get install --no-install-recommends ubuntuone-clientне сработает, потому что, как только вы добавите репозиторий Ubuntu в установку Debian, он попытается обновить все пакеты до последней версии. Если какой-либо из пакетов в репозитории Maverick был более новым, чем пакеты репозитория (-ов) Debian, используемые в этой системе, он хотел бы, чтобы вы обновились до них. Если бы эти пакеты содержали (как они, вероятно, делают) какие-либо патчи, несовместимые с Debian, это привело бы к срыву системы Debian. Бесконечно безопаснее просто скачать нужные дабы через packages.ubuntu.com (или даже просто из исходного кода) и установить вручную.

Проблема автоматического обновления нежелательных пакетов может быть уменьшена или, возможно, ее можно избежать с помощью apt-пиннинга , но это выходит за рамки моего ответа.


4

Это, конечно, возможно, но в Debian еще нет пакетов. Однако существует ошибка ITP , которая означает, что лицо, подающее эту ошибку, работает или собирается работать над ее упаковкой ( ITP = Intent To Package ).


1

Ну, это Ubuntu One, а не Debian One. :)

Конечно, вы должны иметь возможность перекомпилировать пакеты из последней версии Ubuntu для нужных вам частей Ubuntu One в дистрибутиве на основе Debian, который имеет необходимые зависимости, доступные для этого. Если зависимости недоступны, вам также может понадобиться перенести их.

Эти дистрибутивы не поддерживаются, однако, если вы столкнетесь с какими-либо проблемами при восстановлении пакетов на них, вы можете обратиться за помощью в #ubuntuone IRC в сети Freenode.


1

Есть гораздо более простой способ: получить DEB с сайта пакета (для Debian Wheezy получить DEB из UBuntu 12.04), установить один за другим с помощью gdebi (или аналогичного). Метод проб и ошибок, чтобы получить правильный порядок. После удаления всех DEB, запустите ubuntuone-install из командной строки и следуйте инструкциям.

Подсказка: у вас должен быть включен Network-Manager и вы должны управлять своим соединением.

На этом сайте я перечисляю необходимые пакеты:

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

Это по-испански, но названия пакетов совпадают :-D


0

Я недавно мигрировал из Ubuntu в Debian, и у меня возникла та же проблема. Я запустил его сейчас и написал подробную запись в блоге о том, как запустить Ubuntu One в Debian.

Ссылка здесь: http://blog.pinguinplanet.de/2012/05/ubuntu-one-on-debian-wheezy.html


1
Добро пожаловать в Спросите Ubuntu! Хотя это может теоретически ответить на вопрос, было бы предпочтительным включить здесь основные части ответа и предоставить ссылку для справки.
fossfreedom

0

Я смог заставить синхронизацию работать, используя информацию по ссылке выше и некоторые методики проб и ошибок. Ссылки на эту ветку: https://wiki.ubuntu.com/UbuntuOne/Headless и http://blog.pinguinplanet.de/2012/05/ubuntu-one-on-debian-wheezy.html .

Это необходимые шаги:

  1. Переключитесь на выпуск «testing», заменив «wheezy» на «testing» в файле конфигурации /etc/apt/sources.list, а затем:

    sudo apt-get update
    sudo apt-get upgrade
    
  2. Установить предварительные условия:

    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. Соберите и установите клиент 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. получить и сохранить маркер входа в 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 .
    

    отредактируйте syncdaemon.conf:

    [__main__]
    oauth=hPQWPsH:rhOokmNiRuuoiHe... 
    

Теперь u1sdtool --startможно использовать для запуска демона синхронизации и u1sdtool -sдает:

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

Кажется, можно игнорировать ошибку. У меня не установлен Unity.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.