This guide shows how to install Electrum on an air-gapped machine. You will also need an Ubuntu machine connected to the network in order to complete this guide (it can be a virtual machine).
If you are running Ubuntu 16.04 off of a live USB, there is a bug that affects the package manager. You need to run these two commands at the terminal to fix it:
$ sudo mv /var/cache/app-info/xapian/default /var/cache/app-info/xapian/default_old
$ sudo mv /var/cache/app-info/xapian/default_old /var/cache/app-info/xapian/default
Next update the package manager:
$ sudo apt-add-repository universe
$ sudo apt-get update
Make a temporary directory to download .deb package files
$ mkdir debs
$ cd debs
Generate a list of URIs for the software you would like to install. This generates a text file called “apturls”.
$ sudo apt-get -y install --print-uris python-qt4 python-pip qrencode | cut -d\' -f2 | grep http:// > apturls
Now download the software packages to your hard drive
$ wget -i apturls
The previous step downloaded several .deb files to your hard drive in the “debs” directory. Copy this directory to the software usb drive. Make another temporary directory for the Electrum python sources
$ mkdir ~/python_files
$ cd ~/python_files
Download Electrum’s python dependencies
$ sudo pip download https://download.electrum.org/2.7.6/Electrum-2.7.6.tar.gz
Check https://electrum.org/#download to see if there is a URL available for a more recent version. The previous step should have downloaded several files into the “python_files” directory. Copy this to your software usb. Your software usb is now ready to be transferred to the air-gapped machine.
Plug in the usb and navigate to the directory of the "debs" files. Install the packages.
$ sudo dpkg -i *.deb
Now switch to the directory with the python files. Install the python files
$ sudo pip install --no-index --find-links=../python_files ../python_files/Electrum-2.7.5.tar.gz
That's it! You should be able to run Electrum by typing $ electrum
at the command line.
I found an alternative way to install the debian packages on the airgapped machine. It doens't seem to work on computers running on a live USB, but it may be more secure (I think apt-get checks package signatures and dpkg doesn't, but I'm still researching this).
Instead of $ sudo dpkg -i *.deb
, copy all the .deb files to /var/cache/apt/archive
. Then you should be able to sudo apt-get install python-qt4 python-pip
. Try it and see what works for you.
Please leave any feedback in a comment!
Did you mean to copy all the .deb files into
/var/cache/apt/archives
(archives instead of archive?). That still throws me with E: unable to locate package python-qt4 and the same for python-pip.