Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[DRAFT] Add Google Drive Integration #241

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

nemunaire
Copy link
Collaborator

@nemunaire nemunaire commented Jun 1, 2023

This PR implements Google Drive integration (it respond partially to #102). It depends on #240, and extends it a bit.

It features:

  • New ui API to explore the remote file system and another one to call the download function (there is no interface for that, but it's useful for debugging)
  • Authentication using OAuth
  • List all files and directories, including shared drives (as directories on root)
  • Download and upload of PDF/EPUB/...
  • Download converted PDF of Google documents
  • Thumbnails retrieval

To finish my work, I need to find the answer to the following questions:

To do:

  • Document how to create an application to perform the OAuth mechanism
  • Understand why the doc told us JPG, PNG are supported, but they are reported as "Not compatible" with their official MIME type. Are they converted? How? seems not compatible after all

Let my know if you have some hints, requests, ...

@nemunaire nemunaire marked this pull request as draft June 1, 2023 15:21
Copy link

@github-advanced-security github-advanced-security bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CodeQL found more than 10 potential problems in the proposed changes. Check the Files changed tab for more details.

@nemunaire nemunaire force-pushed the integration-gdrive branch from ece6064 to cba4107 Compare June 2, 2023 08:29
@NotNotQuinn
Copy link

NotNotQuinn commented Aug 10, 2023

Understand why the doc told us JPG, PNG are supported, but they are reported as "Not compatible" with their official MIME type. Are they converted? How?

Even using the official Google Drive integration, you can't access JPGs or PNGs, so I don't think it should be a focus

@NotNotQuinn
Copy link

Document how to create an application to perform the OAuth mechanism

Probably google has some documentation, and then just point the user to where to input some tokens.

@NotNotQuinn
Copy link

There is a dedicated icon to highlight shared drives (penultimate image on https://support.remarkable.com/s/article/Integrating-with-Google-Drive-Dropbox-and-OneDrive): what is the key missing for that in message.IntegrationFile? (seems to be added in 2.13)

I investigated this and I found that I can't get the icon pictured to show up in 2.15.1.1189 (latest toltec) or 3.5.2.1807 (latest stable). Neither with a shared folder to a specific account, or a shared via a link anyone can access. The google drive web page shows the "shared folder" icon so I think that would be a scenario where it would be shown in the remarkable as well. I looked at the network traffic as well and I didn't see anything that would indicate changing a folder icon. For these reasons I don't think its worth while to pursue this icon feature anymore. It's possibly discontinued by remarkable and the field is no longer sent to the clients. The older versioned clients may still respect it, but there is no way to tell anymore.

@NotNotQuinn
Copy link

I can get a thumbnail from the API; there is a string (?) expected for that purpose in message.IntegrationMetadata, but what is the expected format?

image/png base64 encoded. resolution: 156x220

Example:

Request:

GET /integrations/v1/[redacted]/files/[redacted]/metadata HTTP/1.1
Host: internal.cloud.remarkable.com
Accept-Encoding: gzip, deflate
Accept-Language: en,*
Authorization: Bearer [redacted]
User-Agent: xochitl/2.15.1.1189 (codex 3.1.35-2)

Response:

HTTP/1.1 200 OK
Transfer-Encoding: chunked
Alt-Svc: h3=":443"; ma=2592000,h3-29=":443"; ma=2592000
Content-Type: application/json; charset=utf-8
Date: Thu, 17 Aug 2023 23:08:58 GMT
Server: Google Frontend
Traceparent: [redacted]
Via: 1.1 google
X-Cloud-Trace-Context: [redacted]
X-Envoy-Decorator-Operation: ingress GetIntegrationFileMetadata

21f8
{"id":"[redacted]","name":"foo","thumbnail":"iVBORw0KGgoAAAANSUhEUgAAAJwAAADcCAIAAAAKgl92AAAAA3NCSVQICAjb4U/gAAAYuklEQVR4nO2dyW8b1x3H33C4iZIoLpKoXbZky5IsBZat1PUS14HVNCjgoE0DFAUK9B8oil6KXlsUvRQo2h56aA89tGiB1PDBSesmhmU50WJqoWSR1kKRIrVwF3cOOcMZcqaHHzwgbMuRtZIv73MghjNv3jzOl2//vd+jJElCBLxQnHQCCIcPERVDiKgYQkTFECIqhhBRMYSIiiFEVAwhomIIERVDiKgYQkTFECIqhpSLqOFw+I9//CNCaGlp6a9//etuwX73u9+9Pp6FhYXdLvn9/l//+tfPnj2Dr3/+85+LxeIrQ3o8Hvl4fn4eISSKYjAYhDORSCQajb4+GScL/atf/eqk04AQQjabTZKkwcHBxsbGra2tvr4+juP++9//PnnyxGg0jo+PO53Onp6eTCazsrKSSqUoirpz547X6zWbzY8ePVpdXT1z5kw4HJ6amrpw4QJC6NNPP7VarX19fUqlEh6h1+uTyeSNGzd4nr93797q6uq3v/3t6enphYWFxsbGe/fueb3eXC6HEPr973+vUqm6urrm5+dTqdTp06cfPnz4n//8p7Gxsb6+/v79+62trbW1tfPz8/Pz83q93u/32+12m83W399/ki/xOYeQUx0Oh81mi8Vi2WzW5/P5/f5UKrWxsQFXP/vss0AggBB6/Pix3W7fLRKXy+XxePL5PEJIoVAghDwez+DgoE6nO3XqVEdHhyRJHo9HkqQPPvggGAy2tLQUCoUPP/ywsbGxs7MTYmhubjabzQihlZWVoaGhn/zkJxqNpvQpFEUhhB48ePDhhx++//77PM/fvXu3qanJZrO1tLTcvn17Y2Ojubn55s2bIyMjCKGLFy/G43GE0PXr10dGRnp7exFCt27dSiaTCKF//OMfFotlbm5Oo9HQNN3e3g5PefbsWSAQSKfTXq+3WCz6/X44Pz097fV6nU6nnB632720tGS1WpeWlubm5txu9+rq6sEVOQRRi8ViLpdbWFgIBoPBYDAQCNjt9rGxMZ7nEUI1NTUMw+Ryue7u7tOnT6fT6ZdjYFk2kUj86Ec/Gh8f9/v9NpvN7XabzeY//OEP586dQwh9+eWXtbW1dru9UChMTEyk0+lkMrmxsREKhRBC4+PjtbW1DocjmUzOzc2tra11d3c/ePDg/v372WxWfko0Gp2dnd3a2rpw4cLnn39+586dRCLx1ltvabXa5uZmu93udrtnZmYQQvl8/l//+hfDMG6322azRaNRjUbjcDj+/ve/I4SePHkyNzeHELp8+bJGo2lraxsbGzOZTEtLS/AghmF2dnYcDkckErl79+6XX34J53O5nNlszmQyuVwObBO0Wq0gCAqFQqPRMAyjVqtLE7x/pAMjCILP5xMEgef5fAnFYlGSJJZlJUkqFAqFQqFYLBYKhZdjKBaLgiDAJ8/zPM8XCoW7d++Kouj3+6empiRJyufzPM9LkpTNZuGhEBIih6uFQgHSAHHCo0vTKV/N5XKiKAqCIElSKpWSJAku8TwviqKcbI7jeJ6HYBzHQTwcx+XzeQgG94qiCAcApJBlWQgGiYQzgiAIghAKheDlQOTw0Hw+z3EcRHtAKKlczVlYlp2cnFQqlTdv3jzptFQYhyBqLBaDuvBwUSgUNE1Dnivbf96ho9FooFlwEMo3pxL2Tbn0U/fI48ePEUJer1cURThTKBTklvYbkUgkoGlT2uAMh8MMwyCEZmdn4UwqlYrFYnKAlZWV/aX8OKkkUaemphobGxFC0WhUoVCk02mWZZVKJbSB35RPPvmku7t7bW2tra0NIZTL5TKZjMVigdGGzc1NlmURQna73Ww2Q+Mon883NTWVDk2UJ5UkaiAQ6Onp2dra6ujoyGazkUhkfHw8Fos1NTW9sqf0elQqlVar9fl8NTU1oVDo4cOHW1tbCCGojziOm5iYQAjBqFMqlfr3v/8dCASMRuP+CobjpJJEVavVSqVSo9Hk8/lsNut0Ovv7+2tra/P5PIxXvBEmkwk9H+jgOC6bzdbX1yOEaJr2er23bt1iGCaRSECAUCjU1tZWU1ODEFKpVIf8ww6dg/eKjof19fXx8XE4np2dlSQpl8slk0lJkp48efLKW1iWzT6HYZjSLvJnn30WDoclSUomk36/P5vNsiwLHUqbzQbtbYZh4KskSalUCnqiHo8nk8kc5Q89BMq69StJ0rNnz6Bvs7OzYzabJUmiKCqZTNbU1ECO4Xk+m80aDAYIr1QqYRAKIeT3+1mWhaFBURTb2tqqqqoQQrlczmq1tra2FgoFmqahPBdFkaKoQCDQ2toKIwAURVEUJYpiOBxuaWmBF+X3+1taWvr6+iDa8qSsRZVJpVJ1dXXyV6/Xe/r06ReOXwiDEPJ4PLlcDt5+sVjs6uqC8vP1pNNpvV4Px5lMpra29rB+xfFxgqXEHpmbm4OSMxqN2u32ZDLpcrmy2ezi4uLq6qogCEtLS3B1Y2PjgM/K5XIQm8xuZXs5UwENJYZhaJpGCDkcjlgsViwWdTpdPp+HuRqlUgnzZWazuXQC5I2QJGlubu6LL75YXl7u7++PRqNWq/V///ufJEmFQuEwf8yxUO6i+ny+jo4OOG5sbKRp2mQyhcPhurq6q1ev1tTUeDyet95664BPsVqtvb29MASPEDIajdFo9L333qMoSq1WH/Q3HDvKk07AV5BMJqGnkc1mFQqFxWJZWlpSqVTLy8vQ2YDJjd7eXoVCodPpstlsdXX1mz7lwoULKysrBoOhs7MzHo9DB8bv93d0dMAQRGVR7qIaDAZ4rdXV1ZFI5MaNGwihZ8+eDQwMQIB4PF4sFkFglmX3oShCyO12V1dXDw0NURS1tLR0/vx5OJ9MJuXjCqLci9+2tjYY6EEIZTKZR48eIYSy2WyhUHj8+LHNZjOZTG63+4BPGRwcPHfuHLSTS1U0GAxQTlQW5S4qQkin08HwfVNTk1KphHI4m82mUqmWlhb03EglHo+fOXPmhNNaHlRGPzUWi5XOMno8nlOnTkGRGwwG9Xp9dXV1PB6HkT9CZYhKeCMqoPglvCmH0PrN5XK7WUUT3hSapnU63QEjOZycSsrwQ+GwXiOpUzGE1KkYUhmiwtoHhNDa2lo4HPb7/TCIjxDKZDKwdEkOQ6gAUTc3N+U6wmazWSyW7e1tnU5nt9sfP35cW1u7ubmJEKqrq7PZbCea0nKhAkRdW1uTRx5aW1vhQBRFj8cDX0FymqZTqdRJJbKsKHdRS9txi4uLg4ODCCGLxVIsFr/3ve+dPXuW4ziw8UQIdXR0yKtI98HOzg5CKJFIyEbFPM9nMpn9p/6EKHdRBUGQDUrAbnt+fh5Wt83Pzy8sLMzOzsIqSoRQdXU1LDLcBxsbGw6HAyHkdDpl20S1Wv2a5ZdlS7lPvanVajmvXLp0CQ6ePn165coVOM5ms4lEAmbcGIYBC7R98PDhwx/84AfBYLCjoyOTyTidzkgkcu3aNaPRWHGWSuWeUxFCcmEIq0X9fr8gCKIojo6OTk9PV1dXb29vQwCfz9fc3Ly/p1gsFqPRyLKsSqXSaDQsy77zzjt6vV6tVsNC2wqiAkQ9f/481HY0TYNdEkKIZdlisQgNJbBgEgRh37M0PM+DF4HOzs5AIBCLxUwmUzQapSgqEokcfBnaMVPuI0qSJFEUlUgkjEYjLGLp6uqCHAlaBoNBk8mk0WggDISHe/1+fyAQgApSFMX29vampiY5WvkRFEXZ7XbZgHR9fb27uxsu8TwfDofb29tfeEvlbPSLyl9Up9PJcZxCoZAkCRbTF4tFlUoFS6MQQgqFAspniqIkSRJFERx5IIRisVgymZRFNZlMRqMRIVQsFu12O/wnFAqFIAhqtRoMuEVRVKvVxWJRqVQKgkBRlFKplJ8F/xiNRiPbi5cpx2uReiDu3bsHB06nU15zL0nSzMzMK8OD8b4MrPJ/gZ2dnUgkIn91Op3gP+D+/ftwxuFwlIbf7VllRQXUqTKbm5s+nw8hFAqFVCrV5uam0+kMBoNnz55dX19/ObxKpdKVIPveQQgJguB0OuPx+MrKSkNDQzQaXVtbc7lcPT0909PTCCGfzwddXliuur6+vrq6Go/HGxoaSperlicVI2o4HB4ZGVlcXETP150ZjcZIJGIwGAwGA3j12Tt37tzp6OjY3NyEoluv1y8vL8MgRnV1tdvtvn379vz8PPSRoK/McVxNTY3JZAKZy5mKEdXr9fb19TEMA75PGIYZGxuD/kYqlZJbQHtkYGDgk08+GRgYgBr30aNHGo0GsmA+nw+Hw01NTTs7OzRNZ7PZeDwOHmJEUZT7xGXNSZf/+8HhcJTWqVar9U1jmJmZ+eKLLyRJCgQCoVBIPu90OmEFowwsZZSpiKU15d763Q1BEOTFv6Io7mPRsUyhUJCr22KxCK3iVwaAd1Xm/RlU/l0awj6omDqVsHcOYUA/mUzyPF/+hVL5I0mSWq3e95yEDCl+MYQUvxhSGaLKxuK5XI5hGBj/gzPpdBoWexODcpkKEDWbzcpOxu7du6dUKhcXF2G5aiAQ0Ov14GI9mUzKE6tfcypAVKvVevbsWThubW3VarWQNf1+P5iFwteD+HzAjAoQVXalAXPXCCGtVitJEkVRMH2t1WohgMVi2Z+NktxafGWz8fVXy5ByF5Xnedk+aGxsTBTFxcXFQqEwPj6uVCqj0ejY2JggCLKDlr07n8zn83/7298QQjabTe6PURQFDicRQrBA/YWrFWFaXO6GZzRNyx6iP/roIzgIBAJg1IIQikajBoMBhvF4npdz7Vdy//79W7ducRwHt3g8HlEUwcSpUChks1nwegjeWUDg1tZWmqZ5ni9zly3lnlPhJcIxz/PLy8sMw8Cs6vLy8uzsbH19PWxTgBAKBAKyDfBXolKpOjs7Q6FQfX09x3FqtRqszsxmczKZVCqV09PT0Wi0sbERfOGBxYXZbC7zTWlQ+YuKEKqvr4dqdWpqCqxPKIpiWXZ7exuMieSqrnRo/iuBLpDJZEqn05FIZHp6GiYGkslkXV2dSqWqr683mUypVCoYDIIXSrgKNjHlTLkXvwihS5cugU/Irq6uhYWF3t5ejUZTVVV15coVsAo+deoUQigSibzzzjulN4ZCoUgkAjWiJEkWi8ViscAlq9UKdkZ6vX5tbW14eFh2wQVbV8zMzHznO9+haTqTyVy6dKmrqwuu5vN58FpZzpT7MOHKygqUjYIg0DQNpTFN0xzHaTQaSZJYlq2trYWroigWCoWLFy++fiBakiS73a5QKIrFIpiryVkcMitN0yqVCoyVUMl8nCAIGo1GpVL19fUdz8/fH+UuKrC5udnZ2en1eg0GA/jGbmpqggaOIAhbW1vd3d2lLSbA5/NtbW3J1oSdnZ3y+ioZ2PpG3vzJ4/FAprTb7eAdz+/3WywWOVqXyyV3msuX456Vf3OsVivYb46Pj09OTnIcB+YHCwsL4BNStkYYGxvbe7RgRDgxMSFJEsdxDMOAm2awXPnnP/8JuwtBgHg8nslkisWiw+EAe5pypgIaSrBdH0JIrVbrdLp0Og2Zb3t7G9q6cmFbVVW1xyUSo6OjKpXqwYMHkiTBIz799NNEIoEQyufzkUikp6dnbGyMZVmTycTzPMMwExMTsViso6MDlguUM+UuqiAIctfzG9/4xoULFxoaGtrb21Op1O3btwcGBhiGkQvVUp93Xxmt2+0eGhqCNnAoFNJqtbDbn1KpdDgcw8PDW1tbsPNYJpNxOBzd3d01NTWyYXc5U+7pkyQJbJEkSVpcXITjdDpdU1MD+TUajTY0NIDzULVavcdhwr6+vsnJyeHh4ebm5lwu19XVdebMGZ1Ol0wmW1tboSX84x//WKfTsSxrNpvffffdQqFQVVW1uLj4zW9+8yh/8WFwwsX/Hvj888/l40AgID238IO9YjKZjM/ng6tLS0vRaHQvcYLvUTguvSUWi70QkuM4eSPAFzbqK1vKvfhFz3cZQQhxHAeu16uqqjiOe/To0c7OTk1NDfh8QAiFQqE9rlAzGo1ytKW3vLxuTqPRyOU/RVGye/1ypgJEvXr1qsvlQghptdrq6mpYsZRKpSwWi0qlKhaL8KJjsVhPT89JJ7YsqIx+qiRJFEV5PJ6mpiadThcOh+WxoWAwCKPwB7T+xYnKEJXwRpC/NoYcQpcmFArJe/oQDoIkSTqd7k0Xe70MKX4xhBS/GHJ8onIcJx8fxR7mR0HppjQVtEHNkYv6pz/9SRCEubm5Uush2birPBkbG1teXg4EArLJOEIoGo2WvyELcLSiTk9PX7t2TaVSweSJy+Wanp7e3Nzs6enxer37iPBlfwuH7oGB4zi73d7f3+9yuerr64PB4Pz8/OzsbHt7+/5c2h1Dml/gaEVlGGZ4eBgs9iRJMhqNOp0Otgzeo3ve3/72t7KPhXQ6/fJd2Wz2cOfCaJoeGhpCz+2Nm5qatre3h4eH0b7sfkOh0Mt1zc7OTmkZcOgcraiQdK1Wm8/nE4nE/Py8KIqCIIDHqb3EcOrUKXnT05mZmVKrA3jFHR0duxXm6XR6tzyxsrKy2xN9Ph9syAozQqOjoyaTCTy17N0yVHa953A4wJoVUgufvb29T5482WNU++AIp97sdru8I5vFYtHr9e+99x58jcfjsgsrhJDb7c5kMvKWxGfOnJHHzZeXlxOJxPj4+AcffABNLVEU19bW7HZ7Z2dnXV1db2/vK3fDzOfzf/nLX27cuLG6ugpnZFMjhUIBPrcgR5bCsuzTp0+///3vI4SGh4e3t7dHRkbg0vr6uuzlEiGUTCY9Hg8MTEqSVFdXJxunPX361Gw237179+c//zmkmeO4QCAwNTXV3t5+9uzZlpaWI20qHqGoGo0mk8lANir1sQpuxGQjIITQbtt5BYPBjz76qK6uDualIeuIotjb2zszM3P58mU5whduDIfDH3/88S9+8Yvd0nblyhWXy/Xxxx//8Ic/LD3PMExPT8/CwoIkSfAPkMt2WJjV19cHW4wYDIaLFy++MvKJiYmf/vSnMOEDaVMqlV1dXZOTk9/61rfk2HZL28E5wqhLfb25XC451xaLRZ/P19nZWXo1nU7L+0yfO3cOcurc3Nz7778/MTExMDBQKBTASiGRSKjVapgP1+l04IHuhUdbLJaf/exnv/nNb7773e/KSxxLc+rc3NzIyMgLiiKEGhoaAoGAXKcGg0G5mij1WYgQgg2XIUJJkgwGA1zleb67u5thmIaGBvRcVLCsaGxsjEQiDQ0NFEUJgnCwt/s6jtbyIZfLgVkllDY7OztKpdJoNPr9/lJRd7PPO3/+vEql6u/vBy+fUKVRFBWPx69fv87zPKykBzOUl/nlL3+ZyWReOcNqNpvlXc1fwOv1trW1mc1mq9V6/fp1lmXBvU93d/fU1NTVq1chmMFgePvtt1++Xa1WDw8Pj42NgXdiKF0UCkU+n+/t7aVpGmQ+UmdMRyhqLpez2WyxWOz8+fNgVRQOh1mWHRwcNBqN+Xx+NzFkoJaSN7u8fv06bC9duv3l+vq6XA6/gFqt3m3OfDdFEULpdNrn88kLJrPZ7Ojo6LVr1+SdXF/P6OhoV1cXTdPQPnr77bc3NjbA3FzG4XBcu3btK6PaN0coaiaT0ev10WhUr9eDUcjCwsLNmze1Wi04Bn3TCLVa7ctLZRoaGg7RGoFhmP7+fr/f39TUBCnc2NhQq9Vyuf2VMdy6dQuV/GmMRuPLjpk6OzuPdInVEQ7ob2xs0DQdjUaHhoamp6cvX75cKBQKhYJWq52cnDzSv+q+gZl2MNh3uVwtLS1QYGo0mmg0yrLsHntiJ8sRiioIQj6fh14mwzDV1dVQneTz+UrZwB0cQ8NxMpk8uDOc44FMvWEImXrDkENoKO3s7FTKVFr5o9FooIN7EEjxiyGk+MUQIiqGEFExhIiKIURUDCGiYggRFUOIqBhCRMUQIiqGEFExhIiKIURUDCGiYggRFUOIqBhCRMUQIiqGEFExhIiKIURUDCGiYggRFUOIqBhCRMUQIiqGEFExhIiKIURUDCGiYggRFUOIqBhCRMUQIiqGEFExhIiKIURUDCGiYggRFUOIqBhCRMUQIiqGEFExhIiKIURUDCGiYggRFUOIqBhCRMUQIiqGEFExhIiKIURUDCGiYggRFUOIqBhCRMUQIiqGEFExhIiKIURUDCGiYggRFUOIqBhCRMUQIiqGEFExhIiKIURUDCGiYggRFUOIqBhCRMUQIiqGEFExhIiKIURUDCGiYggRFUOIqBhCRMUQIiqGEFExhIiKIURUDCGiYggRFUOIqBhCRMUQIiqGEFExhIiKIURUDCGiYggRFUOIqBhCRMUQIiqGfF1EjcViHMeddCqOia+LqIVCgWXZk07FMfF1EZWmaYqiTjoVxwQlSdJJp4FwyHxdcurXCiIqhhBRMYSIiiFEVAwhomIIERVDiKgYQkTFECIqhhBRMYSIiiFEVAz5PyKpsZXEaCWkAAAAAElFTkSuQmCC","sourceFileType":"application/pdf","providedFileType":"application/pdf","fileType":"pdf"}

0

Open this link in your browser to view the image:

data:image/png;base64,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

@nemunaire nemunaire force-pushed the integration-gdrive branch 2 times, most recently from d019821 to 4c5b597 Compare August 18, 2023 09:06
@nemunaire
Copy link
Collaborator Author

Hi @NotNotQuinn! Thanks for your investigations!

I just update my PR to include thumbnail retrieval, it works well for PDF, but not for google documents. Is this the same with the official integration?

I use this patch on my own instance since June. Once a week (exactly 1 week after the integration creation), the token seems to expire unexpectedly. Initially the access_token is valid 1 hour, I renew it correctly if needed thanks to the refresh_token. But according to the documentation the refresh_token shouldn't expire... I need to investigate this issue.

@NotNotQuinn
Copy link

NotNotQuinn commented Aug 18, 2023

I just update my PR to include thumbnail retrieval, it works well for PDF, but not for google documents. Is this the same with the official integration?

This isn't the case. On the official integration you can see previews for pdfs, google docs, google sheets, and google slides.

Also, I wanted to mention:

There is a second line on rm mock-ups, under the file name, with the textual file type or the number of pages: what is the key missing for that in message.IntegrationFile?

This doesn't show up in the official google drive integration either. It feels like it should, and it would be cool if it did, but it doesn't.

nemunaire added a commit to nemunaire/rmfakecloud that referenced this pull request Oct 17, 2023
Update messages.IntegrationMetadata struct as mention in ddvk#241 (comment)
@feurer98 feurer98 mentioned this pull request Nov 8, 2023
nemunaire added a commit to nemunaire/rmfakecloud that referenced this pull request Aug 6, 2024
Update messages.IntegrationMetadata struct as mention in ddvk#241 (comment)
@nemunaire nemunaire force-pushed the integration-gdrive branch 4 times, most recently from fb4ba9f to 338115d Compare November 17, 2024 14:33
internal/integrations/localfs.go Dismissed Show dismissed Hide dismissed
internal/integrations/localfs.go Dismissed Show dismissed Hide dismissed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants