snac2nex/README.md

75 lines
No EOL
1.9 KiB
Markdown

# snac2nex
[![Dependencies](https://deps.rs/repo/codeberg/postscriptum/snac2nex/status.svg)](https://deps.rs/repo/codeberg/postscriptum/snac2nex)
[![crates.io](https://img.shields.io/crates/v/snac2nex.svg)](https://crates.io/crates/snac2nex)
Convert [Snac](https://codeberg.org/grunfink/snac2) profiles to the [Nex](https://nightfall.city/nex/info/specification.txt) blog format.
Useful as a mirroring tool for an existing fediverse instance or for migrating the data once.
## Install
``` bash
cargo install snac2nex
```
## Usage
``` bash
snac2nex -s /path/to/snac/storage -t /path/to/nex -u user1 -u user2
```
### Options
``` bash
-s, --source <SOURCE>
Path to the Snac2 profile directory
-t, --target <TARGET>
Target directory for public data export
-u, --user <USER>
Username(s) to export
-a, --attachment <ATTACHMENT>
Include attachment files export
Supported values:
* `c` (`copy`) - copy files * `h` (`hard`) - create hard links * `s` (`soft`) - create soft links (macos, linux, windows only)
-r, --rotate <ROTATE>
Keep running as the daemon, renew every `n` seconds
-f, --format-content <FORMAT_CONTENT>
Post template pattern
[default: {content}{attachments}{link}{tags}{updated}]
--format-filename <FORMAT_FILENAME>
Post filenames format
* escaped with `%%`
[default: %H:%M:%S]
--format-updated <FORMAT_UPDATED>
Post `{updated}` time format
* escaped with `%%`
[default: "%Y/%m/%d %H:%M:%S"]
-k, --keep
Keep Nex entry on Snac post was removed
-h, --help
Print help (see a summary with '-h')
-V, --version
Print version
```
## See also
* [Nexy](https://github.com/YGGverse/nexy) - Server for the Nex protocol, written in Rust
* [Yoda](https://github.com/YGGverse/Yoda) - Client for the Gemini & Nex protocols, written in Rust