Skip to main content

Download and use local copies of assets in logseq after importing a file from Roam.

Project description

logseq-migration

Download and use local copies of assets in logseq after importing a file from roam.

NB: Users have reported problems running this on Windows. I have been unable to reproduce the problem, so I cannot fixit. The software should run on any model of a Raspberry Pi so Windows users with a Pi could install and run the software there.

Roam stores the assets (images, pdfs, mp4 files etc.) in the cloud.

While logseq makes it easy for you to import a roam json export, your assets will remain in the cloud.

That worries me, because

  1. I want to store all the data that I own in my local file system.
  2. I want to be able to view my pages even if I am not connected to the Internet.
  3. The assets could disappear if roam research ceased trading or changed its policy about closed accounts.

So I adapted the code from here to suit logseq instead of Obsidian, wrote some minimal tests and refactored the code.

It's currently beta software

It's had limited testing, but it worked for me on a graph with about 1800 nodes.

Once installed, you can run the code each time you want to process a recently imported roam graph.

Since the program messes with the markdown in your pages (in order to make asset links local),

back up your graph before you run this code!

The application is easy to install and run. You'll find instructions below.

Installation

Install required software

Python 3

The code is written in Python, and you will need an installed copy of Python3.8 or later.

If you don't already have a suitable copy of Python installed, you'll find installation instructions here.

Under Windows, it appears that you must install Python system-wide (with script wrappers) and ask for Python to be added to your PATH.

pip3

pip is Python's package manager. You'll need pip3, the version that supports Python3.

This is normally installed with Python3. If it isn't for some reason you can follow these instructions.

Install the application

run pip3 install logseq-migration

Run the application

run localise_assets <vault_dir>

where vault_dir is the directory in which your logseq graph lives.

You'll see version information printed, and the word done when the migration is complete

The migrator will create a logfile called migration.log. By default, this will only log the start and end of the migration, with any errors.

If you wish to see detailed debug information, run localise_assets <vault_dir> 1

The code is idempotent. In other words, if you run it two or more times, nothing should change after the first run.

Let me know how you get on, and please raise an issue if there are problems, or you want to suggest new features.

There's a roadmap and a project journal. If you're interested in contributing, get in touch. Help is always welcome!

I'm @rareblog on Twitter.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

logseq-migration-0.3.tar.gz (5.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

logseq_migration-0.3-py3-none-any.whl (6.5 kB view details)

Uploaded Python 3

File details

Details for the file logseq-migration-0.3.tar.gz.

File metadata

  • Download URL: logseq-migration-0.3.tar.gz
  • Upload date:
  • Size: 5.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.10

File hashes

Hashes for logseq-migration-0.3.tar.gz
Algorithm Hash digest
SHA256 4e1d554f622520696342b1de904c7390911d75f3c4dd4d160b0ff58e39c7fb1b
MD5 26647a7fa405c8c8edd7a2c32bfc82d9
BLAKE2b-256 b49619e8be46d95f090e7ea2efbd20724c356fb8a384d74ad54f82e11a82b368

See more details on using hashes here.

File details

Details for the file logseq_migration-0.3-py3-none-any.whl.

File metadata

  • Download URL: logseq_migration-0.3-py3-none-any.whl
  • Upload date:
  • Size: 6.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.10

File hashes

Hashes for logseq_migration-0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 3a3e602a65ca7f5d4a6675876072c67dc8e265d06e54839f0b06856139db751b
MD5 9cb7118060f4d06148dc6ea2c0c7464d
BLAKE2b-256 63222282563322ea69f20e539a16c3c740240558c071600e7c3c11caf687286d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page