Alfaprogramvara, inte för produktionsdata. Fel kan leda till dataförlust, formatet kan ändras utan migrering och krypteringen har ännu inte granskats av utomstående. Behåll egna säkerhetskopior och kontrollera att du kan återställa från dem.
Varsto

Bygg Varsto med oss

Varsto är ett totalsträckskrypterat verktyg för filsynkronisering och säkerhetskopiering till lagring du redan har: S3-buckets, NAS-utdelningar, rclone-fjärrmål, gamla diskar och dina egna enheter. Kärnan är skriven i Rust, källkoden är offentlig på GitHub och lagringsformatet är specificerat i skrift. Det är en tidig alfa, och därför är det nu man kan påverka den mest.

Källkoden på GitHub Ärenden Regler för bidrag (en)

Det här skulle du arbeta med

En Rust-kärna med skriven specifikation

varsto-core innehåller motorn:

  • innehållsdefinierad uppdelning i block och XChaCha20-Poly1305-kryptering;
  • en signerad liggare med hybridsignaturer Ed25519 + ML-DSA-65;
  • placering och lagringsregler;
  • blockutbyte mellan enheter med NAT-traversering;
  • lagringsbakändar för kataloger, S3 och rclone.

Varje objekt i lagringen beskrivs i specifikationen av lagringsformatet (en).

Ett program, många skal

varsto-cli är kommandoraden, bakgrundstjänsten, ikonen i aktivitetsfältet och ett lokalt webbgränssnitt (ren HTML, CSS och JavaScript). Tunna inbyggda skal omsluter det via varsto-ffi: Swift för macOS och iOS, Kotlin för Android.

Tester som kör hela nätverk

Utöver enhets- och integrationstester finns ett labb med virtuella maskiner. De spelar bärbara datorer, stationära datorer och servrar bakom hemroutrar, symmetrisk NAT och ett publikt internet. Labbet har en S3-server, och lagringsavbrott, krascher och klockavvikelser kan slås på vid behov. Se Testing (en).

Här behövs hjälp

Kom igång

git clone https://github.com/janttsu/varsto
cd varsto
cargo build --release
cargo test --workspace

En stabil Rust-verktygskedja (1.85 eller nyare) räcker för kärnan och kommandoraden. Snabbstarten (en) skapar ett valv i en lokal katalog på en minut, så du kan prova ändringar utan något molnkonto. Före en pull request ska cargo fmt --all --check, cargo clippy --workspace --all-targets och testerna gå igenom, och nytt beteende behöver tester. Öppna gärna ett ärende före stora ändringar.

Licens

Varstos källkod är tillgänglig under PolyForm Shield License 1.0.0. Du får läsa, använda, ändra och dela koden för alla ändamål utom att erbjuda en produkt som konkurrerar med Varsto. Licensen är inte en OSI-godkänd öppen källkodslicens. Genom att bidra godkänner du att ditt bidrag distribueras under den licensen. Detaljerna finns i reglerna för bidrag (en). Allt i repot skrivs på engelska.