Project

General

Profile

Feature #8510

Distribute a hybrid ISO image

Added by intrigeri over 4 years ago. Updated over 4 years ago.

Status:
Resolved
Priority:
Elevated
Assignee:
-
Category:
Installation
Target version:
Start date:
01/03/2015
Due date:
% Done:

100%

Feature Branch:
feature/hybrid-iso-strikes-back
Type of work:
Code
Blueprint:
Starter:
Affected tool:

Description

As explained on #5573, our main reason to stop hybrid'ing the ISO images we distribute was that some crappy BIOS'es were not able to boot from a DVD burnt from a hybrid image. I think we should reconsider this, as:

  • most distros distribute hybrid ISOs these days, so hopefully, such BIOS'es have mostly disappeared nowadays;
  • we don't use a super-weird isohybrid command anymore, so hopefully, the problems we had in the past have vanished;
  • having to run one more command (isohybrid) makes the installation process more complicated than it needs to be;
  • having to download and extract the syslinux tarball when installing from a Mac is tedious, and anyway is something we should avoid advising users to do;
  • the Mac manual installation doc uses isohybrid.pl, that's not maintained anymore;
  • isohybrid's behavior depends on its exact version, so:
    • it's hard to make use of bug reports about failed boots without knowing exactly what version of isohybrid was used to create the boot device
    • it's harder than it should to verify that a USB stick installed with isohybrid+dd is genuine.

To sum up, if all Tails ISO images were hybrid'ed in the same way, with a known version of isohybrid, our life and users' life would be easier. IMO, even if some buggy systems might still have problems with booting a DVD burnt from a hybrid ISO, this drawback is by far outrun by the advantages of distributing a hybrid ISO.


Subtasks

Feature #8527: Adapt our documentation to isohybrid imagesResolved

Feature #8797: Send a call for testing hybrid ISO images burnt on DVDResolved


Related issues

Related to Tails - Feature #7496: Make it possible to verify the integrity of a Tails USB device In Progress 07/06/2014
Related to Tails - Feature #8664: Consider using GNOME Disks for the manual installation using Linux Resolved 01/10/2015
Related to Tails - Feature #8524: Do statistics on whether bug reports come from a DVD or flash media Resolved 01/03/2015
Related to Tails - Bug #8891: VirtualBox cannot use our ISO images when its size is not a multiple of 2048 bytes Resolved 02/11/2015
Blocked by Tails - Feature #8525: Test isohybrid DVD on Mac Resolved 01/03/2015
Blocked by Tails - Feature #8526: Test isohybrid DVD on Mac Resolved 01/03/2015

Associated revisions

Revision 83342cfe (diff)
Added by Tails developers over 4 years ago

Hybrid the produced ISO after building.

We use isohybrid from syslinux-utils 6.03~pre20 or later, as can be found e.g.
in our builder-wheezy APT suite.

Will-fix: #8510

Revision 972aa27b
Added by Tails developers over 4 years ago

Merge remote-tracking branch 'origin/feature/hybrid-iso-strikes-back' into devel

Fix-committed: #8510

Conflicts:
features/step_definitions/untrusted_partitions.rb

History

#1 Updated by sajolida over 4 years ago

  • Blocked by Feature #8524: Do statistics on whether bug reports come from a DVD or flash media added

#2 Updated by sajolida over 4 years ago

#3 Updated by sajolida over 4 years ago

#4 Updated by sajolida over 4 years ago

  • Type of work changed from Discuss to Code

During the January meeting, we said that:

1. We will do statistics on whether bug reports come from a DVD or flash media: #8524.
2. We will test isohybrid DVD on Macs: #8525, #8526.
3. If our experiments are successful, then we will release an isohybrid image, update the documentation, and see what happens.
4. Then if users and frontdesk hate us, revisit. Otherwise, forget it and keep isohybrid images.

https://tails.boum.org/contribute/meetings/201501/

#5 Updated by intrigeri over 4 years ago

  • Related to Feature #7496: Make it possible to verify the integrity of a Tails USB device added

#6 Updated by intrigeri over 4 years ago

  • Related to Feature #8664: Consider using GNOME Disks for the manual installation using Linux added

#7 Updated by intrigeri over 4 years ago

  • Category set to Installation

As explained on #8524#note-5, we won't be able to address #8524 before Tails 1.3 is released.

So, I think we need to reconsider whether gathering those stats should block moving to hybrid ISO images. If it does, and we address #8719 in Tails 1.3, then we can't switch to hybrid ISO images before Tails 1.4 (mid-May).

IMO, the risk of regressions for a subset of users booting Tails from DVD is not worth postponing by 3 months (1.3..1.4) the benefits of shipping a hybrid ISO image.

I'm going to raise this topic on tails-dev@, and will report back the decision here => please don't comment here yet, thanks :)

#8 Updated by intrigeri over 4 years ago

  • Type of work changed from Code to Discuss

#9 Updated by intrigeri over 4 years ago

  • Feature Branch set to feature/hybrid-iso-strikes-back

#10 Updated by intrigeri over 4 years ago

  • Blocked by deleted (Feature #8524: Do statistics on whether bug reports come from a DVD or flash media)

#11 Updated by intrigeri over 4 years ago

  • Related to Feature #8524: Do statistics on whether bug reports come from a DVD or flash media added

#12 Updated by intrigeri over 4 years ago

No opposition on the ML, so here we go.

#13 Updated by intrigeri over 4 years ago

  • Subject changed from Reconsider distributing a hybrid ISO image to Distribute a hybrid ISO image

#14 Updated by intrigeri over 4 years ago

  • Status changed from Confirmed to In Progress
  • Type of work changed from Discuss to Code

#15 Updated by Tails over 4 years ago

Applied in changeset commit:293172f36cab6988acafa48e67bf17a666d6352c.

#16 Updated by intrigeri over 4 years ago

Some of the merge conflicts into experimental were non-trivial. Note to reviewer: if you see conflicts when merging into devel, please ask me to take care of it by merging devel into the topic branch myself.

#17 Updated by intrigeri over 4 years ago

  • QA Check set to Ready for QA

An experimental ISO at commit:a420a0d0d28fbbc9deda683e6c09eee4b2d3929d (with this branch merged) passes the two test suite features it directly affects: features/untrusted_partitions.feature features/usb_install.feature.

#18 Updated by Tails over 4 years ago

  • Status changed from In Progress to Fix committed
  • % Done changed from 60 to 100

Applied in changeset commit:f260f3c43b200db18e1b36837ebf7e07b2e5c8c1.

#19 Updated by anonym over 4 years ago

  • QA Check changed from Ready for QA to Pass

Even though the branch was merged the docs (#8527) might need another look and be re-merged. At least this way we get 1.3~rc1 as an isohybrid.

#20 Updated by anonym over 4 years ago

  • QA Check changed from Pass to Ready for QA

anonym wrote:

Even though the branch was merged the docs (#8527) might need another look and be re-merged. At least this way we get 1.3~rc1 as an isohybrid.

... so I hadn't tried it in Virtualbox, and it fails to even add the image to its media manager, so booting it . I get this error:

Failed to open the optical disk file $PATH/tails-i386-devel-1.3-20150211.iso.
Could not get the storage format of the medium '$PATH/tails-i386-devel-1.3-20150211.iso' (VERR_NOT_SUPPORTED).

Result Code: VBOX_E_IPRT_ERROR (0x80BB0005)
Component: Medium
Interface: IMedium {05f2bbb6-a3a6-4fb9-9b49-6d0dda7142ac}
Callee: IVirtualBox {fafa4e17-1ee2-4905-a10e-fe7c18bf5554}
Callee RC: VBOX_E_OBJECT_NOT_FOUND (0x80BB0001)

#21 Updated by anonym over 4 years ago

One can fix the iso by running either of the following:
  • isohybrid $ISO
  • isohybrid $ISO -h 253 -s 63
  • isohybrid $ISO -h 255 -s 62

For reference we generate them with isohybrid $ISO -h 255 -s 63 so it seems that Virtualbox has an upper limit of how many sectors it thinks an ISO can have or something like that.

#22 Updated by anonym over 4 years ago

Lastly, calling VBoxSDL from the command line gives a bit more context that may be useful if we choose to try to track down whatever limitation Virtualbox sets on ISO images:

VBoxSDL: error: Context: "OpenMedium(bstrCdromFile.raw(), DeviceType_DVD, AccessMode_ReadWrite, FALSE , pMedium.asOutParam())" at line 1713 of file VBoxSDL.cpp

#23 Updated by anonym over 4 years ago

  • Related to Bug #8891: VirtualBox cannot use our ISO images when its size is not a multiple of 2048 bytes added

#24 Updated by anonym over 4 years ago

  • QA Check changed from Ready for QA to Pass

#25 Updated by BitingBird over 4 years ago

  • Status changed from Fix committed to Resolved

Also available in: Atom PDF