diff options
| author | Danilo M. <danix@danix.xyz> | 2026-11-05 10:39:02 +0100 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-11-05 10:39:02 +0100 |
| commit | 6d5e2e7bc9877fc9b29d3eee4ec6879bcbbd4bec (patch) | |
| tree | a5dc7bec2cdbecce29935f9b9bfddf49ad19448a /content | |
| parent | 395eed25a9d879391558026bb90cd3acb9afdacf (diff) | |
| download | danixxyz-6d5e2e7bc9877fc9b29d3eee4ec6879bcbbd4bec.tar.gz danixxyz-6d5e2e7bc9877fc9b29d3eee4ec6879bcbbd4bec.zip | |
content: write HardenedPass using pages
Entries, OTP codes, sync with conflict recovery and autofill, in both
languages, with screenshots from the test store. Still drafts.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'content')
23 files changed, 427 insertions, 45 deletions
diff --git a/content/en/hardenedpass/using/_index.md b/content/en/hardenedpass/using/_index.md index b085f4a..a52f1b3 100644 --- a/content/en/hardenedpass/using/_index.md +++ b/content/en/hardenedpass/using/_index.md @@ -1,13 +1,10 @@ +++ title = "Using the app" date = 2026-11-05T00:00:00Z -description = "" +description = "Everyday use of HardenedPass: reading and editing entries, OTP codes, syncing with git and filling logins with autofill." weight = 20 draft = true +++ -Placeholder. - -## First heading - -Text. +Once the app is connected to your store, these pages cover what you do with it day to +day. diff --git a/content/en/hardenedpass/using/autofill/index.md b/content/en/hardenedpass/using/autofill/index.md index 5a62cd1..43b7855 100644 --- a/content/en/hardenedpass/using/autofill/index.md +++ b/content/en/hardenedpass/using/autofill/index.md @@ -1,13 +1,65 @@ +++ title = "Autofill" date = 2026-11-05T00:00:00Z -description = "" +description = "How to turn on HardenedPass autofill, fill logins in apps and browsers, save new ones, and what the phishing warning means." weight = 80 draft = true +++ -Placeholder. +Autofill offers your entries directly in login forms, in apps and in browsers, so you do +not need to copy anything. -## First heading +## Turn it on -Text. +Open **Settings** and turn on **Enable Autofill**. The app explains what will happen and +lists your installed browsers with how well each one is supported. Tap OK, choose +HardenedPass in Android's autofill settings and confirm. + +## What each browser can do + +The app only trusts browsers it knows, because a browser has to report honestly which +site a form belongs to. A browser that is not on the list gets no autofill at all. + +| Support level | Meaning | Examples | +|---|---|---| +| **Fill and save credentials** | Fills username and password, offers to save new ones | Firefox | +| **Fill and save passwords** | Same, but saving needs no accessibility services enabled | Chrome, Cromite | +| **Fill credentials** | Fills username and password, no saving | Tor Browser | +| **Fill passwords** | Fills the password only | Vanadium | +| **No support** | Autofill stays off | Any browser not on the list | + +Vanadium, the browser that comes with GrapheneOS, is trusted, but only at the +**Fill passwords** level. For full support on GrapheneOS, use Firefox. The dialog in +Settings shows the real level for the browsers on your phone. + +## Fill a login + +Tap a login field. Depending on your keyboard, suggestions appear as chips in the +keyboard's bar or as a dropdown under the field: + +- An entry already linked to this site or app shows up by name. Tap it, unlock with + your passphrase and the form is filled. +- **Search entry** opens a search over your store. The entry you choose stays linked + to this site or app, so next time it shows up directly. +- On forms that ask for a new password, such as sign-up pages, **Create entry** opens + the editor to make one for this login. + +## Save a new login + +In a browser that supports saving, log in as usual. Android offers to save to +HardenedPass. Tap **Save** and the app opens its editor, with the username and password +filled in. Save the entry there, then remember to +[sync]({{< relref "/hardenedpass/using/sync" >}}). + +Firefox also shows its own save prompt. That one is Firefox's password manager, not +HardenedPass, and you can dismiss it. + +## The phishing warning + +Fill suggestions are tied to the app that requested them. If an app you linked to an +entry changes publisher, its signing certificate no longer matches, and you see +**Possible phishing attempt** instead of your entry. Tap it for the details. + +The app may have changed hands legitimately, but it may also be a fake installed in +place of the real one, trying to get your password. **Keep Autofill disabled** is the +safe answer. Choose **Re-enable Autofill** only if you know why the publisher changed. diff --git a/content/en/hardenedpass/using/entries/editor.png b/content/en/hardenedpass/using/entries/editor.png Binary files differnew file mode 100644 index 0000000..4651e94 --- /dev/null +++ b/content/en/hardenedpass/using/entries/editor.png diff --git a/content/en/hardenedpass/using/entries/entry.png b/content/en/hardenedpass/using/entries/entry.png Binary files differnew file mode 100644 index 0000000..c4a6f52 --- /dev/null +++ b/content/en/hardenedpass/using/entries/entry.png diff --git a/content/en/hardenedpass/using/entries/generator-random.png b/content/en/hardenedpass/using/entries/generator-random.png Binary files differnew file mode 100644 index 0000000..95be89e --- /dev/null +++ b/content/en/hardenedpass/using/entries/generator-random.png diff --git a/content/en/hardenedpass/using/entries/index.md b/content/en/hardenedpass/using/entries/index.md index 745a407..927792e 100644 --- a/content/en/hardenedpass/using/entries/index.md +++ b/content/en/hardenedpass/using/entries/index.md @@ -1,13 +1,74 @@ +++ title = "Entries" date = 2026-11-05T00:00:00Z -description = "" +description = "How to read, search, copy, create, edit, move and delete entries in HardenedPass, and how to generate passwords." weight = 50 draft = true +++ -Placeholder. +## Find an entry -## First heading +The list shows the folders and entries of the store. Tap a folder to open it, or type +in the **Search** bar at the top. **Recursive filtering**, in +[Settings]({{< relref "/hardenedpass/reference/settings" >}}), decides whether the +search also looks inside folders. -Text. +## Read an entry + +Tap an entry. The app asks for your key's passphrase, decrypts the file and shows its +fields. It asks every time, unless you turn on **Enable passphrase caching** in +[Settings]({{< relref "/hardenedpass/reference/settings" >}}). + +{{< image src="entry.png" alt="An entry showing its password, username and url fields, each with a copy button." class="max-w-sm mx-auto rounded-lg border border-border" />}} + +- The eye icon shows or hides the password. +- The copy icon next to a field copies it. A copied password is cleared from the + clipboard after 45 seconds by default, and **Password copy timeout** changes that. +- The pencil opens the editor. + +## Create an entry + +Tap **New entry**, then **Create new password**. + +{{< image src="editor.png" alt="The New entry editor with fields for name, folder, password, username and extra content, and two OTP buttons." class="max-w-sm mx-auto rounded-lg border border-border" />}} + +- **Name** is the file name. Use the site's address, such as `example.org`: it is + what autofill looks for and what you will search for later. Remember that the name + is not encrypted. +- **Folder** is where the entry goes. **Change** picks another one. +- **Password**, **Username** and **Extra content** are what gets encrypted. Anything + you put in extra content is stored as further lines of the entry. + +Tap **Save**. The entry is encrypted and committed on the phone. It does not reach your +server until you [sync]({{< relref "/hardenedpass/using/sync" >}}). + +**Create new folder**, in the same menu, makes an empty folder. + +## Generate a password + +In the editor, tap the generator icon at the end of the **Password** field. + +{{< image src="generator-random.png" alt="The generator sheet with the Random tab open, showing character options, the length and the Generate and Use buttons." class="max-w-sm mx-auto rounded-lg border border-border" />}} + +- **Random** makes a string of characters. Choose the character types and the length. +- **Diceware** makes a passphrase of real words, easier to type by hand. Choose how + many words and which separator goes between them. + +**Generate** makes a new one, and **Use** puts it in the field. + +## Edit an entry + +Open the entry and tap the pencil. Change what you need and tap **Save**. + +## Move, delete and more + +Press and hold a row to select it. Tap other rows to add them to the selection. + +{{< image src="selection.png" alt="The list in selection mode with one entry selected and the Move, Delete and shortcut icons at the top." class="max-w-sm mx-auto rounded-lg border border-border" />}} + +The icons at the top move the selection to another folder or delete it. With a single +selection you can also rename a folder, or place a shortcut to an entry on the home +screen. + +Deleting removes the file and records that in git, so the old version is still in the +history of your store. diff --git a/content/en/hardenedpass/using/entries/selection.png b/content/en/hardenedpass/using/entries/selection.png Binary files differnew file mode 100644 index 0000000..e20ee4a --- /dev/null +++ b/content/en/hardenedpass/using/entries/selection.png diff --git a/content/en/hardenedpass/using/otp/index.md b/content/en/hardenedpass/using/otp/index.md index 29830e2..64ed3d3 100644 --- a/content/en/hardenedpass/using/otp/index.md +++ b/content/en/hardenedpass/using/otp/index.md @@ -1,13 +1,38 @@ +++ title = "OTP codes" date = 2026-11-05T00:00:00Z -description = "" +description = "How HardenedPass stores and shows one-time codes (TOTP) for two-factor login, and how to add them from a QR code or by hand." weight = 60 draft = true +++ -Placeholder. +Many sites offer two-factor login with a code that changes every 30 seconds, the kind +an authenticator app shows. HardenedPass keeps that secret inside the entry, as an +`otpauth://` line: -## First heading +``` +s3cret +otpauth://totp/example.com:carol?secret=JBSWY3DPEHPK3PXP&issuer=example.com +``` -Text. +Think before you do this. Your password and your second factor end up in the same file, +so whoever opens that entry has both. If you want two truly separate factors, keep the +codes in another app. + +## Add a code + +Open the entry in the editor, or start a new one. Under the fields: + +- **OTP from QR** adds the code from the QR image the site shows you, with **Scan QR + code** or **Choose an image**. +- **Manual OTP** takes the **Account** and the **Secret** by hand, for sites that also + show the key as text. + +Tap **Save**. + +## Read a code + +Open the entry. The code appears as a field with a countdown bar, and it refreshes by +itself. The copy icon copies it. + +{{< image src="otp.png" alt="An entry showing a password and a six digit OTP code with its countdown." class="max-w-sm mx-auto rounded-lg border border-border" />}} diff --git a/content/en/hardenedpass/using/otp/otp.png b/content/en/hardenedpass/using/otp/otp.png Binary files differnew file mode 100644 index 0000000..e3b06fb --- /dev/null +++ b/content/en/hardenedpass/using/otp/otp.png diff --git a/content/en/hardenedpass/using/sync/index.md b/content/en/hardenedpass/using/sync/index.md index 271c72c..2351d5b 100644 --- a/content/en/hardenedpass/using/sync/index.md +++ b/content/en/hardenedpass/using/sync/index.md @@ -1,13 +1,66 @@ +++ title = "Sync" date = 2026-11-05T00:00:00Z -description = "" +description = "How HardenedPass syncs your store with git: when changes are committed, how to pull and push, and how to recover from a conflict." weight = 70 draft = true +++ -Placeholder. +Every change you make in the app, such as a new entry, an edit or a delete, is +committed to git on the phone straight away. **Nothing is sent to the server until you +sync.** Until then, the change exists only on this phone. -## First heading +## Sync -Text. +Pull down on the list to synchronize. You can also use the three dots in the search +bar: + +{{< image src="menu.png" alt="The list's menu with Synchronize repository, Pull from remote, Push to remote and Settings." class="max-w-sm mx-auto rounded-lg border border-border" />}} + +- **Synchronize repository** fetches the server's changes and sends yours. +- **Pull from remote** only fetches. +- **Push to remote** only sends. + +Synchronize is what you want almost every time. To turn the gesture off, use +**Disable pull to sync action** in +[Settings]({{< relref "/hardenedpass/reference/settings" >}}). + +## When two devices change the same thing + +If you edit the same entry on the phone and on a computer before syncing, git cannot +pick a winner. The app uses a rebase by default (**Rebase on pull**), and the sync +stops with an error saying the pull failed and that you are in a detached head. Your +work is not lost. + +Open **Settings**, then **Local Git config & utilities**. You have two ways out: + +### Keep your changes + +**Abort rebase and push new branch** cancels the rebase and sends your local work to a +new branch on the server. The app tells you its name. Then, on a computer: + +```bash +pass git fetch origin +pass git merge origin/BRANCH-NAME +``` + +Git stops on the entries that conflict. Encrypted files cannot be merged line by line, +so keep one version of each, finish the merge, and send it back with `pass git push`. +On the phone, finish with the hard reset below, so that the phone matches the server +again. + +### Throw your changes away + +**Hard reset to remote branch** asks for the branch name, then makes the phone an exact +copy of it. + +{{< callout type="warning" >}} +A hard reset discards local commits and changes that are not on that remote branch. Use +it only when you are sure, or after saving your work with the option above. +{{< /callout >}} + +## Other tools + +The same screen sets the name and email used for commits, shows the commit log with +**Show commit log**, and offers **Run garbage collection job** to tidy up the local +repository. diff --git a/content/en/hardenedpass/using/sync/menu.png b/content/en/hardenedpass/using/sync/menu.png Binary files differnew file mode 100644 index 0000000..a03da57 --- /dev/null +++ b/content/en/hardenedpass/using/sync/menu.png diff --git a/content/it/hardenedpass/getting-started/_index.md b/content/it/hardenedpass/getting-started/_index.md index d1ba975..942d77a 100644 --- a/content/it/hardenedpass/getting-started/_index.md +++ b/content/it/hardenedpass/getting-started/_index.md @@ -1,7 +1,7 @@ +++ title = "Per iniziare" date = 2026-11-05T00:00:00Z -description = "Da qui si parte: cos'è pass, come installare HardenedPass, come creare un archivio di password e collegarci l'app." +description = "Parti da qui: cos'è pass, come installare HardenedPass, come creare un archivio di password e collegarci l'app." weight = 10 draft = true +++ diff --git a/content/it/hardenedpass/using/_index.md b/content/it/hardenedpass/using/_index.md index dfb8d65..cacda05 100644 --- a/content/it/hardenedpass/using/_index.md +++ b/content/it/hardenedpass/using/_index.md @@ -1,13 +1,10 @@ +++ title = "Usare l'app" date = 2026-11-05T00:00:00Z -description = "" +description = "L'uso quotidiano di HardenedPass: leggere e modificare le voci, i codici OTP, la sincronizzazione con git e la compilazione automatica dei login." weight = 20 draft = true +++ -Placeholder. - -## First heading - -Text. +Una volta collegata l'app al tuo archivio, queste pagine spiegano cosa ci fai giorno per +giorno. diff --git a/content/it/hardenedpass/using/autofill/index.md b/content/it/hardenedpass/using/autofill/index.md index 5a62cd1..eb9b4e0 100644 --- a/content/it/hardenedpass/using/autofill/index.md +++ b/content/it/hardenedpass/using/autofill/index.md @@ -1,13 +1,68 @@ +++ title = "Autofill" date = 2026-11-05T00:00:00Z -description = "" +description = "Come attivare la compilazione automatica di HardenedPass, compilare i login in app e browser, salvarne di nuovi, e cosa significa l'avviso di phishing." weight = 80 draft = true +++ -Placeholder. +La compilazione automatica propone le tue voci direttamente nei moduli di login, nelle +app e nei browser, senza bisogno di copiare nulla. -## First heading +## Attivala -Text. +Apri **Impostazioni** e attiva **Attiva la compilazione automatica**. L'app spiega cosa +succederà ed elenca i browser installati con il livello di supporto di ciascuno. Tocca +OK, scegli HardenedPass nelle impostazioni di compilazione automatica di Android e +conferma. + +## Cosa può fare ogni browser + +L'app si fida solo dei browser che conosce, perché un browser deve dichiarare onestamente +a quale sito appartiene un modulo. Un browser che non è nell'elenco non ha alcuna +compilazione automatica. + +| Livello di supporto | Significato | Esempi | +|---|---|---| +| **Compila e salva le credenziali** | Compila nome utente e password, propone di salvare quelli nuovi | Firefox | +| **Compila e salva le password** | Come sopra, ma il salvataggio richiede che nessun servizio di accessibilità sia abilitato | Chrome, Cromite | +| **Compila le credenziali** | Compila nome utente e password, senza salvataggio | Tor Browser | +| **Compila le password** | Compila solo la password | Vanadium | +| **Nessun supporto** | La compilazione automatica resta spenta | Ogni browser fuori dall'elenco | + +Vanadium, il browser incluso in GrapheneOS, è tra quelli fidati, ma solo al livello +**Compila le password**. Per il supporto completo su GrapheneOS, usa Firefox. La finestra +nelle Impostazioni mostra il livello reale dei browser sul tuo telefono. + +## Compila un login + +Tocca un campo di login. A seconda della tastiera, i suggerimenti appaiono come chip nella +barra della tastiera o come menu sotto il campo: + +- Una voce già collegata a questo sito o a questa app appare con il suo nome. Toccala, + sblocca con la passphrase e il modulo viene compilato. +- **Cerca la voce** apre una ricerca nel tuo archivio. La voce che scegli resta collegata + a questo sito o a questa app, così la prossima volta appare direttamente. +- Nei moduli che chiedono una nuova password, come le pagine di registrazione, **Crea + voce** apre l'editor per crearne una per questo login. + +## Salva un nuovo login + +In un browser che supporta il salvataggio, fai il login come al solito. Android propone di +salvare su HardenedPass. Tocca **Salva** e l'app apre il suo editor, con nome utente e +password già compilati. Salva lì la voce, poi ricordati di +[sincronizzare]({{< relref "/hardenedpass/using/sync" >}}). + +Firefox mostra anche una sua richiesta di salvataggio. Quella è del gestore di password di +Firefox, non di HardenedPass, e puoi ignorarla. + +## L'avviso di phishing + +I suggerimenti sono legati all'app che li ha richiesti. Se un'app che hai collegato a una +voce cambia editore, il suo certificato di firma non corrisponde più, e al posto della voce +vedi **Possibile tentativo di phishing**. Toccalo per i dettagli. + +L'app può aver cambiato proprietario in modo legittimo, ma può anche essere un falso +installato al posto di quella vera, che cerca di avere la tua password. **Mantieni +disattivata la compilazione automatica** è la risposta sicura. Scegli **Riattiva la +compilazione automatica** solo se sai perché l'editore è cambiato. diff --git a/content/it/hardenedpass/using/entries/editor.png b/content/it/hardenedpass/using/entries/editor.png Binary files differnew file mode 100644 index 0000000..b6e90a1 --- /dev/null +++ b/content/it/hardenedpass/using/entries/editor.png diff --git a/content/it/hardenedpass/using/entries/entry.png b/content/it/hardenedpass/using/entries/entry.png Binary files differnew file mode 100644 index 0000000..26636ce --- /dev/null +++ b/content/it/hardenedpass/using/entries/entry.png diff --git a/content/it/hardenedpass/using/entries/generator-random.png b/content/it/hardenedpass/using/entries/generator-random.png Binary files differnew file mode 100644 index 0000000..5c38147 --- /dev/null +++ b/content/it/hardenedpass/using/entries/generator-random.png diff --git a/content/it/hardenedpass/using/entries/index.md b/content/it/hardenedpass/using/entries/index.md index 54302df..ba3a831 100644 --- a/content/it/hardenedpass/using/entries/index.md +++ b/content/it/hardenedpass/using/entries/index.md @@ -1,13 +1,76 @@ +++ title = "Voci" date = 2026-11-05T00:00:00Z -description = "" +description = "Come leggere, cercare, copiare, creare, modificare, spostare ed eliminare le voci in HardenedPass, e come generare le password." weight = 50 draft = true +++ -Placeholder. +## Trova una voce -## First heading +L'elenco mostra le cartelle e le voci dell'archivio. Tocca una cartella per aprirla, +oppure scrivi nella barra **Cerca** in alto. **Filtro ricorsivo**, nelle +[Impostazioni]({{< relref "/hardenedpass/reference/settings" >}}), decide se la ricerca +guarda anche dentro le cartelle. -Text. +## Leggi una voce + +Tocca una voce. L'app chiede la passphrase della chiave, decifra il file e ne mostra i +campi. La chiede ogni volta, a meno che tu non attivi **Memorizza le frasi segrete** nelle +[Impostazioni]({{< relref "/hardenedpass/reference/settings" >}}). + +{{< image src="entry.png" alt="Una voce con i campi password, nome utente e url, ciascuno con il pulsante per copiarlo." class="max-w-sm mx-auto rounded-lg border border-border" />}} + +- L'icona dell'occhio mostra o nasconde la password. +- L'icona di copia accanto a un campo lo copia. Una password copiata viene cancellata + dagli appunti dopo 45 secondi di default, e **Timeout copia della password** cambia + questo valore. +- La matita apre l'editor. + +## Crea una voce + +Tocca **Nuova voce**, poi **Crea nuova password**. + +{{< image src="editor.png" alt="L'editor Nuova voce con i campi nome, cartella, password, nome utente e contenuto extra, e due pulsanti OTP." class="max-w-sm mx-auto rounded-lg border border-border" />}} + +- **Nome** è il nome del file. Usa l'indirizzo del sito, per esempio `example.org`: è + quello che la compilazione automatica cerca e quello che cercherai tu più avanti. + Ricorda che il nome non è cifrato. +- **Cartella** è dove finisce la voce. **Cambia** ne sceglie un'altra. +- **Password**, **Nome utente** e **Contenuto extra** sono le parti cifrate. Quello che + scrivi nel contenuto extra diventa altre righe della voce. + +Tocca **Salva**. La voce viene cifrata e registrata con un commit sul telefono. Non +arriva al server finché non [sincronizzi]({{< relref "/hardenedpass/using/sync" >}}). + +**Crea nuova cartella**, nello stesso menu, crea una cartella vuota. + +## Genera una password + +Nell'editor, tocca l'icona del generatore alla fine del campo **Password**. + +{{< image src="generator-random.png" alt="Il pannello del generatore con la scheda Casuale aperta, che mostra le opzioni sui caratteri, la lunghezza e i pulsanti Genera e Usa." class="max-w-sm mx-auto rounded-lg border border-border" />}} + +- **Casuale** crea una stringa di caratteri. Scegli i tipi di carattere e la lunghezza. +- **Diceware** crea una passphrase di parole vere, più facile da digitare a mano. Scegli + quante parole e quale separatore mettere tra loro. + +**Genera** ne crea una nuova e **Usa** la mette nel campo. + +## Modifica una voce + +Apri la voce e tocca la matita. Cambia quello che serve e tocca **Salva**. + +## Sposta, elimina e altro + +Tieni premuta una riga per selezionarla. Tocca altre righe per aggiungerle alla +selezione. + +{{< image src="selection.png" alt="L'elenco in modalità selezione con una voce selezionata e le icone Sposta, Elimina e scorciatoia in alto." class="max-w-sm mx-auto rounded-lg border border-border" />}} + +Le icone in alto spostano la selezione in un'altra cartella o la eliminano. Con una sola +riga selezionata puoi anche rinominare una cartella, o aggiungere alla schermata Home una +scorciatoia a una voce. + +L'eliminazione rimuove il file e lo registra in git, quindi la vecchia versione resta +nella cronologia dell'archivio. diff --git a/content/it/hardenedpass/using/entries/selection.png b/content/it/hardenedpass/using/entries/selection.png Binary files differnew file mode 100644 index 0000000..fb99785 --- /dev/null +++ b/content/it/hardenedpass/using/entries/selection.png diff --git a/content/it/hardenedpass/using/otp/index.md b/content/it/hardenedpass/using/otp/index.md index 27a04e4..f70ca9d 100644 --- a/content/it/hardenedpass/using/otp/index.md +++ b/content/it/hardenedpass/using/otp/index.md @@ -1,13 +1,38 @@ +++ title = "Codici OTP" date = 2026-11-05T00:00:00Z -description = "" +description = "Come HardenedPass salva e mostra i codici monouso (TOTP) per l'accesso a due fattori, e come aggiungerli da un codice QR o a mano." weight = 60 draft = true +++ -Placeholder. +Molti siti offrono l'accesso a due fattori con un codice che cambia ogni 30 secondi, +quello che mostra un'app di autenticazione. HardenedPass tiene quel segreto dentro la +voce, come riga `otpauth://`: -## First heading +``` +s3cret +otpauth://totp/example.com:carol?secret=JBSWY3DPEHPK3PXP&issuer=example.com +``` -Text. +Pensaci prima di farlo. La password e il secondo fattore finiscono nello stesso file, +quindi chi apre quella voce li ha entrambi. Se vuoi due fattori davvero separati, tieni i +codici in un'altra app. + +## Aggiungi un codice + +Apri la voce nell'editor, o iniziane una nuova. Sotto i campi: + +- **OTP da QR** aggiunge il codice dall'immagine QR che ti mostra il sito, con + **Scansiona codice QR** o **Scegli un'immagine**. +- **OTP manuale** prende a mano **Account** e **Segreto**, per i siti che mostrano la + chiave anche come testo. + +Tocca **Salva**. + +## Leggi un codice + +Apri la voce. Il codice appare come campo con una barra del conto alla rovescia e si +aggiorna da solo. L'icona di copia lo copia. + +{{< image src="otp.png" alt="Una voce con la password e un codice OTP di sei cifre con il suo conto alla rovescia." class="max-w-sm mx-auto rounded-lg border border-border" />}} diff --git a/content/it/hardenedpass/using/otp/otp.png b/content/it/hardenedpass/using/otp/otp.png Binary files differnew file mode 100644 index 0000000..1522069 --- /dev/null +++ b/content/it/hardenedpass/using/otp/otp.png diff --git a/content/it/hardenedpass/using/sync/index.md b/content/it/hardenedpass/using/sync/index.md index 94ffae1..7a2e1de 100644 --- a/content/it/hardenedpass/using/sync/index.md +++ b/content/it/hardenedpass/using/sync/index.md @@ -1,13 +1,67 @@ +++ title = "Sincronizzazione" date = 2026-11-05T00:00:00Z -description = "" +description = "Come HardenedPass sincronizza l'archivio con git: quando vengono registrate le modifiche, come fare pull e push, come uscire da un conflitto." weight = 70 draft = true +++ -Placeholder. +Ogni modifica che fai nell'app, come una nuova voce, una correzione o un'eliminazione, +viene subito registrata con un commit git sul telefono. **Al server non arriva nulla +finché non sincronizzi.** Fino ad allora, la modifica esiste solo su questo telefono. -## First heading +## Sincronizza -Text. +Trascina verso il basso l'elenco per sincronizzare. Puoi usare anche i tre puntini nella +barra di ricerca: + +{{< image src="menu.png" alt="Il menu dell'elenco con Sincronizza repository, Pull dal remote, Push sul remote e Impostazioni." class="max-w-sm mx-auto rounded-lg border border-border" />}} + +- **Sincronizza repository** scarica le modifiche del server e invia le tue. +- **Pull dal remote** scarica soltanto. +- **Push sul remote** invia soltanto. + +Quasi sempre vuoi Sincronizza. Per disattivare il gesto, usa **Disattiva la +sincronizzazione trascinando** nelle +[Impostazioni]({{< relref "/hardenedpass/reference/settings" >}}). + +## Quando due dispositivi cambiano la stessa cosa + +Se modifichi la stessa voce sul telefono e su un computer prima di sincronizzare, git non +può scegliere un vincitore. L'app usa di default un rebase (**Rebase al pull**), e la +sincronizzazione si ferma con un errore che dice che il pull non è riuscito e che sei in +detached HEAD. Il tuo lavoro non è perso. + +Apri **Impostazioni**, poi **Configurazione Git locale e utilità**. Hai due vie d'uscita: + +### Tieni le tue modifiche + +**Interrompi il rebase ed esegui il push su un nuovo branch** annulla il rebase e invia +il tuo lavoro locale su un nuovo branch del server. L'app te ne dice il nome. Poi, su un +computer: + +```bash +pass git fetch origin +pass git merge origin/NOME-DEL-BRANCH +``` + +Git si ferma sulle voci in conflitto. I file cifrati non si possono unire riga per riga, +quindi tieni una versione di ciascuno, completa il merge e rimandalo con `pass git push`. +Sul telefono, chiudi con l'hard reset qui sotto, così il telefono torna uguale al server. + +### Butta via le tue modifiche + +**Hard reset al remote branch** chiede il nome del branch, poi rende il telefono una +copia esatta di quel branch. + +{{< callout type="warning" >}} +Un hard reset scarta i commit e le modifiche locali che non sono su quel remote branch. +Usalo solo quando sei sicuro, o dopo aver messo al sicuro il tuo lavoro con l'opzione qui +sopra. +{{< /callout >}} + +## Altri strumenti + +La stessa schermata imposta il nome e l'email usati per i commit, mostra la cronologia con +**Mostra registro dei commit** e offre **Esegui la garbage collection** per fare ordine +nel repository locale. diff --git a/content/it/hardenedpass/using/sync/menu.png b/content/it/hardenedpass/using/sync/menu.png Binary files differnew file mode 100644 index 0000000..bf0e86e --- /dev/null +++ b/content/it/hardenedpass/using/sync/menu.png |
