From ed14a736288b1c1d83579efea50d4582f481002c Mon Sep 17 00:00:00 2001
From: idk <idk@laptop.idk.i2p>
Date: Fri, 16 Oct 2020 20:50:25 -0400
Subject: [PATCH] switch the about for the software guide, and add the new
 about content. For a little while some content will be duplicated on the site
 as we get things a little more organized. Application support pages are being
 expanded and re-organized this week.

---
 i2p2www/pages/global/nav.html          |   1 +
 i2p2www/pages/site/about/intro.html    | 158 +++++--------------------
 i2p2www/pages/site/about/software.html |  80 +++++++++++++
 3 files changed, 111 insertions(+), 128 deletions(-)
 create mode 100644 i2p2www/pages/site/about/software.html

diff --git a/i2p2www/pages/global/nav.html b/i2p2www/pages/global/nav.html
index 8c8548bbc..8ca20ba4f 100644
--- a/i2p2www/pages/global/nav.html
+++ b/i2p2www/pages/global/nav.html
@@ -4,6 +4,7 @@
   <li class="has-sub"><div class="menuitem"><span>{{ _('About') }}</span></div>
     <ul>
       <li><a href="{{ site_url('about/intro') }}"><div class="menuitem"><span>{{ _('Introduction to I2P') }}</span></div></a></li>
+      <li><a href="{{ site_url('about/software') }}"><div class="menuitem"><span>{{ _('Guide to I2P Software') }}</span></div></a></li>
       <li class="has-sub"><div class="menuitem"><span>{{ _('Help') }}</span></div>
         <ul>
           <li><a href="{{ site_url('faq') }}"><div class="menuitem"><span>{{ _('FAQ') }}</span></div></a></li>
diff --git a/i2p2www/pages/site/about/intro.html b/i2p2www/pages/site/about/intro.html
index 2e9d7b861..9174753f1 100644
--- a/i2p2www/pages/site/about/intro.html
+++ b/i2p2www/pages/site/about/intro.html
@@ -2,139 +2,41 @@
 {% block title %}{{ _('Intro') }}{% endblock %}
 {% block content %}
 <h1>{{ _('The Invisible Internet Project') }} (I2P)</h1>      
-<p>{% trans ip='http://en.wikipedia.org/wiki/Internet_Protocol',
-tcp='http://en.wikipedia.org/wiki/Transmission_Control_Protocol',
-pke='http://en.wikipedia.org/wiki/Public_key_encryption' -%}
-I2P is an anonymous network, exposing a simple layer that applications can 
-use to anonymously and securely send messages to each other. The network itself is 
-strictly message based (a la <a href="{{ ip }}">IP</a>), but there is a 
-library available to allow reliable streaming communication on top of it (a la 
-<a href="{{ tcp }}">TCP</a>).  
-All communication is end to end encrypted (in total there are four layers of 
-encryption used when sending a message), and even the end points ("destinations") 
-are cryptographic identifiers (essentially a pair of <a href="{{ pke }}">public keys</a>).
-{%- endtrans %}</p>
+<h2>What is I2P?</h2>
+<p>{% trans %}The Invisible Internet Project (I2P) is a fully encrypted private network layer that has been developed with privacy and security by design in order to provide protection for your activity,
+location and your identity.  The software ships with a router that connects you to the network and applications for sharing, communicating and building. {%- endtrans %}</p>
+
+<h3>I2P Cares About Privacy</h3>
+
+<p>{% trans %}The Invisible Internet values privacy and consent, which can only be achieved with privacy-by-default. It is always your choice to share, your platform to own, and the connections you want to make. It is privacy by design, plain, simple and truly free. Additionally I2P offers resistance to pattern recognition and blocking by censors. Because the network relies on peers to route traffic, location blocking is also reduced.{%- endtrans %}</p>
 
-<h2>{{ _('How does it work?') }}</h2>
-
-<p>{% trans tunnelrouting=site_url('docs/how/tunnel-routing') -%}
-To anonymize the messages sent, each client application has their I2P "router"
-build a few inbound and outbound "<a href="{{ tunnelrouting }}">tunnels</a>" - a 
-sequence of peers that pass messages in one direction (to and from the client, 
-respectively).  In turn, when a client wants to send a message to another client, 
-the client passes that message out one of their outbound tunnels targeting one of the 
-other client's inbound tunnels, eventually reaching the destination.  Every 
-participant in the network chooses the length of these tunnels, and in doing so, 
-makes a tradeoff between anonymity, latency, and throughput according to their 
-own needs.  The result is that the number of peers relaying each end to end 
-message is the absolute minimum necessary to meet both the sender's and the 
-receiver's threat model.
-{%- endtrans %}</p>
 
-<p>{% trans netdb=site_url('docs/how/network-database'),
-dht='http://en.wikipedia.org/wiki/Distributed_hash_table',
-kad='http://en.wikipedia.org/wiki/Kademlia' -%}
-The first time a client wants to contact another client, they make a query 
-against the fully distributed "<a href="{{ netdb }}">network 
-database</a>" - a custom structured <a href="{{ dht }}">
-distributed hash table (DHT)</a> based off the 
-<a href="{{ kad }}">Kademlia algorithm</a>. This is done 
-to find the other client's inbound tunnels efficiently, but subsequent messages 
-between them usually includes that data so no further network database lookups 
-are required.
+<p>{% trans %}I2P hides the server from the user and the user from the server. All I2P traffic is internal to the I2P network. Traffic inside I2P does not interact with the Internet directly. It is a layer on top of the Internet. It uses encrypted unidirectional tunnels between you and your peers. No one can see where traffic is coming from, where it is going or what the contents are.
+{%- endtrans %}</p> 
+
+<h3>How to Connect to the I2P Network</h3>
+
+<p>{% trans %}The Invisible Internet Project provides software to download that connects you to the network.In addition to the network  privacy benefits, I2P provides an application layer that allows people to use and create familiar apps for daily use. I2P provides its own unique DNS so that you can self host or mirror content on the network. You can create and own your platform that you can add to the I2P directory or only invite your friends. The I2P network functions in the same way the Internet does, just with some extra configuration. The best part is that if you do not find something you want, you can build it. When you download the I2P software, it includes everything you need to connect, share, and create privately. 
 {%- endtrans %}</p>
 
-<p>{% trans docs=site_url('docs') -%}
-More details about how I2P works are <a href="{{ docs }}">available</a>.
+<h3>An Overview of the Network</h3>
+
+<p>{% trans %}I2P uses cryptography to achieve a variety of properties for the tunnels it builds and the communications it transports. I2P tunnels use transports, NTCP2 and SSU, to hide the nature of the traffic being transported over it. Connections are encrypted from router-to-router, and from client-to-client(end-to-end). Forward-secrecy is provided for all connections. Because I2P is cryptographically addressed, I2P addresses are self-authenticating and only belong to the user who generated them.
 {%- endtrans %}</p>
 
-<h2>{{ _('What can you do with it?') }}</h2>
-
-<p>{% trans %}When you install the I2P software made available at geti2p.net, you are 
-actually installing an I2P router and an accompanying bundle of basic 
-applications. The I2P Java distribution is the first I2P software gateway and 
-has been actively developed since 2001.{%- endtrans %}</p>
-<p>{% trans %}The applications are made available through a webUI, which listens at 
-127.0.0.1:7657, and the main page of which is called the “Router Console,” 
-where you monitor the health of your connection to the network and access 
-applications that to use on the network.{%- endtrans %}</p>
-<h3>{% trans %}What is included:{%- endtrans %}</h3>
-<p>{% trans %}<strong>The Set Up Wizard</strong>: When you download the 
-I2P software, a set up wizard will guide you through a few configuration steps 
-while your router is making its first connections to the network. This happens 
-the same way that your home router connects you to the Internet. During the set 
-up process, you will be given the option to test your bandwidth and set your 
-bandwidth limits in order to ensure a good connection as a network peer.{%- endtrans %}</p>
-<p>{% trans %}<strong>The I2P Router Console</strong>: Here is where you can see your 
-network connections and information about your router. You will be able to see how many peers you 
-have, and other information that will help if you need to troubleshoot. You can 
-stop and start the router as well. You will see the applications that the 
-software includes, as well as links to some community forums and sites on the 
-I2P network. You will receive news when there is a a new software release, and 
-will be able to download the latest version here as well. Additionally, you can 
-find shortcuts to other available applications. The console is customizable and 
-includes a default light theme with a dark theme option.{%- endtrans %}</p>
-<p>{% trans %}<strong>SusiMail</strong>: SusiMail is a secure email client. It is primarily 
-intended for use with Postman’s email servers inside of the I2P network . It 
-is designed to avoid leaking information about email use to other networks. 
-SusiMail is bridged so it can send and receive email from the internet as well. 
-Occasionally you may see some services like Gmail classifying it as spam, which 
-you can correct in your Internet email service providers settings.{%- endtrans %}</p>
-<p>{% trans bittorrent='http://www.bittorrent.com/' -%}<strong><a href="{{ bittorrent }}">I2PSnark</a></strong>: Snark is an I2P network only BitTorrent client. 
-It never makes a connection to a peer over any other network.{%- endtrans %}</p>
-<p>{% trans addressbook='docs/naming' -%}<strong><a href="{{ addressbook }}">The AddressBook</a></strong>: This is a locally-defined list of 
-human-readable addresses ( ie: i2p-projekt.i2p) and corresponding I2P addresses.(udhdrtrcetjm5sxzskjyr5ztpeszydbh4dpl3pl4utgqqw2v4jna.b32.i2p) It integrates with other applications to 
-allow you to use those human-readable addresses in place of those I2P 
-addresses. It is more similar to a hosts file or a contact list than a network 
-database or a DNS service. There is no recognized global namespace, you decide 
-what any given .i2p domain maps to in the end.{%- endtrans %}</p>
-<p><strong>The QR Code Generator</strong>: Besides the Addressbook, I2P 
-addresses can be shared by converting them into QR codes and scanning them with 
-a camera. This is especially useful for Android devices.</p>
-<p>{% trans i2ptunnel=site_url('docs/api/i2ptunnel') -%}<strong><a href="{{ i2ptunnel }}">I2P Hidden Services Manager</a></strong> This is a general-purpose 
-adapter for forwarding services ( ie SSH ) into I2P and proxying client 
-requests to and from I2P. It provides a variety of “Tunnel Types” which are 
-able able to do advance filtering of traffic before it reaches I2P.{%- endtrans %}</p>
-<h3>{% trans %}Applications Outside I2P to use with I2P{%- endtrans %}</h3>
-<p>{% trans browser=site_url('about/browser-config') %}<strong><a href="{{ browser }}">Mozilla Firefox</a></strong>: A web browser with advanced privacy and 
-security features, this is the best browser to configure to browse I2P 
-sites.{%- endtrans %}</p>
-<p>{% trans browser=site_url('about/browser-config') %}<strong><a href="{{ browser }}">Chromium</a></strong>: A web browser developed by Google that is the 
-Open-Source base of Google Chrome, this is sometimes used as an alternative to 
-Firefox.{%- endtrans %}</p>
-<p>{% trans %}<strong><a href="https://biglybt.com">BiglyBT</a></strong>: A Feature-Rich bittorrent client including I2P 
-support and the unique ability to “Bridge” regular torrents in-to I2P so 
-people can download them anonymously.{%- endtrans %}</p>
-<p><strong>OpenSSH</strong>: OpenSSH is a popular program used by systems 
-administrators to remotely administer a server, or to provide “Shell” 
-accounts for users on the server.</p>
-<p>{% trans git=site_url('docs/applications/git'), gitlab=site_url('docs/applications/gitlab') %}<strong><a href="{{ git }}">Git</a>/<a href="{{ gitlab}}">Gitlab</a></strong>: Git is a source-code control tool which is 
-distributed, and often recommends a fork-first workflow. Hosting source code on 
-I2P is an important activity, so Gitlab-specific instructions are available for 
-all to use.{%- endtrans %}</p>
-<p>{% trans %}<strong>Debian and Ubuntu GNU/Linux</strong>: It is possible to obtain 
-packages for Debian and Ubuntu GNU/Linux over I2P using <a href="https://i2pgit.org/idk/apt-transport-i2p">apt-transport-i2p</a> and 
-<a href="https://i2pgit.org/idk/apt-transport-i2phttp">apt-transport-i2phttp</a>. In the future, a bittorrent-based transport may also be 
-developed. {%- endtrans %}</p>
-<h3>{% trans %} Applications for Developers to create new things{%- endtrans %}</h3>
-<p>{% trans sam=site_url('docs/api/sam') %}<strong><a href="{{ sam }}">The SAM API Bridge</a></strong>: The SAM API is a language-independent 
-API for writing applications that are I2P-native by communicating with the 
-local I2P router. It can provide Streaming-like capabilities, Anonymous 
-Datagrams, or Repliable Datagrams.{%- endtrans %}</p>
-<p>{% trans bob=site_url('docs/api/bob') %}<strong><a href="{{ bob }}">The BOB API Bridge</a></strong>: This is a deprecated technology, BOB 
-users should migrate to SAM if it is possible for them to do so.{%- endtrans %}</p>
-<p>{% trans i2cp=site_url('docs/protocol/i2cp') %}<strong><a href="{{ i2cp }}">The I2CP API</a></strong>: Not strictly an application, this is how Java 
-applications communicate with the I2P router to set up tunnels, generate and 
-manage keys, and communicate with other peers on the network.{%- endtrans %}</p>
-
-<p>{% trans team=site_url('about/team'), volunteer=site_url('get-involved'),
-licenses=site_url('get-involved/develop/licenses'), sam=site_url('docs/api/sam'),
-roadmap=site_url('get-involved/roadmap') -%}
-The I2P development <a href="{{ team }}">team</a> is an open group, welcome to all 
-who are interested in <a href="{{ volunteer }}">getting involved</a>, and all of 
-the code is <a href="{{ licenses }}">open source</a>.  The core I2P SDK and the 
-current router implementation is done in Java. The network is actively being developed 
-and has not yet reached the 1.0 release, but the current <a href="{{ roadmap }}">roadmap</a>
-describes our schedule.
+<p>{% trans %}I2P is a secure and traffic protecting Internet-like layer. The network is made up of peers ("routers") and unidirectional inbound and outbound virtual tunnels. Routers communicate with each other using protocols built on existing transport mechanisms (TCP, UDP, etc), passing messages. Client applications have their own cryptographic identifier ("Destination") which enables it to send and receive messages. These clients can connect to any router and authorize the temporary allocation ("lease") of some tunnels that will be used for sending and receiving messages through the network. I2P has its own internal network database (using a modification of the Kademlia DHT) for distributing routing and contact information securely.
 {%- endtrans %}</p>
+
+<h3>About Decentralization and I2P</h3>
+
+<p>{% trans %}The I2P network is almost completely decentralized, with exception to what are what are called "Reseed Servers," which is how you first join the network. This is to deal with the DHT ( Distributed Hash Table ) bootstrap problem. Basically, there's not a good and reliable way to get out of running at least one permanent bootstrap node that non-network users can find to get started. Once you're connected to the network, you only discover peers by building "exploratory" tunnels, but to make your initial connection, you need to get a peer set from somewhere. The reseed servers, which you can see listed on http://127.0.0.1:7657/configreseed in the Java I2P router, provide you with those peers. You then connect to them with the I2P router until you find one who you can reach and build exploratory tunnels through. Reseed servers can tell that you bootstrapped from them, but nothing else about your traffic on the I2P network.{%- endtrans %}</p>
+
+<h3>I see IP addresses of all other I2P nodes in the router console. Does that mean my IP address is visible by others?</h3>
+
+<p>{% trans %}Yes, this is how a fully distributed peer-to-peer network works. Every node participates in routing packets for others, so your IP address must be known to establish connections. While the fact that your computer runs I2P is public, nobody can see your activities in it. You can't say if a user behind this IP address is sharing files, hosting a website, doing research or just running a node to contribute bandwidth to the project.{%- endtrans %}
+
+<h3>What I2P Does Not Do</h3>
+
+<p>{% trans %}The I2P network does not officially "Exit" traffic. It has outproxies to the Internet run by volunteers, which are centralized services. I2P is primarily a hidden service network and outproxying is not an official function, nor is it advised. The privacy benefits you get from participating in the the I2P network come from remaining in the network and not accessing the internet. I2P recommends that you use Tor Browser or a trusted VPN when you want to browse the Internet privately.{%- endtrans %}</p>
+
 {% endblock %}
diff --git a/i2p2www/pages/site/about/software.html b/i2p2www/pages/site/about/software.html
new file mode 100644
index 000000000..dad139836
--- /dev/null
+++ b/i2p2www/pages/site/about/software.html
@@ -0,0 +1,80 @@
+{% extends "global/layout.html" %}
+{% block title %}{{ _('Intro') }}{% endblock %}
+{% block content %}
+<h1>{{ _('The I2P Software') }} (I2P)</h1>      
+
+<p>{% trans %}When you install the I2P software made available at geti2p.net, you are 
+actually installing an I2P router and an accompanying bundle of basic 
+applications. The I2P Java distribution is the first I2P software gateway and 
+has been actively developed since 2001.{%- endtrans %}</p>
+<p>{% trans %}The applications are made available through a webUI, which listens at 
+127.0.0.1:7657, and the main page of which is called the “Router Console,” 
+where you monitor the health of your connection to the network and access 
+applications that to use on the network.{%- endtrans %}</p>
+<h3>{% trans %}What is included:{%- endtrans %}</h3>
+<p>{% trans %}<strong>The Set Up Wizard</strong>: When you download the 
+I2P software, a set up wizard will guide you through a few configuration steps 
+while your router is making its first connections to the network. This happens 
+the same way that your home router connects you to the Internet. During the set 
+up process, you will be given the option to test your bandwidth and set your 
+bandwidth limits in order to ensure a good connection as a network peer.{%- endtrans %}</p>
+<p>{% trans %}<strong>The I2P Router Console</strong>: Here is where you can see your 
+network connections and information about your router. You will be able to see how many peers you 
+have, and other information that will help if you need to troubleshoot. You can 
+stop and start the router as well. You will see the applications that the 
+software includes, as well as links to some community forums and sites on the 
+I2P network. You will receive news when there is a a new software release, and 
+will be able to download the latest version here as well. Additionally, you can 
+find shortcuts to other available applications. The console is customizable and 
+includes a default light theme with a dark theme option.{%- endtrans %}</p>
+<p>{% trans %}<strong>SusiMail</strong>: SusiMail is a secure email client. It is primarily 
+intended for use with Postman’s email servers inside of the I2P network . It 
+is designed to avoid leaking information about email use to other networks. 
+SusiMail is bridged so it can send and receive email from the internet as well. 
+Occasionally you may see some services like Gmail classifying it as spam, which 
+you can correct in your Internet email service providers settings.{%- endtrans %}</p>
+<p>{% trans bittorrent='docs/applications/bittorrent' -%}<strong><a href="{{ bittorrent }}">I2PSnark</a></strong>: Snark is an I2P network only BitTorrent client. It never makes a connection to a peer over any other network.{%- endtrans %}</p>
+<p>{% trans addressbook='docs/naming' -%}<strong><a href="{{ addressbook }}">The AddressBook</a></strong>: This is a locally-defined list of 
+human-readable addresses ( ie: i2p-projekt.i2p) and corresponding I2P addresses.(udhdrtrcetjm5sxzskjyr5ztpeszydbh4dpl3pl4utgqqw2v4jna.b32.i2p) It integrates with other applications to 
+allow you to use those human-readable addresses in place of those I2P 
+addresses. It is more similar to a hosts file or a contact list than a network 
+database or a DNS service. There is no recognized global namespace, you decide 
+what any given .i2p domain maps to in the end.{%- endtrans %}</p>
+<p><strong>The QR Code Generator</strong>: Besides the Addressbook, I2P 
+addresses can be shared by converting them into QR codes and scanning them with 
+a camera. This is especially useful for Android devices.</p>
+<p>{% trans i2ptunnel=site_url('docs/api/i2ptunnel') -%}<strong><a href="{{ i2ptunnel }}">I2P Hidden Services Manager</a></strong> This is a general-purpose 
+adapter for forwarding services ( ie SSH ) into I2P and proxying client 
+requests to and from I2P. It provides a variety of “Tunnel Types” which are 
+able able to do advance filtering of traffic before it reaches I2P.{%- endtrans %}</p>
+<h3>{% trans %}Applications Outside I2P to use with I2P{%- endtrans %}</h3>
+<p>{% trans browser=site_url('about/browser-config') %}<strong><a href="{{ browser }}">Mozilla Firefox</a></strong>: A web browser with advanced privacy and 
+security features, this is the best browser to configure to browse I2P 
+sites.{%- endtrans %}</p>
+<p>{% trans browser=site_url('about/browser-config') %}<strong><a href="{{ browser }}">Chromium</a></strong>: A web browser developed by Google that is the 
+Open-Source base of Google Chrome, this is sometimes used as an alternative to 
+Firefox.{%- endtrans %}</p>
+<p>{% trans %}<strong><a href="https://biglybt.com">BiglyBT</a></strong>: A Feature-Rich bittorrent client including I2P 
+support and the unique ability to “Bridge” regular torrents in-to I2P so 
+people can download them anonymously.{%- endtrans %}</p>
+<p>{% trans ssh=site_url('blog/post/2019/06/15/i2p-i2pd-ssh-config') %}<strong><a href="https://openssh.com">OpenSSH</a></strong>: OpenSSH is a popular program used by systems administrators to <a href="{{ ssh }}">remotely administer a server</a>, or to provide “Shell” accounts for users on the server.{%- endtrans %}</p>
+<p>{% trans git=site_url('docs/applications/git'), gitlab=site_url('docs/applications/gitlab') %}<strong><a href="{{ git }}">Git</a>/<a href="{{ gitlab}}">Gitlab</a></strong>: Git is a source-code control tool which is 
+distributed, and often recommends a fork-first workflow. Hosting source code on 
+I2P is an important activity, so Gitlab-specific instructions are available for 
+all to use.{%- endtrans %}</p>
+<p>{% trans %}<strong><a href="https://debian.org">Debian</a> and <a href="https://ubuntu.com">Ubuntu</a> GNU/Linux</strong>: It is possible to obtain 
+packages for Debian and Ubuntu GNU/Linux over I2P using <a href="https://i2pgit.org/idk/apt-transport-i2p">apt-transport-i2p</a> and 
+<a href="https://i2pgit.org/idk/apt-transport-i2phttp">apt-transport-i2phttp</a>. In the future, a bittorrent-based transport may also be 
+developed. {%- endtrans %}</p>
+<h3>{% trans %} Applications for Developers to create new things{%- endtrans %}</h3>
+<p>{% trans sam=site_url('docs/api/sam') %}<strong><a href="{{ sam }}">The SAM API Bridge</a></strong>: The SAM API is a language-independent 
+API for writing applications that are I2P-native by communicating with the 
+local I2P router. It can provide Streaming-like capabilities, Anonymous 
+Datagrams, or Repliable Datagrams.{%- endtrans %}</p>
+<p>{% trans bob=site_url('docs/api/bob') %}<strong><a href="{{ bob }}">The BOB API Bridge</a></strong>: This is a deprecated technology, BOB 
+users should migrate to SAM if it is possible for them to do so.{%- endtrans %}</p>
+<p>{% trans i2cp=site_url('docs/protocol/i2cp') %}<strong><a href="{{ i2cp }}">The I2CP API</a></strong>: Not strictly an application, this is how Java 
+applications communicate with the I2P router to set up tunnels, generate and 
+manage keys, and communicate with other peers on the network.{%- endtrans %}</p>
+
+{% endblock %}
-- 
GitLab