Czy uruchomienie Ubuntu One na Debianie jest „możliwe”? [Zamknięte]


28

Czytałem gdzieś, że Ubuntu One działa tylko na Ubuntu, co było zaskoczeniem (i przypuszczam, że to tylko oficjalne stanowisko). Co zajmie mi uruchomienie go na Debianie?

Odpowiedzi:


21

Dla przypomnienia, możesz uruchomić Ubuntu One w dowolnym miejscu, ale nie mamy zasobów, aby go przetestować i zapewnić płynne działanie wszędzie.

Powiedziawszy to, Ubuntu One składa się z kilku części; najbardziej problematyczny do uruchomienia w Debianie jest syncdaemon, i przypuszczam, że o to ci chodzi; Wtyczki tomboy, desktopcouch i funambol nie powinny w ogóle stanowić problemu (przynajmniej żaden problem specyficzny dla Debiana :-)).

@ajmitch pracuje nad wprowadzeniem pakietów Syncdaemon („ubuntuone-client”) do Debiana.

Tymczasem, to można dostać go w ruchu. Wersje niektórych bibliotek są nieco wyłączone w celu ściśnięcia, więc na razie potrzebna jest łatka. Oto, co możesz zrobić dla najbardziej podstawowej wersji „działającej”, w squeeze (zaczynając od instalacji podstawowej z zainstalowanym zadaniem „pulpitu”):

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

podczas gdy powyższe powoduje, że syncdaemon jest online i synchronizuje się (zakładając, że używasz Network Managera), nie obejmuje aktywacji dbus i integracji nautilus, co pomaga. Jeśli chcesz, możesz spróbować

(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

to powinno sprawić, że cały stos będzie działał. Jeśli pojawią się błędy importu, sprawdź, czy rzeczy zostały zainstalowane dist-packagesi nie site-packages (jeśli są w tym drugim, przenieś je :-))

Widzieć? Instalacja jednym kliknięciem.


2
jakieś ulepszenia od czasu twojej odpowiedzi? Dzięki.
FC

1
Czy jest szansa, że ​​zaktualizujesz tę odpowiedź, aby odzwierciedlić 2013?
Redsandro,

11

Będziesz potrzebował ubuntuone-clienti ubuntu-sso-client(pojedyncze logowanie) i wszystkich ich różnych zależności. Jest to głównie python, więc po przeciągnięciu pakietów nie powinno być żadnych problemów ze zgodnością binarną.

Ale możesz rozpocząć śledzenie zależności tutaj: http://packages.ubuntu.com/maverick/ubuntuone-client

P: Dlaczego nie podać instrukcji dodawania repozytoriów Ubuntu do Debiana?

O. O ile nie znalazłeś PPA, które właśnie zawierało wymagane rzeczy, możesz skończyć z zamianą (czytaj: uaktualnianie) całego ładunku pakietów do punktu, w którym sytuacja stała się bardzo niestabilna. O wiele bezpieczniej jest wciągać tylko to, czego potrzebujesz.

Coś takiego apt-get install --no-install-recommends ubuntuone-clientnie działałoby, ponieważ jak tylko dodasz repozytorium Ubuntu do instalacji Debiana, spróbuje zaktualizować wszystkie pakiety do najnowszej wersji. Jeśli którykolwiek z pakietów w repozytorium Maverick był nowszy niż pakiet w repozytorium (repozytoriach) Debiana używanych w tym systemie, chciałbyś, abyś dokonał aktualizacji do nich. Gdyby te pakiety zawierały (jak to zapewne robią) łatki niezgodne z Debianem, zniszczyłoby to system Debian. Nieskończenie bezpieczniej jest po prostu pobrać wymagane debaty za pośrednictwem packages.ubuntu.com (lub nawet tylko źródła) i zainstalować ręcznie.

Problem automatycznej aktualizacji niechcianych pakietów można ograniczyć lub ewentualnie uniknąć, stosując apt pinowanie , ale to jest poza zasięgiem mojej odpowiedzi.


4

Jest to z pewnością możliwe, ale w Debianie nie ma jeszcze żadnych pakietów. Występuje jednak błąd ITP , co oznacza, że ​​osoba zgłaszająca ten błąd pracuje lub zamierza go zapakować ( ITP = Intent To Package ).


1

Cóż, to Ubuntu One, a nie Debian One. :)

Oczywiście powinieneś być w stanie odbudować pakiety z najnowszego Ubuntu dla potrzebnych części Ubuntu One, w dystrybucji opartej na Debianie, która ma wymagane zależności do tego celu. Jeśli zależności nie są dostępne, może być konieczne ich przeniesienie.

Te dystrybucje nie są obsługiwane, ale jeśli napotkasz jakiekolwiek problemy z przebudowaniem pakietów, możesz poprosić o pomoc w #ubuntuone IRC w sieci Freenode.


1

Jest o wiele łatwiejszy sposób: pobierz DEB ze strony pakietu (dla Debian Wheezy pobierz DEB z UBuntu 12.04), zainstaluj jeden po drugim za pomocą gdebi (lub podobnego). Próba i błąd w celu uzyskania właściwej kolejności. Po zainstalowaniu wszystkich DEB, uruchom Ubuntuone-install z linii poleceń i postępuj zgodnie z instrukcjami.

Wskazówka: musisz mieć włączonego Network Managera i zarządzać swoim połączeniem.

Na tej stronie wymieniam potrzebne pakiety:

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

Jest w języku hiszpańskim, ale nazwy pakietów są takie same :-D



0

Udało mi się uruchomić synchronizację, korzystając z informacji z powyższego linku oraz prób i błędów. Odniesieniami są ten wątek, https://wiki.ubuntu.com/UbuntuOne/Headless i http://blog.pinguinplanet.de/2012/05/ubuntu-one-on-debian-wheezy.html .

Oto niezbędne kroki:

  1. Przejdź do wydania „testowanie”, zastępując słowo „wheezy” słowem „testowanie” w pliku konfiguracyjnym /etc/apt/sources.list, a następnie:

    sudo apt-get update
    sudo apt-get upgrade
    
  2. Zainstaluj wymagania wstępne:

    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. Zbuduj i zainstaluj klienta 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. pobierz i zapisz token logowania 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 .
    

    edytuj syncdaemon.conf:

    [__main__]
    oauth=hPQWPsH:rhOokmNiRuuoiHe... 
    

Teraz u1sdtool --startmożna go użyć do uruchomienia demona synchronizacji i u1sdtool -sdaje:

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

Zignorowanie błędu wydaje się prawidłowe. Nie mam zainstalowanego Unity.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.