2 Feature: Installing Tails to a USB drive, upgrading it, and using persistence
4 I may want to install Tails to a USB drive
5 and upgrade it to new Tails versions
9 Scenario: Installing Tails to a pristine USB drive
11 And I start Tails from DVD with network unplugged and I login
12 And I create a new 4 GiB USB drive named "current"
13 And I plug USB drive "current"
14 And I "Clone & Install" Tails to USB drive "current"
15 Then the running Tails is installed on USB drive "current"
16 But there is no persistence partition on USB drive "current"
17 And I unplug USB drive "current"
20 Scenario: Booting Tails from a USB drive in UEFI mode
22 And the computer is set to boot in UEFI mode
23 When I start Tails from USB drive "current" with network unplugged and I login
24 Then the boot device has safe access rights
25 And Tails is running from USB drive "current"
26 And the boot device has safe access rights
27 And Tails has started in UEFI mode
30 Scenario: Booting Tails from a USB drive without a persistent partition and creating one
32 And I start Tails from USB drive "current" with network unplugged and I login
33 Then the boot device has safe access rights
34 And Tails is running from USB drive "current"
35 And the boot device has safe access rights
36 And there is no persistence partition on USB drive "current"
37 And I create a persistent partition with password "asdf"
38 Then a Tails persistence partition with password "asdf" exists on USB drive "current"
39 And I shutdown Tails and wait for the computer to power off
42 Scenario: Booting Tails from a USB drive with a disabled persistent partition
44 And I start Tails from USB drive "current" with network unplugged and I login
45 Then Tails is running from USB drive "current"
46 And the boot device has safe access rights
47 And persistence is disabled
48 But a Tails persistence partition with password "asdf" exists on USB drive "current"
51 Scenario: Persistent browser bookmarks
53 And the computer is set to boot from USB drive "current"
54 And the network is unplugged
55 When I start the computer
56 And the computer boots Tails
57 And Tails is running from USB drive "current"
58 And the boot device has safe access rights
59 And I enable persistence with password "asdf"
60 And I log in to a new session
62 And all notifications have disappeared
63 And persistence is enabled
64 And persistent filesystems have safe access rights
65 And persistence configuration files have safe access rights
66 And persistent directories have safe access rights
67 And I start the Tor Browser in offline mode
68 And the Tor Browser has started in offline mode
69 And I add a bookmark to eff.org in the Tor Browser
70 And I warm reboot the computer
71 And the computer reboots Tails
72 And I enable read-only persistence with password "asdf"
73 And I log in to a new session
75 And I start the Tor Browser in offline mode
76 And the Tor Browser has started in offline mode
77 Then the Tor Browser has a bookmark to eff.org
80 Scenario: Writing files to a read/write-enabled persistent partition
82 And I start Tails from USB drive "current" with network unplugged and I login with persistence password "asdf"
83 Then Tails is running from USB drive "current"
84 And the boot device has safe access rights
85 And persistence is enabled
86 And I write some files expected to persist
87 And persistent filesystems have safe access rights
88 And persistence configuration files have safe access rights
89 And persistent directories have safe access rights
90 And I shutdown Tails and wait for the computer to power off
91 Then only the expected files should persist on USB drive "current"
94 Scenario: Writing files to a read-only-enabled persistent partition
96 And I start Tails from USB drive "current" with network unplugged and I login with read-only persistence password "asdf"
97 Then Tails is running from USB drive "current"
98 And the boot device has safe access rights
99 And persistence is enabled
100 And I write some files not expected to persist
101 And I remove some files expected to persist
102 And I shutdown Tails and wait for the computer to power off
103 Then only the expected files should persist on USB drive "current"
106 Scenario: Deleting a Tails persistent partition
108 And I start Tails from USB drive "current" with network unplugged and I login
109 Then Tails is running from USB drive "current"
110 And the boot device has safe access rights
111 And persistence is disabled
112 But a Tails persistence partition with password "asdf" exists on USB drive "current"
113 And all notifications have disappeared
114 When I delete the persistent partition
115 Then there is no persistence partition on USB drive "current"
118 Scenario: Installing an old version of Tails to a pristine USB drive
120 And the computer is set to boot from the old Tails DVD
121 And the network is unplugged
122 And I start the computer
123 When the computer boots Tails
124 And I log in to a new session
125 And GNOME has started
126 And all notifications have disappeared
127 And I create a new 4 GiB USB drive named "old"
128 And I plug USB drive "old"
129 And I "Clone & Install" Tails to USB drive "old"
130 Then the running Tails is installed on USB drive "old"
131 But there is no persistence partition on USB drive "old"
132 And I unplug USB drive "old"
135 Scenario: Creating a persistent partition with the old Tails USB installation
137 And I start Tails from USB drive "old" with network unplugged and I login
138 Then Tails is running from USB drive "old"
139 And I create a persistent partition with password "asdf"
140 Then a Tails persistence partition with password "asdf" exists on USB drive "old"
141 And I shutdown Tails and wait for the computer to power off
144 Scenario: Writing files to a read/write-enabled persistent partition with the old Tails USB installation
146 And I start Tails from USB drive "old" with network unplugged and I login with persistence password "asdf"
147 Then Tails is running from USB drive "old"
148 And persistence is enabled
149 And I write some files expected to persist
150 And persistent filesystems have safe access rights
151 And persistence configuration files have safe access rights
152 And persistent directories have safe access rights
153 And I shutdown Tails and wait for the computer to power off
154 Then only the expected files should persist on USB drive "old"
157 Scenario: Upgrading an old Tails USB installation from a Tails DVD
159 And I clone USB drive "old" to a new USB drive "to_upgrade"
160 And I start Tails from DVD with network unplugged and I login
161 And I plug USB drive "to_upgrade"
162 And I "Clone & Upgrade" Tails to USB drive "to_upgrade"
163 Then the running Tails is installed on USB drive "to_upgrade"
164 And I unplug USB drive "to_upgrade"
167 Scenario: Booting Tails from a USB drive upgraded from DVD with persistence enabled
169 And I start Tails from USB drive "to_upgrade" with network unplugged and I login with persistence password "asdf"
170 Then Tails is running from USB drive "to_upgrade"
171 And the boot device has safe access rights
172 And the expected persistent files are present in the filesystem
173 And persistent directories have safe access rights
176 Scenario: Upgrading an old Tails USB installation from another Tails USB drive
178 And I clone USB drive "old" to a new USB drive "to_upgrade"
179 And I start Tails from USB drive "current" with network unplugged and I login
180 Then Tails is running from USB drive "current"
181 And the boot device has safe access rights
182 And I plug USB drive "to_upgrade"
183 And I "Clone & Upgrade" Tails to USB drive "to_upgrade"
184 Then the running Tails is installed on USB drive "to_upgrade"
185 And I unplug USB drive "to_upgrade"
186 And I unplug USB drive "current"
189 Scenario: Booting Tails from a USB drive upgraded from USB with persistence enabled
191 And I start Tails from USB drive "to_upgrade" with network unplugged and I login with persistence password "asdf"
192 Then persistence is enabled
193 And Tails is running from USB drive "to_upgrade"
194 And the boot device has safe access rights
195 And the expected persistent files are present in the filesystem
196 And persistent directories have safe access rights
199 Scenario: Upgrading an old Tails USB installation from an ISO image, running on the old version
201 And I clone USB drive "old" to a new USB drive "to_upgrade"
202 And I setup a filesystem share containing the Tails ISO
203 When I start Tails from USB drive "old" with network unplugged and I login
204 And I plug USB drive "to_upgrade"
205 And I do a "Upgrade from ISO" on USB drive "to_upgrade"
206 Then the ISO's Tails is installed on USB drive "to_upgrade"
207 And I unplug USB drive "to_upgrade"
210 Scenario: Upgrading an old Tails USB installation from an ISO image, running on the new version
212 And I clone USB drive "old" to a new USB drive "to_upgrade"
213 And I setup a filesystem share containing the Tails ISO
214 And I start Tails from DVD with network unplugged and I login
215 And I plug USB drive "to_upgrade"
216 And I do a "Upgrade from ISO" on USB drive "to_upgrade"
217 Then the ISO's Tails is installed on USB drive "to_upgrade"
218 And I unplug USB drive "to_upgrade"
220 Scenario: Booting a USB drive upgraded from ISO with persistence enabled
222 And I start Tails from USB drive "to_upgrade" with network unplugged and I login with persistence password "asdf"
223 Then persistence is enabled
224 And Tails is running from USB drive "to_upgrade"
225 And the boot device has safe access rights
226 And the expected persistent files are present in the filesystem
227 And persistent directories have safe access rights
230 Scenario: Installing Tails to a USB drive with an MBR partition table but no partitions
232 And I create a 4 GiB disk named "mbr"
233 And I create a msdos label on disk "mbr"
234 And I start Tails from DVD with network unplugged and I login
235 And I plug USB drive "mbr"
236 And I "Clone & Install" Tails to USB drive "mbr"
237 Then the running Tails is installed on USB drive "mbr"
238 But there is no persistence partition on USB drive "mbr"
239 And I unplug USB drive "mbr"
241 Scenario: Booting a USB drive that originally had an empty MBR partition table
243 And I start Tails from USB drive "mbr" with network unplugged and I login
244 Then Tails is running from USB drive "mbr"
245 And the boot device has safe access rights
246 And there is no persistence partition on USB drive "mbr"
249 Scenario: Cat:ing a Tails isohybrid to a USB drive and booting it
251 And I create a 4 GiB disk named "isohybrid"
252 And I cat an ISO hybrid of the Tails image to disk "isohybrid"
253 And I start Tails from USB drive "isohybrid" with network unplugged and I login
254 Then Tails is running from USB drive "isohybrid"
257 Scenario: Try upgrading but end up installing Tails to a USB drive containing a Tails isohybrid installation
259 And I start Tails from DVD with network unplugged and I login
260 And I plug USB drive "isohybrid"
261 And I try a "Clone & Upgrade" Tails to USB drive "isohybrid"
262 But I am suggested to do a "Clone & Install"
263 And I kill the process "liveusb-creator"
264 And I "Clone & Install" Tails to USB drive "isohybrid"
265 Then the running Tails is installed on USB drive "isohybrid"
266 But there is no persistence partition on USB drive "isohybrid"
267 And I unplug USB drive "isohybrid"
269 Scenario: Booting a USB drive that originally had a isohybrid installation
271 And I start Tails from USB drive "isohybrid" with network unplugged and I login
272 Then Tails is running from USB drive "isohybrid"
273 And the boot device has safe access rights
274 And there is no persistence partition on USB drive "isohybrid"