Public bug reported:

Right now, we have this great check running at boot that tests the
integrity of various files contained on the ISO. Previously, it
interrupted the boot process but would report to the user whether or not
a failure occurred. Recent changes have made this test silently run in
the background. It's plausible it can still be running *after* the GUI
loads. That's neat stuff, but there's no feedback to the user.

A file by the name of casper-md5check.json is in /run in the live
environment with the results. In turn, that will be dropped into
/var/log/installer on the installed system. This JSON file will report
which files did not match and what the overall result is (which can be
unknown, fail, success, or skip). Example:

{
  "checksum_missmatch": [ 
    "./casper/filesystem.manifest"
],
  "result": "fail"
}

In turn, the results are reported by apport in any bugs filed.

Bug 1918733 was created to resolve this issue, but was marked Won't Fix,
at least for casper. In that bug, it was suggested that the various
installers would implement this in some way. Therefore, this bug exists
to resolve it in Calamares.

My proposed fix is a simple shell script or a small Python program. It
would be run before Calamares via the customized Desktop Entry (i.e. the
one that's on the desktop). I'm thinking of this instead of doing it in
Calamares as it will not allow us to create random dialogs. kdialog
would, though, so we should add that to the live seed and use that. I
would suggest that we run this with ; and not && because we don't want a
minor logic failure or something to prevent installation altogether.
Also, I don't think we want to get heavy handed. There may be a reason
one may want to continue with bad media (e.g. for testing).

The logic would be something like this:

 1. Check the status of the systemd casper-md5check.service
 2. If the service is still running, wait for a given timeout
 3. If the timeout is reached and the service is still running, exit gracefully 
(maybe submit a bug? or record the problem somewhere?)
 4. Parse the results
 5. Warn the user but do not prevent them from continuing

ProblemType: Bug
DistroRelease: Ubuntu 21.04
Package: calamares-settings-lubuntu 1:21.04.2
ProcVersionSignature: Ubuntu 5.10.0-14.15-generic 5.10.11
Uname: Linux 5.10.0-14-generic x86_64
ApportVersion: 2.20.11-0ubuntu60
Architecture: amd64
CasperMD5CheckMismatches: ./casper/filesystem.manifest
CasperMD5CheckResult: fail
CasperVersion: 1.460
CurrentDesktop: LXQt
Date: Tue Mar 16 18:33:36 2021
LiveMediaBuild: Lubuntu 21.04 "Hirsute Hippo" - Alpha amd64 (20210311)
PackageArchitecture: all
SourcePackage: calamares-settings-ubuntu
UpgradeStatus: No upgrade log present (probably fresh install)

** Affects: calamares-settings-ubuntu (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: amd64 apport-bug hirsute

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1919363

Title:
  provide warning to user about bad media when running installer

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/calamares-settings-ubuntu/+bug/1919363/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to