Compare commits

...

31 Commits

Author SHA1 Message Date
idk
f66f21434e 2.2.1 2023-04-12 21:23:18 +00:00
idk
c6d853575d fix makegeoip.sh script 2023-04-12 21:21:58 +00:00
idk
53bae90089 fix makegeoip script and update geoip data 2023-04-12 21:21:58 +00:00
idk
a50a65ac9f update version numbers in installer and resources 2023-04-12 21:21:32 +00:00
idk
ff4b8fc106 ignore shell scripts in root directory 2023-04-12 16:43:33 +00:00
idk
fe541df2c7 fix typo in checklist, add .tx to gitignore 2023-04-12 16:42:37 +00:00
idk
4585ec0b4c Merge branch 'lunar-bookworm-jakarta' into 'master'
WIP: Install and link jakara on Ubuntu>=Lunar, Debian>=Bookworm

Closes #374

See merge request i2p-hackers/i2p.i2p!87
2023-04-07 13:33:11 +00:00
idk
456ab3150a WIP: Install and link jakara on Ubuntu>=Lunar, Debian>=Bookworm 2023-04-07 13:33:10 +00:00
idk
b3748395ce Check in fixes for console 2023-04-06 18:54:03 +00:00
idk
b582695aa2 Merge pull request #43 from Shoalsteed/master
Updated Copy For /console, merging with changes requested, I'll be checking them in
2023-04-06 14:52:28 -04:00
06b7f75df3 Update readme.html 2023-04-05 14:55:08 -04:00
e2ca8d3268 Update readme.html 2023-04-05 14:41:50 -04:00
idk
0d4eec7f7f fix decimal/comma formatting issue on stats page 2023-03-31 23:08:45 +00:00
idk
837cb34353 Merge branch 'master' of i2pgit.org:i2p-hackers/i2p.i2p 2023-03-28 03:25:18 +00:00
idk
8b9cfc4e63 update outproxy user agent to latest TBB/Firefox ESR version, reported by dr|zed 2023-03-28 03:22:24 +00:00
idk
7d7768897d Merge branch 'add-tmp-to-install.jar' into 'master'
use tmp for install.jar to prevent confusion on build fails

See merge request i2p-hackers/i2p.i2p!85
2023-03-23 23:19:12 +00:00
c8b6e678f8 use tmp for install.jar to prevent confusion on build fails 2023-03-23 23:19:12 +00:00
idk
692c73994b fix some errors in startapp.sh shell script, including /JAVA_OPTS/JAVAOPTS/ thanks @bedaro, #41 2023-03-23 04:08:24 +00:00
idk
b5461f3b41 ignore override.properties when building docker 2023-03-19 15:00:48 +00:00
idk
37018f6eb0 Merge branch 'master' of i2pgit.org:i2p-hackers/i2p.i2p 2023-03-19 14:42:56 +00:00
daff55463b Router: Update and Clarify the Inline Documentation for VMCommSystem 2023-03-19 14:41:50 +00:00
ab676bf63c Detect When Running as a Podman Container 2023-03-19 14:41:50 +00:00
idk
8a0a533777 fix base directory path duplication in Dockerfile 2023-03-19 14:35:23 +00:00
idk
3c0eb9c52f Merge branch '2.1.0-9-mr-vmcommsystem-v2' into 'master'
Router: Update and Clarify the Inline Documentation for VMCommSystem

See merge request i2p-hackers/i2p.i2p!83
2023-03-18 17:33:32 +00:00
b3188a26a5 Router: Update and Clarify the Inline Documentation for VMCommSystem 2023-03-18 17:33:32 +00:00
idk
3ab904f164 Merge branch 'master' into 'master'
Detect When Running as a Podman Container

See merge request i2p-hackers/i2p.i2p!84
2023-03-18 17:32:38 +00:00
c71a42859d Detect When Running as a Podman Container 2023-03-18 17:32:38 +00:00
idk
cbe8d3f799 add blocklist 2023-03-14 22:42:24 +00:00
idk
ae4d3b5758 fix bionic changelog 2023-03-14 22:29:10 +00:00
idk
d12adcd933 update debian changelogs 2023-03-14 18:22:42 +00:00
idk
607613b7fd update debian changelog 2023-03-14 17:54:07 +00:00
25 changed files with 1792 additions and 80 deletions

View File

@ -29,3 +29,4 @@ installer/build
router/java/build
router/build
override.properties

2
.gitignore vendored
View File

@ -61,3 +61,5 @@ sloccount.sc
# TODO: why does this file appear?
apps/routerconsole/jsp/favicon.ico
.tx
/*.sh

View File

@ -2,70 +2,66 @@
<ul class="links">
<li><b>Starting Up</b><br>
If you've just started I2P, the number of <i>Active Peers</i> indicated under the <i>Peers</i> section in the side panel on the left should start to grow over the next few minutes.
When your router is ready, you'll also see a <i>Local Tunnel</i> named <i>Shared Clients</i> listed there, and possibly other clients and servers.
If not, see the troubleshooting section <a href="#trouble">below</a>.
These <i>Local Tunnels</i> provide connections to the I2P network, enabling your bittorrent, email, web proxy and other services.
Your <a href="/netdb">Network Database</a> indicates all known peers on the network.
Additionally, you can monitor existing <a href="/peers">Peer Connections</a>, and view existing <a href="/tunnels">Tunnels</a> and their status.
More information is available on the <a href="/help">help page</a>.</li>
<li><b>Network Integration</b><br>
When you start I2P, it may take a few minutes to bootstrap (integrate) your router into the network and find additional peers, so please be patient.
When I2P starts up, and during normal operation, I2P's tunnel build readiness indicator in the side panel may indicate that I2P is "Rejecting Tunnels"; this is normal behavior.
Once green circles are indicated next to your <i>Local Tunnels</i>, there is a wide variety of things you can do with I2P, and below we introduce you to some of them.</li>
<li>If you have just installed and started an I2P router, the number of <i>Active Peers</i> indicated under the <i>Peers</i> section in the side panel on the left will increase over the next few minutes. When an I2P router starts up, and during its regular operation, the tunnel build readiness indicator in the side panel may indicate that it is "Rejecting Tunnels." This is a normal behaviour. </li>
<li>Once the router has joined the network, a <i>Local </i> named <i>Shared Clients</i> will appear. If not, see the troubleshooting section <a href="http://127.0.0.1:7657/console#trouble">below</a>. Local Tunnels provide connections to the I2P network, enabling bittorrent, email, web proxy and other services. The <a href="http://127.0.0.1:7657/netdb">Network Database</a> indicates all known peers on the network. Additionally, you can monitor existing <a href="http://127.0.0.1:7657/peers">Peer Connections</a>, and view existing <a href="http://127.0.0.1:7657/tunnels">Tunnels</a> and their status. More information is available on the <a href="http://127.0.0.1:7657/help">help page</a>. Once green circles are indicated next to your Local Tunnels, you can access the I2P network.</li>
</ul>
<h3>Services on I2P</h3>
<h3>Applications And Services</h3>
<ul class="links">
<li><b>Hidden Services and Public Web Browsing</b><br>
On I2P you can access hidden service websites ("I2P sites") and other services, and you can host your own services.
You can also access the normal web anonymously via I2P's built-in web proxy (outproxy).
<a href="https://geti2p.net/en/about/browser-config" target="_blank">Configure your browser</a> to use the HTTP proxy at <code>127.0.0.1 port 4444</code>, then browse to an I2P Site or website at an <code>http://</code> or <code>https://</code> address.
If you wish to disable or change outproxy access to the non-anonymous internet, remove or modify the outproxy entry for <code>false.i2p</code> under the <i>Outproxies</i> option in the <a href="/i2ptunnel/edit?tunnel=0" target="_blank">I2P HTTP Proxy Tunnel Editor</a>.
In the "Sites of Interest" section <a href="#eepsites">below</a>, we list a few of the sites hosted on I2P.<br>
There are also a number of semi-official and unofficial efforts to build browsing tools for I2P,
<li><b>I2P Browsing Functions</b><br>
A properly configured browser is needed for accessing content on the I2P network (I2P sites and services) and accessing clearnet content using the outproxy service specified in the Hidden Services Manager of the I2P router.
<a href="https://geti2p.net/en/about/browser-config" target="_blank">Configure your browser</a> to use the HTTP proxy at <code>127.0.0.1 port 4444</code>.
If you wish to disable or change outproxy access, remove or modify the outproxy entry for <code>exit.stormycloud.i2p</code> in the <i>Outproxies</i> option in the <a href="/i2ptunnel/edit?tunnel=0" target="_blank">I2P HTTP Proxy Tunnel Editor</a>.<br>
There are semi-official and unofficial efforts to build browsing tools for I2P,
including a <a href="https://geti2p.net/en/download/firefox">preconfigured Firefox Browser profile</a>,
<a href="http://idk.i2p/I2P-in-Private-Browsing-Mode-Firefox">an easy-to-install WebExtension</a>,
or via <a href="https://www.whonix.org/wiki/I2P">automatic launchers in privacy-focused Linux distributions like Whonix</a>.
While these are all interesting projects, please evaluate them to see if they fit within your personal threat
model before trusting them with your well-being.
The easiest way to check if I2P network access is functioning properly is to visit /home of the I2P router console and click on the I2P website link in the Community section.
If an I2P site address is not in your router address book, you will be prompted to use a jump service and given the option in the process.
</li>
<li><b>Anonymous Email</b><br>
Postman's I2P-based mail system can be accessed either via <a href="/webmail">I2P's built-in mail client</a> or with any external mail client.
Accounts can send and receive mail from the normal internet.
<li><b>Email</b><br>
Postman's I2P-based mail (SusiMail) service can be accessed either via <a href="/webmail">I2P's built-in mail client</a> or with any external mail client.
It is primarily intended for use with Postmans 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.
For an account, visit <a href="http://hq.postman.i2p/" target="_blank">hq.postman.i2p</a>.
</li>
<li><b>Anonymous File Transfer</b><br>
<a href="/torrents">I2PSnark</a> is integrated into I2P, providing anonymous, encrypted BitTorrent transfers.
<li><b>I2PSnark BitTorrent Client</b><br>
<a href="/torrents">I2PSnark</a> Snark is an I2P network only BitTorrent client. It never makes a connection to a peer over any other network.
</li>
<li><b>Anonymous Chat</b><br>
<li><b>IRC/Chat</b><br>
Start your IRC client (e.g. HexChat) and connect to the <a href="irc://127.0.0.1:6668/i2p">server</a> at <code>127.0.0.1 port 6668</code>.
You do not need to configure a proxy in your IRC client; I2P provides you with a local IRC tunnel (configured in your IRC client as an IRC server or remote host).
Your local I2P IRC tunnel on <code>localhost:6668</code> will direct you to one of three IRC servers hosted on I2P by Postman, echelon and zl0, but neither you nor they know where the other is, and your communcations are encrypted in transit by I2P to prevent interception.
Your local I2P IRC tunnel on <code>localhost:6668</code> will direct you to one of three IRC servers hosted on I2P by Postman, echelon and zl0, but neither you nor they know where the other is, and your communications are encrypted in transit by I2P to prevent interception.
Once you're there, <code>#i2p-chat</code> and <code>#i2p-dev</code> are just a few of the available channels you may wish to join.
I2P is also suitable for unmonitorable and uncensorable anonymous chat, as well as alternative IRC servers, Jabber servers, website-based chat, and more.
You may run your own servers over I2P in whatever flavor you choose, or if you're a developer write your own <a href="http://i2p-projekt.i2p/applications.html" target="_blank">I2P applications</a>.
You may run your own servers over I2P, such an other IRC servers, Jabber servers, website-based chat and more. If you are a developer, you can create your own <a href="http://i2p-projekt.i2p/applications.html" target="_blank">I2P applications</a>.
Both UDP and TCP protocols are <a href="http://i2p-projekt.i2p/techintro.html#op.transport" target="_blank">supported</a>.</li>
<li><b>Forums and Blogging</b><br>
All normal blogging, forum and CMS software will run over I2P, though you're advised to take extra precautions with security when setting up and to keep all associated software (e.g. Php, MySql, Python, Apache) up to date and locked-down!
Also, there are quite a few community run forums on I2P in various languages; see <a href="#eepsites">below</a> for some suggestions.</li>
<li><b>The AddressBook</b><br>
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 too in the end.</li>
<li><b>The QR Code Generator</b><br>
Besides the Address Book, I2P addresses can be shared by converting them into QR codes and scanning them with a camera. This is especially useful for Android devices.</li>
<li><b>I2P Hidden Services Manager</b><br>
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 to do advance filtering of traffic before it reaches I2P.</li>
<li><a name="plugins"></a><b>Plugins for I2P</b><br>
Extend the usefulness of I2P by installing plugins: blogging, chatting, file sharing and other plugins have already been written or ported and await your <a href="http://wiki.i2p-projekt.i2p/wiki/index.php/Plugins" target="_blank">installation</a>!
Browse the plugins and related info at <a href="http://wiki.i2p-projekt.i2p/wiki/index.php/Plugins" target="_blank">wiki.i2p-projekt.i2p</a>.
Browse plugins and related information at <a href="http://wiki.i2p-projekt.i2p/wiki/index.php/Plugins" target="_blank">wiki.i2p-projekt.i2p</a>.
If you're a <a href="http://wiki.i2p-projekt.i2p/wiki/index.php/Plugins" target="_blank">developer</a>, a complete framework for writing your own plugins is provided with <a href="http://i2p-projekt.i2p/plugins.html" target="_blank">documentation</a>.</li>
</ul>
<h3>Anonymous Encrypted Web Hosting on I2P</h3>
<h3>Self-Host An I2P Site</h3>
<ul class="links">
@ -78,32 +74,28 @@ You can also run any alternative web server platform over I2P and replace the bu
After starting up, your pre-configured <a href="/i2ptunnel/" target="_blank">I2P Webserver Tunnel</a>, your website will be visible (but not discoverable) to others.
Detailed instructions for starting your website, registering an .i2p domain and promoting your site to others are accessible via your own I2P webserver on <a href="http://127.0.0.1:7658/help/" target="_blank">http://127.0.0.1:7658/help/</a>.</li>
<li><b>Forums and Blogging</b><br>
Most blogging, forum and CMS software are compatible with the I2P network, It is advised to take extra precautions with security when setting up and to keep all associated software (e.g. Php, MySql, Python, Apache) up to date.</li>
</ul>
<a name="eepsites"></a>
<h3>I2P-Hidden Services of Interest</h3>
<h3>I2P Community Resources</h3>
<ul class="links twocol">
<li><b>Invisible Internet Project (I2P) Official Website</b><br>
<a href="http://i2p-projekt.i2p" target="_blank">i2p-projekt.i2p</a>: Secure and anonymous connections to <a href="https://geti2p.net/en/" target="_blank">geti2p.net</a>. If you want to know more about how I2P works or how you can participate, this is the first place to visit!</li>
<li><b>I2P Community Forums</b><br>
<a href="http://zzz.i2p/" target="_blank">zzz's developer forums</a> hosts discussion related to I2P development.
<a href="http://i2pforum.i2p/" target="_blank">i2pforum.i2p</a>: A forum where problems and ideas relating to I2P and associated topics are discussed.</li>
<li><b>I2P Forum</b><br><a href="http://i2pforum.i2p/" target="_blank">i2pforum.i2p</a>: A forum where I2P topics are discussed.</li>
<li><b>I2P Planet</b><br>
<a href="http://planet.i2p/" target="_blank">planet.i2p</a>: An RSS aggregator site that takes news and events from around I2P and publishes them all in one place. A good site to visit to see the community at work!</li>
<li><b>I2P Network Health</b><br>
<a href="http://stats.i2p/cgi-bin/dashboard.cgi" target="_blank">stats.i2p</a>: Check out various aspects of network performance with this I2P network monitoring site run by zzz.</li>
<a href="http://planet.i2p/" target="_blank">planet.i2p</a>: An RSS aggregator site that takes news and events from around the I2P network and publishes them all in one place. A good site to visit to see the community at work.</li>
<li><b>I2P Bug Tracker - GitLab</b><br>
<a href="http://git.idk.i2p/" target="_blank">git.idk.i2p</a>: I2P's issue reporting and bug-tracking system. Please visit if you have an issue to report, also available at <a href="https://i2pgit.org/" target="_blank">https://i2pgit.org/</a></li>
<li><b>Discover I2P</b><br>
There are many more hidden services - just follow the links from the ones you see, bookmark your favourites, and visit them often!<br></li>
</ul>
@ -111,9 +103,9 @@ There are many more hidden services - just follow the links from the ones you se
<ul class="links">
<li><b>Be Patient!</b><br>
I2P may be slow to integrate into network the first time you run it as it bootstraps into the network and finds peers.
The longer your I2P router is running, the better it will perform, so try and keep your router on as long as you can, 24/7 if possible!
<li><b>Network Integration</b><br>
Your I2P router may be slow to integrate into network the first time you run it as it bootstraps into the network and finds peers.
The longer your I2P router is running, the better it will perform, so try and keep your router on as long as you can, 24/7 if possible.
If, after 30 minutes, your <i>Active: [connected/recent]</i> count still has less than 10 peers, or your total number of <i>Integrated</i> peers is less than 5, there are several things you can do to check for problems:</li>
<li><b>Check Your Configuration and Bandwidth Allocation</b><br>
@ -165,11 +157,7 @@ For developer-related discussions, please visit <a href="http://zzz.i2p/" target
Developers can browse source at <a href="http://git.idk.i2p/i2p-hackers/i2p.i2p" target="_blank">git.idk.i2p</a>.
<li><b>Get Involved!</b><br>
I2P is developed and maintained mostly through unfunded, voluntary participation by community members.
We're happy to accept <a href="http://i2p-projekt.i2p/donate.html" target="_blank">donations</a>, which go into essential hosting and administrative costs.
We have <a href="http://i2p-projekt.i2p/bounties.html" target="_blank">cash bounties</a> for aspects of I2P for developers looking for incentives to participate, and we're always looking for more <a href="http://i2p-projekt.i2p/newdevelopers.html" target="_blank">Java coders</a>, <a href="http://i2p-projekt.i2p/newtranslators.html" target="_blank">translators</a>, promoters and users to help I2P grow.
The bigger the I2P network, the more everyone benefits, so simply telling all your friends about I2P (and lending a hand with the installation and setup where needed) is helpful.
For further info on how you can participate, visit the <a href="http://i2p-projekt.i2p/getinvolved.html" target="_blank">volunteers page</a> on the website.</li>
For information about how you can help the network or participate in I2P core development, visit the <a href="http://i2p-projekt.i2p/getinvolved.html" target="_blank">volunteers page</a> on the website.</li>
</ul>

View File

@ -1241,7 +1241,7 @@
<target name="pkgclean" depends="deletepkg-temp">
<delete>
<fileset dir="." includes="i2p.tar.bz2 install.jar i2pupdate.zip i2pupdate200.zip" />
<fileset dir="." includes="i2p.tar.bz2 install.jar install.tmp.jar i2pupdate.zip i2pupdate200.zip" />
</delete>
</target>
@ -1844,7 +1844,8 @@
<!-- IzPack 4 -->
<target name="installer" depends="preppkg, buildProperties, izpack-patches, buildUtilityJar" >
<izpack input="${basedir}/installer/install.xml" output="${basedir}/install.jar" installerType="standard" basedir="${basedir}" />
<izpack input="${basedir}/installer/install.xml" output="${basedir}/install.tmp.jar" installerType="standard" basedir="${basedir}" />
<move file="${basedir}/install.tmp.jar" tofile="${basedir}/install.jar" />
<ant target="installerexe" />
</target>
@ -1875,7 +1876,8 @@
</target>
<target name="installer5" depends="izpack5-patches, preppkg, buildProperties, buildUtilityJar" >
<izpack5 input="${basedir}/installer/install5.xml" output="${basedir}/install.jar" installerType="standard" basedir="${basedir}" />
<izpack5 input="${basedir}/installer/install5.xml" output="${basedir}/install.tmp.jar" installerType="standard" basedir="${basedir}" />
<move file="${basedir}/install.tmp.jar" tofile="${basedir}/install.jar" />
<ant target="installer5exe" />
</target>
@ -2000,7 +2002,8 @@
<!-- IzPack 4 -->
<target name="installer-windows" depends="clean, preppkg-windows-only, izpack-patches, buildUtilityJar" >
<fixcrlf srcdir="pkg-temp" includes="*.config *.bat *.cmd **/*.xml **/*.properties **/*.txt scripts/*" encoding="utf8" eol="crlf"/>
<izpack input="${basedir}/installer/install.xml" output="${basedir}/install.jar" installerType="standard" basedir="${basedir}" />
<izpack input="${basedir}/installer/install.xml" output="${basedir}/install.tmp.jar" installerType="standard" basedir="${basedir}" />
<move file="${basedir}/install.tmp.jar" tofile="${basedir}/install.jar" />
<ant target="installerexe" />
<delete file="${basedir}/install.jar" />
<move file="${basedir}/i2pinstall.exe" tofile="${basedir}/i2pinstall_${full.version}_windows.exe" />
@ -2009,7 +2012,8 @@
<!-- IzPack 5 -->
<target name="installer5-windows" depends="clean, izpack5-patches, preppkg-windows-only, buildUtilityJar" >
<fixcrlf srcdir="pkg-temp" includes="*.config *.bat *.cmd **/*.xml **/*.properties **/*.txt scripts/*" encoding="utf8" eol="crlf"/>
<izpack5 input="${basedir}/installer/install5.xml" output="${basedir}/install.jar" installerType="standard" basedir="${basedir}" />
<izpack5 input="${basedir}/installer/install5.xml" output="${basedir}/install.tmp.jar" installerType="standard" basedir="${basedir}" />
<move file="${basedir}/install.tmp.jar" tofile="${basedir}/install.jar" />
<ant target="installer5exe" />
<delete file="${basedir}/install.jar" />
<move file="${basedir}/i2pinstall.exe" tofile="${basedir}/i2pinstall_${full.version}_windows.exe" />

View File

@ -31,7 +31,7 @@ public class CoreVersion {
* Otherwise, the same as PUBLISHED_VERSION.
* RouterVersion.FULL_VERSION is suggested for display to the user.
*/
public final static String VERSION = "2.2.0";
public final static String VERSION = "2.2.1";
/**
* The version published in the netdb via StatisticsManager.

View File

@ -69,7 +69,7 @@ public class DNSOverHTTPS implements EepGet.StatusListener {
*
* @since public since 0.9.54 for i2ptunnel
*/
public static final String UA_CLEARNET = "Mozilla/5.0 (Windows NT 10.0; rv:91.0) Gecko/20100101 Firefox/91.0";
public static final String UA_CLEARNET = "Mozilla/5.0 (Windows NT 10.0; rv:102.0) Gecko/20100101 Firefox/102.0";
private static final int MAX_RESPONSE_SIZE = 2048;
private static final boolean DEBUG = false;

View File

@ -1,3 +1,9 @@
i2p (2.2.0-2~bionic+1) bionic; urgency=medium
* New upstream version 2.2.0
-- eyedeekay <hankhill19580@gmail.com> Wed, 14 Mar 2023 12:12:12 +0000
i2p (2.1.0-2~bionic+1) bionic; urgency=medium
* Fix build failure

View File

@ -1,3 +1,9 @@
i2p (2.2.0-1ubuntu1) focal; urgency=medium
* New upstream version 2.2.0
-- eyedeekay <hankhill19580@gmail.com> Wed, 14 Mar 2023 12:12:12 +0000
i2p (2.1.0-1ubuntu1) focal; urgency=medium
* New upstream version 2.1.0

1151
debian-alt/lunar/changelog Normal file

File diff suppressed because it is too large Load Diff

106
debian-alt/lunar/control Normal file
View File

@ -0,0 +1,106 @@
Source: i2p
Maintainer: zzz <zzz@i2pmail.org>
Section: net
Standards-Version: 4.3.0
Priority: optional
Bugs: mailto:zzz@i2pmail.org
Homepage: https://geti2p.net/
Vcs-Browser: https://salsa.debian.org/debian/i2p
Vcs-Git: https://salsa.debian.org/debian/i2p.git
Build-Depends: debhelper (>= 9.20160709)
,ant (>= 1.9.8)
,debconf
,default-jdk
,libjakarta-servlet-api-java
,libjetty9-java (>= 9.4)
,libjsp-api-java
,libservlet-api-java
,libtaglibs-standard-jstlel-java
,libtomcat9-java
,dh-apparmor
,bash-completion
,gettext
,libgetopt-java
,libjson-simple-java (>= 2),libjson-simple-java (<< 3)
,libgmp-dev (>= 2:5.0.5)
,libservice-wrapper-java
,po-debconf
Package: i2p
Architecture: all
Section: net
Priority: optional
Depends: ${misc:Depends}, ${java:Depends}, ${shlibs:Depends},
adduser,
apparmor,
debconf,
i2p-router (>= 0.8.6-5),
libjbigi-jni,
lsb-base,
service-wrapper,
ucf (>= 0.28)
Description: Invisible Internet Project (I2P) - anonymous network
I2P is an anonymizing network, offering a simple layer that identity-sensitive
applications can use to securely communicate. All data is wrapped with several
layers of encryption, and the network is both distributed and dynamic, with no
trusted parties.
.
This package depends on the router, jbigi, the java service wrapper, and
includes support to run I2P as a daemon.
Package: libjbigi-jni
Architecture: any
Section: java
Priority: optional
Depends: ${misc:Depends}, ${shlibs:Depends}, i2p-router
Homepage: https://geti2p.net/
Description: Invisible Internet Project (I2P) - libjbigi library
This Package contains the libjbigi JNI library (and on x86 platforms, jcpuid).
.
libjbigi is a math library that is part of the I2P installation. Use of this
library greatly enhances the efficiency of cryptographic algorithms, such as
the ones used by I2P. You can expect to see a 5-7x speed improvement on certain
tasks, such as elGamal encryption/decryption.
Package: i2p-doc
Architecture: all
Section: doc
Priority: optional
Depends: ${misc:Depends}
Suggests: i2p, default-jdk-doc
Description: Invisible Internet Project (I2P) - developer documentation
I2P is an anonymizing network, offering a simple layer that identity-sensitive
applications can use to securely communicate. All data is wrapped with several
layers of encryption, and the network is both distributed and dynamic, with no
trusted parties.
.
This package contains the Javadoc files.
Package: i2p-router
Architecture: all
Section: net
Priority: optional
Depends: ${misc:Depends}, ${java:Depends}, ${shlibs:Depends},
openjdk-18-jre-headless | openjdk-17-jre-headless | openjdk-11-jre-headless | default-jre-headless | java18-runtime-headless | java17-runtime-headless | java11-runtime-headless,
geoip-database,
gettext-base,
libgetopt-java,
libjson-simple-java (>= 2),libjson-simple-java (<< 3),
libjetty9-java (>= 9.4),
libjsp-api-java,
libservlet-api-java,
libtaglibs-standard-jstlel-java,
libtomcat9-java,
famfamfam-flag-png,
sensible-utils
Replaces: i2p ( << 0.8.6-5)
Breaks: i2p (<< 0.8.6-5)
Recommends: libjbigi-jni
Suggests: apparmor
,privoxy
,syndie
Description: Invisible Internet Project (I2P) - Router
I2P is an anonymizing network, offering a simple layer that identity-sensitive
applications can use to securely communicate. All data is wrapped with several
layers of encryption, and the network is both distributed and dynamic, with no
trusted parties.

View File

@ -0,0 +1,121 @@
#
# Note: Update apparmor/i2p after any changes
#
usr/share/common-licenses/GPL-2 usr/share/doc/i2p-router/licenses/LICENSE-GPLv2.txt
usr/share/common-licenses/LGPL-2.1 usr/share/doc/i2p-router/licenses/LICENSE-LGPLv2.1.txt
usr/share/common-licenses/Apache-2.0 usr/share/doc/i2p-router/licenses/LICENSE-Apache2.0.txt
usr/share/common-licenses/BSD usr/share/doc/i2p-router/licenses/LICENSE-BSD.txt
# comment out if not building with libjetty9-java
# ubuntu: in trusty vivid wily xenial
# debian: in wheezy jessie stretch sid
usr/share/java/jetty9-apache-jsp.jar usr/share/i2p/lib/jetty-apache-jsp.jar
usr/share/java/jetty9-continuation.jar usr/share/i2p/lib/jetty-continuation.jar
usr/share/java/jetty9-deploy.jar usr/share/i2p/lib/jetty-deploy.jar
usr/share/java/jetty9-http.jar usr/share/i2p/lib/jetty-http.jar
usr/share/java/jetty9-io.jar usr/share/i2p/lib/jetty-io.jar
# legacy name in lib/
usr/share/java/jetty9-rewrite.jar usr/share/i2p/lib/jetty-rewrite-handler.jar
usr/share/java/jetty9-security.jar usr/share/i2p/lib/jetty-security.jar
usr/share/java/jetty9-servlet.jar usr/share/i2p/lib/jetty-servlet.jar
usr/share/java/jetty9-servlets.jar usr/share/i2p/lib/jetty-servlets.jar
usr/share/java/jetty9-start.jar usr/share/i2p/lib/jetty-start.jar
usr/share/java/jetty9-util.jar usr/share/i2p/lib/jetty-util.jar
usr/share/java/jetty9-webapp.jar usr/share/i2p/lib/jetty-webapp.jar
usr/share/java/jetty9-xml.jar usr/share/i2p/lib/jetty-xml.jar
# legacy name in lib/
usr/share/java/jetty9-server.jar usr/share/i2p/lib/org.mortbay.jetty.jar
# legacy name in lib/
usr/share/java/jetty9-jmx.jar usr/share/i2p/lib/org.mortbay.jmx.jar
# legacy name in lib/
usr/share/java/servlet-api.jar usr/share/i2p/lib/javax.servlet.jar
# combined into javax.servlet.jar in non-package builds
usr/share/java/jsp-api.jar usr/share/i2p/lib/jsp-api.jar
# comment out if not building with libtomcat9-java
# ubuntu: only in xenial+
# debian: wheezy-backports, jessie+
# legacy name, contains only tomcat-juli, not commons-logging
usr/share/java/tomcat9-juli.jar usr/share/i2p/lib/commons-logging.jar
usr/share/java/tomcat9-jasper.jar usr/share/i2p/lib/jasper-runtime.jar
# combined into jasper-runtime.jar in non-package builds
usr/share/java/tomcat9-coyote.jar usr/share/i2p/lib/tomcat-coyote.jar
usr/share/java/tomcat9-api.jar usr/share/i2p/lib/tomcat-api.jar
usr/share/java/tomcat9-util.jar usr/share/i2p/lib/tomcat-util.jar
usr/share/java/tomcat9-util-scan.jar usr/share/i2p/lib/tomcat-util-scan.jar
# combined into commons-el.jar in non-package builds
usr/share/java/tomcat9-jasper-el.jar usr/share/i2p/lib/jasper-el.jar
# following two are formerly from libservlet3.1-java, now in their own packages
# legacy name in lib/
usr/share/java/tomcat9-el-api.jar usr/share/i2p/lib/commons-el.jar
# tomcat9 pulls in libeclipse-jdk-core-java, link to it for eepsite webapps needing a compiler
usr/share/java/eclipse-jdt-core.jar usr/share/i2p/lib/ecj.jar
# comment out if not building with libtaglibs-standard
usr/share/java/taglibs-standard-spec.jar usr/share/i2p/lib/jstl.jar
usr/share/java/taglibs-standard-impl.jar usr/share/i2p/lib/standard.jar
usr/share/java/taglibs-standard-jstlel.jar usr/share/i2p/lib/jstlel.jar
# comment out if not building with glassfish-javaee
# glassfish-javaee.jar has ancient and conflicting classes, e.g. javax.mail
#usr/share/java/glassfish-javaee.jar usr/share/i2p/lib/jstl.jar
#usr/share/java/glassfish-appserv-jstl.jar usr/share/i2p/lib/standard.jar
# comment out if not building with libjakarta-taglibs-standard-java
# ubuntu and debian: everywhere
#usr/share/java/standard.jar usr/share/i2p/lib/standard.jar
# comment out if not building with libjstl1.1-java
# ubuntu and debian: everywhere
#usr/share/java/jstl1.1.jar usr/share/i2p/lib/jstl.jar
# comment out if not building with gettext-base
# ubuntu and debian: everywhere
usr/share/java/libintl.jar usr/share/i2p/lib/libintl.jar
# comment out if not building with libgetopt-java
# ubuntu and debian: everywhere
usr/share/java/gnu-getopt.jar usr/share/i2p/lib/gnu-getopt.jar
# comment out if not building with libjson-simple-java
# ubuntu: trusty+; debian: jessie+
usr/share/java/json-simple.jar usr/share/i2p/lib/json-simple.jar
# comment out if not building with famfamfam-flag-png
# ubuntu: trusty+
# debian: everywhere
usr/share/flags/countries/16x11 usr/share/i2p/docs/icons/flags
usr/share/flags/countries/16x11/az.png usr/share/i2p/eepsite/docroot/help/lib/az.png
usr/share/flags/countries/16x11/cn.png usr/share/i2p/eepsite/docroot/help/lib/cn.png
usr/share/flags/countries/16x11/de.png usr/share/i2p/eepsite/docroot/help/lib/de.png
usr/share/flags/countries/16x11/es.png usr/share/i2p/eepsite/docroot/help/lib/es.png
usr/share/flags/countries/16x11/fr.png usr/share/i2p/eepsite/docroot/help/lib/fr.png
usr/share/flags/countries/16x11/gr.png usr/share/i2p/eepsite/docroot/help/lib/gr.png
usr/share/flags/countries/16x11/hu.png usr/share/i2p/eepsite/docroot/help/lib/hu.png
usr/share/flags/countries/16x11/id.png usr/share/i2p/eepsite/docroot/help/lib/id.png
usr/share/flags/countries/16x11/ir.png usr/share/i2p/eepsite/docroot/help/lib/ir.png
usr/share/flags/countries/16x11/it.png usr/share/i2p/eepsite/docroot/help/lib/it.png
usr/share/flags/countries/16x11/nl.png usr/share/i2p/eepsite/docroot/help/lib/nl.png
usr/share/flags/countries/16x11/pl.png usr/share/i2p/eepsite/docroot/help/lib/pl.png
usr/share/flags/countries/16x11/pt.png usr/share/i2p/eepsite/docroot/help/lib/pt.png
usr/share/flags/countries/16x11/ro.png usr/share/i2p/eepsite/docroot/help/lib/ro.png
usr/share/flags/countries/16x11/ru.png usr/share/i2p/eepsite/docroot/help/lib/ru.png
usr/share/flags/countries/16x11/se.png usr/share/i2p/eepsite/docroot/help/lib/se.png
usr/share/flags/countries/16x11/tr.png usr/share/i2p/eepsite/docroot/help/lib/tr.png
usr/share/flags/countries/16x11/ua.png usr/share/i2p/eepsite/docroot/help/lib/ua.png
usr/share/flags/countries/16x11/us.png usr/share/i2p/eepsite/docroot/help/lib/us.png
# comment out if building for Ubuntu versions prior to Lunar, Debian versions prior to Bookworm
usr/share/java/jakarta-servlet-api.jar usr/share/i2p/lib/jakarta-servlet-api.jar

View File

@ -0,0 +1,2 @@
0001-path-substitution.patch
0002-jetty-compatibility.patch

197
debian-alt/lunar/rules Executable file
View File

@ -0,0 +1,197 @@
#!/usr/bin/make -f
# Quoting Policy version 3.9.2.0, 2011-04-07 section 4.9:
# /start quote
# For some packages, notably ones where the same source tree is compiled in
# different ways to produce two binary packages, the build target does not make
# much sense. For these packages it is good enough to provide two (or more)
# targets (build-a and build-b or whatever) for each of the ways of building the
# package, and a build target that does nothing. The binary target will have to
# build the package in each of the possible ways and make the binary package out
# of each.
# ...
# When a package has a configuration and build routine which takes a long time,
# or when the makefiles are poorly designed, or when build needs to run clean
# first, it is a good idea to touch build when the build process is complete.
# This will ensure that if debian/rules build is run again it will not rebuild
# the whole program.
# /end quote
# Since that fits building I2P very well, we override the build target.
#
build:
@echo 'The build target is disabled. Use the appropriate binary target.'
DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH)
JAVA_HOME=/usr/lib/jvm/default-java
I2P=$(CURDIR)/pkg-temp
ROUTERVERSION=$(CURDIR)/router/java/src/net/i2p/router/RouterVersion.java
export DEB_BUILD_HARDENING=1
# I2P's version will be displayed in the router console as "$I2PVERSION-$EXTRAPREFIX$DEBIANVERSION", eg. 0.8.12-0-deb1
#export EXTRAPREFIX := deb
export JAVA_HOME I2P
export DEBIANVERSION := $(shell dpkg-parsechangelog |awk -F' ' '/^Version:/{print $$2}' |sed 's/.*-\([.0-9A-Za-z~+]\{1,\}\)$$/\1/')
# required for jbigi/jcpuid build
export BITS := $(shell dpkg-architecture -qDEB_HOST_ARCH_BITS)
#export DEB_HOST_ARCH_CPU := $(shell dpkg-architecture -qDEB_HOST_ARCH_CPU)
%:
dh $@ --with systemd,bash-completion
clean: createcopyright
override_dh_auto_clean:
-[ -r $(CURDIR)/debian/routerversion.java.bak ] && mv -f $(CURDIR)/debian/routerversion.java.bak $(ROUTERVERSION)
dh_auto_clean
ant distclean
find $(CURDIR)/core \( -name '*\.so' -o -name '*\.o' \) -exec rm -f {} \;
rm -rf $(CURDIR)/core/c/jcpuid/lib/
rm -f $(CURDIR)/installer/lib/wrapper/all/wrapper.jar
rm -rf $(CURDIR)/debian/python-i2p
rm -f $(CURDIR)/override.properties
rm -f $(CURDIR)/apps/susidns/src/lib/standard.jar
rm -f $(CURDIR)/apps/susidns/src/lib/jstl.jar
rm -f $(CURDIR)/apps/susidns/src/lib/jstlel.jar
debconf-updatepo
override_dh_auto_build:
override_dh_systemd_enable:
# We purposely do not set I2P to start at boot.
# This matches the behavior of the initscript
# and the setting RUN_DAEMON=false in /etc/default/i2p
binary-indep: build-indep
build-indep:
dh_prep
mkdir -p $(CURDIR)/installer/lib/wrapper/all
ln -sf /usr/share/java/wrapper.jar $(CURDIR)/installer/lib/wrapper/all/wrapper.jar
if [ ! -e $(CURDIR)/debian/routerversion.java.bak ]; then \
cp $(ROUTERVERSION) $(CURDIR)/debian/routerversion.java.bak; \
fi
ifeq "$(findstring deb,$(shell grep 'deb' $(ROUTERVERSION)))" ""
sed -e "s/\(.*EXTRA\ =\ \)[^ ]*\"\(.*\)\"/\1\"-$$EXTRAPREFIX$$DEBIANVERSION\"/" < $(ROUTERVERSION) > $(ROUTERVERSION).tmp
mv -f $(ROUTERVERSION).tmp $(ROUTERVERSION)
else
@echo "Already found deb in version, not doing anything"
endif
@# build options
@/bin/echo -e "javac.release=11" > $(CURDIR)/override.properties
@/bin/echo -e "build.built-by=launchpad" >> $(CURDIR)/override.properties
@/bin/echo -e "build.reproducible=true" >> $(CURDIR)/override.properties
@# debian and ubuntu: everywhere
@/bin/echo -e "with-geoip-database=true" >> $(CURDIR)/override.properties
@# ubuntu: in xenial
@# debian: in jessie-backports stretch sid
@/bin/echo -e "with-libjetty9-java=true" >> $(CURDIR)/override.properties
mkdir -p $(CURDIR)/apps/jetty/jettylib
ln -sf /usr/share/java/jetty9-continuation.jar $(CURDIR)/apps/jetty/jettylib/jetty-continuation.jar
ln -sf /usr/share/java/jetty9-deploy.jar $(CURDIR)/apps/jetty/jettylib/jetty-deploy.jar
ln -sf /usr/share/java/jetty9-http.jar $(CURDIR)/apps/jetty/jettylib/jetty-http.jar
ln -sf /usr/share/java/jetty9-io.jar $(CURDIR)/apps/jetty/jettylib/jetty-io.jar
ln -sf /usr/share/java/jetty9-rewrite.jar $(CURDIR)/apps/jetty/jettylib/jetty-rewrite-handler.jar
ln -sf /usr/share/java/jetty9-security.jar $(CURDIR)/apps/jetty/jettylib/jetty-security.jar
ln -sf /usr/share/java/jetty9-servlet.jar $(CURDIR)/apps/jetty/jettylib/jetty-servlet.jar
ln -sf /usr/share/java/jetty9-servlets.jar $(CURDIR)/apps/jetty/jettylib/jetty-servlets.jar
ln -sf /usr/share/java/jetty9-start.jar $(CURDIR)/apps/jetty/jettylib/jetty-start.jar
ln -sf /usr/share/java/jetty9-util.jar $(CURDIR)/apps/jetty/jettylib/jetty-util.jar
ln -sf /usr/share/java/jetty9-webapp.jar $(CURDIR)/apps/jetty/jettylib/jetty-webapp.jar
ln -sf /usr/share/java/jetty9-xml.jar $(CURDIR)/apps/jetty/jettylib/jetty-xml.jar
ln -sf /usr/share/java/jetty9-server.jar $(CURDIR)/apps/jetty/jettylib/org.mortbay.jetty.jar
ln -sf /usr/share/java/jetty9-jmx.jar $(CURDIR)/apps/jetty/jettylib/org.mortbay.jmx.jar
@# following two are formerly from libservlet3.1-java, now in their own packages
ln -sf /usr/share/java/servlet-api.jar $(CURDIR)/apps/jetty/jettylib/javax.servlet.jar
@# this is roughly the same as tomcat8-jsp-api.jar, we use this one
ln -sf /usr/share/java/jsp-api.jar $(CURDIR)/apps/jetty/jettylib/jsp-api.jar
@# debian and ubuntu: buster, disco
@/bin/echo -e "with-libtomcat9-java=true" >> $(CURDIR)/override.properties
mkdir -p $(CURDIR)/apps/jetty/jettylib
ln -sf /usr/share/java/tomcat9-api.jar $(CURDIR)/apps/jetty/jettylib/tomcat-api.jar
ln -sf /usr/share/java/tomcat9-coyote.jar $(CURDIR)/apps/jetty/jettylib/tomcat-coyote.jar
ln -sf /usr/share/java/tomcat9-el-api.jar $(CURDIR)/apps/jetty/jettylib/commons-el.jar
ln -sf /usr/share/java/tomcat9-jasper.jar $(CURDIR)/apps/jetty/jettylib/jasper-runtime.jar
ln -sf /usr/share/java/tomcat9-jasper-el.jar $(CURDIR)/apps/jetty/jettylib/jasper-el.jar
ln -sf /usr/share/java/tomcat9-juli.jar $(CURDIR)/apps/jetty/jettylib/commons-logging.jar
ln -sf /usr/share/java/tomcat9-util.jar $(CURDIR)/apps/jetty/jettylib/tomcat-util.jar
ln -sf /usr/share/java/tomcat9-util-scan.jar $(CURDIR)/apps/jetty/jettylib/tomcat-util-scan.jar
@# debian and ubuntu: stretch+, zesty+
@/bin/echo -e "with-libtaglibs-standard=true" >> $(CURDIR)/override.properties
ln -sf /usr/share/java/taglibs-standard-spec.jar $(CURDIR)/apps/susidns/src/lib/jstl.jar
ln -sf /usr/share/java/taglibs-standard-impl.jar $(CURDIR)/apps/susidns/src/lib/standard.jar
ln -sf /usr/share/java/taglibs-standard-jstlel.jar $(CURDIR)/apps/susidns/src/lib/jstlel.jar
@# debian and ubuntu: everywhere
@/bin/echo -e "with-gettext-base=true" >> $(CURDIR)/override.properties
@mkdir -p $(CURDIR)/core/java/build
ln -sf /usr/share/java/libintl.jar $(CURDIR)/core/java/build/libintl.jar
@# debian and ubuntu: everywhere
@/bin/echo -e "with-libgetopt-java=true" >> $(CURDIR)/override.properties
@mkdir -p $(CURDIR)/core/java/build
ln -sf /usr/share/java/gnu-getopt.jar $(CURDIR)/core/java/build/gnu-getopt.jar
@# debian: jessie+; ubuntu: trusty+
@/bin/echo -e "with-libjson-simple-java=true" >> $(CURDIR)/override.properties
@mkdir -p $(CURDIR)/core/java/build
ln -sf /usr/share/java/json-simple.jar $(CURDIR)/core/java/build/json-simple.jar
@# debian: everywhere; ubuntu: trusty+
@/bin/echo -e "with-famfamfam-flag-png=true" >> $(CURDIR)/override.properties
TZ=UTC JAVA_TOOL_OPTIONS=-Dfile.encoding=UTF8 ant preppkg-unix javadoc
echo router.updateDisabled=true > $(I2P)/router.config
mv $(I2P)/runplain.sh $(I2P)/i2prouter-nowrapper
binary-arch: build-arch
build-arch:
# build jbigi
cd $(CURDIR)/core/c/jbigi && ./build_jbigi.sh dynamic
# build jcpuid
cd $(CURDIR)/core/c/jcpuid && ./build.sh
binary: binary-arch binary-indep
createcopyright:
@echo " *** Creating debian/copyright*** "
@rm -f $(CURDIR)/debian/copyright
@/bin/echo -e "This package was Debianized by kytv <killyourtv@i2pmail.org>" >> $(CURDIR)/debian/copyright
@/bin/echo -e "Sun, 23 Jan 2011 20:26:51 +0000" >> $(CURDIR)/debian/copyright
@/bin/echo -e "\nIt was downloaded from https://geti2p.net" >> $(CURDIR)/debian/copyright
@/bin/echo -e "\nI2P is tracked upstream using the Monotone VCS" >> $(CURDIR)/debian/copyright
@/bin/echo -e "Complete information on fetching the source with monotone can be found" >> $(CURDIR)/debian/copyright
@/bin/echo -e "at https://geti2p.net/newdevelopers#getting-the-i2p-code\n\n\n" >> $(CURDIR)/debian/copyright
@/bin/cat $(CURDIR)/LICENSE.txt >> $(CURDIR)/debian/copyright
@/bin/echo -e "\n\n The debian packaging has been released into the public domain." >> $(CURDIR)/debian/copyright
override_dh_compress:
dh_compress -X.xsl -X.xml
override_dh_install:
dh_install --list-missing
dh_apparmor --profile-name=system_i2p -pi2p
dh_apparmor --profile-name=usr.bin.i2prouter -pi2p
override_dh_installchangelogs:
dh_installchangelogs history.txt
override_dh_installdocs:
dh_installdocs -pi2p --link-doc=i2p-router
dh_installdocs --remaining-packages
override_dh_shlibdeps:
dh_shlibdeps -llibjbigi-jni debian/libjbigi-jni/usr/lib/jni/*.so
#override_dh_installinit:
# dh_installinit -r
get-orig-source:
uscan --verbose --rename --destdir $(CURDIR)/.. --watchfile debian/watch --force-download

6
debian/changelog vendored
View File

@ -1,3 +1,9 @@
i2p (2.2.0-1ubuntu1) focal; urgency=medium
* New upstream version 2.2.0
-- eyedeekay <hankhill19580@gmail.com> Wed, 14 Mar 2023 12:12:12 +0000
i2p (2.1.0-1ubuntu1) focal; urgency=medium
* New upstream version 2.1.0

View File

@ -11,26 +11,27 @@ fi
# Explicitly define HOME otherwise it might not have been set
export HOME=/i2p
export I2P=${HOME}/i2p
export I2P=${HOME}
echo "Starting I2P"
cd $HOME
export CLASSPATH=.
for jar in `ls lib/*.jar`; do
for jar in lib/*.jar; do
CLASSPATH=${CLASSPATH}:${jar}
done
if [ -f /.dockerenv ]; then
if [ -f /.dockerenv ] || [ -f /run/.containerenv ]; then
echo "[startapp] Running in container"
if [ -z "$IP_ADDR" ]; then
export IP_ADDR=$(hostname -i)
export IP_ADDR="$(hostname -i)"
echo "[startapp] Running in docker network"
fi
echo "[startapp] setting reachable IP to container IP $IP_ADDR"
find . -name '*.config' -exec sed -i "s/127.0.0.1/$IP_ADDR/g" {} \;
find . -name '*.config' -exec sed -i "s/localhost/$IP_ADDR/g" {} \;
fi
# Options required for reflective access in dynamic JVM languages like Groovy and Jython
@ -38,4 +39,4 @@ JAVA17OPTS="--add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/su
# Old java options
JAVAOPTS="-Djava.net.preferIPv4Stack=false -Djava.library.path=${I2P}:${I2P}/lib -Di2p.dir.base=${I2P} -Di2p.dir.config=${HOME}/.i2p -DloggerFilenameOverride=logs/log-router-@.txt -Xmx$JVM_XMX"
java -cp "${CLASSPATH}" ${JAVA_OPTS} net.i2p.router.RouterLaunch
java -cp "${CLASSPATH}" ${JAVAOPTS} net.i2p.router.RouterLaunch

View File

@ -1,3 +1,12 @@
2023-04-12 idk
* Fix missing Java options in docker/rootfs/startapp.sh
* Detect when running in Podman instead of regular Docker
* Update Tor Browser User-Agent String
* Update local GeoIP database
* Remove invalid signing keys from old installs
* Update Tomcat version in Ubuntu Lunar and Debian Sid
* Release version 2.2.1/0.9.58
2023-03-13 idk
* Send and check target destination in first streaming SYN packet
* Release version 2.2.0/0.9.58

View File

@ -4,7 +4,7 @@
<info>
<appname>i2p</appname>
<appversion>2.2.0</appversion>
<appversion>2.2.1</appversion>
<authors>
<author name="I2P" email="https://geti2p.net/"/>
</authors>

View File

@ -10,7 +10,7 @@
<info>
<appname>i2p</appname>
<appversion>2.2.0</appversion>
<appversion>2.2.1</appversion>
<authors>
<author name="I2P" email="https://geti2p.net/"/>
</authors>

View File

@ -122,9 +122,12 @@ Sybil:163.44.149.31
Sybil:178.21.164.0/24
Sybil:185.69.185.0/24
Sybil:185.69.186.0/24
Tunnels:185.213.155.252
NetDB:186.166.142.51
Sybil:202.182.126.246
Sybil:213.142.149.0/24
Sybil:213.238.166.0/24
Tunnels:223.167.199.60
Sybil:2001;df6;b800;1128;a163;44;149;310
Sybil:2001;19f0;4400;4376;5400;ff;fe47;bcbd
Sybil:2001;19f0;5801;1d4;5400;ff;fe38;a26e
@ -138,7 +141,93 @@ Sybil:2400;8500;1302;819;a150;95;134;1590
Sybil:2400;8500;1302;824;a150;95;144;951
Sybil:2400;8500;1302;825;150;95;147;89
Sybil:2400;8500;1302;828;a150;95;153;2202
Tunnels:2a03;1b20;6;f011;0;0;0;a02e
Tunnels:JbifzqZZqeTXtxK6KDqNUPWaW-phKqeS~tfJT82SIYI=
Tunnels:QPUV1bW6arN2zp3gTBMvOEvgSuKbXUqk2oqHkb~UoSw=
Tunnels:CyLg6w8lypk1gnAX-CdG8O4NCR86hq8ifge6QKXAoJg=
Tunnels:DtQsGzkbeR3nilr6ZvywR2O7-f0XaaV~YfHXohqwjgI=
Tunnels:lam824jtkYq4qTiZHT~TkdHoVTVRwnLghgFheZbgDhU=
Tunnels:Qqj3p9F0Y~qXAkSz3FYo~e~OfSgaM5qZ2OYUrzOtrgM=
Tunnels:NUo2wncm49XY8f~dzdxII5fnVopL9oT92KC9JC3IOFY=
Tunnels:GEpq15rG0XjIvP7oZCW9cmL8Dhb8eLSweTU3hZuT2fE=
Tunnels:aNBK4IQwYCejjMnD31hapWQvova~u1OINPnHCqceljw=
Tunnels:6lWUeurYBX4w6lsfPdkAxbFKXoGEXKxofXwlWOC3RQA=
Tunnels:xKAdoKJUvrSEGS0gREC4lEUawa4IKsVnQU189X~QQhk=
Tunnels:2EJgHsXnjQo8gHt-jmS-GlhXjqtHnNgWiK~QyQ0Rsh4=
Tunnels:o-atVIIK0N2Eu6r2Nq42cAVqlK6wJGrXqU0Ps3x0HmY=
Tunnels:2C-fFbGjOJks1mDYxlQ~~M3Q-tX9Dx~tyAUHPzfct~E=
NetDB:Qc5rvLavMYNhzQBQfBgFkZbesEvGW~3nz1ZwllR1MoM=
0bLUiXtgYCzAy3533C~wjaUxUkH63JGSRlx2huH-6Bo=
3~ZOYyQFJAJXxuynetnoijOFjliGGmN9kZ5BkiSupy0=
4V3EsOGTWrIXJDNaGpOLZrnSGWgSxwgZ7Tsxb0txFtE=
4yr5497JpDG-K7s1unMbvWBPPfds72Qw27DNH9FpcKQ=
5MAAvwKgnG7hYbi93q0Luro~-AyIjO5xvUbABc2T3IU=
5SI8wX-KUefASp0KbjuQ2KaCyZboFHcsXsgwaONVqzc=
6lKXyJfzTrrt2B7R-p24FSMQQHmyPBb1JSp1N49wdrM=
6yUKWdxJKF0wtxd3Ro0VfkSlLe74gvM2b0IJbzm~mT0=
7NzcMy-ty6WICyPHbYBuGQlbcMs7dV-5lN2HIZ-PvuY=
9ELLjPmb9PBMTOeXqMsRmRfLRlctQMELTZFrkDBOiVA=
AQ2Wq8Guob3CI1jve~W5wErlaaSF-iZz9mhzKsFmWeo=
BhqgIK5aTiL8UosUjmBMsCl5NtNCFCZTu0wUSFt0Mkg=
cC8PmCV4AehT0hKPAfp3yP1DYJKFxmWBk8JWSVZT8Oo=
cfhT8b5PNxSIFhmg-6ZvP78W5eD9jtGBLjM~oIRRqoE=
fGe1bjAyj-V0kRJmbXbCGp9y0ZVkYDZksdvfBwo2nME=
G7d8g3yIjMTG1M6ui1zWf-YYYe0K3Pz8dCg~gRHM-KI=
Giy8ehFNw~RyB5KV5BCMzgMUMxVI2hiWFS3gdWPthCA=
HPDYhgrDNJK0STyIJM-A3Q~aMU9D63P-7Bw-Qs15Bmk=
I5rpywP3dJsP1bfKzp-QUsRCNgT2sO7sTqxuH8~AjmQ=
ioBAP6QWbWpzkUbmpKn2eWe~XlNmFuIsTJxvstMt2hU=
jizbTEmYpthOrW2louGRyR057W9G4vcOKtvk~lPqvYg=
JtgxUY6P7VcgJV3HQUzAaUSVInTR20PT8E34xvwkEck=
kISWAKZmX0n9C~vQ19oTdL9iWdLs1BfDrssNiZunubw=
krZK4oqwsee2Qsevb9b9n5jGuNrVaTJlt-nE8G8ft5w=
lj1A58-iv9W4V9r-jrHZISKncWlSYaQCYvQcBvZppEg=
N9GkaK294wlSRKaUicSimnxDwebUWKggFlrBUpe00KA=
Oy4ZaiVxxel1XAWW1p23JlekMGEFvWbWuizQMRnG~tc=
q1rjeEo0hB61qIcER59aEdQWsX8-gpW-K862deAJkp0=
QYkhWCudqWhty-TvJ-sFd0z5uLYBXHW5t61L-I6ltJU=
RDX~26d6ugO1C-DEhkEzPQaGHurvfgKL0cXZlqr4C6Y=
RjBVJtLfMhLgaSNDpv-D4UqybO5GWSgtcJqAqqd6L~Q=
S7-xKQ1wSqiqmjODZrTWprTD1L0dtiZlwT055DArGFw=
SdXmd046uxhAvscEM7ogR6HtH2eWBiyo4~XOnj3dr7c=
Sm6IkscEdA0vBy9Cx~VQcgB2f5e0fvQ2CEu8fkceL1s=
tFv6N4kwPdOlMXo8VqoOO3UrSsWAg~-5nadozzBm2Tc=
TJwtpwSS7yANCDPDfbGdx3f4lDQNYcfA-0X75jHbbNU=
w~1a6nvIBJfFHGur0mPJmjlwjSBOrWGTC-INPEesPJ0=
wMIJ9Ax~4kW-jkFQLTHfzSSBqaMSy3EKiBH8YUQjAVA=
wPorvAjMYj6FipnUHruA0dF2K-Xm~GngCY3QDIVlZyU=
wWP~J-g-e8Fok7NpTURpJJfeNTGB5S7F15QshyRn9n0=
X52PGfb8TysUDO7pvQIKGeoPcmWx4jwQJjoHLDD7A5Y=
xirj-SFuNcYapYv7vnkfa2peqqCzuWeKeUB937Odl3s=
xXvAxpq~FFyNx9bm6XlPVXNQ7vYfGkjC7nj0xWvNjwE=
YbIKZpPSqdohVjzi8s~N-D0t~bbayKM4hHcBk-fcJvY=
ynL10zIHBslFPSf1cmAONogYvNm1WrZ9bgE0txHzOr4=
YSfLfZVPUvvyQtAltBSJ2RHcU~uTiV0x0H4y~QIPczc=
ZTOVAP9GJYEKu8CjCQBmOigw79oyTVpQQguTDqwv2EU=
-xH2G0zblY4mRQxeb1WtXAJwyy8hlsrqpY3~fgPBnoU=
~CrJVoN00MNvEjZIWudnWFzjqDPDsZxKuFq1Y~Sh8fo=
3.225.127.222
3.234.89.179
5.250.198.133
18.210.78.199
31.155.206.27
38.242.206.110
44.210.192.47
46.53.244.68
52.70.234.81
77.165.6.8
93.235.73.128
98.15.244.49
109.197.204.101
109.197.205.47
139.59.133.151
145.239.83.230
162.55.230.167
172.6.174.68
174.27.149.30
176.88.62.2
185.209.196.0/24
185.65.134.0/24
186.166.142.51
193.32.249.139
2a03;1b20;6;f011;0;0;0;a07e

View File

@ -74,7 +74,7 @@
- Add any new ones to .tx/config (use your own judgement on which to include
based on minimum translated percentage)
- `tx pull`
- `ant testcripts` to verify that all updated translations are valid
- `ant testscripts` to verify that all updated translations are valid
- For any invalid that break the test, fix up the po file manually, or fix on
tx and pull again, or (if new) comment out in .tx/config (add a comment why)
and delete the po file.

View File

@ -10,3 +10,9 @@ wget https://download.db-ip.com/free/$DL || exit 1
mv $FILE ${FILE}.bak
mv $DL $FILE
ls -l $FILE
OLD_HASH=$(sha256sum ./installer/resources/$FILE | cut -f 1 -d ' ')
NEW_HASH=$(sha256sum ./$FILE | cut -f 1 -d ' ')
echo $OLD_HASH $NEW_HASH
if [ $OLD_HASH != $NEW_HASH ]; then
cp -v "$FILE" "./installer/resources/$FILE"
fi

View File

@ -30,12 +30,16 @@ import net.i2p.router.Router;
* <li>router.configLocation=rN/router.config</li>
* </ul>
* (where "rN" is an instance number, such as r0 or r9).
* Additionally, two other properties might be useful:<ul>
* <li>i2p.vmCommSystem=true</li>
* </ul>
* The first line tells the router to use an in-VM comm system for sending
* messages back and forth between routers (see net.i2p.transport.VMCommSystem).
*
* Optionally, i2p.vmCommSystem=true can be enabled.
*
* i2p.vmCommSystem=true tells the router to use an in-VM comm system for sending
* messages back and forth between routers (see net.i2p.transport.VMCommSystem).
*
* However, the default comm system implementation is usually preferred since
* enabling the VMCommSystem will bypass UDP and TCP, and therefore will not
* provide a test bed for many important I2P systems.
*
* To make the router console work, either run from a directory containing
* lib/, webapps/, docs/, etc., or point i2p.dir.base to a directory containing the
* above.

View File

@ -46,7 +46,7 @@ public class StatisticsManager {
public StatisticsManager(RouterContext context) {
_context = context;
_fmt = SIMPLE_STATS ? new DecimalFormat("0.00") :
_fmt = SIMPLE_STATS ? new DecimalFormat("0.00", new DecimalFormatSymbols(Locale.UK)) :
new DecimalFormat("###,##0.00", new DecimalFormatSymbols(Locale.UK));
_pct = new DecimalFormat("#0.00%", new DecimalFormatSymbols(Locale.UK));
_log = context.logManager().getLog(StatisticsManager.class);

View File

@ -20,10 +20,23 @@ import net.i2p.router.transport.crypto.X25519KeyFactory;
import net.i2p.util.Log;
/**
* Hacked up in-VM comm system for talking between contexts. It doesn't even
* generate any routerAddresses, but instead tracks the peers through a singleton.
* Hacked up in-VM comm system for talking between contexts within the same Java
* virtual machine. It doesn't generate any routerAddresses, but instead tracks
* the peers through a singleton. It cannot connect to anything outside of its
* own Java VM. It does not implement TCP, UDP, and therefore no NTCP or SSU.
* Currently, the comm system doesn't even inject any lag, though it could (later).
* It does honor the standard transport stats though, but not the TCP specific ones.
* It does honor the standard transport stats though, but no TCP or UDP specific
* ones (since UDP and TCP are not implemented).
*
* Typically, VMCommSystem is enabled by developers when it is desirable to
* test the router without enabling a real comm system. For a variety of
* testing purposes, it can be advantageous to start the router in a mode
* where contact with the actual network is disabled.
*
* VMCommSystem can be enabled with the following setting in the
* router.config file:
*
* i2p.vmCommSystem=true
*
* FOR DEBUGGING AND LOCAL TESTING ONLY.
*/