It should have multiply usecases for it.
Usable as bootable live system with router capabilities or remote ssh port forwarding from remote i2prouter
Usable as storage for independent linux /home/i2p with i2p user. Run with an installed linux distro with the usbstick provide home i2p user.
Encrypted storage for everyday use or dedicated to i2p content usable on Linux/Mac/Windows
USB Partitionlayout
Bootable with live iso image
Truecrypt Partition
luks encrypted /home/i2p
live iso image
There is a problem that i have to make the usbstick boot with the iso and then move the partition to the end of the stick. The reason for this and that the truecryptpartition has to be the first partition, is that windows otherwise wlil not see it , if you plug it in. This would not alow the use as an encrypted storage other than on linux.
Truecrypt-partition for storing downloaded files within the i2p-session and general encrypted storage
Why the luks home?
Here were store our application for i2p we like to use. It has all the config files. We just need the home/i2p dir and have what we need.
The live iso is not so important i think. I will concentrate myself on LinuxMint and their live install iso. Maybne others, like slax work too, but i will use mint/ubuntu. They are also capable to copy2ram which could be interesting.
What do i think it can be used for and how it would work from point of view:
I only do really need the home directory i thought.
So lets boot from our usbstick with the layout as above.
The live os boots up and we have the Linux Mate Desktop on the screen.
We put in our usbstick. 3 Partitions appear. We click or get prompted for a password and decrypt the home partition on the usbstick.
Now we create a new user i2p and hardlink home/i2p to the home/i2p on the usbstick.
We gave the needed rights.
If haven*t got any browser or need some programs we could install them now and maybe update the core packages.
Or we could use self compiled tor-i2p-browsers or compile them. Every config on the usbstick should be usable with the standard version delivered by the system. Our config and caches are also like everything else we need for persistence in our home dir.
Find a way to switch to our new user. Maybe you just can use the desktop mate and change the user, so we will have our own user desktop with our home i2p dir. Other option would be to start a new xorg server on an other terminal with startx :1, or so.
When we are on our desktop, we can use the system as we are used to. Start the i2prouter.. Everything we configured in firefox should be still there. Or we run our own compiled browser for i2p. Everything we need is in our home.
That's my general approach on this. we only need home.
There are other cases:
If the user wants to use his stick and as so his configuration, on his desktop, but without running it directly on it. He can use virtual machines with the usbstick. If the vm is capable of booting from a passthru usbstik on the host, he just to use a little help and could start the system even on windows. If the system is not capable of booting from usbstick, than you could just download the iso from mint and run it the vmware with your usbstick passthru. THe procedure than is same as above.
When people are getting more used to have the i2p online all the time as an gateway to the i2p network the remote access functionality comes with benefits. You can access a well established router and the user who normally just fire i2p up and then try to browse, have a better experience with 24/7 routers, better system performance and it's better for the network to have more routers.
Maybe the android i2p app will be capable in the future, to have an ssh server which is capable of port forwarding, so that you could use your old android devices or the more powerful androidtvboxes as i2p gateways and snarkplugin etc. for other devices in your homenet.
It also thinkable to use a local native linux. adding a user and after work delete him. Maybe put /tmp /var/tmp temporary on tmpfs and later back, so that the system don't get dirty.
The scripting does not seem to difficult, but i have just a small experience to make it good and if you want it more automatic without an linux user with some knowledge using it, the usbstick pattioning, encrypting is such a part, which other have scripted better before and for sure more secure. But the mount,switching should not be the problem, i think.
I don't know if you get more users to try it out with the USBSTICK. Maybe the vm part for faster testing/using/encStorage and the combining of remote access to i2prouters as androidapps on android devices could be some plus for some people. Or maybe usbsticks as giveaways on political campaigns, chinese tourists and so on
![Smile :)](./images/smilies/icon_e_smile.gif)
What i also like, is that it is not a real distro. There is no real maintaining or support. The live distros comes for free and if somebody use it on their linux there are most of the time ready to chose what is good for their system and whats better seperated and windowsusers will try it.
What is your opinion?
Thanks