Skip to content
This repository has been archived by the owner on Jan 6, 2024. It is now read-only.

The path forward #29

Closed
oskardotglobal opened this issue Sep 12, 2023 · 16 comments
Closed

The path forward #29

oskardotglobal opened this issue Sep 12, 2023 · 16 comments

Comments

@oskardotglobal
Copy link

As we've learned, Obsidian will keep trying to prevent the sync plugin from working on newer versions. On desktop, just replacing the asar is possible, but on mobile it is not.

There has to be a better solution for the problem with the plugin than to keep on playing cat and mouse with the obsidian devs.

We could:

  • Reverse engineer the actual sync plugin so we don't have to ride off of code they might patch
  • Write a sync server and client from scratch

There's this somewhat abandoned project called obsidian-diy-sync which could serve as a starting point for this

@acheong08
Copy link
Owner

I've been working on a general library compatible with the server which can then be plugged into Logseq or Obsidian but progress has been slow as I'm only now starting to learn TypeScript. The logic for websockets/callbacks is a bit confusing. That is the plan rather than maintaining a plugin they will relentlessly patch. After that is done, Logseq will come first as I would rather migrate away from Obsidian as a closed source solution.

@oskardotglobal
Copy link
Author

I can help out if you need to, I have decent experience with TS
I'll be staying with Obsidian for a while so I can then also help maintain the actual obsidian plugin

@acheong08
Copy link
Owner

I can help out if you need to, I have decent experience with TS

Thanks. I'll make an issue in the other repo to ask for some help/feedback

@Aetherinox
Copy link
Contributor

Aetherinox commented Sep 12, 2023

I saw the Obsidian update and before I hit the button I thought "No. Going to go check the obi-sync repo first", and behold. Obsidian introduces more f*ckery.

Not updating Obsidian until another solution is found.

@oskardotglobal
Copy link
Author

Mine just updated itself. I'm using Syncthing in the meantime

@oskardotglobal

This comment was marked as off-topic.

@acheong08

This comment was marked as off-topic.

@acheong08

This comment was marked as off-topic.

@oskardotglobal

This comment was marked as off-topic.

@acheong08
Copy link
Owner

Sorry for the slow progress. I just moved to a new country with nothing but a laptop and some clothes -- Had to prepare for the start of university. I've settled in and will continue to work on this

@Aetherinox
Copy link
Contributor

@acheong08 Am I dreaming, or did you put out an update?
Does anything address the fiasco that broke it prior? Or are you still aiming to work on a separate project.

@acheong08
Copy link
Owner

I'm just keeping compatibility (See #32) with the latest clients.

It's currently Christmas/New years break and I've got a bit of time. I've stopped using Obsidian (Now using neovim + syncthing). I've done a bit more JavaScript during my semester in university and now have a bit more confidence with it. If I can finish up the pending tasks on https://github.com/gptlang/CopilotChat.nvim/ I'll take another shot.

@kepano
Copy link

kepano commented Dec 27, 2023

Scrolling through the original Hacker news post I've just realized the Obsidian CEO tried to bribe you @acheong08

I don't want to reduce his motivation to learn how to reverse engineer things! I learned a lot from those kinds of projects. However, we do have a way to gift someone a subscription[1]
@acheong08 if you want a Sync subscription I'll be happy to cover it.

https://news.ycombinator.com/item?id=37255661

This was in response to someone who stated "Give him sync for free! Or atleast let me sponsor the kid."

I think this person suggested that I offer a free subscription because in his original HN post, @acheong08 explained his motivation for the project by saying "I'm a recent high school graduate and can't afford $8 per month for the official sync service"

Re-read my reply: "I don't want to reduce his motivation..." — In other words, I didn't want to offer a subscription if it would reduce acheong08's motivation to keep working on this project, but that I would be happy to cover it if he did want one. I continue to be supportive of the project within the bounds previously described in #19.

On a separate note, please be aware that we are actively working on lots more improvements to Sync, which could affect this project. E.g. #32 is a side effect of a change to check the number of vaults a user can sync since we recently increased that from 5 to 10. We're also making more improvements around security to better support our commercial users. This is to say you should expect an increase in changes around Sync in the near future.

@acheong08
Copy link
Owner

On a separate note, please be aware that we are actively working on lots more improvements to Sync, which could affect this project

I'll try to keep up with things so nothing breaks but probably won't support new things (e.g. I see a region picker now).

@dphaldes
Copy link

dphaldes commented Jan 1, 2024

Anytype is upcoming note taking app which is focused on local-first and privacy. Its protocol is open source with MIT license. https://github.com/anyproto/any-sync. Maybe something like that can be integrated in ?

@acheong08
Copy link
Owner

Over the past few days, I've tried to make the JavaScript plugin (independent from Obsidian's native one) and got the basic sync working. As I tried to integrate it into Obsidian with a UI to choose vaults / view history etc, I kinda just gave up. It wasn't really enjoyable & took more time than I'd liked. Since I won't be using it anyways, it lead to a bunch of procrastination and annoyance.

Will be archiving this project so I don't have to worry about it anymore and do more enjoyable things.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants