NetworklessInstallationFixes

Differences between revisions 1 and 2
Revision 1 as of 2007-10-24 12:02:57
Size: 2608
Editor: p54A671ED
Comment:
Revision 2 as of 2007-10-24 14:06:40
Size: 2393
Editor: p54A671ED
Comment:
Deletions are marked like this. Additions are marked like this.
Line 10: Line 10:
This should provide an overview of the issue/functionality/change proposed here. Focus here on what will actually be DONE, summarising that so that other people don't have to read the whole spec. A networkless installation in ubiquity is currently not as smooth as
it could be. One of the issues is the apt network timeout.
Line 14: Line 15:
This section should include a paragraph describing the end-user impact of this change. It is meant to be included in the release notes of the first release in which it is implemented. (Not all of these will actually be included in the release notes, at the release manager's discretion; but writing them is a useful exercise.)

It is mandatory.
TBD
Line 20: Line 19:
This should cover the _why_: why is this change being proposed, what justifies it, where we see this justified. Installing without network is very common and should be as painless as
possible.
Line 24: Line 24:
== Assumptions ==  1. Bob installs ubuntu without a network connected.
Line 26: Line 26:
== Current status in libapt ==

The current implementation in libapt will set the acquire state to
pkgAcquire::Item::StatTransientNetworkError if it encounters a
"Timeout", "TmpResolveFailure" or "ConnectionRefused" error.

On a TransientNetworkError, libapt will stop trying to download items
for any sources.list deb/deb-src pair after trying to download the
Release.gpg file. The connection timeout can be controlled via
"Acquire::http::Timeout".

On a system with no network at all the resolver will exit quickly with
"ResolveFailure". On a system with working DNS but blocked access to
the archive the acquire::http::timeout will be run for each
deb/deb-src pair.

That is currently 9 times because of the way the sources.list is
written (lines for "main restriected","universe","multiverse" for each
archive,security,gutsy-updates). It could be collapsed to 3 times if
the sources.list would contain one "main restricted universe
multiverse" line for each "archive, security, updates.

One problem currently is that translations are queued for download as
well and timeout. This should be fixed for hardy. A workaround is to
set APT::Acquire::Translation=none.
 
Line 28: Line 54:
You can have subsections that better describe specific parts of the issue.

== Implementation ==

This section should describe a plan of action (the "how") to implement the changes discussed. Could include subsections like:

=== UI Changes ===

Should cover changes required to the UI, or specific UI that is required to implement this

=== Code Changes ===

Code changes should include an overview of what needs to change, and in some cases even the specific details.

=== Migration ===

Include:
 * data migration, if any
 * redirects from old URLs to new ones, if any
 * how users will be pointed to the new way of doing things, if necessary.
TBD
Line 51: Line 58:
It's important that we are able to test new features, and demonstrate them to users. Use this section to describe a short plan that anybody can follow that demonstrates the feature is working. This can then be used during CD testing, and to show off after release.

This need not be added or completed until the specification is nearing beta.
TBD

Please check the status of this specification in Launchpad before editing it. If it is Approved, contact the Assignee or another knowledgeable person before making changes.

Summary

A networkless installation in ubiquity is currently not as smooth as it could be. One of the issues is the apt network timeout.

Release Note

TBD

Rationale

Installing without network is very common and should be as painless as possible.

Use Cases

  1. Bob installs ubuntu without a network connected.

Current status in libapt

The current implementation in libapt will set the acquire state to pkgAcquire::Item::StatTransientNetworkError if it encounters a "Timeout", "TmpResolveFailure" or "ConnectionRefused" error.

On a TransientNetworkError, libapt will stop trying to download items for any sources.list deb/deb-src pair after trying to download the Release.gpg file. The connection timeout can be controlled via "Acquire::http::Timeout".

On a system with no network at all the resolver will exit quickly with "ResolveFailure". On a system with working DNS but blocked access to the archive the acquire::http::timeout will be run for each deb/deb-src pair.

That is currently 9 times because of the way the sources.list is written (lines for "main restriected","universe","multiverse" for each archive,security,gutsy-updates). It could be collapsed to 3 times if the sources.list would contain one "main restricted universe multiverse" line for each "archive, security, updates.

One problem currently is that translations are queued for download as well and timeout. This should be fixed for hardy. A workaround is to set APT::Acquire::Translation=none.

Design

TBD

Test/Demo Plan

TBD

Outstanding Issues

This should highlight any issues that should be addressed in further specifications, and not problems with the specification itself; since any specification with problems cannot be approved.

BoF agenda and discussion

Use this section to take notes during the BoF; if you keep it in the approved spec, use it for summarising what was discussed and note any options that were rejected.


CategorySpec

NetworklessInstallationFixes (last edited 2008-08-06 16:41:32 by localhost)