diff --git a/.gitattributes b/.gitattributes index 3c93bcf..0833179 100644 --- a/.gitattributes +++ b/.gitattributes @@ -4,23 +4,23 @@ # Force the following filetypes to have unix eols and encoding, so that Windows does not break them. # If a file is going to be used on linux and windows, we want it invariant, # rather than automatically translated, because automatic translation always screw things up. -* text=auto eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 -.gitignore text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 -.gitattributes text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 -.gitmodules text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 -*.sh text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 diff=bash -*.c text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 -*.cpp text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 diff=cpp -*.rs text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 diff=rust -*.py text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 diff=python -*.h text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 -*.txt text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 -*.html text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 diff=html -*.htm text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 diff=html -*.md text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 diff=markdown -*.pandoc text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 -*.css text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 diff=css -*.manifest text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 +* text=auto eol=lf encoding=utf-8, whitespace=trailing-space,space-before-tab,tabwidth=4 +.gitignore text eol=lf encoding=utf-8, whitespace=trailing-space,space-before-tab,tabwidth=4 +.gitattributes text eol=lf encoding=utf-8, whitespace=trailing-space,space-before-tab,tabwidth=4 +.gitmodules text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 +*.sh text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 diff=bash +*.c text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 +*.cpp text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 diff=cpp +*.rs text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 diff=rust +*.py text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 diff=python +*.h text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 +*.txt text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 +*.html text eol=lf encoding=utf-8 whitespace=space-before-tab,tabwidth=4 diff=html +*.htm text eol=lf encoding=utf-8 whitespace=space-before-tab,tabwidth=4 diff=html +*.md text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 diff=markdown +*.pandoc text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 +*.css text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 diff=css +*.manifest text eol=lf encoding=utf-8 whitespace=trailing-space,space-before-tab,tabwidth=4 makefile text eol=lf encoding=utf-8 diff --git a/.gitmodules b/.gitmodules index a63383b..96a5d30 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,12 +1,12 @@ [submodule "libsodium"] path = libsodium - url = ../libsodium.git + url = git://rho.la/libsodium.git branch = rho-fork [submodule "mpir"] path = mpir - url = ../mpir.git + url = git://rho.la/mpir.git branch = rho-fork [submodule "wxWidgets"] path = wxWidgets - url = ../wxWidgets.git + url = git://rho.la/wxWidgets.git branch = rho-fork diff --git a/README.md b/README.md index c860dcc..d81f3ca 100644 --- a/README.md +++ b/README.md @@ -1,51 +1,77 @@ ---- -title: >- - README ---- +About +----- + +Wallet is open source software intended to become the manager of hierarchical + deterministic keys for a social network that a superset of the Bitmessage social net, + for securely pseudonymous uncensorable public communication, + and securely private communication. (Telegraph looks like +it will not be private for much longer). + +You cannot have truly end to end encryption, except you control your own keys directly. + +To make an actually useful social net requires a lot of engineers doing a lot of work, which requires funding, which requires a a profit model. The current business plan being to [eat SWIFT's lunch](./docs/manifesto/SWIFT.html), by creating an environment in which one can create and operate the necessary Daos. + +The rest of the documentation is in Pandoc markdown, rather than Gitea or Github markdown, so you will have to build it before any of these links work. [pre alpha documentation (mostly a wish list)](docs/index.htm) [copyright © and license](./license.txt) + +Prerequisites +--------- + pre-requisite, Pandoc to build the html documentation from the markdown files. -Windows pre-requisites: Visual Studio and git-bash +Windows pre-requisites: Visual Studio and git-bash. This software is supposed to be cross platform, and is unlikely to get traction with highly motivate early adopters unless it is cross platform, but currently only builds on Windows. + +Download +--------- To obtain the source code from which the project can be built, including this README.html, from the bash command line (git-bash in windows). ```bash -git clone --recurse-submodules missing url +# assuming Pandoc is installed, and git-bash if you are on +# windows +git clone --recurse-submodules https://gitea.rho.la/cheng/wallet.git +wallet/docs/mkdocs.sh ``` -To build the docs, you need pandoc on the path. +The above download relies on `https` for security, but `https` is vulnerable to enemy action by any adversary sufficiently powerful to have a certificate authority in his pocket, so our identity model relies on ssh keys, not domain names, so if you intend to make contributions, it would be preferable to create an account on `gitea.rho.la` with a fake email, +upload your ssh public key to that account, and clone using `ssh` instead of `https` -```bash2 -cd wallet/docs -./mkdocs.sh +```bash +git clone --recurse-submodules gitea@gitea.rho.la:cheng/wallet.git +wallet/docs/mkdocs.sh ``` +To build the docs, including the license file, you need Pandoc on the path. + +```bash +cd wallet +docs/mkdocs.sh +``` + +Setup +------ + To configure and build the required third party libraries in windows, then build the program and run unit test for the first time, you need to have Visual studio build tools at their default location) -```bash2 +```bash cd wallet -./winConfigure.bat +msvc/winConfig.bat ``` Or, if you are in the command shell or power shell, ```bat -.\winConfigure.bat +msvc\winConfigure.bat ``` -After a pull from remote in which the submodules have changed, the pull -fails to automatically update the submodules by default, and when you -switch or checkout branches, the switch fails to automatically switch -and checkout the brances. - -After a pull that gives you a status of modified submodules. +After a pull that gives you a status of modified submodules, a to fix the submodules ```bash git submodule update --init --recursive --remote diff --git a/RELEASE_NOTES.html b/RELEASE_NOTES.html new file mode 100644 index 0000000..f6675d5 --- /dev/null +++ b/RELEASE_NOTES.html @@ -0,0 +1,52 @@ + + +
+ + + +To build and run README
+pre alpha documentation (mostly a wish list) (In order to read these on this local system, you must first execute the document build script mkdocs.sh
, with bash
, sed
and pandoc
)
This software is pre alpha and should not yet be released. It does +not work well enough to even show what it would do if it was +working
+ reaction.la gpg key 154588427F2709CD9D7146B01C99BB982002C39F
This work is licensed under the Creative Commons Attribution 4.0 International License.