Skip to content

Commit

Permalink
download/prerelease/: update and improve checksum/signature verificat…
Browse files Browse the repository at this point in the history
…ion instructions
  • Loading branch information
mika committed Jul 13, 2021
1 parent a3b0b19 commit 5a9e06a
Showing 1 changed file with 155 additions and 130 deletions.
285 changes: 155 additions & 130 deletions download/prerelease/index.html.tt2
Expand Up @@ -86,155 +86,180 @@
<p>Download the Grml flavour you need, then write it to a CD-ROM/DVD or an empty USB stick.</p>

<div class="download_group" id="download_group1_noscript">
<div class="download_panel" id="download_panel1_noscript"><div>
<a href="https://grml.org/download/mirrors/">Download from a specific mirror</a><br/>
<br/>
Direct download links:<br/>
<a href="https://download.grml.org/devel/grml96-full_2021.07-rc1.iso">Grml96 full ISO</a> [<a href="https://download.grml.org/devel/grml96-full_2021.07-rc1.iso.asc">GPG Signature</a>]<br/>
<a href="https://download.grml.org/devel/grml64-full_2021.07-rc1.iso">Grml64 full ISO</a> [<a href="https://download.grml.org/devel/grml64-full_2021.07-rc1.iso.asc">GPG Signature</a>]<br/>
<a href="https://download.grml.org/devel/grml32-full_2021.07-rc1.iso">Grml32 full ISO</a> [<a href="https://download.grml.org/devel/grml32-full_2021.07-rc1.iso.asc">GPG Signature</a>]<br/>
<a href="https://download.grml.org/devel/grml96-small_2021.07-rc1.iso">Grml96 small ISO</a> [<a href="https://download.grml.org/devel/grml96-small_2021.07-rc1.iso.asc">GPG Signature</a>]<br/>
<a href="https://download.grml.org/devel/grml64-small_2021.07-rc1.iso">Grml64 small ISO</a> [<a href="https://download.grml.org/devel/grml64-small_2021.07-rc1.iso.asc">GPGP Signature</a>]<br/>
<a href="https://download.grml.org/devel/grml32-small_2021.07-rc1.iso">Grml32 small ISO</a> [<a href="https://download.grml.org/devel/grml32-small_2021.07-rc1.iso.asc">GPG Signature</a>]<br/>
<br/>
</div></div>
<div class="download_panel" id="download_panel1_noscript">
<div>
<a href="https://grml.org/download/mirrors/">Download from a specific mirror</a><br/>
<br/>
Direct download links:<br/>
<a href="https://download.grml.org/devel/grml96-full_2021.07-rc1.iso">Grml96 full ISO</a> [<a href="https://download.grml.org/devel/grml96-full_2021.07-rc1.iso.asc">GPG Signature</a>]<br/>
<a href="https://download.grml.org/devel/grml64-full_2021.07-rc1.iso">Grml64 full ISO</a> [<a href="https://download.grml.org/devel/grml64-full_2021.07-rc1.iso.asc">GPG Signature</a>]<br/>
<a href="https://download.grml.org/devel/grml32-full_2021.07-rc1.iso">Grml32 full ISO</a> [<a href="https://download.grml.org/devel/grml32-full_2021.07-rc1.iso.asc">GPG Signature</a>]<br/>
<a href="https://download.grml.org/devel/grml96-small_2021.07-rc1.iso">Grml96 small ISO</a> [<a href="https://download.grml.org/devel/grml96-small_2021.07-rc1.iso.asc">GPG Signature</a>]<br/>
<a href="https://download.grml.org/devel/grml64-small_2021.07-rc1.iso">Grml64 small ISO</a> [<a href="https://download.grml.org/devel/grml64-small_2021.07-rc1.iso.asc">GPGP Signature</a>]<br/>
<a href="https://download.grml.org/devel/grml32-small_2021.07-rc1.iso">Grml32 small ISO</a> [<a href="https://download.grml.org/devel/grml32-small_2021.07-rc1.iso.asc">GPG Signature</a>]<br/>
<br/>
</div>
</div>
</div>

<div class="download_group" id="download_group1" style="display:none;">
<form method="get" action="/download/bounce/">
<input type="hidden" name="version" value="2021.07-rc1"/>
<div class="download_panel" id="download_panel1"><div>

<h2>Options</h2>

<select name="flavour" id="download_flavour" style="width:100%;">
<option value="full" selected="selected">grml-full (~760MB)</option>
<option value="small">grml-small (~360MB)</option>
</select>
<br /><br />
<select name="arch" id="download_arch" style="width:100%;">
<option value="amd64" selected="selected">64-bit PC (amd64)</option>
<option value="i386">32-bit PC (i686+)</option>
<option value="96">One for both (~1.45GB)</option>
</select>
<br />
<br />
<br />
<br />
<br />
<form method="get" action="/download/bounce/">
<input type="hidden" name="version" value="2021.07-rc1"/>
<div class="download_panel" id="download_panel1">
<div>

<div style="font-size: 14pt;">
<p><a href="/changelogs/README-grml-2021.07-rc1/">Release Notes</a></p>
<h2>Options</h2>

</div>
</div>
</div>
<select name="flavour" id="download_flavour" style="width:100%;">
<option value="full" selected="selected">grml-full (~786MB)</option>
<option value="small">grml-small (~400MB)</option>
</select>
<br /><br />
<select name="arch" id="download_arch" style="width:100%;">
<option value="amd64" selected="selected">64-bit PC (amd64)</option>
<option value="i386">32-bit PC (i686+)</option>
<option value="96">One for both (~1.5GB)</option>
</select>
<br />
<br />
<br />
<br />
<br />

<div class="download_panel" id="download_panel2"><div>
<!-- fallback cgi buttons -->
<div id="formbuttons">
<button name="filetype" value="iso" id="download_button_mirror" class="largebutton" style="width:100%;" type="submit">Download Now </button><br />
<!--
<button name="filetype" value="bt" id="download_button_bt" type="submit">Download using BitTorrent</button><br />
-->
<button name="filetype" value="signature" id="download_button_signature" type="submit">Get Checksum/Signature</button><br />
<a href="https://grml.org/download/mirrors/">Download from a specific mirror</a><br/>
</div>
<!-- JS links -->
<div id="linkbuttons" style="display:none;">
<a id="download_link_mirror" class="largebutton">Download Now</a><br />
<!--
<a id="download_link_bt">BitTorrent Download</a><br />
-->
<a id="download_link_signature">Get GPG Signature</a><br />
<a href="https://grml.org/download/mirrors/">Download from a specific mirror</a><br/>
</div>
</div></div>

</form>
<script type="text/javascript">
function update_arch() {
var flavour = document.getElementById('download_flavour').value;
if (flavour == 'small') document.getElementById('download_arch').innerHTML = '<option value="amd64">64-bit PC (amd64)</option><option value="i386">32-bit PC (i686+)</option><option value="96">One for both (~685MB)</option>';
if (flavour == 'full') document.getElementById('download_arch').innerHTML = '<option value="amd64">64-bit PC (amd64)</option><option value="i386">32-bit PC (i686+)</option><option value="96">One for both (~1.45GB)</option>';
update_links();
}
<div style="font-size: 14pt;">
<p><a href="/changelogs/README-grml-2021.07-rc1/">Release Notes</a></p>
</div>

function update_links() {
var current_version = "2021.07-rc1";
var product = 'grml';
var arch = document.getElementById('download_arch').value;
var flavour = document.getElementById('download_flavour').value;
if (arch == 'amd64') product = 'grml64';
if (arch == 'i386') product = 'grml32';
if (arch == '96') product = 'grml96';
var iso = product + '-' + flavour + '_' + current_version + '.iso';
var mirror_url = "https://download.grml.org/devel/";
document.getElementById('download_link_mirror').href = mirror_url + iso;
document.getElementById('download_link_mirror').innerHTML = '<br />Download Now<div class="download_relinfo">' + product + '-' + flavour + ' ' + current_version + '</div>';
// document.getElementById('download_link_bt').href = mirror_url + iso + '.torrent';
document.getElementById('download_link_signature').href = mirror_url + iso + '.asc';
}
</div>
</div>

<div class="download_panel" id="download_panel2">
<div>
<!-- fallback cgi buttons -->
<div id="formbuttons">
<button name="filetype" value="iso" id="download_button_mirror" class="largebutton" style="width:100%;" type="submit">Download Now </button><br />
<!--
<button name="filetype" value="bt" id="download_button_bt" type="submit">Download using BitTorrent</button><br />
-->
<button name="filetype" value="signature" id="download_button_signature" type="submit">Get Checksum/Signature</button><br />
<a href="https://grml.org/download/mirrors/">Download from a specific mirror</a><br/>
</div>
<!-- JS links -->
<div id="linkbuttons" style="display:none;">
<a id="download_link_mirror" class="largebutton">Download Now</a><br />
<!--
<a id="download_link_bt">BitTorrent Download</a><br />
-->
<a id="download_link_signature">Get GPG Signature</a><br />
<a href="https://grml.org/download/mirrors/">Download from a specific mirror</a><br/>
</div>
</div>
</div>
</form>

<script type="text/javascript">
function update_arch() {
var flavour = document.getElementById('download_flavour').value;
if (flavour == 'small') document.getElementById('download_arch').innerHTML = '<option value="amd64">64-bit PC (amd64)</option><option value="i386">32-bit PC (i686+)</option><option value="96">One for both (~685MB)</option>';
if (flavour == 'full') document.getElementById('download_arch').innerHTML = '<option value="amd64">64-bit PC (amd64)</option><option value="i386">32-bit PC (i686+)</option><option value="96">One for both (~1.45GB)</option>';
update_links();
}

function update_links() {
var current_version = "2021.07-rc1";
var product = 'grml';
var arch = document.getElementById('download_arch').value;
var flavour = document.getElementById('download_flavour').value;
if (arch == 'amd64') product = 'grml64';
if (arch == 'i386') product = 'grml32';
if (arch == '96') product = 'grml96';
var iso = product + '-' + flavour + '_' + current_version + '.iso';
var mirror_url = "https://download.grml.org/devel/";
document.getElementById('download_link_mirror').href = mirror_url + iso;
document.getElementById('download_link_mirror').innerHTML = '<br />Download Now<div class="download_relinfo">' + product + '-' + flavour + ' ' + current_version + '</div>';
// document.getElementById('download_link_bt').href = mirror_url + iso + '.torrent';
document.getElementById('download_link_signature').href = mirror_url + iso + '.asc';
}

// hook update function
document.getElementById('download_flavour').onchange = update_arch;
document.getElementById('download_arch').onchange = update_links;
// force initial link href set
update_links();
// only show our link "buttons"
document.getElementById('formbuttons').style.display = 'none';
document.getElementById('linkbuttons').style.display = '';
document.getElementById('download_group1').style.display = '';
document.getElementById('download_group1_noscript').style.display = 'none';
</script>
// hook update function
document.getElementById('download_flavour').onchange = update_arch;
document.getElementById('download_arch').onchange = update_links;
// force initial link href set
update_links();
// only show our link "buttons"
document.getElementById('formbuttons').style.display = 'none';
document.getElementById('linkbuttons').style.display = '';
document.getElementById('download_group1').style.display = '';
document.getElementById('download_group1_noscript').style.display = 'none';
</script>
</div>

<div class="download_group" id="download_group2">

<div class="download_panel" id="download_panel3"><div>
<b>Alternate downloads</b><br /><br />
<a href="https://daily.grml.org/">Daily images</a><br />
<a href="https://download.grml.org/">Older releases</a><br />
<a href="https://download.grml.org/devel/grml_sources-2021.07-rc1.tar.gz">Source code</a> (one tgz for both architectures)<br />
<br/>
Netboot packages:<br/>
<a href="https://download.grml.org/devel/grml_netboot_package_grml64-full_2021.07-rc1.tar">64-bit</a>
<a href="https://download.grml.org/devel/grml_netboot_package_grml32-full_2021.07-rc1.tar">32-bit</a>
<div class="download_panel" id="download_panel3">
<div>
<b>Alternate downloads</b><br /><br />
<a href="https://daily.grml.org/">Daily images</a><br />
<a href="https://download.grml.org/">Older releases</a><br />
<a href="https://download.grml.org/devel/grml_sources-2021.07-rc1.tar.gz">Source code</a> (one tgz for both architectures)<br />
<br/>
Netboot packages:<br/>
<a href="https://download.grml.org/devel/grml_netboot_package_grml64-full_2021.07-rc1.tar">64-bit</a>
<a href="https://download.grml.org/devel/grml_netboot_package_grml32-full_2021.07-rc1.tar">32-bit</a>
</div>
</div>

<br />
<br />
<b>Signing Key</b>
<br />
Please verify all downloads using GnuPG!
<br />
For each released ISO image there is also a signature file, that should be verified with the following
<a href="https://grml.org/download/gnupg-michael-prokop.txt">signing key</a>:
<pre>pub 4096R/96A87872B7EA3737 2010-07-14 Michael Prokop &lt;mika (at) grml.org&gt;
Key fingerprint = 33CC B136 401A FEC8 43A3 8763 96A8 7872 B7EA 3737
sub rsa4096/257B6FD52892CF7E 2010-07-14 [E]
sub rsa4096/43A1FB9BCC87C963 2018-07-26 [A] [expires: 2022-05-20]</pre>
</div></div>

<div class="download_panel" id="download_panel4"><div>
<b>Boot from USB key</b><br />
<br />
Just <tt>dd(1)</tt> the downloaded ISO to an <abbr title="Any existing data will be overwritten by the dd command!">empty</abbr> USB key!<br /><br />
<code>dd if=grml_2021.07-rc1.iso of=/dev/USB_KEY</code>
<br /><br />
<div class="download_panel" id="download_panel4">
<div>
<b>Boot from USB key</b><br />
<br />
Just <tt>dd(1)</tt> the downloaded ISO to an <abbr title="Any existing data will be overwritten by the dd command!">empty</abbr> USB key!<br /><br />
<code>dd if=grml_2021.07-rc1.iso of=/dev/USB_KEY bs=4M status=progress conv=fdatasync</code>
<br /><br />

<b>Troubleshooting</b><br /><br />
<a href="https://git.grml.org/?p=grml-live.git;a=blob_plain;f=templates/GRML/grml-cheatcodes.txt;hb=HEAD">Boot option guide</a>
<br /><br />
<b>Troubleshooting</b><br /><br />
<a href="https://git.grml.org/?p=grml-live.git;a=blob_plain;f=templates/GRML/grml-cheatcodes.txt;hb=HEAD">Boot option guide</a>
<br />
<br />
<br />
<br />

</div></div>
</div>
</div>

</div>

<h2>Git repositories</h2>
<h2>Verify your download</h2>

<p>Please verify all downloads!</p>

<p>Alongside the actual ISO files, the Grml mirrors publish the extra files <em>SHA256SUMS</em> and <em>SHA256SUMS.gpg</em>.<br />
The <em><a href="https://download.grml.org/devel/SHA256SUMS">SHA256SUMS</a></em> file contains checksums for all available release files.<br />
The <em><a href="https://download.grml.org/devel/SHA256SUMS.gpg">SHA256SUMS.gpg</a></em> file provides the GnuPG signature for that file.<br />
Once you have <em>SHA256SUMS</em> and <em>SHA256SUMS.gpg</em> in the same directory as your Grml downloads, verify the SHA256 checksum via:
</p>

<pre>
gpg --keyid-format long --verify SHA256SUMS.gpg SHA256SUMS
</pre>

<br />
If you don't have <a href="https://grml.org/download/gnupg-michael-prokop.txt">our GnuPG signing key</a> (<em>0x96A87872B7EA3737</em>, fingerprint <em>33CC B136 401A FEC8 43A3 8763 96A8 7872 B7EA 3737</em>), run:

<pre>
gpg --keyid-format long --keyserver hkps://keys.openpgp.org --recv-keys 0x96A87872B7EA3737
</pre>

Finally verify the checksum of your Grml downloads, via:

<pre>
sha256sum --ignore-missing -c SHA256SUMS
</pre>

<h2>Source code</h2>

<p>The Grml team uses <a href="https://git-scm.com/">git</a> for
managing software and packages. The repositories are available
online at <a href="https://github.com/grml/">GitHub</a>.</p>
<p>The Grml team uses <a href="https://git-scm.com/">Git</a> for managing software and packages.
The repositories are available online at <a href="https://github.com/grml/">GitHub</a>.</p>

<div style="clear: both;"></div>

Expand Down

0 comments on commit 5a9e06a

Please sign in to comment.