mount an atproto PDS repository as a FUSE filesystem

add ci config

Signed-off-by: oppiliappan <me@oppi.li>

oppi.li abf487a4 028f454a

verified
Changed files
+36 -5
.tangled
workflows
src
+17
.tangled/workflows/build.yml
···
··· 1 + when: 2 + - event: push 3 + branch: main 4 + 5 + dependencies: 6 + nixpkgs: 7 + - gcc 8 + - cargo 9 + - rustc 10 + - rustfmt 11 + 12 + steps: 13 + - name: build 14 + command: | 15 + cargo build --all --verbose 16 + 17 +
+17
.tangled/workflows/fmt.yml
···
··· 1 + when: 2 + - event: push 3 + branch: main 4 + 5 + dependencies: 6 + nixpkgs: 7 + - cargo 8 + - rustc 9 + - rustfmt 10 + 11 + steps: 12 + - name: build 13 + command: | 14 + cargo fmt --check --all --verbose 15 + 16 + 17 +
+1 -4
src/fs.rs
··· 1 - use std::{ 2 - collections::{BTreeMap, hash_set::Iter}, 3 - time, 4 - }; 5 6 use atrium_repo::{Repository, blockstore::AsyncBlockStoreRead}; 7 use futures::StreamExt;
··· 1 + use std::time; 2 3 use atrium_repo::{Repository, blockstore::AsyncBlockStoreRead}; 4 use futures::StreamExt;
+1 -1
src/main.rs
··· 10 use atrium_repo::{Repository, blockstore::CarStore}; 11 use atrium_xrpc_client::isahc::IsahcClient; 12 use fuser::MountOption; 13 - use futures::{Stream, StreamExt, TryStream, TryStreamExt, stream}; 14 use indicatif::{MultiProgress, ProgressBar, ProgressStyle}; 15 use std::{ 16 collections::HashMap,
··· 10 use atrium_repo::{Repository, blockstore::CarStore}; 11 use atrium_xrpc_client::isahc::IsahcClient; 12 use fuser::MountOption; 13 + use futures::{StreamExt, stream}; 14 use indicatif::{MultiProgress, ProgressBar, ProgressStyle}; 15 use std::{ 16 collections::HashMap,