This tutorial describes how to run the file sharing software
Nachtblitz on Unix-like operating systems. Different ways have been explored to
achieve this. The conclusion is that rather than relying on Mono, the original MS
.NET Framework 2.0 for the x86 architecture should be used on Wine, as it makes
for the best Nachtblitz user-experience on Unix (as of August 2014).
This
tutorial was successfully tested on Ubuntu 14.04 and Linux Mint 17 with Wine 1.6.2.
The overall installation usually takes about 10 minutes.
Click here
for a screenshot of Nachtblitz 1.4.21 running on Ubuntu.
If you haven't, install the Wine package including winetricks. Your operating system probably provides a mechanism for this (like Ubuntu Software Center). Alternatively you can check out https://www.winehq.org/ for instructions.
Provided it has access to the internet, winetricks will automatically
download the .NET Framework for you during the installation. In that case you can
skip this section and jump to the next.
If you don't grant winetricks access
to the internet, it will probably prompt you to manually retrieve the installation
file. The .NET 2.0 Framework redistributable package for x86 can be downloaded here:
http://download.cnet.com/Microsoft-NET-Framework-Redistributable-Package-x86/3000-10250_4-10726028.html
Or
alternatively here:
http://download.lenovo.com/ibmdl/pub/pc/pccbbs/thinkvantage_en/dotnetfx.exe
The
expected file has a size of 23.5 MB (23,510,720 bytes) and the following SHA-256:
46693d9b74d12454d117cc61ff2e9481cabb100b4d74eb5367d3cf88b89a0e71
Installing the MS .NET 2.0 Framework is easy once Wine and winetricks are installed. Open a terminal and type:
export WINEARCH=win32
export WINEPREFIX=$HOME/.wine-nachtblitz
This tells Wine to behave as 32-bit Windows and to use the folder
".wine-nachtblitz" in the current user's home directory for the following framework
installation (you can use a different folder of course).
Then type "winetricks"
to run the graphical setup.
Extract the Nachtblitz release archive to a folder you desire
(like "$HOME/nachtblitz"). Nachtblitz does not require write-access to this
folder.
You can use the tool "winecfg" to configure Wine to behave as Windows
7 or later when running Nachtblitz, as this increases compatibility. You can (and
probably should) also use the "Graphics" tab of the Wine configuration dialog to
increase the screen resolution to something larger than 96 DPI, like say 120 or
even 144 DPI, as Nachtblitz is DPI-aware and will honor this setting.
Whenever
you want to run Nachtblitz, open a terminal and type the following or use a script
to automate it for you:
export WINEARCH=win32
export WINEPREFIX=$HOME/.wine-nachtblitz
cd $HOME/nachtblitz
wine Nachtblitz.exe
If you manually type into a terminal window, the terminal window
has to remain open until you shut Nachtblitz down. Using a script for this operation
has the benefit of not having to maintain a terminal window.
Nachtblitz should
then start up. Make sure that the I2P Router is running and has its SAM bridge
started, so that Nachtblitz is able to connect to the I2P network.
By default
Nachtblitz will store its application data in the folder "C:\users\USERNAME\Local
Settings\Application Data\Nachtblitz", which should be the same as "$HOME/.wine-nachtblitz/drive_c/users/USERNAME/Local
Settings/Application Data/Nachtblitz".
To remove Nachtblitz from your system: If you used the folder "$HOME/.wine-nachtblitz" for the installation, you can simply delete that folder, and remove the folder containing the extracted Nachtblitz release archive (e.g. "$HOME/nachtblitz").
On Windows .NET 2.0 benefits form security updates per Windows
Update. This is not the case on Unix. So there are unfixed security leaks in
the .NET 2.0 referred to in this tutorial. The good news is that it should not be
possible to exploit any of these remotely, regarding how Nachtblitz uses the .NET
Framework (other applications running on top of this .NET might be vulnerable, depending
on how they work). Note that Nachtblitz doesn't directly interact with the internet,
but only with the I2P router. Also there are no plans to ever make Nachtblitz rely
on dangerous features of .NET, like processing and rendering remotely provided web-content.
So
it is thought to be secure to operate Nachtblitz in the way described here, provided
you regularly update your operating system, Java, I2P, Wine and Nachtblitz.
Isn't .NET 4 better than .NET 2? Well, consider this...
Does
Windows 7 become Windows 8 when you run Windows Update? No, they're separate products
that are maintained independently. Is a program that is targeting Windows 7 outdated?
Not in general, but it's probably more compatible than one that requires Windows
8. Does a program that targets Windows 7 run better on Windows 8? No, not necessarily.
Is it in the best interest of users and developers to make compatible software that
runs on Windows 7 and Windows 8? Yes, but maybe not in the best interest of the
operating system vendor.
Now substitute Windows 7 with .NET 2 and Window
8 with .NET 4 in the above paragraph to get the idea.
But isn't Mono better
suited for Unix than MS .NET?
Not momentarily. It would be great if Mono
lived up to its promises. But Mono simply isn't mature enough. Maybe in the future.
Complex software that was written for .NET simply won't work well on Mono - if at
all, after lots of time-intensive adjustments were made, culminating to porting
to Mono.
This document was created with support by Fantômas, who provided a great deal of help and did additional testing.
Back to the Nachtblitz front page