Commit 3b4445b5 authored by anonym's avatar anonym
Browse files

Merge remote-tracking branch 'origin/devel' into devel

parents c661e5c8 d8d8ecd0
......@@ -7,7 +7,7 @@ Pin: release o=Debian,a=unstable
Pin-Priority: 999
Package: electrum
Pin: release o=Debian Backports,n=jessie-backports
Pin: release o=Debian,n=stretch
Pin-Priority: 999
Package: firmware-amd-graphics
......@@ -139,7 +139,7 @@ Pin: release o=TorProject,n=obfs4proxy
Pin-Priority: 990
Package: python-electrum
Pin: release o=Debian Backports,n=jessie-backports
Pin: release o=Debian,n=stretch
Pin-Priority: 999
Package: ttdnsd
......@@ -150,6 +150,10 @@ Package: torsocks
Pin: release o=Debian Backports,n=jessie-backports
Pin-Priority: 999
Package: xserver-xorg-video-intel
Pin: release o=Debian Backports,n=jessie-backports
Pin-Priority: 999
Package: xul-ext-torbirdy
Pin: release o=Debian Backports,n=jessie-backports
Pin-Priority: 999
......
......@@ -52,6 +52,7 @@ sed -i 's|^.*\(wrapper\.java\.additional\.6=-Djava\.net\.preferIPv6Addresses=\).
# * In-I2P Network Updates: Disabled
# * Inbound connections: Disabled (setting is "i2cp.ntcp.autoip")
# * Disable I2P plugins
# * Disable NTP
cat > "$I2P/router.config" << EOF
# NOTE: This I2P config file must use UTF-8 encoding
i2cp.disableInterface=true
......@@ -61,6 +62,7 @@ i2np.udp.ipv6=false
router.isHidden=true
router.updateDisabled=true
router.enablePlugins=false
time.disabled=true
EOF
cat > "$I2P/susimail.config" << EOF
......
......@@ -36,7 +36,7 @@ startup_failure() {
"`gettext \"Something went wrong when I2P was starting. Check the logs in /var/log/i2p for more information.\"`"
service i2p dump # generate a thread dump
sleep 5 # Give thread dump ample time to complete
service i2p stop # clean up, just in case
systemctl stop i2p # clean up, just in case
exit 1
}
......@@ -77,14 +77,14 @@ case "${1}" in
start|restart)
# Stop I2P before setting the router console language in case
# it pushes any updated options on quit.
if service i2p status; then
service i2p stop
if systemctl --quiet is-active i2p; then
systemctl stop i2p
fi
# Get LANG, since we may run this from an environment that
# doesn't have it set.
. /etc/default/locale
set_best_i2p_router_console_lang
service i2p start
systemctl start i2p
wait_until_i2p_router_console_is_ready || startup_failure
notify_router_console_success
wait_until_i2p_has_bootstrapped || bootstrap_failure
......@@ -92,7 +92,7 @@ case "${1}" in
notify_bootstrap_success
;;
stop)
exec service i2p stop
exec systemctl stop i2p
;;
*)
echo "invalid argument '${1}'" >&2
......
......@@ -396,3 +396,6 @@ xdotool
i2p
# Prevent java 6 from being installed
openjdk-7-jre
# Enable Electrum's Qt GUI
python-qt4
......@@ -25,6 +25,7 @@ Feature: Electrum Bitcoin client
When I create a new bitcoin wallet
Then a bitcoin wallet is present
And I see the main Electrum client window
And Electrum successfully connects to the network
And I shutdown Tails and wait for the computer to power off
Given I start Tails from USB drive "current" and I login with persistence enabled
When I start Electrum through the GNOME menu
......
......@@ -44,7 +44,7 @@ Feature: I2P
And the I2P router console is ready
When I start the I2P Browser through the GNOME menu
Then the I2P router console is displayed in I2P Browser
And I2P successfully built a tunnel
And I see shared client tunnels in the I2P router console
When I open the address "http://i2p-projekt.i2p" in the I2P Browser
Then the I2P homepage loads in I2P Browser
......@@ -60,7 +60,9 @@ Feature: I2P
Scenario: Connecting to the #i2p IRC channel with the pre-configured account
Given I have started Tails from DVD with I2P enabled and logged in and the network is connected
And the I2P router console is ready
And I2P successfully built a tunnel
And I start the I2P Browser through the GNOME menu
And the I2P router console is displayed in I2P Browser
And I see shared client tunnels in the I2P router console
When I start Pidgin through the GNOME menu
Then I see Pidgin's account manager window
When I activate the "I2P" Pidgin account
......
......@@ -21,9 +21,10 @@ When /^I create a new bitcoin wallet$/ do
@screen.wait_and_click("ElectrumWalletSeedTextbox.png", 15)
@screen.type('a', Sikuli::KeyModifier.CTRL) # select wallet seed
@screen.type('c', Sikuli::KeyModifier.CTRL) # copy seed to clipboard
seed = $vm.get_clipboard
@screen.wait_and_click("ElectrumNextButton.png", 15)
@screen.wait("ElectrumWalletSeedTextbox.png", 15)
@screen.type('v', Sikuli::KeyModifier.CTRL) # Confirm seed
@screen.type(seed) # Confirm seed
@screen.wait_and_click("ElectrumNextButton.png", 10)
@screen.wait_and_click("ElectrumEncryptWallet.png", 10)
@screen.type("asdf" + Sikuli::Key.TAB) # set password
......@@ -47,5 +48,5 @@ Then /^I see the main Electrum client window$/ do
end
Then /^Electrum successfully connects to the network$/ do
@screen.wait('ElectrumStatus.png', 180)
@screen.wait('ElectrumStatus.png', 180)
end
Given /^I2P is (?:still )?(not )?running$/ do |notrunning|
if notrunning
!$vm.execute('service i2p status').success?
!$vm.execute('systemctl --quiet is-active i2p').success?
else
try_for(30) do
$vm.execute('service i2p status').success?
try_for(60) do
$vm.execute('systemctl --quiet is-active i2p').success?
end
end
end
......@@ -61,12 +61,19 @@ end
Then /^the I2P homepage loads in I2P Browser$/ do
recovery_on_failure = Proc.new do
$vm.focus_window('I2P Browser')
@screen.type(Sikuli::Key.ESC)
@screen.click('BrowserReloadButton.png')
begin
@screen.click('BrowserReloadButton.png')
rescue FindFailed
@screen.type(Sikuli::Key.ESC)
@screen.click('BrowserReloadButton.png')
end
end
retry_i2p(recovery_on_failure) do
$vm.focus_window('I2P Browser')
@screen.wait('I2PBrowserProjectHomepage.png', 80)
visible, _ = @screen.waitAny(['I2PBrowserProjectHomepage.png', 'BrowserReloadButton.png'], 120)
unless visible == 'I2PBrowserProjectHomepage.png'
raise "Did not find 'I2PBrowserProjectHomepage.png'"
end
end
end
......@@ -74,10 +81,8 @@ Then /^I see a notification that I2P failed to start$/ do
robust_notification_wait('I2PFailedToStart.png', 2 * 60)
end
Then /^I2P successfully built a tunnel$/ do
try_for(7 * 60) do
$vm.execute('i2p_built_a_tunnel', :libs => 'i2p').success?
end
Then /^I see shared client tunnels in the I2P router console$/ do
@screen.wait('I2PSharedClientTunnels.png', 7 * 60)
end
Then /^I see a notification that I2P is not ready$/ do
......
......@@ -530,6 +530,10 @@ EOF
:user => LIVE_USER)
end
def get_clipboard
execute_successfully("xsel --output --clipboard", :user => LIVE_USER).stdout
end
def internal_snapshot_xml(name)
disk_devs = list_disk_devs
disks_xml = " <disks>\n"
......
......@@ -55,3 +55,4 @@ Code
* [[!tails_gitweb config/chroot_local-includes/usr/local/lib/tails-shell-library/i2p.sh]]
* [[!tails_gitweb config/chroot_local-includes/usr/share/applications/i2p.desktop.in]]
* [[!tails_gitweb config/chroot_local-includes/lib/live/config/2080-install-i2p]]
* [[!tails_gitweb_dir config/chroot_local-includes/usr/share/tails/i2p-browser]]
......@@ -83,3 +83,4 @@ Code
* [[!tails_gitweb config/chroot_local-includes/usr/local/lib/tails-shell-library/chroot-browser.sh]]
* [[!tails_gitweb config/chroot_local-includes/usr/share/applications/unsafe-browser.desktop.in]]
* [[!tails_gitweb config/chroot_local-includes/etc/sudoers.d/zzz_unsafe-browser]]
* [[!tails_gitweb_dir config/chroot_local-includes/usr/share/tails/unsafe-browser]]
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment