prrvchr / mdriveooo Goto Github PK
View Code? Open in Web Editor NEWYour Microsoft OneDrive data finally available in LibreOffice
Home Page: https://prrvchr.github.io/mDriveOOo/
License: Mozilla Public License 2.0
Your Microsoft OneDrive data finally available in LibreOffice
Home Page: https://prrvchr.github.io/mDriveOOo/
License: Mozilla Public License 2.0
Hi,
I can open a file located on OneDrive and modify it in LibreOffice but the modifications made are not really effective on the OneDrive file, they are only visible when I open the OneDrive file with LibreOffice. For example, after opening the file in LibreOffice for the first time, the changes actually made to the OneDrive file (using Word online, for example) are not visible on the LibreOffice document (even after waiting a few minutes, then opening the file in LibreOffice).
In fact, I have the impression that the extension makes a local copy of the online file at the first opening, then associates this local copy with the online file of the same name. In the end, all you do is open and modify this local copy.
I believe that for the changes to be saved and for the whole thing to work properly, it should be possible to make a remote backup, using a service in libreoffice...
(Confirmed on last update)
It' may be because I'm using LibreOffice portable, most of the extensions I've tried installing will lock up LibreOffice after I attempt to add/import them into the Extensions Manager. This happens with themes and it happened with OAuth. I've waited a good 15 minutes each time I've attempted to Add an extension, but the progressbar stops at 1/16th of the way from completion and the Extension Manager window will turn the famous windows white-out color with the (Not Responding) msg on the title bar. After 15 minutes or so of waiting, I'll force-close the program. Surprisingly, when I re-open LibreOffice, the Extension manager says the extension is installed. However I can't imagine these are good signs of a valid install. That being said.... the oneDriveoOo.oxt doesn't freeze LibreOffice. It takes a long time, but it does complete the install.
Whether it is or isn't installed, I changed the Open File Dialog to the native LibreOffice version as per the instructions, then tried pasting those links that were suggested. One of them causes LibreOffice to complain about java or something, but that wasn't listed as a requirement on the install page so I doubt that's the issue. I did see a little dropdown box that has "Google Drive" and "One Drive" listed in it and when selected it brings up a little box with UserShare/UserName/Password, but it doesn't connect.
I'm not interested in any full installers of any software, so If there's another requirement that I'm missing I probably just wont bother with it any further. As I mentioned before, this is a portable setup. I've actually got OneDrive mapped as a Network Drive right in my file explorer anyway.
Even though I have installed the three extensions indicated in your tutorial: OAuth2OOo.oxt, jdbcDriverOOo.oxt, mDriveOOo.oxt, I have not been able to get the corresponding access to OpenDrive to create, edit and then save my files. I´m using Ubuntu 22.04.3 LTS and LibreOffice 7.5.5.2. When running in terminal the command soffice as was suggested at #9 (comment), LibreOffice open and show its main screen, no errors at all. Maybe I´m doing something wrong! Any help would be highly appreciated. Thanks.
Hi,
The new functionnality doesn't seem to work for me, shared files (for example .docx) are recognized as folders. When I try to open it, it open a folder which is empty
Good Day,
I very much like te work that has been done to allow LibreOffice to access OneDrive.
I do have some unusual results.
First, I am running Raspbian 10 (on Raspberry Pi 4B) and LibreOffice 6.1.5.2
I have no problem connecting with either
vnd.microsoft-apps://your_account/
or
vnd.microsoft-apps:///
when I get the below window (fig 1)
I notice a single file missing (_Sailing summary.xlxs)
I can open all the folders except "Music" which is definitely not empty
For Folders that I can open I can access them in LibreOffice Calc or whatever app is appropriate.
Fig 1
Also, when i open the Documents folder (fig 2) I can navigate to and access folders and files
except the _Sailing folder. It is not empty but i cannot navigate to it.
Fig 2
I am wondering if there is a way to refresh the local database for the
oneDriveOOo.oxt extension?
Thanks for any help.
There is a way to access and modify shared files ?
Fedora 37, installed all other required extensions and removed the unnecessary packages. I receive that error when "vnd.microsoft-apps://" into the open dialog.
Hi,
I've received a security message from Microsoft about 6 h after my first connection with the extension.
It is detected as a unsual activity from a windows PC located in China and using Edge browser... I'm on Arch Linux, in France.
This activity can be linked with my first connection through
extension?
Hi, I seem to experience the same issue as reposted in issue #1 . I am using LibreOffice 7.0.4 under Debian Bullseye (sid/testing).
Whenever I try to open a file using the documented procedure, I see this dialog and then nothing happens:
Another interesting symptom is that, in the configuration dialog, whenever I click on the "datasource" button, I get a dialog telling me that "vnd.microsoft-apps.odb" does not exist.
Starting LibreOffice from the command line shows nothing interesting:
/* beginning of log */
wolfgang@lgi20q2sblln433:~$ soffice
(soffice:42791): Gtk-WARNING **: 16:33:49.765: Theme parsing error: gtk.css:4419:85: '/*' in comment block
(soffice:42791): Gtk-WARNING **: 16:33:49.765: Theme parsing error: gtk.css:4512:64: '/*' in comment block
(soffice:42791): Gtk-CRITICAL **: 16:33:53.928: gtk_tree_view_column_set_sort_indicator: assertion 'GTK_IS_TREE_VIEW_COLUMN (tree_column)' failed
(soffice:42791): Gtk-CRITICAL **: 16:33:53.928: gtk_tree_view_column_set_sort_order: assertion 'GTK_IS_TREE_VIEW_COLUMN (tree_column)' failed
1 42791 2021-01-14 21:34:11.976338058 ContentProviderProxy::init(): ContentProviderProxy for plugin: com.gmail.prrvchr.extensions.oneDriveOOo loading ... Done
ContentProviderProxy.init()
ContentProviderProxy.registerInstance() Register Scheme/Plugin/Replace: vnd.microsoft-apps/com.gmail.prrvchr.extensions.oneDriveOOo/True ...
2 42791 2021-01-14 21:34:11.976567263 ContentProviderProxy::registerInstance(): Register Scheme/Plugin/Replace: vnd.microsoft-apps/com.gmail.prrvchr.extensions.oneDriveOOo/True ... Done
ContentProviderProxy.createContentIdentifier()
ContentProviderProxy._getContentProvider()
ContentProviderProxy.createContentProvider()
3 42791 2021-01-14 21:34:11.982034076 ContentProvider::init(): ContentProvider: com.gmail.prrvchr.extensions.oneDriveOOo.ContentProvider Chargement terminé
4 42791 2021-01-14 21:34:11.982073281 ContentProvider::registerInstance(): Scheme/Plugin: vnd.microsoft-apps/com.gmail.prrvchr.extensions.oneDriveOOo ... Démarré
ContentProviderProxy.createContentIdentifier()
ContentProviderProxy._getContentProvider()
ContentProviderProxy.createContentProvider()
5 42791 2021-01-14 21:34:24.782538887 ContentProvider::init(): ContentProvider: com.gmail.prrvchr.extensions.oneDriveOOo.ContentProvider Chargement terminé
6 42791 2021-01-14 21:34:24.782765416 ContentProvider::registerInstance(): Scheme/Plugin: vnd.microsoft-apps/com.gmail.prrvchr.extensions.oneDriveOOo ... Démarré
7 42791 2021-01-14 21:34:24.874686036 ContentProvider::__del__(): com.gmail.prrvchr.extensions.oneDriveOOo.ContentProvider déchargement ... Terminé
ContentProviderProxy.createContentIdentifier()
ContentProviderProxy._getContentProvider()
ContentProviderProxy.createContentProvider()
8 42791 2021-01-14 21:34:33.802747507 ContentProvider::init(): ContentProvider: com.gmail.prrvchr.extensions.oneDriveOOo.ContentProvider Chargement terminé
9 42791 2021-01-14 21:34:33.802946633 ContentProvider::registerInstance(): Scheme/Plugin: vnd.microsoft-apps/com.gmail.prrvchr.extensions.oneDriveOOo ... Démarré
10 42791 2021-01-14 21:34:33.869014400 ContentProvider::__del__(): com.gmail.prrvchr.extensions.oneDriveOOo.ContentProvider déchargement ... Terminé
ContentProviderProxy.createContentIdentifier()
ContentProviderProxy._getContentProvider()
ContentProviderProxy.createContentProvider()
11 42791 2021-01-14 21:35:50.475423598 ContentProvider::init(): ContentProvider: com.gmail.prrvchr.extensions.oneDriveOOo.ContentProvider Chargement terminé
12 42791 2021-01-14 21:35:50.475640885 ContentProvider::registerInstance(): Scheme/Plugin: vnd.microsoft-apps/com.gmail.prrvchr.extensions.oneDriveOOo ... Démarré
13 42791 2021-01-14 21:35:50.549512864 ContentProvider::__del__(): com.gmail.prrvchr.extensions.oneDriveOOo.ContentProvider déchargement ... Terminé
14 42791 2021-01-14 21:38:06.734267918 ContentProvider::__del__(): com.gmail.prrvchr.extensions.oneDriveOOo.ContentProvider déchargement ... Terminé
wizardcontroller.py 1
wizardhandler.py 1
oauth2tools.py 1
/home/wolfgang/.config/libreoffice/4/user/uno_packages/cache/uno_packages/lu35568q47um2.tmp_/OAuth2OOo.oxt/pythonpath/oauth2/requests/init.py:89: RequestsDependencyWarning: urllib3 (1.26.2) or chardet (4.0.0) doesn't match a supported version!
warnings.warn("urllib3 ({}) or chardet ({}) doesn't match a supported "
requests.init.py 1
oauth2tools.py 2
wizardhandler.py 2
wizardcontroller.py 2
wizardserver.py 1
wizardserver.py 2
wizardserver.py 3
request.py 1
request.py 2
request.py 3
request.py 4
OAuth2Service._getSSLVersion() OpenSSL 1.1.1i 8 Dec 2020
OAuth2Service._getSession() 1 OpenSSL 1.1.1i 8 Dec 2020
1 42791 2021-01-14 21:38:06.841334371 OptionsDialog::init(): Loading ... Done
OptionDialog._doConnect() 1
OptionDialog._doConnect() 3 - - False
OAuth2Service.getAuthorization() 1
Wizard.init() 1
Wizard.init() 2
Wizard.init() 3
Wizard.init() 4
Wizard.init() 5
Wizard.init() 6
OAuth2Service.getAuthorization() 2
WizardController.init() 0
OAuth2Service.getAuthorization() 3
OAuth2Service.getAuthorization() 4
OAuth2Service.getAuthorization() 5
Wizard.execute() 1
2 42791 2021-01-14 21:38:07.933213784 WizardPage::init(): PageId: 1 ... Done
3 42791 2021-01-14 21:38:07.933247188 WizardController::createPage(): PageId: 1 ... Done
4 42791 2021-01-14 21:38:07.942107992 WizardController::onActivatePage(): PageId: 1... Done
5 42791 2021-01-14 21:38:07.942139296 WizardPage::activatePage(): PageId: 1 ... Done
Wizard.execute() 2
6 42791 2021-01-14 21:38:08.537909347 OAuth2Service::getAuthorization(): Wizard Loading ... Done ... ERROR: Wizard as been aborted
OptionDialog._doConnect() 4
PyOptionsDialog.init() 1
/* end of log */
Extension is detected, O2auth is good but when i try to acess or open a file it doesn't work.... Have you any workaround or you want more information ?
Hi prrvchr,
I apologise in advance if I am doing something stupid, but after a couple of hours I am still unable to get this working.
I have followed the install instructions on my Ubuntu 23.04 build. I was able to complete the OAUTH process to authenticate with my oneDrive account, but oneDrive does not show up in the list of services when I go to the file open dialog. Am I going about this all wrong?
I confirmed that I do not have the ibreoffice-sdbc-hsqldb or libhsqldb1.8.0-java packages, and I installed the python3-cffi package.
LibreOffice install details are:
Version: 7.5.3.2 (X86_64) / LibreOffice Community
Build ID: 50(Build:2)
CPU threads: 8; OS: Linux 6.2; UI render: default; VCL: kf5 (cairo+xcb)
Locale: en-AU (en_AU.UTF-8); UI: en-US
Ubuntu package version: 4:7.5.3-0ubuntu0.23.04.1
Calc: threaded
Java version:
penJDK Runtime Environment (build 17.0.7+7-Ubuntu-0ubuntu123.04)
OpenJDK 64-Bit Server VM (build 17.0.7+7-Ubuntu-0ubuntu123.04, mixed mode, sharing)
Any advice gratefully received.
Regards,
John
I'm running ArchLinux and trying to make this work. I followed the guide execpet for the unistallation of the libreoffice-sdbc-hsqldb
and libhsqldb1.8.0-java
packages, which do not exist in ArchLinux (hsqldb
is not installed on my system, while the former might be since Arch packages LibreOffice quite monolithically). I have been able to register the OAuth2 client using my company account (named URL) by hitting Enter but then nothing happens: I don't see any file from the online storage.
I guess ArchLinux is not supported, but since I'd really need this feature, and if there is interest in supporting Arch, I can provide feedback on request for debugging. Thanks.
It would be good to have a contributing section in readme.md to detail how best to contribute, perhaps even a table of contents (installing, contributing)
It would also be great if you set up the milestones/Projects, so that we can see what bugs and functionality is on the "to do".
Would also be good to setup issues for each feature, and for them to be tagged as a feature, and also tagged "needs help".
With all of that completed, contributors will know:
This will significantly help the community to contribute.
Also, as a side note: a lot of the FOSS community doesn't like GitHub because Microsoft purchased it, many moved to GitLab, though that probably won't bother many for this project, because it's literally for integrating Microsoft's OneDrive service. It personally doesn't bother me, but perhaps it would be good to have a GitLab mirror, or perhaps even move to GitLab and maintain this as a mirror?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.