Merge branch 'i2p:master' into master
82
.tx/config
@ -1,60 +1,60 @@
|
||||
[main]
|
||||
host = https://www.transifex.com
|
||||
host = https://www.transifex.com
|
||||
lang_map = ru_RU: ru, sv_SE: sv, tr_TR: tr, uk_UA: uk, zh_CN: zh
|
||||
|
||||
[I2P.website_about]
|
||||
file_filter = i2p2www/translations/<lang>/LC_MESSAGES/about.po
|
||||
source_file = pots/about.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
[o:otf:p:I2P:r:website_about]
|
||||
file_filter = i2p2www/translations/<lang>/LC_MESSAGES/about.po
|
||||
source_file = pots/about.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
minimum_perc = 3
|
||||
|
||||
[I2P.website_blog]
|
||||
file_filter = i2p2www/translations/<lang>/LC_MESSAGES/blog.po
|
||||
source_file = pots/blog.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
[o:otf:p:I2P:r:website_blog]
|
||||
file_filter = i2p2www/translations/<lang>/LC_MESSAGES/blog.po
|
||||
source_file = pots/blog.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
minimum_perc = 2
|
||||
|
||||
[I2P.website_comparison]
|
||||
file_filter = i2p2www/translations/<lang>/LC_MESSAGES/comparison.po
|
||||
source_file = pots/comparison.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
[o:otf:p:I2P:r:website_comparison]
|
||||
file_filter = i2p2www/translations/<lang>/LC_MESSAGES/comparison.po
|
||||
source_file = pots/comparison.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
minimum_perc = 10
|
||||
|
||||
[I2P.website_docs]
|
||||
file_filter = i2p2www/translations/<lang>/LC_MESSAGES/docs.po
|
||||
source_file = pots/docs.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
[o:otf:p:I2P:r:website_docs]
|
||||
file_filter = i2p2www/translations/<lang>/LC_MESSAGES/docs.po
|
||||
source_file = pots/docs.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
minimum_perc = 3
|
||||
|
||||
[I2P.website_get-involved]
|
||||
file_filter = i2p2www/translations/<lang>/LC_MESSAGES/get-involved.po
|
||||
source_file = pots/get-involved.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
[o:otf:p:I2P:r:website_get-involved]
|
||||
file_filter = i2p2www/translations/<lang>/LC_MESSAGES/get-involved.po
|
||||
source_file = pots/get-involved.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
minimum_perc = 3
|
||||
|
||||
[I2P.website_misc]
|
||||
file_filter = i2p2www/translations/<lang>/LC_MESSAGES/misc.po
|
||||
source_file = pots/misc.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
[o:otf:p:I2P:r:website_misc]
|
||||
file_filter = i2p2www/translations/<lang>/LC_MESSAGES/misc.po
|
||||
source_file = pots/misc.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
minimum_perc = 10
|
||||
|
||||
[I2P.website_priority]
|
||||
file_filter = i2p2www/translations/<lang>/LC_MESSAGES/priority.po
|
||||
source_file = pots/priority.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
[o:otf:p:I2P:r:website_priority]
|
||||
file_filter = i2p2www/translations/<lang>/LC_MESSAGES/priority.po
|
||||
source_file = pots/priority.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
minimum_perc = 10
|
||||
|
||||
[I2P.website_research]
|
||||
file_filter = i2p2www/translations/<lang>/LC_MESSAGES/research.po
|
||||
source_file = pots/research.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
[o:otf:p:I2P:r:website_research]
|
||||
file_filter = i2p2www/translations/<lang>/LC_MESSAGES/research.po
|
||||
source_file = pots/research.pot
|
||||
source_lang = en
|
||||
type = PO
|
||||
minimum_perc = 10
|
||||
|
||||
|
@ -1,10 +1,12 @@
|
||||
FROM debian:buster
|
||||
FROM debian:oldoldstable
|
||||
ENV SERVERNAME=geti2p.net
|
||||
ENV SERVERMAIL=example@geti2p.net
|
||||
|
||||
WORKDIR /var/www/i2p.www
|
||||
|
||||
## Install the dependencies
|
||||
#RUN #grep -v security.debian /etc/apt/sources.list > /etc/apt/sources.list.bak && \
|
||||
#grep -v stretch-updates /etc/apt/sources.list.bak > /etc/apt/sources.list && \
|
||||
RUN apt-get update && \
|
||||
apt-get -y install apache2 apache2-utils libapache2-mod-wsgi python2-dev python-pip patch python-virtualenv git python-polib
|
||||
|
||||
|
@ -1,5 +1,56 @@
|
||||
#! /usr/bin/env sh
|
||||
virtualenv --distribute env
|
||||
. env/bin/activate
|
||||
#./setup_venv.sh
|
||||
DEV=on ./runserver.py
|
||||
#! /usr/bin/env bash
|
||||
|
||||
## Set additional docker run arguments by changing the variable
|
||||
## i2p_www_docker_run_args in an optional file called config.sh
|
||||
## for example
|
||||
##
|
||||
##i2p_www_docker_run_args='-d'
|
||||
## to run the site in the background, or
|
||||
##
|
||||
##i2p_www_docker_run_args='-t'
|
||||
## to emulate a TTY
|
||||
|
||||
## To operate a quick and easy mirror of the I2P Site in a container
|
||||
## simply clone the i2p.www source to a host with Docker installed, then
|
||||
## add:
|
||||
##
|
||||
##i2p_www_docker_run_args='-d'
|
||||
## to config.sh
|
||||
##
|
||||
## Then add:
|
||||
##
|
||||
##*/10 * * * * /path/to/i2p.www/site-updater-docker.sh
|
||||
##
|
||||
## to a crontab belonging to a member of the `docker` group. To add yourself
|
||||
## to the `docker` group use the command:
|
||||
##
|
||||
##sudo adduser $(whoami) docker
|
||||
##
|
||||
## a more secure solution may be to create a user especially to run the
|
||||
## docker crontab only, who is a member of the docker group. To do this,
|
||||
##
|
||||
##sudo adduser --disabled-password --disabled-login --ingroup docker docker
|
||||
## however the specifics may vary from distribution to distribution.
|
||||
|
||||
dir=$(CDPATH= cd -- "$(dirname -- "$0")" && pwd)
|
||||
|
||||
if [ -f "${dir}/config.sh" ]; then
|
||||
. "${dir}/config.sh"
|
||||
fi
|
||||
|
||||
if [ -z $port ]; then
|
||||
port="8090"
|
||||
fi
|
||||
|
||||
if [ -z $i2p_www_branch ]; then
|
||||
i2p_www_branch=master
|
||||
fi
|
||||
|
||||
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" || exit
|
||||
cd "$DIR" || exit
|
||||
|
||||
git pull origin $i2p_www_branch
|
||||
docker build $i2p_www_docker_build_args -t mirror.i2p.www$suffix .
|
||||
docker rm -f mirror.i2p.www$suffix
|
||||
docker run -it $i2p_www_docker_run_args --env DEV:on --name mirror.i2p.www$suffix --net=host --volume $(pwd)/env:/env mirror.i2p.www$suffix ./runserver.py
|
||||
docker logs -f mirror.i2p.www$suffix
|
||||
|
@ -22,8 +22,8 @@ except ImportError:
|
||||
###########
|
||||
# Constants
|
||||
|
||||
CURRENT_I2P_VERSION = '2.2.1'
|
||||
CURRENT_I2P_FIREFOX_PROFILE_VERSION = '2.2.0'
|
||||
CURRENT_I2P_VERSION = '2.3.0'
|
||||
CURRENT_I2P_FIREFOX_PROFILE_VERSION = '2.3.0'
|
||||
CURRENT_I2P_OSX_VERSION = '1.9.0'
|
||||
|
||||
CANONICAL_DOMAIN = 'geti2p.net'
|
||||
|
@ -7,13 +7,13 @@ Update on Mac Easy Install Notarization
|
||||
:author: idk,sadie
|
||||
:date: 2023-01-31
|
||||
:category: release
|
||||
:excerpt: {% trans %}{% endtrans %}
|
||||
:excerpt: {% trans %}Easy Install Bundle for Mac is stalled{% endtrans %}
|
||||
|
||||
{% trans -%}
|
||||
The I2P Easy-Install Bundle for Mac has been experiencing stalled updates for the past 2 releases due to the departure of its maintainer.
|
||||
For the time being, it is temporarily recommended that existing Easy-Install users delay updating and remain on 1.9.0 until the development team can successfully notarize the application and resume automatic updates.
|
||||
The updates will happen immediately once this has happened.
|
||||
For now, 1.9.0 is stable and has no known critical security issues.
|
||||
It is recommended that users of the Easy-Install bundle for Mac switch to the classic java-style installer which was recently restored to the download page.
|
||||
1.9.0 has known security issues and is not suitable for hosting services or any long-term use. Users are advised to migrate away as soon as possible.
|
||||
Advanced users of the Easy-Install bundle may work around this by compiling the bundle from source and self-signing the software.
|
||||
{%- endtrans %}
|
||||
|
||||
{% trans -%}The Notarization Process For MacOS{%- endtrans %}
|
||||
|
@ -7,7 +7,7 @@ I2P Release 2.2.0
|
||||
:author: idk
|
||||
:date: 2023-03-13
|
||||
:category: release
|
||||
:excerpt: {% trans %}{% endtrans %}
|
||||
:excerpt: {% trans %}Moved Post{% endtrans %}
|
||||
|
||||
{% trans -%}
|
||||
`This blog post has been moved here </en/blog/post/2023/03/13/new_release_2.2.0>`_
|
||||
|
@ -7,7 +7,7 @@ I2P Release 2.2.0
|
||||
:author: idk
|
||||
:date: 2023-03-13
|
||||
:category: release
|
||||
:excerpt: {% trans %}{% endtrans %}
|
||||
:excerpt: {% trans %}DDoS Mitigations, New Release Maintainer{% endtrans %}
|
||||
|
||||
{% trans -%}
|
||||
We have elected to move forward the 2.2.0 release date, which will be occurring today, March 13, 2023.
|
||||
@ -86,4 +86,4 @@ The best way to maintain security and help the network is to run the latest rele
|
||||
|
||||
|
||||
|
||||
Full list of fixed bugs: http://git.idk.i2p/i2p-hackers/i2p.i2p/-/issues?scope=all&state=closed&milestone_title=2.2.0
|
||||
Full list of fixed bugs: http://git.idk.i2p/i2p-hackers/i2p.i2p/-/issues?scope=all&state=closed&milestone_title=2.2.0
|
||||
|
67
i2p2www/blog/2023/06/25/new_release_2.3.0.rst
Normal file
@ -0,0 +1,67 @@
|
||||
{% trans -%}
|
||||
=================
|
||||
I2P Release 2.3.0
|
||||
=================
|
||||
{%- endtrans %}
|
||||
.. meta::
|
||||
:author: idk
|
||||
:date: 2023-06-25
|
||||
:category: release
|
||||
:excerpt: {% trans %}I2P 2.3.0: Security Fixes, Tweakable Blocklists{% endtrans %}
|
||||
|
||||
{% trans -%}
|
||||
This release contains fixes for CVE-2023-36325.
|
||||
CVE-2023-36325 is a context-confusion bug which occurred in the bloom filter.
|
||||
An attacker crafts an I2NP message containing a unique messageID, and sends that messageID to a client.
|
||||
The message, after passing through the bloom filter, is not allowed to be re-used in a second message.
|
||||
The attacker then sends the same message directly to the router.
|
||||
The router passes the message to the bloom filter, and is dropped.
|
||||
This leaks the information that the messageID has been seen before, giving the attacker a strong reason to believe that the router is hosting the client.
|
||||
This has been fixed by separting the bloom filter's functionality into different contexts based on whether a message came down a client tunnel, an exploratory tunnel, was sent to the router directly.
|
||||
Under normal circumstances, this attack takes several days to perform successfully and may be confounded by several factors such as routers restarting during the attack phase and sensitivity to false-positives.
|
||||
Users of Java I2P are recommended to update immediately to avoid the attack.
|
||||
{%- endtrans %}
|
||||
|
||||
{% trans -%}
|
||||
In the course of fixing this context confusion bug, we have revised some of our strategies to code defensively, against these types of leaks.
|
||||
This includes tweaks to the netDb, the rate-limiting mechanisms, and the behavior of floodfill routers.
|
||||
{%- endtrans %}
|
||||
|
||||
{% trans -%}
|
||||
This release adds not_bob as a second default hosts provider, and adds `notbob.i2p <http://notbob.i2p>`_ and `ramble.i2p <http://ramble.i2p>`_ to the console homepage.
|
||||
{%- endtrans %}
|
||||
|
||||
{% trans -%}
|
||||
This release also contains a tweakable blocklist.
|
||||
Blocklisting is semi-permanent, each blocked IP address is normally blocked until the router is restarted.
|
||||
Users who observe explosive blocklist growth during sybil attacks may opt-in to shorter timeouts by configuring the blocklist to expire entries at an interval.
|
||||
This feature is off-by-default and is only recommended for advanced users at this time.
|
||||
{%- endtrans %}
|
||||
|
||||
{% trans -%}
|
||||
This release also includes an API for plugins to modify with the Desktop GUI(DTG).
|
||||
It is now possible to add menu items to the system tray, enabling more intuitive launching of plugins which use native application interfaces.
|
||||
{%- endtrans %}
|
||||
|
||||
{% trans -%}
|
||||
As usual, we recommend that you update to this release.
|
||||
The best way to maintain security and help the network is to run the latest release.
|
||||
{%- endtrans %}
|
||||
|
||||
**DETAILS**
|
||||
|
||||
*Changes*
|
||||
|
||||
- {% trans %}netDb: Throttle bursts of netDB lookups{% endtrans %}
|
||||
- {% trans %}Sybil/Blocklist: Allow users to override blocklist expiration with an interval{% endtrans %}
|
||||
- {% trans %}DTG: Provide an API for extending DTG with a plugin{% endtrans %}
|
||||
- {% trans %}Addressbook: add notbob's main addressbook to the default subscriptions.{% endtrans %}
|
||||
- {% trans %}Console: Add Ramble and notbob to console homepage{% endtrans %}
|
||||
|
||||
*Bug Fixes*
|
||||
|
||||
- {% trans %}Fix replay attack: CVE-2023-36325{% endtrans %}
|
||||
- {% trans %}Implement handling of multihomed routers in the netDb{% endtrans %}
|
||||
- {% trans %}Fully copy new leaseSets when a leaseSet recievedAsPublished overwrites a leaseSet recievedAsReply{% endtrans %}
|
||||
|
||||
Full list of fixed bugs: http://git.idk.i2p/i2p-hackers/i2p.i2p/-/issues?scope=all&state=closed&milestone_title=2.3.0
|
@ -0,0 +1,45 @@
|
||||
{% trans -%}
|
||||
=======================================
|
||||
Easy-Install for Windows 2.3.0 Released
|
||||
=======================================
|
||||
{%- endtrans %}
|
||||
.. meta::
|
||||
:author: idk
|
||||
:date: 2023-07-10
|
||||
:category: release
|
||||
:excerpt: {% trans %}Easy-Install for Windows 2.3.0 Released{% endtrans %}
|
||||
|
||||
|
||||
{% trans -%}
|
||||
The I2P Easy-Install bundle for Windows version 2.3.0 has now been released.
|
||||
As usual, this release includes an updated version of the I2P router.
|
||||
This extends to security issues which affect people hosting services on the network.
|
||||
{%- endtrans %}
|
||||
|
||||
{% trans -%}
|
||||
This will be the last release of the Easy-Install bundle which will be incompatible with the I2P Desktop GUI.
|
||||
It has been updated to include new versions of all included webextensions.
|
||||
A longstanding bug in I2P in Private Browsing which makes it incompatible with custom themes has been fixed.
|
||||
Users are still advised to *not* install custom themes.
|
||||
Snark tabs are not automatically pinned to the top of the tab order in Firefox.
|
||||
Except for using alternate cookieStores, Snark tabs now behave as normal browser tabs.
|
||||
{%- endtrans %}
|
||||
|
||||
{% trans -%}
|
||||
**Unfortunately, this release is still an unsigned `.exe` installer.**
|
||||
Please verify the checksum of the installer before using it.
|
||||
**The updates, on the other hand** are signed by my I2P signing keys and therefore safe.
|
||||
{%- endtrans %}
|
||||
|
||||
{% trans -%}
|
||||
This release was compiled with OpenJDK 20.
|
||||
It uses i2p.plugins.firefox version 1.1.0 as a library for launching the browser.
|
||||
It uses i2p.i2p version 2.3.0 as an I2P router, and to provide applications.
|
||||
As always it is recommended that you update to the latest version of the I2P router at your earliest convenient opportunity.
|
||||
{%- endtrans %}
|
||||
|
||||
- `Easy-Install Bundle Source <http://git.idk.i2p/i2p-hackers/i2p.firefox/-/tree/i2p-firefox-2.3.0>`_
|
||||
- `Router Source <http://git.idk.i2p/i2p-hackers/i2p.i2p/-/tree/i2p-2.3.0>`_
|
||||
- `Profile Manager Source <http://git.idk.i2p/i2p-hackers/i2p.plugins.firefox/-/tree/1.1.0>`_
|
||||
|
||||
|
@ -7,7 +7,7 @@ I2P Release 2.2.1
|
||||
:author: idk
|
||||
:date: 2023-04-12
|
||||
:category: release
|
||||
:excerpt: {% trans %}{% endtrans %}
|
||||
:excerpt: {% trans %}Packaging Fixes{% endtrans %}
|
||||
|
||||
{% trans -%}
|
||||
After the I2P 2.2.0 release, which was moved forward to accelerate mitigations for the DDOS attacks, we learned about a few developing issues which made it necessary to build and release new packages.
|
||||
@ -37,4 +37,4 @@ The best way to maintain security and help the network is to run the latest rele
|
||||
- {% trans %}Remove invalid signing keys from old installs{% endtrans %}
|
||||
- {% trans %}Update Tomcat version in Ubuntu Lunar and Debian Sid{% endtrans %}
|
||||
|
||||
Full list of fixed bugs: http://git.idk.i2p/i2p-hackers/i2p.i2p/-/issues?scope=all&state=closed&milestone_title=2.2.1
|
||||
Full list of fixed bugs: http://git.idk.i2p/i2p-hackers/i2p.i2p/-/issues?scope=all&state=closed&milestone_title=2.2.1
|
||||
|
@ -140,6 +140,8 @@ def render_blog_post(slug):
|
||||
with codecs.open(path, encoding='utf-8') as fd:
|
||||
content = fd.read()
|
||||
|
||||
#print(content)
|
||||
|
||||
# render the post with Jinja2 to handle URLs etc.
|
||||
rendered_content = render_template_string(content)
|
||||
|
||||
|
@ -29,7 +29,7 @@ services:
|
||||
<h4 id="volumes">{% trans -%}Volumes{%- endtrans %}</h4>
|
||||
<p>{% trans -%}The container requires a volume for the configuration data to be mounted. Optionally, you can mount a separate volume for torrent (“i2psnark”) downloads. See the example below.{%- endtrans %}</p>
|
||||
<h4 id="memory-usage">{% trans -%}Memory usage{%- endtrans %}</h4>
|
||||
<p>{% trans -%}By the default the image limits the memory available to the Java heap to 512MB. You can override that with the <code>JVM_XMX</code> environment variable.{%- endtrans %}</p>
|
||||
<p>{% trans -%}By default the image limits the memory available to the Java heap to 512MB. You can override that with the <code>JVM_XMX</code> environment variable.{%- endtrans %}</p>
|
||||
<h4 id="ports">{% trans -%}Ports{%- endtrans %}</h4>
|
||||
<p>{% trans -%}There are several ports which are exposed by the image. You can choose which ones to publish depending on your specific needs.{%- endtrans %}</p>
|
||||
<table>
|
||||
|
@ -60,7 +60,7 @@ special configuration. You don't even need to close existing Firefox windows.
|
||||
{%- set name = 'Windows' -%}
|
||||
{%- set icon = 'images/download/windows.png' -%}
|
||||
{%- set filename = 'I2P-Easy-Install-Bundle-%s.exe' -%}
|
||||
{%- set hash = '5ebfb374bcf70f80080e628401f5310f3882853b880d5c8a041705096e063bb5' -%}
|
||||
{%- set hash = 'def95180e5783686f68dcf2958cfa693f17a91da53a97f8ae75c98529c4e23a8' -%}
|
||||
|
||||
{% call package_outer('windows', name, icon) %}
|
||||
<div class = "file">
|
||||
|
@ -45,7 +45,7 @@ start an installer, "double-click" the downloaded .exe file.
|
||||
{%- set name = 'Windows' -%}
|
||||
{%- set icon = 'images/download/windows.png' -%}
|
||||
{%- set filename = 'I2P-Easy-Install-Bundle-%s.exe' -%}
|
||||
{%- set hash = '5ebfb374bcf70f80080e628401f5310f3882853b880d5c8a041705096e063bb5' -%}
|
||||
{%- set hash = 'def95180e5783686f68dcf2958cfa693f17a91da53a97f8ae75c98529c4e23a8' -%}
|
||||
|
||||
{% call package_outer('windows', name, icon) %}
|
||||
<div class = "file">
|
||||
|
@ -1,4 +1,4 @@
|
||||
{% extends "global/layout.html" %} {%- from "downloads/macros" import package, package_outer with context -%} {% set release_signer = 'zzz' %} {% block title %}{{ _('Download') }}{% endblock %} {% block content_nav %}
|
||||
{% extends "global/layout.html" %} {%- from "downloads/macros" import package, package_outer with context -%} {% set release_signer = 'idk' %} {% block title %}{{ _('Download') }}{% endblock %} {% block content_nav %}
|
||||
<script type="text/javascript" src="/_static/site.js"></script>
|
||||
<ul>
|
||||
<li><a href="#windows">Windows</a></li>
|
||||
@ -51,16 +51,17 @@ If you would like to try the latest experimental I2P projects, visit the <a href
|
||||
</div>
|
||||
{% endcall %}
|
||||
|
||||
<h5>{%- trans %}I2P Easy Install Bundle for Mac OS X{%- endtrans %}</h5>
|
||||
{% call package_outer('mac', "Mac OS X", 'images/download/mac-osx.png') %}
|
||||
<h3>{% trans %}I2P Easy Install Bundle for Mac OS X{% endtrans %}</h3>
|
||||
<p>{% trans i2pversion=ver() -%}The I2P Easy Install Bundle for Mac OS X is packaged using OSX's standard ".dmg" package type, which allows it to use Apple's built-in tools to securely, reliably, and easily install the package. It does not require Java to be installed.
|
||||
<h5>{%- trans %}I2P for Mac OS X{%- endtrans %}</h5>
|
||||
{% call package('mac') %}
|
||||
<p>{% trans i2pversion=ver() -%} I2P is available as a Java application for Mac OSX. It is distributed as a Java <code>.jar</code> installer and therefore MacOS will ask you for explicit permission to run the software.
|
||||
{%- endtrans %}</p>
|
||||
<div class="file">
|
||||
<a class="default" href="{{ get_url('downloads_mac') }}">{% trans %}I2P Easy Install Bundle for Mac OS X{% endtrans %}</a>
|
||||
<p></p>
|
||||
<a class="default" href="{{ get_url('downloads_mac') }}">{% trans %}Here is a helpful guide to installing I2P for Mac OS using a separate Java installation and the classic installer.{% endtrans %}</a>
|
||||
</div>
|
||||
{% endcall %}
|
||||
|
||||
|
||||
<h5>{%- trans %}I2P for Linux{%- endtrans %}</h5>
|
||||
{% call package('unix') %}
|
||||
<p>{% trans i2pversion=ver() -%} The most reliable way to launch the installer is from a terminal like this:
|
||||
|
@ -1,7 +1,7 @@
|
||||
{% set i2pinstall_windows_hash = '9e25abed16c783ed964f504f72069d07da148850471b8250ecf2f4ea5da710bd' %}
|
||||
{% set i2pinstall_jar_hash = 'c9879b8f69ea13c758672c2fa083dc2e0abb289e0fc9a55af98f9f1795f82659' %}
|
||||
{% set i2psource_hash = 'f53f34fbe23a8762e3786572751b301befb28288efb6b1042d4fc64c6610784f' %}
|
||||
{% set i2pupdate_hash = '5d46d3029327aedcf6b1828082ecad725a92d0b2dc540dc0005912ed894774c6' %}
|
||||
{% set i2pinstall_windows_hash = '2081f8415013c80daa6b69b6f16f2ebf10aa20ee3cace20936e0268b2e816a3f' %}
|
||||
{% set i2pinstall_jar_hash = '977ebce33001345731de6fe0b623f59a867de6fa6a6c46d8ad686e306310b28d' %}
|
||||
{% set i2psource_hash = 'a0a8fb08e9c72eaef22f155b9c9aa0ea90fb331d2bbcf76f82649f0b9efe5f5b' %}
|
||||
{% set i2pupdate_hash = '59b569dc17fad0e30e246048a3c275e403b308024eb88fda29ae83294bdbe8e6' %}
|
||||
{% set i2p_android_hash = '272acf543c4489dc3775c07c42eb91710b4ed377c78aff605e3d44e73fad5110' %}
|
||||
{% set i2p_macnative_hash = '18cb22cfcc3cbe0cec150e89a394d1a35703cb508ed627ef48084b7ba7c90dde' %}
|
||||
|
||||
@ -48,7 +48,7 @@
|
||||
{%- set signame = 'i2pupdate_%s.zip.sig' -%}
|
||||
{%- set hash = i2pupdate_hash -%}
|
||||
{%- elif type == 'macnative' -%}
|
||||
{%- set name = _('Mac OS X Native (Beta)') -%}
|
||||
{%- set name = _('Mac OS Native (Beta)') -%}
|
||||
{%- set icon = 'images/download/mac-osx.png' -%}
|
||||
{%- set filename = 'I2PMacLauncher-%s-beta-'+i2p_macosx_launcher_version+'.dmg' -%}
|
||||
{%- set signame = 'I2PMacLauncher-%s-beta-'+i2p_macosx_launcher_version+'.dmg.sig' -%}
|
||||
@ -60,8 +60,11 @@
|
||||
{%- set hash = 'geti2p/i2p@sha256:e622209388edc49b99d8216baa731b1f54a0634c87cd47c1739f2188891daf3a' -%}
|
||||
{%- else -%}
|
||||
{%- if type == 'mac' -%}
|
||||
{%- set name = 'Mac OS X' -%}
|
||||
{%- set name = 'Mac OS' -%}
|
||||
{%- set icon = 'images/download/mac-osx.png' -%}
|
||||
{%- set filename = 'i2pinstall_%s.jar' -%}
|
||||
{%- set signame = 'i2pinstall_%s.jar.sig' -%}
|
||||
{%- set hash = i2pinstall_jar_hash -%}
|
||||
{%- elif type == 'unix' -%}
|
||||
{%- set name = 'Linux / BSD / Solaris' -%}
|
||||
{%- set icon = 'images/download/freebsd-tux.png' -%}
|
||||
|
@ -677,7 +677,7 @@ For most low- to medium-bandwidth and low- to medium-connection counts,
|
||||
2 or 3 is sufficient.
|
||||
Please specify the tunnel quantities in the SESSION CREATE message
|
||||
to get consistent performance with the Java I2P and i2pd routers,
|
||||
using the options e.g. inbound.length=3 outbound.length=3.
|
||||
using the options e.g. inbound.quantity=3 outbound.quantity=3.
|
||||
These and other options <a href="#options">are documented in the links below</a>.
|
||||
</p><p>
|
||||
|
||||
|
@ -1,29 +1,21 @@
|
||||
{% extends "global/layout.html" %}
|
||||
{% block title %}{{ _('Release Signing Key') }}{% endblock %}
|
||||
{% block content %}
|
||||
<p>{% trans -%}
|
||||
Windows installers for releases 0.9.38 and later are signed by zlatinb.
|
||||
{%- endtrans %}<br>
|
||||
<a href="{{ url_for('static', filename='zlatinb.key.crt') }}" >{% trans %}Download code signing certificate{% endtrans %}</a>
|
||||
</p>
|
||||
|
||||
<p>{% trans -%}
|
||||
Mac OSX installers for releases 0.9.38 and later are signed by zlatinb.
|
||||
{%- endtrans %}<br>
|
||||
<a href="{{ url_for('static', filename='zlatinb.key.crt') }}" >{% trans %}Download code signing certificate{% endtrans %}</a>
|
||||
</p>
|
||||
Releases 0.9.57 forward are signed by idk. His current public key is:
|
||||
{%- endtrans %}</p>
|
||||
<p>
|
||||
<a href="{{ url_for('static', filename='idk.key.asc') }}" >{% trans %}Download PGP public key{% endtrans %}</a>
|
||||
</p><p>
|
||||
|
||||
<p>{% trans -%}
|
||||
Releases 0.7.6 and later are signed by zzz. His current public key is:
|
||||
Releases 0.7.6 and 0.9.56 are signed by zzz. His current public key is:
|
||||
{%- endtrans %}</p>
|
||||
<p>
|
||||
<a href="{{ url_for('static', filename='zzz.key.asc') }}" >{% trans %}Download PGP public key{% endtrans %}</a>
|
||||
</p><p>
|
||||
zzz's GPG subkeys were renewed in March 2019.
|
||||
Use the link above to download the current public keys,
|
||||
or download the key 415576BAA76E0BED from a key server.
|
||||
Following is the original May 2014 announcement of the new keys.
|
||||
</p><p>
|
||||
</p>
|
||||
<p>
|
||||
<pre>
|
||||
-----BEGIN PGP SIGNED MESSAGE-----
|
||||
Hash: SHA1
|
||||
|
@ -15,79 +15,190 @@
|
||||
Older releases are at the bottom of the page.
|
||||
</p>
|
||||
|
||||
<h2 id="1.5.0">1.5.0 (API 0.9.51)</h2>
|
||||
<p><b>Released: Aug. 23, 2021</b></p>
|
||||
<h2 id="2.4.0">2.4.0 (API 0.9.60)</h2>
|
||||
<p><b>Target release: September 2023</b></p>
|
||||
<ul>
|
||||
<li>
|
||||
Accelerate rekeying routers to ECIES
|
||||
NetDB context management
|
||||
</li>
|
||||
<li>
|
||||
Start work on SSU2
|
||||
Streaming replay fix
|
||||
</li>
|
||||
<li>
|
||||
Implement new tunnel build messages (proposal 157)
|
||||
Handle congestion capabilities by deprioritizing overloaded routers
|
||||
</li>
|
||||
<li>
|
||||
Support dmg and exe automatic updates
|
||||
"Install Plugin from File" command-line option
|
||||
</li>
|
||||
<li>
|
||||
New native OSX installer
|
||||
Generic UDP Tunnels in HSM
|
||||
</li>
|
||||
<li>
|
||||
X-I2P-Location(alt-svc) locations for built-in I2P Site
|
||||
Revive Android helper library
|
||||
</li>
|
||||
<li>
|
||||
RRD4J 3.8
|
||||
</li>
|
||||
<li>
|
||||
Create C, CGo, SWIG bindings for libi2pd
|
||||
Website Migration
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
<h2 id="1.6.1">1.6.1 (API 0.9.52)</h2>
|
||||
<p><b>Released: Nov. 29, 2021</b></p>
|
||||
<h2 id="2.3.0">2.3.0 (API 0.9.59)</h2>
|
||||
<p><b>Target release: June 2023</b></p>
|
||||
<ul>
|
||||
<li>
|
||||
Accelerate rekeying routers to ECIES
|
||||
Tunnel peer selection improvements
|
||||
</li>
|
||||
<li>
|
||||
SSU performance improvements
|
||||
User-Configurable blocklist expiration
|
||||
</li>
|
||||
<li>
|
||||
Improve SSU peer test security
|
||||
Throttle fast bursts of lookup from same source
|
||||
</li>
|
||||
<li>
|
||||
Add theme selection to new-install wizard
|
||||
Fix replay detection information leak
|
||||
</li>
|
||||
<li>
|
||||
Continue work on SSU2 (proposal 159)
|
||||
NetDB fixes for multihomed leaseSets
|
||||
</li>
|
||||
<li>
|
||||
Send new tunnel build messages (proposal 157)
|
||||
</li>
|
||||
<li>
|
||||
Include automatic browser configuration tool in IzPack installer
|
||||
</li>
|
||||
<li>
|
||||
Make Fork-and-Exec Plugins Managable
|
||||
</li>
|
||||
<li>
|
||||
Document jpackage install processes
|
||||
</li>
|
||||
<li>
|
||||
Complete, document Go/Java Plugin Generation Tools
|
||||
</li>
|
||||
<li>
|
||||
Reseed Plugin - Run a self-signed HTTPS reseed as a Java router plugin with no configuration.
|
||||
NetDB fixes for leaseSets which were received as a reply before being recieved as a store
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="2.2.0">2.2.0 (API 0.9.58)</h2>
|
||||
<p><b>Target release: April 2023</b></p>
|
||||
<ul>
|
||||
<li>
|
||||
Tunnel peer selection improvements
|
||||
</li>
|
||||
<li>
|
||||
Streaming replay fix
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="2.1.0">2.1.0 (API 0.9.57)</h2>
|
||||
<p><b>Released: January 10, 2023</b></p>
|
||||
<ul>
|
||||
<li>
|
||||
SSU2 fixes
|
||||
</li>
|
||||
<li>
|
||||
Tunnel build congestion fixes
|
||||
</li>
|
||||
<li>
|
||||
SSU peer test and symmetric NAT detction fixes
|
||||
</li>
|
||||
<li>
|
||||
Fix broken LS2 encrypted leasesets
|
||||
</li>
|
||||
<li>
|
||||
Option to disable SSU 1 (preliminary)
|
||||
</li>
|
||||
<li>
|
||||
Compressible padding (proposal 161)
|
||||
</li>
|
||||
<li>
|
||||
New console peers status tab
|
||||
</li>
|
||||
<li>
|
||||
Add torsocks support to SOCKS proxy and other SOCKS improvements and fixes
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="2.0.0">2.0.0 (API 0.9.56)</h2>
|
||||
<p><b>Released: November 21, 2022</b></p>
|
||||
<ul>
|
||||
<li>
|
||||
SSU2 connection migration
|
||||
</li>
|
||||
<li>
|
||||
SSU2 immediate acks
|
||||
</li>
|
||||
<li>
|
||||
Enable SSU2 by default
|
||||
</li>
|
||||
<li>
|
||||
SHA-256 digest proxy authentication in i2ptunnel
|
||||
</li>
|
||||
<li>
|
||||
Update Android build process to use modern AGP, end need of deprecated Maven plugin in Android build
|
||||
</li>
|
||||
<li>
|
||||
Cross-Platform(Desktop) I2P browser auto-configuration support
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="1.9.0">1.9.0 (API 0.9.55)</h2>
|
||||
<p><b>Released: August 22, 2022</b></p>
|
||||
<ul>
|
||||
<li>
|
||||
SSU2 peer test and relay implementation
|
||||
</li>
|
||||
<li>
|
||||
SSU2 fixes
|
||||
</li>
|
||||
<li>
|
||||
SSU MTU/PMTU improvements
|
||||
</li>
|
||||
<li>
|
||||
Enable SSU2 for a small portion of routers
|
||||
</li>
|
||||
<li>
|
||||
Add deadlock detector
|
||||
</li>
|
||||
<li>
|
||||
More certificate import fixes
|
||||
</li>
|
||||
<li>
|
||||
Fix i2psnark DHT restart after router restart
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="1.8.0">1.8.0 (API 0.9.54)</h2>
|
||||
<p><b>Released: May 23, 2022</b></p>
|
||||
<ul>
|
||||
<li>
|
||||
Router family fixes and improvements
|
||||
</li>
|
||||
<li>
|
||||
Soft restart fixes
|
||||
</li>
|
||||
<li>
|
||||
SSU fixes and performance improvements
|
||||
</li>
|
||||
<li>
|
||||
I2PSnark standalond fixes and improvements
|
||||
</li>
|
||||
<li>
|
||||
Avoid Sybil penalty for trusted families
|
||||
</li>
|
||||
<li>
|
||||
Reduce tunnel build reply timeout
|
||||
</li>
|
||||
<li>
|
||||
UPnP fixes
|
||||
</li>
|
||||
<li>
|
||||
Remove BOB source
|
||||
</li>
|
||||
<li>
|
||||
Certificate import fixes
|
||||
</li>
|
||||
<li>
|
||||
Tomcat 9.0.62
|
||||
</li>
|
||||
<li>
|
||||
Refactoring to support SSU2 (proposal 159)
|
||||
</li>
|
||||
<li>
|
||||
Initial implementation of SSU2 base protocol (proposal 159)
|
||||
</li>
|
||||
<li>
|
||||
SAM authorization popup for Android apps
|
||||
</li>
|
||||
<li>
|
||||
Improve support for custom directory installs in i2p.firefox
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="1.7.0">1.7.0 (API 0.9.53)</h2>
|
||||
<p><b>Released: Feb. 21, 2022</b></p>
|
||||
@ -148,176 +259,72 @@
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
<h2 id="1.8.0">1.8.0 (API 0.9.54)</h2>
|
||||
<p><b>Released: May 23, 2022</b></p>
|
||||
<h2 id="1.6.1">1.6.1 (API 0.9.52)</h2>
|
||||
<p><b>Released: Nov. 29, 2021</b></p>
|
||||
<ul>
|
||||
<li>
|
||||
Router family fixes and improvements
|
||||
Accelerate rekeying routers to ECIES
|
||||
</li>
|
||||
<li>
|
||||
Soft restart fixes
|
||||
SSU performance improvements
|
||||
</li>
|
||||
<li>
|
||||
SSU fixes and performance improvements
|
||||
Improve SSU peer test security
|
||||
</li>
|
||||
<li>
|
||||
I2PSnark standalond fixes and improvements
|
||||
Add theme selection to new-install wizard
|
||||
</li>
|
||||
<li>
|
||||
Avoid Sybil penalty for trusted families
|
||||
Continue work on SSU2 (proposal 159)
|
||||
</li>
|
||||
<li>
|
||||
Reduce tunnel build reply timeout
|
||||
Send new tunnel build messages (proposal 157)
|
||||
</li>
|
||||
<li>
|
||||
UPnP fixes
|
||||
Include automatic browser configuration tool in IzPack installer
|
||||
</li>
|
||||
<li>
|
||||
Remove BOB source
|
||||
Make Fork-and-Exec Plugins Managable
|
||||
</li>
|
||||
<li>
|
||||
Certificate import fixes
|
||||
Document jpackage install processes
|
||||
</li>
|
||||
<li>
|
||||
Tomcat 9.0.62
|
||||
Complete, document Go/Java Plugin Generation Tools
|
||||
</li>
|
||||
<li>
|
||||
Refactoring to support SSU2 (proposal 159)
|
||||
</li>
|
||||
<li>
|
||||
Initial implementation of SSU2 base protocol (proposal 159)
|
||||
</li>
|
||||
<li>
|
||||
SAM authorization popup for Android apps
|
||||
</li>
|
||||
<li>
|
||||
Improve support for custom directory installs in i2p.firefox
|
||||
Reseed Plugin - Run a self-signed HTTPS reseed as a Java router plugin with no configuration.
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
<h2 id="1.9.0">1.9.0 (API 0.9.55)</h2>
|
||||
<p><b>Released: August 22, 2022</b></p>
|
||||
<h2 id="1.5.0">1.5.0 (API 0.9.51)</h2>
|
||||
<p><b>Released: Aug. 23, 2021</b></p>
|
||||
<ul>
|
||||
<li>
|
||||
SSU2 peer test and relay implementation
|
||||
Accelerate rekeying routers to ECIES
|
||||
</li>
|
||||
<li>
|
||||
SSU2 fixes
|
||||
Start work on SSU2
|
||||
</li>
|
||||
<li>
|
||||
SSU MTU/PMTU improvements
|
||||
Implement new tunnel build messages (proposal 157)
|
||||
</li>
|
||||
<li>
|
||||
Enable SSU2 for a small portion of routers
|
||||
Support dmg and exe automatic updates
|
||||
</li>
|
||||
<li>
|
||||
Add deadlock detector
|
||||
New native OSX installer
|
||||
</li>
|
||||
<li>
|
||||
More certificate import fixes
|
||||
X-I2P-Location(alt-svc) locations for built-in I2P Site
|
||||
</li>
|
||||
<li>
|
||||
Fix i2psnark DHT restart after router restart
|
||||
RRD4J 3.8
|
||||
</li>
|
||||
<li>
|
||||
Create C, CGo, SWIG bindings for libi2pd
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h2 id="2.0.0">2.0.0 (API 0.9.56)</h2>
|
||||
<p><b>Released: November 21, 2022</b></p>
|
||||
<ul>
|
||||
<li>
|
||||
SSU2 connection migration
|
||||
</li>
|
||||
<li>
|
||||
SSU2 immediate acks
|
||||
</li>
|
||||
<li>
|
||||
Enable SSU2 by default
|
||||
</li>
|
||||
<li>
|
||||
SHA-256 digest proxy authentication in i2ptunnel
|
||||
</li>
|
||||
<li>
|
||||
Update Android build process to use modern AGP, end need of deprecated Maven plugin in Android build
|
||||
</li>
|
||||
<li>
|
||||
Cross-Platform(Desktop) I2P browser auto-configuration support
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
<h2 id="2.1.0">2.1.0 (API 0.9.57)</h2>
|
||||
<p><b>Released: January 10, 2023</b></p>
|
||||
<ul>
|
||||
<li>
|
||||
SSU2 fixes
|
||||
</li>
|
||||
<li>
|
||||
Tunnel build congestion fixes
|
||||
</li>
|
||||
<li>
|
||||
SSU peer test and symmetric NAT detction fixes
|
||||
</li>
|
||||
<li>
|
||||
Fix broken LS2 encrypted leasesets
|
||||
</li>
|
||||
<li>
|
||||
Option to disable SSU 1 (preliminary)
|
||||
</li>
|
||||
<li>
|
||||
Compressible padding (proposal 161)
|
||||
</li>
|
||||
<li>
|
||||
New console peers status tab
|
||||
</li>
|
||||
<li>
|
||||
Add torsocks support to SOCKS proxy and other SOCKS improvements and fixes
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
<h2 id="2.2.0">2.2.0 (API 0.9.58)</h2>
|
||||
<p><b>Target release: April 2023</b></p>
|
||||
<ul>
|
||||
<li>
|
||||
Tunnel peer selection improvements
|
||||
</li>
|
||||
<li>
|
||||
i2psnark UDP tracker support (proposal 160) ?
|
||||
</li>
|
||||
<li>
|
||||
Custom reseed service entry for Android
|
||||
</li>
|
||||
<li>
|
||||
UDP Hidden Service/Client support in Hidden Services Manager
|
||||
</li>
|
||||
<li>
|
||||
Automatic reseed servers from .onion URLs
|
||||
</li>
|
||||
<li>
|
||||
VPN-Mode Support in Android for browser configuration
|
||||
</li>
|
||||
<li>
|
||||
Fix WebSockets in HTTP Server Tunnels
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4><a href="roadmap-archive">{% trans %}Looking for older releases? Check the roadmap archive by following this link.{% endtrans %}</a></h4>
|
||||
{% endblock %}
|
||||
|
Before Width: | Height: | Size: 119 KiB After Width: | Height: | Size: 115 KiB |
Before Width: | Height: | Size: 53 KiB After Width: | Height: | Size: 44 KiB |
Before Width: | Height: | Size: 68 KiB After Width: | Height: | Size: 56 KiB |
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 39 KiB |
Before Width: | Height: | Size: 47 KiB After Width: | Height: | Size: 39 KiB |
Before Width: | Height: | Size: 46 KiB After Width: | Height: | Size: 37 KiB |
Before Width: | Height: | Size: 79 KiB After Width: | Height: | Size: 66 KiB |
Before Width: | Height: | Size: 172 KiB After Width: | Height: | Size: 140 KiB |
Before Width: | Height: | Size: 164 KiB After Width: | Height: | Size: 158 KiB |
Before Width: | Height: | Size: 6.1 KiB After Width: | Height: | Size: 3.7 KiB |
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 6.7 KiB |
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 21 KiB |
Before Width: | Height: | Size: 77 KiB After Width: | Height: | Size: 64 KiB |
Before Width: | Height: | Size: 44 KiB After Width: | Height: | Size: 36 KiB |
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 8.7 KiB |
Before Width: | Height: | Size: 57 KiB After Width: | Height: | Size: 46 KiB |
Before Width: | Height: | Size: 81 KiB After Width: | Height: | Size: 50 KiB |
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 105 KiB After Width: | Height: | Size: 87 KiB |
Before Width: | Height: | Size: 309 KiB After Width: | Height: | Size: 242 KiB |
Before Width: | Height: | Size: 38 KiB After Width: | Height: | Size: 32 KiB |
Before Width: | Height: | Size: 38 KiB After Width: | Height: | Size: 30 KiB |
Before Width: | Height: | Size: 119 KiB After Width: | Height: | Size: 95 KiB |
Before Width: | Height: | Size: 105 KiB After Width: | Height: | Size: 89 KiB |
Before Width: | Height: | Size: 81 KiB After Width: | Height: | Size: 69 KiB |
Before Width: | Height: | Size: 79 KiB After Width: | Height: | Size: 68 KiB |
Before Width: | Height: | Size: 695 B After Width: | Height: | Size: 456 B |
Before Width: | Height: | Size: 692 B After Width: | Height: | Size: 460 B |
Before Width: | Height: | Size: 175 B After Width: | Height: | Size: 149 B |
Before Width: | Height: | Size: 59 KiB After Width: | Height: | Size: 56 KiB |
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 1.6 KiB |
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 20 KiB |
Before Width: | Height: | Size: 49 KiB After Width: | Height: | Size: 40 KiB |
Before Width: | Height: | Size: 43 KiB After Width: | Height: | Size: 35 KiB |
Before Width: | Height: | Size: 45 KiB After Width: | Height: | Size: 36 KiB |
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 18 KiB |
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 40 KiB |
Before Width: | Height: | Size: 114 KiB After Width: | Height: | Size: 89 KiB |
Before Width: | Height: | Size: 106 KiB After Width: | Height: | Size: 87 KiB |
Before Width: | Height: | Size: 83 KiB After Width: | Height: | Size: 81 KiB |
Before Width: | Height: | Size: 147 KiB After Width: | Height: | Size: 127 KiB |
Before Width: | Height: | Size: 323 B After Width: | Height: | Size: 228 B |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 877 B |
Before Width: | Height: | Size: 803 B After Width: | Height: | Size: 710 B |
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 878 B |
Before Width: | Height: | Size: 45 KiB After Width: | Height: | Size: 36 KiB |
Before Width: | Height: | Size: 403 B After Width: | Height: | Size: 440 B |
Before Width: | Height: | Size: 406 B After Width: | Height: | Size: 441 B |
Before Width: | Height: | Size: 402 B After Width: | Height: | Size: 445 B |
Before Width: | Height: | Size: 403 B After Width: | Height: | Size: 430 B |
Before Width: | Height: | Size: 551 B After Width: | Height: | Size: 631 B |
Before Width: | Height: | Size: 5.2 KiB After Width: | Height: | Size: 4.3 KiB |
Before Width: | Height: | Size: 371 B After Width: | Height: | Size: 286 B |
Before Width: | Height: | Size: 8.6 KiB After Width: | Height: | Size: 6.7 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 8.2 KiB After Width: | Height: | Size: 6.4 KiB |
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 8.9 KiB After Width: | Height: | Size: 6.7 KiB |
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 75 KiB After Width: | Height: | Size: 65 KiB |
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 25 KiB |
Before Width: | Height: | Size: 83 KiB After Width: | Height: | Size: 74 KiB |
Before Width: | Height: | Size: 74 KiB After Width: | Height: | Size: 66 KiB |
Before Width: | Height: | Size: 130 KiB After Width: | Height: | Size: 108 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 7.6 KiB |
Before Width: | Height: | Size: 6.0 KiB After Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 137 KiB After Width: | Height: | Size: 115 KiB |
Before Width: | Height: | Size: 112 KiB After Width: | Height: | Size: 96 KiB |
Before Width: | Height: | Size: 115 KiB After Width: | Height: | Size: 97 KiB |
Before Width: | Height: | Size: 71 KiB After Width: | Height: | Size: 61 KiB |
Before Width: | Height: | Size: 100 KiB After Width: | Height: | Size: 85 KiB |
Before Width: | Height: | Size: 72 KiB After Width: | Height: | Size: 68 KiB |
Before Width: | Height: | Size: 73 KiB After Width: | Height: | Size: 59 KiB |
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 32 KiB |
Before Width: | Height: | Size: 106 KiB After Width: | Height: | Size: 75 KiB |
Before Width: | Height: | Size: 4.3 KiB After Width: | Height: | Size: 2.8 KiB |
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 18 KiB |
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 13 KiB |
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 16 KiB |