Dropbox di OpenBSD

10

Adakah yang berhasil menginstal dropbox dengan dropboxd berjalan dengan baik di OpenBSD (FreeBSD juga akan bekerja untuk saya ..)? Saya telah membangun dari sumber dan semuanya menginstal dengan baik tetapi ketika saya mencoba untuk menjalankannya:


$ python /usr/bin/dropbox start                                                
Starting Dropbox...
The Dropbox daemon is not installed!
Run "dropbox start -i" to install the daemon

$ ssh root@localhost 
root@localhost's password: 

<snip>

# python /usr/bin/dropbox start -i                                                                    
Starting Dropbox...
Dropbox is the easiest way to share and store your files online. 
Want to learn more? Head to http://www.dropbox.com/

In order to use Dropbox, you must download the proprietary daemon. [y/n] y

Error: Platform not supported

Jadi saya memeriksa klien baris perintah dan hanya teks dari http://wiki.dropbox.com/TipsAndTricks/TextBasedLinuxInstall tapi tentu saja itu sudah dikompilasi untuk linux .. tidak ada dadu.

Adakah yang mencoba mengatasi ini dan mencari solusi untuk kombo DropBox / BSD?


Saya terus memasang ini dan akhirnya berlari ke show stopper: Tidak ada emulasi linux pada amd64 untuk openbsd. Permainan telah berakhir. Maaf telah membunuh waktu semua orang.

Uncjamil
sumber
Bisakah Anda membuka /usr/bin/dropboxeditor teks, mencari Error: Platform not supportedpesan dan memposting baris kode yang sesuai di sini (beberapa baris di atas dan beberapa baris di bawahnya juga)? Karena ini adalah skrip Python, dimungkinkan untuk mengubahnya sedikit jika itu hanya pemeriksaan untuk platform yang didukung secara resmi.
Vitor Py
ya Dropbox masih tidak mendukung Mac OS X (yang menggunakan varian BSD kernel) untuk alat-alat baris perintah - artinya masih tidak mungkin untuk memulai ulang dari jarak jauh setelah reboot melalui baris perintah!
Michael
Saya punya beberapa ide: 1. Menggunakan Dropbox API untuk membangun klien sederhana: dropbox.com/developers/documentation/http/overview 2. Jalankan Dropbox di mesin virtual Linux. Dalam hal ini folder Dropbox di VM dapat dibuat tersedia untuk host (misalnya, dengan Samba).
jsb

Jawaban:

3

Ini adalah kode yang mengganggu pada skrip dropbox:

def plat():
    if sys.platform.lower().startswith('linux'):
        arch = platform.machine()
        if (arch[0] == 'i' and
            arch[1].isdigit() and
            arch[2:4] == '86'):
            plat = "x86"
        elif arch == 'x86_64':
            plat = arch
        else:
            FatalVisibleError("Platform not supported")
        return "lnx.%s" % plat
    else:
        FatalVisibleError("Platform not supported")

Anda dapat mencoba mengganti ini dengan sesuatu yang mirip dengan:

def plat():
    arch = platform.machine()
    if (arch[0] == 'i' and
        arch[1].isdigit() and
        arch[2:4] == '86'):
        plat = "x86"
    elif arch == 'x86_64':
        plat = arch
    else:
        FatalVisibleError("Platform not supported")

Tentu saja, Anda mungkin menemukan masalah lain di sepanjang jalan. Semoga berhasil.

Vitor Py
sumber
Saran yang bagus Saya akan memberikan pusaran itu dan memberi tahu Anda bagaimana hasilnya.
unclejamil
@unclejamil Jika Anda mengalami masalah lain yang mencoba menjalankannya, beri tahu saya :) Saya tidak mengerti mengapa orang-orang melakukan semacam pengecekan platform yang tidak masuk akal. Jika berhasil, biarkan berhasil!
Vitor Py
Pemasang selesai tetapi sayangnya dropboxd masih sekarat. Tidak yakin di mana masalahnya, tetapi saya pikir saya akan memberi Anda pembaruan dan terima kasih lagi atas sarannya. Saya akan terus memalu hal ini dan melihat apakah saya bisa mendapatkan cinta. Jika saya membuat kemajuan, saya akan memberi tahu Anda.
unclejamil
1
@unclejamil Apakah Anda yakin dropboxd dijalankan dengan benar oleh lapisan emulasi linux? Apakah Anda menjalankan sysctl kern.emul.linux=1sebelum menjalankan dropboxd? Setidaknya dalam sistem Fedora di mana saya sekarang, dropboxd adalah biner statis, ini sudah cukup. Di sisi lain ~/.dropbox-dist/dropboxadalah eksekusi dinamis dan ada beberapa hal yang harus dilakukan sebelum dapat dijalankan: periksa compat_linuxhalaman manual.
Vitor Py
0

Periksa Kompatibilitas Linux. Tipe:

sysctl -w kern.emul.linux=1

dan jalankan kembali dropbox ....

Matias Colli
sumber
1
Kompatibilitas Linux dijatuhkan di OpenBSD 6.0 (pada 2016), karena tidak ada yang menggunakannya dan itu terlalu merepotkan untuk dipertahankan.
Kusalananda
0

Pilihan 1:

The Dropbox API didokumentasikan dengan baik dan memungkinkan Anda untuk melakukan lebih dari apa yang mungkin Anda inginkan. Sepertinya akan mudah untuk menulis CLI untuk operasi sederhana, tetapi seseorang sudah melakukan lebih dari itu: https://github.com/dropbox/dbxcli

Saya belum menguji dbxcli di OpenBSD, tetapi secara umum menurut saya rute API akan menjadi solusi termudah.

Pilihan 2:

Siapkan mesin virtual Linux dan jalankan Dropbox di dalamnya. Anda dapat mengakses sistem file tamu dengan nyaman di host Anda melalui beberapa metode (server file lokal, atau mount melalui ssh)

jsb
sumber