From a3fce751364183000d1c0c326cf522c5cd11d4b0 Mon Sep 17 00:00:00 2001 From: Andreas Grois Date: Mon, 10 Oct 2022 23:31:36 +0200 Subject: Update Translations once more. --- CMakeLists.txt | 9 +- qml/pages/MainPage.qml | 4 + translations/Passwordsailor-de.ts | 462 ------------------------------------ translations/Passwordsailor.ts | 428 --------------------------------- translations/harbour-passfish-de.qm | Bin 0 -> 23077 bytes translations/harbour-passfish-de.ts | 462 ++++++++++++++++++++++++++++++++++++ translations/harbour-passfish.qm | Bin 0 -> 21417 bytes translations/harbour-passfish.ts | 428 +++++++++++++++++++++++++++++++++ 8 files changed, 902 insertions(+), 891 deletions(-) delete mode 100644 translations/Passwordsailor-de.ts delete mode 100644 translations/Passwordsailor.ts create mode 100644 translations/harbour-passfish-de.qm create mode 100644 translations/harbour-passfish-de.ts create mode 100644 translations/harbour-passfish.qm create mode 100644 translations/harbour-passfish.ts diff --git a/CMakeLists.txt b/CMakeLists.txt index 9d4d67f..8bcd2ef 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -70,6 +70,13 @@ add_custom_command( ) add_custom_target(rust_target DEPENDS "${RUST_LIB}") +add_custom_command( + OUTPUT translations/harbour-passfish.qm translations/harbour-passfish-de.qm + COMMAND lrelease translations/harbour-passfish.ts translations/harbour-passfish-de.ts + WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" +) +add_custom_target(translations_target DEPENDS translations/harbour-passfish.qm translations/harbour-passfish-de.qm) + add_executable( harbour-passfish src/PassFish.cpp @@ -77,7 +84,7 @@ add_executable( src/pwm_qhash.cpp src/GraphemeCountValidator.cpp ) -add_dependencies(harbour-passfish rust_target) +add_dependencies(harbour-passfish rust_target translations_target) target_compile_definitions(harbour-passfish PRIVATE $<$,$>:QT_QML_DEBUG> ) diff --git a/qml/pages/MainPage.qml b/qml/pages/MainPage.qml index b860e67..1195ef8 100644 --- a/qml/pages/MainPage.qml +++ b/qml/pages/MainPage.qml @@ -120,6 +120,7 @@ Page { inputMethodHints: Qt.ImhNoPredictiveText | Qt.ImhNoAutoUppercase label: qsTr("Used Text") + hideLabelOnEmptyField: passwordmaker.used_text === "" onFocusChanged: if(focus) text = passwordmaker.used_text onPlaceholderTextChanged: if(!focus) text = "" placeholderText: passwordmaker.used_text === "" ? qsTr("Used Text") : passwordmaker.used_text @@ -177,6 +178,8 @@ Page { onFocusChanged: if(focus) text = passwordmaker.generated_password; else text = ""; placeholderColor: color + /* + //Commented out for now. This is anyhow never visible, and causes log spam on Sailfish 3. BusyIndicator { id: busy parent: null @@ -190,6 +193,7 @@ Page { rightItem: busy } } + */ } IconButton{ id: copyToClipboard diff --git a/translations/Passwordsailor-de.ts b/translations/Passwordsailor-de.ts deleted file mode 100644 index bf7d564..0000000 --- a/translations/Passwordsailor-de.ts +++ /dev/null @@ -1,462 +0,0 @@ - - - - - AboutPage - - About PassFish - Über PassFish - - - -<p> - PassFish is a native re-implementation of <a href="https://passwordmaker.org/">PasswordMaker</a> for Sailfish OS. - It aims to be mostly compatible to the <a href="https://sourceforge.net/projects/passwordmaker/files/Javascript%20Edition/">Javascript Edition</a>. -</p> -<p> - All credit for the development of the PasswordMaker Pro algorithm goes to the original authors of PasswordMaker Pro, Miquel Burns and Eric H. Jung. -</p> -<p> - As PassFish is not merely a port, but a full reimplementation from scratch, compatibility is not guaranteed. While the original source code was - used as a guideline during implementation, the underlying technology is vastly different. Common use cases are tested by integration tests, but some - edge cases might have been missed. In case you encounter such an issue, please report it on the - <a href="https://github.com/soulsource/passfish/issues">github issue tracker</a> of the project. -</p> -<p> - Speaking of integration tests: The hash algorithms were not re-implemented for this project in order to reduce the risk of introducing bugs. Instead the - QCryptographicHash API is used where possible, and where not, the implementation from the RustCrypto Hashes repository is utilized (see list of dependencies below). -</p> -<p> - This program consists of two parts: The application itself ("<a href="https://github.com/soulsource/passfish">PassFish</a>"), and a Rust crate that contains the - implementation of the business logic ("<a href="https://github.com/soulsource/passwordmaker-rs"><nobr>passwordmaker&#8209;rs</nobr></a>"). - This is important, as the two parts use different licenses. PassFish is published under the GPLv3 license, while <nobr>passwordmaker&#8209;rs</nobr> is published under LGPLv3. Please check the linked github pages for more details. -</p> -<p> - This program utilises several third party libraries. This list is kept up-to-date to the best of my knowledge. Only direct dependencies are listed, - for transitive dependencies please see the linked websites. Similarly, the source code for those third-party dependencies that are published under an - open source license can be found on the linked websites. To my knowledge the only non-open-source dependency is Silica. The listed licenses are just those - used by <i>this</i> project, most libraries are available under multiple licenses. Please see the libraries' websites for details.<br> - These libraries are linked dynamically: - <ul> - <li><a href="https://www.qt.io/">Qt Quick</a>: Used under <a href="https://www.gnu.org/licenses/lgpl-3.0.en.html">LGPLv3</a></li> - <li><a href="https://sailfishos.org/develop/docs/silica/">Sailfish Silica</a>: Proprietary, <a href="https://www.gnu.org/licenses/gpl-3.0">GPL</a> system library exception</li> - <li><a href="https://github.com/sailfishos/libsailfishapp">LibSailfishApp</a>: Used under LGPL 2.1</li> - </ul> - These libraries and their dependencies are linked statically: - <ul> - <li><a href="https://crates.io/crates/libc">libc Rust bindings</a>: Used under MIT license</li> - <li><a href="https://crates.io/crates/serde">serde</a>: Used under MIT license</li> - <li><a href="https://crates.io/crates/toml">toml-rs</a>: Used under MIT license</li> - <li><a href="https://crates.io/crates/dirs">dirs</a>: Used under MIT license</li> - <li><a href="https://crates.io/crates/ripemd">RustCrypto: RIPEMD</a>: Used under MIT license</li> - </ul> - The <nobr>passwordmaker&#8209;rs</nobr> library has the following statically linked runtime dependencies: - <ul> - <li><a href="https://crates.io/crates/unicode-segmentation">unicode-segmentation</a>: Used under MIT license</li> - </ul> - While it is not a runtime dependency, the code generator for the Rust Qt bindings is worth noting: - <ul> - <li><a href="https://invent.kde.org/sdk/rust-qt-binding-generator">Rust Qt Binding Generator</a></li> - </ul> - PassFish uses a modified version, which can be found in the <a href="https://invent.kde.org/soulsource/rust-qt-binding-generator/-/tree/mockall_support">mockall_support</a> branch. -</p> -<p> - This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, - either version 3 of the License, or (at your option) any later version. - This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - See the GNU General Public License for more details. - You should have received a copy of the GNU General Public License along with this program. If not, see <a href="http://www.gnu.org/licenses/">http://www.gnu.org/licenses/</a>. -</p> - - -<p> - PassFish ist eine native Neu-Implementierung von <a href="https://passwordmaker.org/">PasswordMaker Pro</a> für Sailfish OS, - mit dem Ziel, zu der <a href="https://sourceforge.net/projects/passwordmaker/files/Javascript%20Edition/">Javascript Edition</a> kompatibel zu sein. -</p> -<p> - Der Original-Algorithmus von PasswordMaker Pro stammt von Miquel Burns und Eric H. Jung. -</p> -<p> - Da es sich bei PassFish nicht um einen Port, sondern um eine kompette Neuimplementierung handelt, ist es nicht möglich, vollständige Kompatibilität zu garantieren. - Auch wenn der Original-Quelltext während der Entwicklung als Hilfsmittel herangezogen wurde, gibt es doch grundlegende Unterschiede in der zugrunde liegenden Technologie. - Für typische Inputs wurden zwar Integrations-Tests angelegt, es ist aber mehr als wahrscheinlich, dass der eine oder andere Spezialfall durch die Maschen gerutscht ist. - Falls Sie ein derartiges Problem entdecken, melden Sie es doch bitte im <a href="https://github.com/soulsource/passfish/issues">Github Issue Tracker</a> dieses Projekts. -</p> -<p> - Wenn wir schon bei Integrations-Tests sind: Um möglichst keine neuen Fehler zu verursachen, wurden die Hash-Algorithmen nicht erneut implementiert. - Stattdessen wurde wo möglich die QCryptographicHash API verwendet. Wo dies nicht möglich war, wurde stattdessen auf das RustCrypto Hashes Projekt zurückgegriffen - (mehr Details finden Sie in der Liste der Abhängigkeiten weiter unten). -</p> -<p> - Dieses Programm besteht aus zwei Teilen: Der Anwendung selbst ("<a href="https://github.com/soulsource/passfish">PassFish</a>"), und einer Rust-Crate, welche den Nachbau des - eigentlichen PasswordMaker Pro Algorithmus enthält ("<a href="https://github.com/soulsource/passwordmaker-rs"><nobr>passwordmaker&#8209;rs</nobr></a>"). - Diese Trennung ist insofern wichtig, als dass die beiden Teile unter verschiedenen Lizenzen veröffentlicht wurden. PassFish selbst steht unter der GPLv3 Lizenz, während - <nobr>passwordmaker&#8209;rs</nobr> unter LGPLv3 weiterverwendet werden darf. Die verlinkten Github-Seiten der jeweiligen Repositories enthalten weitere Details. -</p> -<p> - Dieses Programm verwendet Software aus Drittquellen. Die Liste hier wird nach bestem Wissen und Gewissen aktuell gehalten. Hier sind nur die direkten Abhängigkeiten angegeben. - Besuchen Sie bitte die Websites ebenjener, falls Sie Informationen über deren Abhängigkeiten benötigen. Selbiges gilt, falls Sie den Quelltext der als Open Source veröffentlichten Abhängigkeiten abrufen möchten. - So weit ich das sagen kann, ist lediglich Silca selbst unter keiner offenen Lizenz verfügbar. Die hier genannten Lizenzen sind lediglich jene, die von <i>diesem</i> Projekt verwendet werden. Die meisten der gelisteten - Drittanbieter-Projekte sind auch unter anderen Lizenzen verfügbar.<br> - Dies sind die dynamisch verknüpften Abhängigkeiten: - <ul> - <li><a href="https://www.qt.io/">Qt Quick</a>: Verwendet unter <a href="https://www.gnu.org/licenses/lgpl-3.0.en.html">LGPLv3</a></li> - <li><a href="https://sailfishos.org/develop/docs/silica/">Sailfish Silica</a>: Proprietär, <a href="https://www.gnu.org/licenses/gpl-3.0">GPL</a> Ausnahme für Systembibliotheken</li> - <li><a href="https://github.com/sailfishos/libsailfishapp">LibSailfishApp</a>: Verwendet unter LGPL 2.1</li> - </ul> - Diese Bibliotheken (und deren Abhängigkeiten) sind statisch verknüpft: - <ul> - <li><a href="https://crates.io/crates/libc">libc Rust bindings</a>: Verwendet unter MIT Lizenz</li> - <li><a href="https://crates.io/crates/serde">serde</a>: Verwendet unter MIT license</li> - <li><a href="https://crates.io/crates/toml">toml-rs</a>: Verwendet unter MIT license</li> - <li><a href="https://crates.io/crates/dirs">dirs</a>: Verwendet unter MIT license</li> - <li><a href="https://crates.io/crates/ripemd">RustCrypto: RIPEMD</a>: Verwendet unter MIT license</li> - </ul> - Die <nobr>passwordmaker&#8209;rs</nobr> Bibliothek hat wiederum diese Abhängigkeiten: - <ul> - <li><a href="https://crates.io/crates/unicode-segmentation">unicode-segmentation</a>: Verwendet unter MIT license</li> - </ul> - Auch wenn es sich dabei nicht um eine Laufzeit-Abhängigkeit handelt, sollte der Code-Generator für die Qt Bindings für Rust nicht unerwähnt bleiben: - <ul> - <li><a href="https://invent.kde.org/sdk/rust-qt-binding-generator">Rust Qt Binding Generator</a></li> - </ul> - PassFish verwendet eine modifizierte Version vor Rust Qt Binding Generator, welche im <a href="https://invent.kde.org/soulsource/rust-qt-binding-generator/-/tree/mockall_support">mockall_support</a> Zweig verfügbar ist. -</p> -<p> - This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, - either version 3 of the License, or (at your option) any later version. - This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - See the GNU General Public License for more details. - You should have received a copy of the GNU General Public License along with this program. If not, see <a href="http://www.gnu.org/licenses/">http://www.gnu.org/licenses/</a>. -</p> - - - - - CoverPage - - My Cover - Mein Cover - - - PassFish - PassFish - - - Used Text: - Might be too long? Needs testing. - Verwendeter Text: - - - Pass Ready - Pass Bereit - - - Input Needed - Input Benötigt - - - - FirstPage - - Show Page 2 - Zur Seite 2 - - - UI Template - UI-Vorlage - - - Hello Sailors - Hallo Matrosen - - - - MainPage - - App Settings - Programmeinstellungen - - - About - Über PassFish - - - PassFish - PassFish - - - Profile - Profil - - - URL - URL - - - Master Password - Hauptschlüssel - - - Used Text - Verwendeter Text - - - Generating - Am Generieren - - - Missing text to use - Kein zu verwendender Text angegeben - - - Missing master password - Kein Hauptschlüssel angegeben - - - Error in profile character list - Fehler in der Profil-Zeichenliste - - - Generated Password - Generiertes Passwort - - - Saving settings failed. - Fehler beim Speichern der Einstellungen. - - - - ProfileEditor - - Edit Profile - Profil bearbeiten - - - Required Field - Benötigtes Feld - - - Profile Name - Profilname - - - Profile name required. - Profilname wird benötigt. - - - Use Protocol - Verwende Protokoll - - - Include URL protocol (e.g. "http://") - Nutze Protokoll (z.B. "http://") - - - Use "undefined" if protocol is missing - Verwende "undefined" bei fehlendem Protokoll - - - Enable to mimic weird behaviour of PasswordMaker Pro. - Einschalten, um das Verhalten von PasswordMaker Pro zu imitieren. - - - Use Userinfo - Verwende Nutzerdaten - - - Include userinfo (e.g "jane_doe:12345" - Nutze Nutzerinfo (z.B. "jane_doe:12345") - - - Use Subomain(s) - Verwende Subdomain(s) - - - Include URL subdomain(s) (e.g. "www.") - Nutze Subdomäne(n) (e.g. "www") - - - Use Domain - Verwende Domain - - - Include URL domain (e.g. "example.com") - Nutze Domain (z.B. "example.com") - - - Use Port/Path - Verwende Port/Pfad - - - Include port and path (e.g ":8080/file") - Nutze Port und Pfad (z.B. ":8080/datei") - - - At least one URL part required. - Mindesteins ein Teil der URL muss genutzt werden. - - - Password Length - Passwortlänge - - - Hash Algorithm - Hash-Algorithmus - - - MD5 Version 0.6 - MD5 Version 0.6 - - - HMAC-MD5 Version 0.6 - HMAC-MD5 Version 0.6 - - - Use L33t - Verwende L33t - - - not at all - Gar nicht - - - before generating - Vor der Generierung - - - after generating - Nach der Generierung - - - before and after generating - Vor und nach der Generierung - - - Leet Level - Leet genug für diese Welt? - Leet-Stärke - - - Default Characters - Standard-Zeichenliste - - - Alphanumeric - Alphanumerisch - - - Letters only - Nur Buchstaben - - - Numbers only - Nur Ziffern - - - Special only - Nur Sonderzeichen - - - Hex - Hexadezimal - - - Custom - Angepasst - - - Characters Preset - Zeichenlistenvorlage - - - Need at least 2 characters. - Es werden mindestens 2 Zeichen benötigt. - - - Characters - Zeichenliste - - - Username - Nutzername - - - Modifier - Modifikator - - - Prefix - Präfix - - - Suffix - Suffix - - - - ProfilesPage - - Add Profile - Neues Profil - - - Select/Edit Profiles - Profil Auswählen/Bearbeiten - - - Edit - Bearbeiten - - - Remove - Löschen - - - Saving profiles failed. - Fehler beim Speichern der Profile. - - - - SecondPage - - Nested Page - Unterseite - - - Item - Element - - - - SettingsEditor - - Edit Settings - Einstellungen Anpassen - - - Hide Generated Password - Generiertes Passwort verstecken - - - Auto-clear generated password - Generiertes Passwort automatisch löschen - - - Auto-clear generated pass timeout - Zeit bis das generierte Passwort gelöscht wird - - - Auto-clear master password - Hauptschlüssel automatisch löschen - - - Auto-clear master pass timeout - Zeit bis der Hauptschlüssel gelöscht wird - - - Profiles can be edited directly in the profiles selector. - Der Profileditor ist über die Profilauswahl erreichbar. - - - diff --git a/translations/Passwordsailor.ts b/translations/Passwordsailor.ts deleted file mode 100644 index 46805ca..0000000 --- a/translations/Passwordsailor.ts +++ /dev/null @@ -1,428 +0,0 @@ - - - - - AboutPage - - About PassFish - About PassFish - - - -<p> - PassFish is a native re-implementation of <a href="https://passwordmaker.org/">PasswordMaker</a> for Sailfish OS. - It aims to be mostly compatible to the <a href="https://sourceforge.net/projects/passwordmaker/files/Javascript%20Edition/">Javascript Edition</a>. -</p> -<p> - All credit for the development of the PasswordMaker Pro algorithm goes to the original authors of PasswordMaker Pro, Miquel Burns and Eric H. Jung. -</p> -<p> - As PassFish is not merely a port, but a full reimplementation from scratch, compatibility is not guaranteed. While the original source code was - used as a guideline during implementation, the underlying technology is vastly different. Common use cases are tested by integration tests, but some - edge cases might have been missed. In case you encounter such an issue, please report it on the - <a href="https://github.com/soulsource/passfish/issues">github issue tracker</a> of the project. -</p> -<p> - Speaking of integration tests: The hash algorithms were not re-implemented for this project in order to reduce the risk of introducing bugs. Instead the - QCryptographicHash API is used where possible, and where not, the implementation from the RustCrypto Hashes repository is utilized (see list of dependencies below). -</p> -<p> - This program consists of two parts: The application itself ("<a href="https://github.com/soulsource/passfish">PassFish</a>"), and a Rust crate that contains the - implementation of the business logic ("<a href="https://github.com/soulsource/passwordmaker-rs"><nobr>passwordmaker&#8209;rs</nobr></a>"). - This is important, as the two parts use different licenses. PassFish is published under the GPLv3 license, while <nobr>passwordmaker&#8209;rs</nobr> is published under LGPLv3. Please check the linked github pages for more details. -</p> -<p> - This program utilises several third party libraries. This list is kept up-to-date to the best of my knowledge. Only direct dependencies are listed, - for transitive dependencies please see the linked websites. Similarly, the source code for those third-party dependencies that are published under an - open source license can be found on the linked websites. To my knowledge the only non-open-source dependency is Silica. The listed licenses are just those - used by <i>this</i> project, most libraries are available under multiple licenses. Please see the libraries' websites for details.<br> - These libraries are linked dynamically: - <ul> - <li><a href="https://www.qt.io/">Qt Quick</a>: Used under <a href="https://www.gnu.org/licenses/lgpl-3.0.en.html">LGPLv3</a></li> - <li><a href="https://sailfishos.org/develop/docs/silica/">Sailfish Silica</a>: Proprietary, <a href="https://www.gnu.org/licenses/gpl-3.0">GPL</a> system library exception</li> - <li><a href="https://github.com/sailfishos/libsailfishapp">LibSailfishApp</a>: Used under LGPL 2.1</li> - </ul> - These libraries and their dependencies are linked statically: - <ul> - <li><a href="https://crates.io/crates/libc">libc Rust bindings</a>: Used under MIT license</li> - <li><a href="https://crates.io/crates/serde">serde</a>: Used under MIT license</li> - <li><a href="https://crates.io/crates/toml">toml-rs</a>: Used under MIT license</li> - <li><a href="https://crates.io/crates/dirs">dirs</a>: Used under MIT license</li> - <li><a href="https://crates.io/crates/ripemd">RustCrypto: RIPEMD</a>: Used under MIT license</li> - </ul> - The <nobr>passwordmaker&#8209;rs</nobr> library has the following statically linked runtime dependencies: - <ul> - <li><a href="https://crates.io/crates/unicode-segmentation">unicode-segmentation</a>: Used under MIT license</li> - </ul> - While it is not a runtime dependency, the code generator for the Rust Qt bindings is worth noting: - <ul> - <li><a href="https://invent.kde.org/sdk/rust-qt-binding-generator">Rust Qt Binding Generator</a></li> - </ul> - PassFish uses a modified version, which can be found in the <a href="https://invent.kde.org/soulsource/rust-qt-binding-generator/-/tree/mockall_support">mockall_support</a> branch. -</p> -<p> - This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, - either version 3 of the License, or (at your option) any later version. - This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - See the GNU General Public License for more details. - You should have received a copy of the GNU General Public License along with this program. If not, see <a href="http://www.gnu.org/licenses/">http://www.gnu.org/licenses/</a>. -</p> - - -<p> - PassFish is a native re-implementation of <a href="https://passwordmaker.org/">PasswordMaker</a> for Sailfish OS. - It aims to be mostly compatible to the <a href="https://sourceforge.net/projects/passwordmaker/files/Javascript%20Edition/">Javascript Edition</a>. -</p> -<p> - All credit for the development of the PasswordMaker Pro algorithm goes to the original authors of PasswordMaker Pro, Miquel Burns and Eric H. Jung. -</p> -<p> - As PassFish is not merely a port, but a full reimplementation from scratch, compatibility is not guaranteed. While the original source code was - used as a guideline during implementation, the underlying technology is vastly different. Common use cases are tested by integration tests, but some - edge cases might have been missed. In case you encounter such an issue, please report it on the - <a href="https://github.com/soulsource/passfish/issues">github issue tracker</a> of the project. -</p> -<p> - Speaking of integration tests: The hash algorithms were not re-implemented for this project in order to reduce the risk of introducing bugs. Instead the - QCryptographicHash API is used where possible, and where not, the implementation from the RustCrypto Hashes repository is utilized (see list of dependencies below). -</p> -<p> - This program consists of two parts: The application itself ("<a href="https://github.com/soulsource/passfish">PassFish</a>"), and a Rust crate that contains the - implementation of the business logic ("<a href="https://github.com/soulsource/passwordmaker-rs"><nobr>passwordmaker&#8209;rs</nobr></a>"). - This is important, as the two parts use different licenses. PassFish is published under the GPLv3 license, while <nobr>passwordmaker&#8209;rs</nobr> is published under LGPLv3. Please check the linked github pages for more details. -</p> -<p> - This program utilises several third party libraries. This list is kept up-to-date to the best of my knowledge. Only direct dependencies are listed, - for transitive dependencies please see the linked websites. Similarly, the source code for those third-party dependencies that are published under an - open source license can be found on the linked websites. To my knowledge the only non-open-source dependency is Silica. The listed licenses are just those - used by <i>this</i> project, most libraries are available under multiple licenses. Please see the libraries' websites for details.<br> - These libraries are linked dynamically: - <ul> - <li><a href="https://www.qt.io/">Qt Quick</a>: Used under <a href="https://www.gnu.org/licenses/lgpl-3.0.en.html">LGPLv3</a></li> - <li><a href="https://sailfishos.org/develop/docs/silica/">Sailfish Silica</a>: Proprietary, <a href="https://www.gnu.org/licenses/gpl-3.0">GPL</a> system library exception</li> - <li><a href="https://github.com/sailfishos/libsailfishapp">LibSailfishApp</a>: Used under LGPL 2.1</li> - </ul> - These libraries and their dependencies are linked statically: - <ul> - <li><a href="https://crates.io/crates/libc">libc Rust bindings</a>: Used under MIT license</li> - <li><a href="https://crates.io/crates/serde">serde</a>: Used under MIT license</li> - <li><a href="https://crates.io/crates/toml">toml-rs</a>: Used under MIT license</li> - <li><a href="https://crates.io/crates/dirs">dirs</a>: Used under MIT license</li> - <li><a href="https://crates.io/crates/ripemd">RustCrypto: RIPEMD</a>: Used under MIT license</li> - </ul> - The <nobr>passwordmaker&#8209;rs</nobr> library has the following statically linked runtime dependencies: - <ul> - <li><a href="https://crates.io/crates/unicode-segmentation">unicode-segmentation</a>: Used under MIT license</li> - </ul> - While it is not a runtime dependency, the code generator for the Rust Qt bindings is worth noting: - <ul> - <li><a href="https://invent.kde.org/sdk/rust-qt-binding-generator">Rust Qt Binding Generator</a></li> - </ul> - PassFish uses a modified version, which can be found in the <a href="https://invent.kde.org/soulsource/rust-qt-binding-generator/-/tree/mockall_support">mockall_support</a> branch. -</p> -<p> - This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, - either version 3 of the License, or (at your option) any later version. - This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - See the GNU General Public License for more details. - You should have received a copy of the GNU General Public License along with this program. If not, see <a href="http://www.gnu.org/licenses/">http://www.gnu.org/licenses/</a>. -</p> - - - - - CoverPage - - PassFish - PassFish - - - Used Text: - Used Text: - - - Pass Ready - Pass Ready - - - Input Needed - Input Needed - - - - MainPage - - App Settings - App Settings - - - About - About PassFish - - - PassFish - PassFish - - - Profile - Profile - - - URL - URL - - - Master Password - Master Password - - - Used Text - Used Text - - - Generating - Generating - - - Missing text to use - Missing text to use - - - Missing master password - Missing master password - - - Error in profile character list - Error in profile character list - - - Generated Password - Generated Password - - - Saving settings failed. - Saving settings failed. - - - - ProfileEditor - - Edit Profile - Edit Profile - - - Required Field - Required Field - - - Profile Name - Profile Name - - - Profile name required. - Profile name required. - - - Use Protocol - Use Protocol - - - Include URL protocol (e.g. "http://") - Include URL protocol (e.g. "http://") - - - Use "undefined" if protocol is missing - Use "undefined" if protocol is missing - - - Enable to mimic weird behaviour of PasswordMaker Pro. - Enable to mimic weird behaviour of PasswordMaker Pro. - - - Use Userinfo - Use Userinfo - - - Include userinfo (e.g "jane_doe:12345" - Include userinfo (e.g. "jane_doe:12345") - - - Use Subomain(s) - Use Subomain(s) - - - Include URL subdomain(s) (e.g. "www.") - Include URL subdomain(s) (e.g. "www.") - - - Use Domain - Use Domain - - - Include URL domain (e.g. "example.com") - Include URL domain (e.g. "example.com") - - - Use Port/Path - Use Port/Path - - - Include port and path (e.g ":8080/file") - Include port and path (e.g ":8080/file") - - - At least one URL part required. - At least one URL part required. - - - Password Length - Password Length - - - Hash Algorithm - Hash Algorithm - - - MD5 Version 0.6 - MD5 Version 0.6 - - - HMAC-MD5 Version 0.6 - HMAC-MD5 Version 0.6 - - - Use L33t - Use L33t - - - not at all - not at all - - - before generating - before generating - - - after generating - after generating - - - before and after generating - before and after generating - - - Leet Level - Leet Level - - - Default Characters - Default Characters - - - Alphanumeric - Alphanumeric - - - Letters only - Letters only - - - Numbers only - Numbers only - - - Special only - Special only - - - Hex - Hex - - - Custom - Custom - - - Characters Preset - Characters Preset - - - Need at least 2 characters. - Need at least 2 characters. - - - Characters - Characters - - - Username - Username - - - Modifier - Modifier - - - Prefix - Prefix - - - Suffix - Suffix - - - - ProfilesPage - - Add Profile - Add Profile - - - Select/Edit Profiles - Select/Edit Profiles - - - Edit - Edit - - - Remove - Remove - - - Saving profiles failed. - Saving profiles failed. - - - - SettingsEditor - - Edit Settings - Edit Settings - - - Hide Generated Password - Hide Generated Password - - - Auto-clear generated password - Auto-clear generated password - - - Auto-clear generated pass timeout - Auto-clear generated pass timeout - - - Auto-clear master password - Auto-clear master password - - - Auto-clear master pass timeout - Auto-clear master pass timeout - - - Profiles can be edited directly in the profiles selector. - Profiles can be edited directly in the profiles selector. - - - diff --git a/translations/harbour-passfish-de.qm b/translations/harbour-passfish-de.qm new file mode 100644 index 0000000..abbfafa Binary files /dev/null and b/translations/harbour-passfish-de.qm differ diff --git a/translations/harbour-passfish-de.ts b/translations/harbour-passfish-de.ts new file mode 100644 index 0000000..a0fad6d --- /dev/null +++ b/translations/harbour-passfish-de.ts @@ -0,0 +1,462 @@ + + + + + AboutPage + + About PassFish + Über PassFish + + + +<p> + PassFish is a native re-implementation of <a href="https://passwordmaker.org/">PasswordMaker</a> for Sailfish OS. + It aims to be mostly compatible to the <a href="https://sourceforge.net/projects/passwordmaker/files/Javascript%20Edition/">Javascript Edition</a>. +</p> +<p> + All credit for the development of the PasswordMaker Pro algorithm goes to the original authors of PasswordMaker Pro, Miquel Burns and Eric H. Jung. +</p> +<p> + As PassFish is not merely a port, but a full reimplementation from scratch, compatibility is not guaranteed. While the original source code was + used as a guideline during implementation, the underlying technology is vastly different. Common use cases are tested by integration tests, but some + edge cases might have been missed. In case you encounter such an issue, please report it on the + <a href="https://github.com/soulsource/passfish/issues">github issue tracker</a> of the project. +</p> +<p> + Speaking of integration tests: The hash algorithms were not re-implemented for this project in order to reduce the risk of introducing bugs. Instead the + QCryptographicHash API is used where possible, and where not, the implementation from the RustCrypto Hashes repository is utilized (see list of dependencies below). +</p> +<p> + This program consists of two parts: The application itself ("<a href="https://github.com/soulsource/passfish">PassFish</a>"), and a Rust crate that contains the + implementation of the business logic ("<a href="https://github.com/soulsource/passwordmaker-rs"><nobr>passwordmaker&#8209;rs</nobr></a>"). + This is important, as the two parts use different licenses. PassFish is published under the GPLv3 license, while <nobr>passwordmaker&#8209;rs</nobr> is published under LGPLv3. Please check the linked github pages for more details. +</p> +<p> + This program utilises several third party libraries. This list is kept up-to-date to the best of my knowledge. Only direct dependencies are listed, + for transitive dependencies please see the linked websites. Similarly, the source code for those third-party dependencies that are published under an + open source license can be found on the linked websites. To my knowledge the only non-open-source dependency is Silica. The listed licenses are just those + used by <i>this</i> project, most libraries are available under multiple licenses. Please see the libraries' websites for details.<br> + These libraries are linked dynamically: + <ul> + <li><a href="https://www.qt.io/">Qt Quick</a>: Used under <a href="https://www.gnu.org/licenses/lgpl-3.0.en.html">LGPLv3</a></li> + <li><a href="https://sailfishos.org/develop/docs/silica/">Sailfish Silica</a>: Proprietary, <a href="https://www.gnu.org/licenses/gpl-3.0">GPL</a> system library exception</li> + <li><a href="https://github.com/sailfishos/libsailfishapp">LibSailfishApp</a>: Used under LGPL 2.1</li> + </ul> + These libraries and their dependencies are linked statically: + <ul> + <li><a href="https://crates.io/crates/libc">libc Rust bindings</a>: Used under MIT license</li> + <li><a href="https://crates.io/crates/serde">serde</a>: Used under MIT license</li> + <li><a href="https://crates.io/crates/toml">toml-rs</a>: Used under MIT license</li> + <li><a href="https://crates.io/crates/dirs">dirs</a>: Used under MIT license</li> + <li><a href="https://crates.io/crates/ripemd">RustCrypto: RIPEMD</a>: Used under MIT license</li> + </ul> + The <nobr>passwordmaker&#8209;rs</nobr> library has the following statically linked runtime dependencies: + <ul> + <li><a href="https://crates.io/crates/unicode-segmentation">unicode-segmentation</a>: Used under MIT license</li> + </ul> + While it is not a runtime dependency, the code generator for the Rust Qt bindings is worth noting: + <ul> + <li><a href="https://invent.kde.org/sdk/rust-qt-binding-generator">Rust Qt Binding Generator</a></li> + </ul> + PassFish uses a modified version, which can be found in the <a href="https://invent.kde.org/soulsource/rust-qt-binding-generator/-/tree/mockall_support">mockall_support</a> branch. +</p> +<p> + This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, + either version 3 of the License, or (at your option) any later version. + This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + See the GNU General Public License for more details. + You should have received a copy of the GNU General Public License along with this program. If not, see <a href="http://www.gnu.org/licenses/">http://www.gnu.org/licenses/</a>. +</p> + + +<p> + PassFish ist eine native Neu-Implementierung von <a href="https://passwordmaker.org/">PasswordMaker Pro</a> für Sailfish OS, + mit dem Ziel, zu der <a href="https://sourceforge.net/projects/passwordmaker/files/Javascript%20Edition/">Javascript Edition</a> kompatibel zu sein. +</p> +<p> + Der Original-Algorithmus von PasswordMaker Pro stammt von Miquel Burns und Eric H. Jung. +</p> +<p> + Da es sich bei PassFish nicht um einen Port, sondern um eine kompette Neuimplementierung handelt, ist es nicht möglich, vollständige Kompatibilität zu garantieren. + Auch wenn der Original-Quelltext während der Entwicklung als Hilfsmittel herangezogen wurde, gibt es doch grundlegende Unterschiede in der zugrunde liegenden Technologie. + Für typische Inputs wurden zwar Integrations-Tests angelegt, es ist aber mehr als wahrscheinlich, dass der eine oder andere Spezialfall durch die Maschen gerutscht ist. + Falls Sie ein derartiges Problem entdecken, melden Sie es doch bitte im <a href="https://github.com/soulsource/passfish/issues">Github Issue Tracker</a> dieses Projekts. +</p> +<p> + Wenn wir schon bei Integrations-Tests sind: Um möglichst keine neuen Fehler zu verursachen, wurden die Hash-Algorithmen nicht erneut implementiert. + Stattdessen wurde wo möglich die QCryptographicHash API verwendet. Wo dies nicht möglich war, wurde stattdessen auf das RustCrypto Hashes Projekt zurückgegriffen + (mehr Details finden Sie in der Liste der Abhängigkeiten weiter unten). +</p> +<p> + Dieses Programm besteht aus zwei Teilen: Der Anwendung selbst ("<a href="https://github.com/soulsource/passfish">PassFish</a>"), und einer Rust-Crate, welche den Nachbau des + eigentlichen PasswordMaker Pro Algorithmus enthält ("<a href="https://github.com/soulsource/passwordmaker-rs"><nobr>passwordmaker&#8209;rs</nobr></a>"). + Diese Trennung ist insofern wichtig, als dass die beiden Teile unter verschiedenen Lizenzen veröffentlicht wurden. PassFish selbst steht unter der GPLv3 Lizenz, während + <nobr>passwordmaker&#8209;rs</nobr> unter LGPLv3 weiterverwendet werden darf. Die verlinkten Github-Seiten der jeweiligen Repositories enthalten weitere Details. +</p> +<p> + Dieses Programm verwendet Software aus Drittquellen. Die Liste hier wird nach bestem Wissen und Gewissen aktuell gehalten. Hier sind nur die direkten Abhängigkeiten angegeben. + Besuchen Sie bitte die Websites ebenjener, falls Sie Informationen über deren Abhängigkeiten benötigen. Selbiges gilt, falls Sie den Quelltext der als Open Source veröffentlichten Abhängigkeiten abrufen möchten. + So weit ich das sagen kann, ist lediglich Silca selbst unter keiner offenen Lizenz verfügbar. Die hier genannten Lizenzen sind lediglich jene, die von <i>diesem</i> Projekt verwendet werden. Die meisten der gelisteten + Drittanbieter-Projekte sind auch unter anderen Lizenzen verfügbar.<br> + Dies sind die dynamisch verknüpften Abhängigkeiten: + <ul> + <li><a href="https://www.qt.io/">Qt Quick</a>: Verwendet unter <a href="https://www.gnu.org/licenses/lgpl-3.0.en.html">LGPLv3</a></li> + <li><a href="https://sailfishos.org/develop/docs/silica/">Sailfish Silica</a>: Proprietär, <a href="https://www.gnu.org/licenses/gpl-3.0">GPL</a> Ausnahme für Systembibliotheken</li> + <li><a href="https://github.com/sailfishos/libsailfishapp">LibSailfishApp</a>: Verwendet unter LGPL 2.1</li> + </ul> + Diese Bibliotheken (und deren Abhängigkeiten) sind statisch verknüpft: + <ul> + <li><a href="https://crates.io/crates/libc">libc Rust bindings</a>: Verwendet unter MIT Lizenz</li> + <li><a href="https://crates.io/crates/serde">serde</a>: Verwendet unter MIT license</li> + <li><a href="https://crates.io/crates/toml">toml-rs</a>: Verwendet unter MIT license</li> + <li><a href="https://crates.io/crates/dirs">dirs</a>: Verwendet unter MIT license</li> + <li><a href="https://crates.io/crates/ripemd">RustCrypto: RIPEMD</a>: Verwendet unter MIT license</li> + </ul> + Die <nobr>passwordmaker&#8209;rs</nobr> Bibliothek hat wiederum diese Abhängigkeiten: + <ul> + <li><a href="https://crates.io/crates/unicode-segmentation">unicode-segmentation</a>: Verwendet unter MIT license</li> + </ul> + Auch wenn es sich dabei nicht um eine Laufzeit-Abhängigkeit handelt, sollte der Code-Generator für die Qt Bindings für Rust nicht unerwähnt bleiben: + <ul> + <li><a href="https://invent.kde.org/sdk/rust-qt-binding-generator">Rust Qt Binding Generator</a></li> + </ul> + PassFish verwendet eine modifizierte Version vor Rust Qt Binding Generator, welche im <a href="https://invent.kde.org/soulsource/rust-qt-binding-generator/-/tree/mockall_support">mockall_support</a> Zweig verfügbar ist. +</p> +<p> + This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, + either version 3 of the License, or (at your option) any later version. + This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + See the GNU General Public License for more details. + You should have received a copy of the GNU General Public License along with this program. If not, see <a href="http://www.gnu.org/licenses/">http://www.gnu.org/licenses/</a>. +</p> + + + + + CoverPage + + My Cover + Mein Cover + + + PassFish + PassFish + + + Used Text: + Might be too long? Needs testing. + Verwendeter Text: + + + Pass Ready + Passwort Bereit + + + Input Needed + Input Benötigt + + + + FirstPage + + Show Page 2 + Zur Seite 2 + + + UI Template + UI-Vorlage + + + Hello Sailors + Hallo Matrosen + + + + MainPage + + App Settings + Programmeinstellungen + + + About + Über PassFish + + + PassFish + PassFish + + + Profile + Profil + + + URL + URL + + + Master Password + Hauptschlüssel + + + Used Text + Verwendeter Text + + + Generating + Am Generieren + + + Missing text to use + Kein zu verwendender Text angegeben + + + Missing master password + Kein Hauptschlüssel angegeben + + + Error in profile character list + Fehler in der Profil-Zeichenliste + + + Generated Password + Generiertes Passwort + + + Saving settings failed. + Fehler beim Speichern der Einstellungen. + + + + ProfileEditor + + Edit Profile + Profil bearbeiten + + + Required Field + Benötigtes Feld + + + Profile Name + Profilname + + + Profile name required. + Profilname wird benötigt. + + + Use Protocol + Verwende Protokoll + + + Include URL protocol (e.g. "http://") + Nutze Protokoll (z.B. "http://") + + + Use "undefined" if protocol is missing + Verwende "undefined" bei fehlendem Protokoll + + + Enable to mimic weird behaviour of PasswordMaker Pro. + Einschalten, um das Verhalten von PasswordMaker Pro zu imitieren. + + + Use Userinfo + Verwende Nutzerdaten + + + Include userinfo (e.g "jane_doe:12345" + Nutze Nutzerinfo (z.B. "jane_doe:12345") + + + Use Subomain(s) + Verwende Subdomain(s) + + + Include URL subdomain(s) (e.g. "www.") + Nutze Subdomäne(n) (e.g. "www") + + + Use Domain + Verwende Domain + + + Include URL domain (e.g. "example.com") + Nutze Domain (z.B. "example.com") + + + Use Port/Path + Verwende Port/Pfad + + + Include port and path (e.g ":8080/file") + Nutze Port und Pfad (z.B. ":8080/datei") + + + At least one URL part required. + Mindesteins ein Teil der URL muss genutzt werden. + + + Password Length + Passwortlänge + + + Hash Algorithm + Hash-Algorithmus + + + MD5 Version 0.6 + MD5 Version 0.6 + + + HMAC-MD5 Version 0.6 + HMAC-MD5 Version 0.6 + + + Use L33t + Verwende L33t + + + not at all + Gar nicht + + + before generating + Vor der Generierung + + + after generating + Nach der Generierung + + + before and after generating + Vor und nach der Generierung + + + Leet Level + Leet genug für diese Welt? + Leet-Stärke + + + Default Characters + Standard-Zeichenliste + + + Alphanumeric + Alphanumerisch + + + Letters only + Nur Buchstaben + + + Numbers only + Nur Ziffern + + + Special only + Nur Sonderzeichen + + + Hex + Hexadezimal + + + Custom + Angepasst + + + Characters Preset + Zeichenlistenvorlage + + + Need at least 2 characters. + Es werden mindestens 2 Zeichen benötigt. + + + Characters + Zeichenliste + + + Username + Nutzername + + + Modifier + Modifikator + + + Prefix + Präfix + + + Suffix + Suffix + + + + ProfilesPage + + Add Profile + Neues Profil + + + Select/Edit Profiles + Profil Auswählen/Bearbeiten + + + Edit + Bearbeiten + + + Remove + Löschen + + + Saving profiles failed. + Fehler beim Speichern der Profile. + + + + SecondPage + + Nested Page + Unterseite + + + Item + Element + + + + SettingsEditor + + Edit Settings + Einstellungen Anpassen + + + Hide Generated Password + Generiertes Passwort verstecken + + + Auto-clear generated password + Generiertes Passwort automatisch löschen + + + Auto-clear generated pass timeout + Zeit bis das generierte Passwort gelöscht wird + + + Auto-clear master password + Hauptschlüssel automatisch löschen + + + Auto-clear master pass timeout + Zeit bis der Hauptschlüssel gelöscht wird + + + Profiles can be edited directly in the profiles selector. + Der Profileditor ist über die Profilauswahl erreichbar. + + + diff --git a/translations/harbour-passfish.qm b/translations/harbour-passfish.qm new file mode 100644 index 0000000..2d1b29c Binary files /dev/null and b/translations/harbour-passfish.qm differ diff --git a/translations/harbour-passfish.ts b/translations/harbour-passfish.ts new file mode 100644 index 0000000..4258996 --- /dev/null +++ b/translations/harbour-passfish.ts @@ -0,0 +1,428 @@ + + + + + AboutPage + + About PassFish + About PassFish + + + +<p> + PassFish is a native re-implementation of <a href="https://passwordmaker.org/">PasswordMaker</a> for Sailfish OS. + It aims to be mostly compatible to the <a href="https://sourceforge.net/projects/passwordmaker/files/Javascript%20Edition/">Javascript Edition</a>. +</p> +<p> + All credit for the development of the PasswordMaker Pro algorithm goes to the original authors of PasswordMaker Pro, Miquel Burns and Eric H. Jung. +</p> +<p> + As PassFish is not merely a port, but a full reimplementation from scratch, compatibility is not guaranteed. While the original source code was + used as a guideline during implementation, the underlying technology is vastly different. Common use cases are tested by integration tests, but some + edge cases might have been missed. In case you encounter such an issue, please report it on the + <a href="https://github.com/soulsource/passfish/issues">github issue tracker</a> of the project. +</p> +<p> + Speaking of integration tests: The hash algorithms were not re-implemented for this project in order to reduce the risk of introducing bugs. Instead the + QCryptographicHash API is used where possible, and where not, the implementation from the RustCrypto Hashes repository is utilized (see list of dependencies below). +</p> +<p> + This program consists of two parts: The application itself ("<a href="https://github.com/soulsource/passfish">PassFish</a>"), and a Rust crate that contains the + implementation of the business logic ("<a href="https://github.com/soulsource/passwordmaker-rs"><nobr>passwordmaker&#8209;rs</nobr></a>"). + This is important, as the two parts use different licenses. PassFish is published under the GPLv3 license, while <nobr>passwordmaker&#8209;rs</nobr> is published under LGPLv3. Please check the linked github pages for more details. +</p> +<p> + This program utilises several third party libraries. This list is kept up-to-date to the best of my knowledge. Only direct dependencies are listed, + for transitive dependencies please see the linked websites. Similarly, the source code for those third-party dependencies that are published under an + open source license can be found on the linked websites. To my knowledge the only non-open-source dependency is Silica. The listed licenses are just those + used by <i>this</i> project, most libraries are available under multiple licenses. Please see the libraries' websites for details.<br> + These libraries are linked dynamically: + <ul> + <li><a href="https://www.qt.io/">Qt Quick</a>: Used under <a href="https://www.gnu.org/licenses/lgpl-3.0.en.html">LGPLv3</a></li> + <li><a href="https://sailfishos.org/develop/docs/silica/">Sailfish Silica</a>: Proprietary, <a href="https://www.gnu.org/licenses/gpl-3.0">GPL</a> system library exception</li> + <li><a href="https://github.com/sailfishos/libsailfishapp">LibSailfishApp</a>: Used under LGPL 2.1</li> + </ul> + These libraries and their dependencies are linked statically: + <ul> + <li><a href="https://crates.io/crates/libc">libc Rust bindings</a>: Used under MIT license</li> + <li><a href="https://crates.io/crates/serde">serde</a>: Used under MIT license</li> + <li><a href="https://crates.io/crates/toml">toml-rs</a>: Used under MIT license</li> + <li><a href="https://crates.io/crates/dirs">dirs</a>: Used under MIT license</li> + <li><a href="https://crates.io/crates/ripemd">RustCrypto: RIPEMD</a>: Used under MIT license</li> + </ul> + The <nobr>passwordmaker&#8209;rs</nobr> library has the following statically linked runtime dependencies: + <ul> + <li><a href="https://crates.io/crates/unicode-segmentation">unicode-segmentation</a>: Used under MIT license</li> + </ul> + While it is not a runtime dependency, the code generator for the Rust Qt bindings is worth noting: + <ul> + <li><a href="https://invent.kde.org/sdk/rust-qt-binding-generator">Rust Qt Binding Generator</a></li> + </ul> + PassFish uses a modified version, which can be found in the <a href="https://invent.kde.org/soulsource/rust-qt-binding-generator/-/tree/mockall_support">mockall_support</a> branch. +</p> +<p> + This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, + either version 3 of the License, or (at your option) any later version. + This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + See the GNU General Public License for more details. + You should have received a copy of the GNU General Public License along with this program. If not, see <a href="http://www.gnu.org/licenses/">http://www.gnu.org/licenses/</a>. +</p> + + +<p> + PassFish is a native re-implementation of <a href="https://passwordmaker.org/">PasswordMaker</a> for Sailfish OS. + It aims to be mostly compatible to the <a href="https://sourceforge.net/projects/passwordmaker/files/Javascript%20Edition/">Javascript Edition</a>. +</p> +<p> + All credit for the development of the PasswordMaker Pro algorithm goes to the original authors of PasswordMaker Pro, Miquel Burns and Eric H. Jung. +</p> +<p> + As PassFish is not merely a port, but a full reimplementation from scratch, compatibility is not guaranteed. While the original source code was + used as a guideline during implementation, the underlying technology is vastly different. Common use cases are tested by integration tests, but some + edge cases might have been missed. In case you encounter such an issue, please report it on the + <a href="https://github.com/soulsource/passfish/issues">github issue tracker</a> of the project. +</p> +<p> + Speaking of integration tests: The hash algorithms were not re-implemented for this project in order to reduce the risk of introducing bugs. Instead the + QCryptographicHash API is used where possible, and where not, the implementation from the RustCrypto Hashes repository is utilized (see list of dependencies below). +</p> +<p> + This program consists of two parts: The application itself ("<a href="https://github.com/soulsource/passfish">PassFish</a>"), and a Rust crate that contains the + implementation of the business logic ("<a href="https://github.com/soulsource/passwordmaker-rs"><nobr>passwordmaker&#8209;rs</nobr></a>"). + This is important, as the two parts use different licenses. PassFish is published under the GPLv3 license, while <nobr>passwordmaker&#8209;rs</nobr> is published under LGPLv3. Please check the linked github pages for more details. +</p> +<p> + This program utilises several third party libraries. This list is kept up-to-date to the best of my knowledge. Only direct dependencies are listed, + for transitive dependencies please see the linked websites. Similarly, the source code for those third-party dependencies that are published under an + open source license can be found on the linked websites. To my knowledge the only non-open-source dependency is Silica. The listed licenses are just those + used by <i>this</i> project, most libraries are available under multiple licenses. Please see the libraries' websites for details.<br> + These libraries are linked dynamically: + <ul> + <li><a href="https://www.qt.io/">Qt Quick</a>: Used under <a href="https://www.gnu.org/licenses/lgpl-3.0.en.html">LGPLv3</a></li> + <li><a href="https://sailfishos.org/develop/docs/silica/">Sailfish Silica</a>: Proprietary, <a href="https://www.gnu.org/licenses/gpl-3.0">GPL</a> system library exception</li> + <li><a href="https://github.com/sailfishos/libsailfishapp">LibSailfishApp</a>: Used under LGPL 2.1</li> + </ul> + These libraries and their dependencies are linked statically: + <ul> + <li><a href="https://crates.io/crates/libc">libc Rust bindings</a>: Used under MIT license</li> + <li><a href="https://crates.io/crates/serde">serde</a>: Used under MIT license</li> + <li><a href="https://crates.io/crates/toml">toml-rs</a>: Used under MIT license</li> + <li><a href="https://crates.io/crates/dirs">dirs</a>: Used under MIT license</li> + <li><a href="https://crates.io/crates/ripemd">RustCrypto: RIPEMD</a>: Used under MIT license</li> + </ul> + The <nobr>passwordmaker&#8209;rs</nobr> library has the following statically linked runtime dependencies: + <ul> + <li><a href="https://crates.io/crates/unicode-segmentation">unicode-segmentation</a>: Used under MIT license</li> + </ul> + While it is not a runtime dependency, the code generator for the Rust Qt bindings is worth noting: + <ul> + <li><a href="https://invent.kde.org/sdk/rust-qt-binding-generator">Rust Qt Binding Generator</a></li> + </ul> + PassFish uses a modified version, which can be found in the <a href="https://invent.kde.org/soulsource/rust-qt-binding-generator/-/tree/mockall_support">mockall_support</a> branch. +</p> +<p> + This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, + either version 3 of the License, or (at your option) any later version. + This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + See the GNU General Public License for more details. + You should have received a copy of the GNU General Public License along with this program. If not, see <a href="http://www.gnu.org/licenses/">http://www.gnu.org/licenses/</a>. +</p> + + + + + CoverPage + + PassFish + PassFish + + + Used Text: + Used Text: + + + Pass Ready + Password Ready + + + Input Needed + Input Needed + + + + MainPage + + App Settings + App Settings + + + About + About PassFish + + + PassFish + PassFish + + + Profile + Profile + + + URL + URL + + + Master Password + Master Password + + + Used Text + Used Text + + + Generating + Generating + + + Missing text to use + Missing text to use + + + Missing master password + Missing master password + + + Error in profile character list + Error in profile character list + + + Generated Password + Generated Password + + + Saving settings failed. + Saving settings failed. + + + + ProfileEditor + + Edit Profile + Edit Profile + + + Required Field + Required Field + + + Profile Name + Profile Name + + + Profile name required. + Profile name required. + + + Use Protocol + Use Protocol + + + Include URL protocol (e.g. "http://") + Include URL protocol (e.g. "http://") + + + Use "undefined" if protocol is missing + Use "undefined" if protocol is missing + + + Enable to mimic weird behaviour of PasswordMaker Pro. + Enable to mimic weird behaviour of PasswordMaker Pro. + + + Use Userinfo + Use Userinfo + + + Include userinfo (e.g "jane_doe:12345" + Include userinfo (e.g. "jane_doe:12345") + + + Use Subomain(s) + Use Subomain(s) + + + Include URL subdomain(s) (e.g. "www.") + Include URL subdomain(s) (e.g. "www.") + + + Use Domain + Use Domain + + + Include URL domain (e.g. "example.com") + Include URL domain (e.g. "example.com") + + + Use Port/Path + Use Port/Path + + + Include port and path (e.g ":8080/file") + Include port and path (e.g ":8080/file") + + + At least one URL part required. + At least one URL part required. + + + Password Length + Password Length + + + Hash Algorithm + Hash Algorithm + + + MD5 Version 0.6 + MD5 Version 0.6 + + + HMAC-MD5 Version 0.6 + HMAC-MD5 Version 0.6 + + + Use L33t + Use L33t + + + not at all + not at all + + + before generating + before generating + + + after generating + after generating + + + before and after generating + before and after generating + + + Leet Level + Leet Level + + + Default Characters + Default Characters + + + Alphanumeric + Alphanumeric + + + Letters only + Letters only + + + Numbers only + Numbers only + + + Special only + Special only + + + Hex + Hex + + + Custom + Custom + + + Characters Preset + Characters Preset + + + Need at least 2 characters. + Need at least 2 characters. + + + Characters + Characters + + + Username + Username + + + Modifier + Modifier + + + Prefix + Prefix + + + Suffix + Suffix + + + + ProfilesPage + + Add Profile + Add Profile + + + Select/Edit Profiles + Select/Edit Profiles + + + Edit + Edit + + + Remove + Remove + + + Saving profiles failed. + Saving profiles failed. + + + + SettingsEditor + + Edit Settings + Edit Settings + + + Hide Generated Password + Hide Generated Password + + + Auto-clear generated password + Auto-clear generated password + + + Auto-clear generated pass timeout + Auto-clear generated pass timeout + + + Auto-clear master password + Auto-clear master password + + + Auto-clear master pass timeout + Auto-clear master pass timeout + + + Profiles can be edited directly in the profiles selector. + Profiles can be edited directly in the profiles selector. + + + -- cgit v1.2.3