- the I2P Browser.
- monitoring of the I2P bootstrapping process => notify users about its progress or failures.
- the pre-configured Pidgin account for Irc2P.
- configuring I2P itself to be in "Hidden mode" (i.e. don't be a relay) since the way Tails often is used (no persistence, abrupt shutdown) otherwise would leave dead relays on the network, hurting its performance.
- AppArmor profile for I2P.
Let's call this person the Tails-I2P liaison. This person will need solid general Linux skills, as well as decent knowledge of I2P. Yeah, that's vague, but let's say that if you look at the diff of the removal of I2P and don't get scared (possibly excluding the stuff under the
features directory, which is our automtaed test suite), you probably have what it takes. anonym will mentor this person about Tails development (e.g. building images will be a requirement for the liaison's tasks).
- to test new I2P releases in Tails:
- let us know when we should import the I2P package (i.e. when tests are good).
- provide us with patches for any changes needed (e.g. new feastures/preferences/etc).
- in general improve the I2P-integration in Tails.
- And for the actual reintroduction we also want to be shown work and commitment that gives us hope that this effort will be kept maintained for a long time, and not abandoned shortly after the first few releases where I2P has been reintroduced. What I'd prefer to see here is:
- Tails Greeter option for enabling I2P
- a solution for #8280
- fixing the I2P bootstrapping monitoring: there is a
wait_until_i2p_builds_a_tunnelwhich I find quite unacceptable. I don't even recall the specifics about this issue, and sadly we do not have a ticket, so an investigation of why we ended up having to do this will be required.
(When it comes to the Deiban packaging, it is currently done by zzz, the I2P Project Manager. zzz ideally does not want to be the Debian package maintainer, but the Tails-I2P liaison does not necessarily have to be the replacement -- that could be yet another person. Rationale: probably it will be easier to separate these responsibilities so the required skill-sets will be smaller.)Step one to start working on this would be:
- checkout a new Git branch
- revert e9d02049b4086b3516224227dbb6d4c73f8ff159
- add the
deb.i2p2.deAPT repo during the build, so I2P can be installed from there, since we don't have the packages in our repos any more.
- start hacking!
#5 Updated by vk over 2 years ago
I did start some work on this (see https://mailman.boum.org/pipermail/tails-dev/2017-May/011409.html for details).
There're some questions in the thread above regarding #8280, as soon as I get some guidance on those - I will send a patch for review.
#7 Updated by vk over 2 years ago
Stop shoving i2p down our throats! We don't want it and no one uses it. Stop wasting our RAM with this bloat.
Hello, my friend, nice to see you too. before posting to tails-dev@, and in this ticket I did some research in this bugtracker and I2P Trac, and know that I2P has a rough history in Tails.
Unfortunately I fail to see the whole I2P issue takes too much of RAM, so may I? Thanks.
To make it clear for those who don't want to follow the URL: I'm eager to pick up I2P testing, integration, and Debian packaging tasks to get I2P back to Tails. If I'm too late, and the decision was made somewhere to drop I2P forever - please close/reject this ticket with appropriate comment.
Otherwise - let's continue meaningful discussion; I will also be contacting zzz to sync up with him/her on this, he was heavily involved before according to #11276
#14 Updated by anonym over 1 year ago
- Assignee set to mhatta
- Target version set to Tails_3.9
At 34c3 I met with zzz and mhatta, the Debian package maintainer of the I2P package in Debian. mhatta intends to do the work needed to reintroduce I2P into Tails, and is committed to maintain the I2P-integration in Tails for the foreseeable future. Yay!
Our current goal is to reintroduce it with the improvements listed in this ticket's description in the Tails 3.9 release (or whatever we call the release happening on 2018-08-28).
Finally, I began some work on reintroducing I2P into Tails. My repo is: https://gitlab.com/masayukihatta/tails/tree/feature/12264-reintroduce-i2p
The first problem I encountered is the official I2P apt repo only provides https. Tails won't support https transport (https://redmine.tails.boum.org/code/issues/8143).
- File failed.log.bz2 added
- % Done changed from 0 to 10
I found there is still http://deb.i2p2.no/ (not .de), so I could add and install I2P tentatively.
Somehow the build fails, and I can't find out why. Any hints?
Here's log of "rake --trarce build". It goes well without I2P (ok.log).
It looks to me as if the builder VM started running out of RAM an OOM killed the
mksquashfs process. I can see you are doing an in-RAM build, and the amount of build space we specify is pretty close to the actual minimum, so it makes sense that the extra space required by installing I2P cause issues.
Enabling more build space is just a matter of:
--- a/vagrant/lib/tails_build_settings.rb +++ b/vagrant/lib/tails_build_settings.rb @@ -10,7 +10,7 @@ VIRTUAL_MACHINE_HOSTNAME = 'vagrant-stretch' VM_MEMORY_BASE = 1024 # Approximate amount of extra space needed for builds -BUILD_SPACE_REQUIREMENT = 12*1024 +BUILD_SPACE_REQUIREMENT = 13*1024 # Virtual machine memory size for on-disk builds VM_MEMORY_FOR_DISK_BUILDS = VM_MEMORY_BASE
I had a chat with some people from I2P today to discuss whether we want to reintroduce I2P in Tails and what it would take.
Even if the I2P developers do all the work they can on their side to make I2P "Tails-ready", reintroducing I2P in Tails will have a cost for us:
- Integration work that they won't be able to do themselves: test suite, Tails Greeter, etc.
- Non-coding work that they won't be able to do themselves: UX, doc, help desk, translations, etc.
- Maintenance cost. We've already removed I2P once from Tails because of maintenance issues.
- UX cost: more options means more things for our users to understand, more choice to make, and more confusion and errors. Keeping software limited and focus in the features it offers is a virtue. The opposite is a problem called feature creep: https://en.wikipedia.org/wiki/Feature_creep.
Exciting news from I2P:
- Someone told them that I2P works in China in places where Tor is blocked. Though China has tried to block access to some aspects of I2P, it's still work in some places.
- I2CP (I hope I got the acronym right) has obfuscation properties similar to obfs4 that might help some people circumvent censorship. We should check whether these properties could also benefit the PT community in general or are specific to I2P.
I told the I2P folks that we would make a decision regarding a possible inclusion of I2P in Tails as part of the discussion that we will have on #16531. Until then, we should stop sending them mixed signals: it's not clear yet whether we want I2P back in Tails or not.